IPÊ --- * TODO [12/14] * [X] Autenticação API Rest * [X] Autenticação Websockets * [X] Ping e Pong * [ ] Escrever testes automatizados * [X] SSL * [X] Expvar - Canais, inscritos * [X] Otimizações [3/3] * [X] Refatorar partes do código, remover repetições * [X] Alterar tipos de dados de slices para mapas em alguns locais. * [X] Remover Canais vazios. * [ ] Segurança, tempo de expiração, etc * [X] Dados extra na conexão do usuário. Ver Websockets onOpen * [X] Webhooks [5/5] * [X] Member added * [X] Member removed * [X] Channel Occupied * [X] Channel vacated * [X] Clients Events * [X] Events Presence channels [3/3] * [X] pusher_internal:subscription_succeeded para canais de presença * [X] pusher_internal:member_added * [X] pusher_internal:member_removed * [X] Remover inscrições quando o web socket for fechado * [X] Alterar os dados extras da inscrição são relacionados ao canal e não diretamente a inscrição * [X] Escrever um README * Dúvidas * [X] Atualmente o ID do usuário em canais de presença está como string, o protocolo não deixa claro, já ví exemplos onde a chave é um inteiro. Nesse caso essa chave terá que ser um RawMessage, O campo Data inteiro?? * Objetivos [7/7] * [X] Implementação Funcional. * [X] WebHooks * [X] Presence channels * [X] Private Channels * [X] Public Channels * [X] Easy Instalation * [X] Easy configuration