Automatize os emails de convite para sua comunidade no Slack
O Slack é uma ferramenta de chat para empresas que tem conquistado também muitas comunidades de software e tecnologia. Com 2,7 milhões de usuários diários e um valuation 3.8 bilhões de dólares, fica difícil não prestar atenção na startup que promete diminuir o número de emails através de sua ferramenta de comunicação.
Por ser muito mais fácil de começar a utilizar e ter ótimos apps mobile, o Slack tem, pouco a pouco, substituído o velho e bom IRC, principalmente para comunidades online e de desenvolvimento.
O único problema neste caso é que a inscrição nos grupos criados no Slack acontecem por meio de um convite enviado por email, o que atrapalha a utilização da ferramenta de maneira pública, deixando as salas abertas para qualquer um que tenha o interesse em participar.
Para resolver esse problema, utilizaremos o slackin, uma aplicação simples escrita em Node.js que será instalada no Jelastic Locaweb e que propicia:
- uma landing page onde seus usuários podem digitar os emails para receber um invite sem que você tenha que convidá-los manualmente;
- um
<iframe>
que poder ser utilizado em qualquer site para exibir quantos usuários estão conectados em tempo real através do uso do socket.io; - um SVG que funciona bem com sites estáticos como páginas README no Github.
Instalação
Vamos começar criando o ambiente Node.js. O Slackin não necessita de banco de dados e nem de muitos recursos a sua disposição.
Em seguida, faça o deploy da aplicação através do repositório Git do projeto: https://github.com/rauchg/slackin
Se você não sabe como fazer um deploy via Git no Jelastic, assista ao episódio 8 do Tecnopapo.
Dê alguns minutos para que as dependências sejam automaticamente baixadas pelo NPM. Você perceberá nesse momento que haverá um aumento dos recursos utilizados. Quando esse consumo cair, é sinal de que elas foram satisfeitas.
Configuração da API do Slack
Para que tudo funcione, é necessário gerar um token de acesso à API do Slack. Para isso, acesse api.slack.com/apps com o seu usuário e clique no botão Create App. Não deixe de ler a introdução sobre a geração de tokens de acesso à API em api.slack.com/web.
Crie também um usuário dedicado com o nome de @slackin-inviter
ou similar e coloque ele como administrador. Use um token de teste com esse usuário e note que tokens de test possuem permissões de fato e, portanto, não é necessário criar um token OAuth2. Você encontra mais informações sobre tokens de teste na documentação.
Inicie a aplicação
Para iniciar a aplicação, precisamos editar o arquivo packages.json
via SSH ou mesmo através do editor do painel.
Encontre o trecho "start": "node ./bin/slackin"
na linha 38 e altere seu conteúdo acrescentando -p 8080 id-do-time slack-api-token
. Ao final a linha se parecerá com isso:
"start": "node ./bin/slackin -p 8080 id-do-time slack-api-token"
Conclusão
Reinicie a aplicação e acesse a URL do seu ambiente. Se tudo der certo, você verá uma imagem semelhante a esta abaixo:
Como o Jelastic é bastante econômico e o Slackin não consome muitos recursos, é provável que seu custo não passe de R$ 15,00 por mês. Para saber mais sobre o Jelastic, acesse a página do produto