From 544791d685bd9cdb9bc0a5573bee5a0ecd709b6b Mon Sep 17 00:00:00 2001 From: Bruna Moreira Date: Fri, 23 Oct 2020 00:08:13 -0300 Subject: [PATCH 1/3] Atualizar o setup do bot no telegram --- docs/setup_telegram.md | 78 +++++++++++++++++++++++++++++------------- 1 file changed, 54 insertions(+), 24 deletions(-) diff --git a/docs/setup_telegram.md b/docs/setup_telegram.md index beed1d78..fe41478c 100644 --- a/docs/setup_telegram.md +++ b/docs/setup_telegram.md @@ -1,53 +1,83 @@ # Setup do bot no Telegram -## Crie um bot no Telegram +Para configurar e ter seu bot no telegram, você precisa seguir os seguintes passos: +1. [Criar um bot no telegram com BotFather](#criar-um-bot-no-telegram-com-botfather) +1. [Executar o ngrok](#executar-o-ngrok) +1. [Exportar as variáveis](#exportar-as-variáveis) +1. [Atualizar o arquivo de credenciais](#atualizar-o-arquivo-de-credenciais) -Converse com o [@BotFather do Telegram](https://t.me/BotFather) e crie um bot de teste unicamente seu seguindo as instruções dele. +## Criar um bot no telegram com BotFather -## Exporte as variáveis do seu bot +Converse com o [@BotFather do Telegram](https://t.me/BotFather) e crie um bot pra você seguindo as instruções dele. +Você vai sair de lá com duas informações importantes: o `token` e o `username` do seu bot. +Segura elas aí, pois vamos precisar em breve. -Após escolher um nome para seu bot, o @BotFather lhe dará um token para utilizar para acessar a API do Telegram. Adicione ambos no [arquivo de configurações do bot](../docker/bot-telegram.env), como a seguir. Substitua o TELEGRAM_TOKEN pelo token lhe enviado pelo @BotFather e TELEGRAM_BOT_USERNAME pelo nome do seu bot. + +## Executar o ngrok + +Precisamos configurar um webhook para fazer a comunicação do nosso bot com o telegram. +Para isso, vamos utilizar o [ngrok](https://ngrok.com/download). +Faça o download, extraia o arquivo que foi baixado e execute o comando a seguir. ```sh -TELEGRAM_BOT_USERNAME=username_do_bot -TELEGRAM_TOKEN=token_fornecido_pelo_BotFather +./ngrok http 5001 ``` +Esse comando vai executar o ngrok na porta 5001. Ele vai ocupar o terminal em que for executado. -## Execute o ngrok +**Atenção:** O conector do Telegram está utilizando a porta 5001 como padrão. +Caso queira mudar, somente altere a porta utilizada pelo no Makefile. -Após a etapa anterior, é necessário utilizar o [ngrok](https://ngrok.com/download) para expor determinada porta para ser utilizado -pelo Telegram. -Conforme a seguir, execute o ngrok na porta 5001. +## Exportar as variáveis + +### Telegram + +Após escolher um nome para seu bot, o @BotFather lhe dará um token para utilizar para acessar a API do Telegram. +Adicione ambos no [arquivo de configurações do bot], como a seguir. +Substitua o `TELEGRAM_TOKEN` pelo token lhe enviado pelo BotFather e `TELEGRAM_BOT_USERNAME` pelo nome do seu bot. ```sh -./ngrok http 5001 +TELEGRAM_BOT_USERNAME=username_do_bot +TELEGRAM_TOKEN=token_fornecido_pelo_BotFather ``` -**Atenção:** O conector do Telegram está utilizando a porta 5001 como padrão. Caso queira mudar, somente altere -a porta utilizada pelo no Makefile. +### NGROK +Enquanto o ngrok estiver em execução, ele apresentará uma série de informações da sessão atual. +Copie a url do campo Forwarding com o protocolo `HTTPS` e cole no [arquivo de configurações do bot]. +Substitua apenas o `your_webhook_server`. Mantenha o restante da linha -## Exporte a URL do Webhook +```sh +TELEGRAM_WEBHOOK=your_webhook_server/webhooks/telegram/webhook +``` +> Lembre-se: sempre que executar o ngrok essa url deve ser atualizada. -Enquanto o ngrok estiver em execução, ele apresentará uma série de informações da sessão atual. Copie a url do campo Forwarding com o protocolo HTTPS e cole no [arquivo de configurações do bot](../docker/bot-telegram.env). ela será similar à seguinte. + +Ao final de realizar essas configurações, seu [arquivo de configurações do bot] deve estar de acordo com o exibido logo abaixo: ```sh -TELEGRAM_WEBHOOK=link_do_ngrok/webhooks/telegram/webhook +TELEGRAM_BOT_USERNAME= +TELEGRAM_TOKEN= +TELEGRAM_WEBHOOK=/webhooks/telegram/webhook ``` -::Lembre-se::: sempre que executar o ngrok essa url deve ser exportada. +## Atualizar o arquivo de credenciais +Edite o arquivo credentials.yml e descomente as linhas referentes ao telegram: +``` +telegram: + access_token: ${TELEGRAM_TOKEN} + verify: ${TELEGRAM_BOT_USERNAME} + webhook_url: ${TELEGRAM_WEBHOOK} +``` -## Execução do bot no telegram -Ao final de realizar essas configurações, seu [arquivo de configurações do bot](../docker/bot-telegram.env) deve estar de acordo com o exibido logo abaixo: +Com isso, é possível realizar a execução do bot com o comando -```sh -TELEGRAM_BOT_USERNAME=lappisbot -TELEGRAM_TOKEN=token -TELEGRAM_WEBHOOK=your_webhook_server/webhooks/telegram/webhook +``` +make run-telegram ``` -Com isso, é possível realizar a execução do bot seguindo os passos do [README](../README.md) +Para mais comandos e informações, veja o [README](https://github.com/lappis-unb/rasa-ptbr-boilerplate/blob/main/README.md) +[arquivo de configurações do bot]: https://github.com/lappis-unb/rasa-ptbr-boilerplate/blob/main/env/bot-telegram.env From 8aac94c802ba9df12cbd3fff44c563cce63507cf Mon Sep 17 00:00:00 2001 From: Bruna Moreira Date: Fri, 23 Oct 2020 00:15:25 -0300 Subject: [PATCH 2/3] Atualizar readme com o setup do telegram --- README.md | 9 --------- 1 file changed, 9 deletions(-) diff --git a/README.md b/README.md index daa62fa2..4aceaf64 100644 --- a/README.md +++ b/README.md @@ -105,15 +105,6 @@ Após realizar o [tutorial](/docs/setup_telegram.md) de exportação de todas va **Antes de seguir adiante. Importante:** As variáveis de ambiente são necessárias para o correto funcionamento do bot, por isso não esqueça de exportá-las. -Edite o arquivo **credentials.yml** e descomente as linhas referentes ao telegram: - -```sh -telegram: - access_token: ${TELEGRAM_TOKEN} - verify: ${TELEGRAM_BOT_USERNAME} - webhook_url: ${TELEGRAM_WEBHOOK} -``` - Depois execute o bot no telegram: ```sh From 2785209be3e973c02fffcdf09cd0933bacdec6ad Mon Sep 17 00:00:00 2001 From: Bruna Moreira Date: Fri, 23 Oct 2020 19:27:58 -0300 Subject: [PATCH 3/3] Melhorar texto do setup do telegram --- docs/setup_telegram.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/docs/setup_telegram.md b/docs/setup_telegram.md index fe41478c..fc782479 100644 --- a/docs/setup_telegram.md +++ b/docs/setup_telegram.md @@ -17,6 +17,8 @@ Segura elas aí, pois vamos precisar em breve. Precisamos configurar um webhook para fazer a comunicação do nosso bot com o telegram. Para isso, vamos utilizar o [ngrok](https://ngrok.com/download). +Nesse link, você vai fazer o download. E executar o comando de unzip do arquivo. + Faça o download, extraia o arquivo que foi baixado e execute o comando a seguir. ```sh @@ -70,6 +72,7 @@ telegram: verify: ${TELEGRAM_BOT_USERNAME} webhook_url: ${TELEGRAM_WEBHOOK} ``` +Não precisa trocar nenhuma informação, apenas descomentar essa seção do arquivo. Com isso, é possível realizar a execução do bot com o comando @@ -78,6 +81,9 @@ Com isso, é possível realizar a execução do bot com o comando make run-telegram ``` +Assim que rodar o comando, você pode conversar com o seu bot no telegram. +Basta procurar ele pelo username que você criou. + Para mais comandos e informações, veja o [README](https://github.com/lappis-unb/rasa-ptbr-boilerplate/blob/main/README.md) [arquivo de configurações do bot]: https://github.com/lappis-unb/rasa-ptbr-boilerplate/blob/main/env/bot-telegram.env