Automatize os emails de convite para sua comunidade no Slack

slack 29 de Jun de 2016

Destaque slackin

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:

Slackin working!

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

Marcadores