João Gabriel

Nov 9, 2021

7 min read

Como integrar GitHub Actions com Slack, Telegram e WhatsApp

Que tal fazer a sua Integração Contínua mandar um “zap”?

Segredos do repositório

  1. Acesse as configurações do repositório
Configurações do projeto circulado em vermelho.
Lista de segredos disponíveis para uso no Actions.
${{ secrets.nome_do_seu_segredo }}

Integrando com Slack

  • Selecione o channel do slack
  • Selecione a seta ao lado do nome do channel
  • Clique em “Integrações”
  • Pesquise e selecione “Incoming WebHooks”
  • Selecione “Adicionar ao Slack”
  • Selecione o channel desejado
Integrando channel do Slack com WebHooks de entrada.
SLACK_WEBHOOK_URL
Criando um segredo do repositório contendo o link de acesso ao Slack.
Arquivo .yml para envio de mensagem customizada no Slack.
  • Linha 17 = SLACK_CHANNEL = Aqui podemos adicionar o nome do canal
  • Linha 18 = SLACK_TITLE = Aqui podemos adicionar o título da postagem
  • Linha 19 = SLACK_USERNAME = Aqui podemos adicionar o nome do usuário que vai estar associado a mensagem
  • Linha 21 = SLACK_MESSAGE = A mensagem em si.
  • Linha 20 = SLACK_WEBHOOK = Propriedade armazenada com o segredo do repositório contendo o link para o webhook.
Mensagem enviada no Slack.

Integrando com Telegram

Criando seu bot

  • Acesse BotFather e clique em "Send message"
  • No chat com BotFather envie a mensagem:
 /newbot
  • Em seguida envie o nome do bot que deseja criar
  • Envie o nome único de usuário (que será usado pelo seu bot) que será associado
  • Ao criar o bot, será enviada uma mensagem de sucesso contendo um token
1234567890:ABCDE123ABCDE123ABCDE123ABCDE123ABC

Criando chat

  • Pesquisar pelo nome único de usuário associado ao seu bot (passo 4 da criação do bot)
  • Iniciar uma conversa com esse usuário
  • Enviar a mensagem:
/start
  • Enviar uma mensagem qualquer
  • Abra o terminal
  • Execute o comando abaixo (adicionando o token no lugar do "TOKEN")
curl https://api.telegram.org/botTOKEN/getUpdates
  • Obter o id do chat dentro da resposta dessa API (id em negrito abaixo XXXXXXXXX)
{
"ok":true,
"result":[
{
"update_id":777368030,
"message":{
"message_id":1,
"from":{
"id":1234567890,
"is_bot":false,
"first_name":"YourUserName",
"username":"YourTelegramUser",
"language_code":"pt-br"
},
"chat":{
"id":XXXXXXXXX,
"first_name":"YourUserName",
"username":"YourTelegramUser",
"type":"private"
},
"date":1234567890,
"text":"/start",
"entities":[
{
"offset":0,
"length":6,
"type":"bot_command"
}
]
}
}
]
}

Configurando Action

Token e ID adicionados
Arquivo .yml para envio de mensagem customizada no Telegram.
Mensagem enviada no Telegram.

Integrando com WhatsApp

  1. Criar uma conta no Twilio
WPP_TWILIO_TO_WHATSAPP_NO
Console do Twili, com o Account SID e Auth Token exposto.
WPP_TWILIO_ACCOUNT_SIDWPP_TWILIO_AUTH_TOKEN
Lista de segredos do repositório com os 3 segredos.
Orientação do Twilio para envio de mensagens.
Arquivo .yml para envio de mensagem customizada no WhatsApp.
Mensagem enviada no WhatsApp.

Conclusão

Mensagens enviadas ao executar a CI.

Referências

Contatos

Nós desenvolvemos produtos digitais com inovação, agilidade e excelentes práticas, para que o mercado brasileiro e latino-americano acompanhe a velocidade do mercado digital mundial.