Hoje iremos iniciar o desenvolvimento de um bot para o Telegram, a ideia desse projeto é que o nosso bot realize a conversão de um texto para áudio e um áudio para texto. Isso pode ser útil nos momentos que não podemos ouvir um áudio(então iremos converter para texto) ou nos momentos que não conseguimos ler um texto(então iremos converter para áudio).
Esse projeto será um série de posts.
Telegram
O Telegram é um serviço de mensagens instantâneas(similar ao WhatsApp), ele pussui uma API (Application Programming Interface) que possibilita que você utilize diversos serviços, mas o que nos interessa é parte dos bots.
Você pode criar bots que serão executados dentro do telegram, e os usuários poderão interagir com eles, você pode criar diversos tipos de serviços e monetizar eles.
Nesse post tem uma lista de bots mais utilizados.
Obs: Para prosseguir nesse tutorial é necessário ter uma conta no Telegram.
GCP
Nesse projeto iremos utilizar o GCP(Google Cloud Platform) que é uma suíte de computação em nuvem oferecida pelo Google. Para ser mais específico iremos utilizar os seguintes serviços:
- Text to Speech que realiza a conversão de texto para áudio
- Speech to Text que realiza conversão de áudio para texto
Obs: Para prosseguir nesse tutorial é necessário ter uma conta no GCP.
Criando o bot no telegram
Para criarmos um bot precisaremos da ajuda do BotFather(Ele é o pai dos bots e é a partir dele que criamos nosso bot), iremos na barra de busca e pesquisaremos por BotFather.
Ao clicar nele iremos clicar no botão de start.
E ele vai exibir uma série de comandos que podemos utilizar, no nosso caso iremos utilizar o comando /newbot, esse comando é utilizado para a criação de um novo bot.
Depois que enviarmos esse comando ele vai pedir algumas informações do seu bot como:
- Nome do bot
- Username(que deve finalizar com a palavra bot)
E no final ele irá gerar um token, guarde esse token pois iremos utilizar para o desenvolvimento do bot.
Concluindo esses passos já temos o necessário para desenvolvermos um bot para o telegram.
Criando um projeto no GCP
Para criar um novo projeto iremos clicar em My First Project(Pode ser que esteja com outro nome para você, mas é no mesmo local) na barra superior.
Iremos clicar em novo projeto.
Iremos adicionar o nome do projeto e então clicar em criar.
Com o projeto criado agora precisamos ativar os serviços que iremos utilizar, no nosso caso será o Speech To Text e Text to Speech.
Com os serviços ativos, iremos criar uma credencial para consumirmos essas API's. No menu lateral iremos em API's e serviços na opção credenciais.
Iremos clicar em Criar credenciais e na opção Conta de serviço
Iremos preencher as opções necessárias e clicar em criar.
Adicionaremos o tipo de permissão, iremos clicar em Projeto e depois na opção Proprietário, e clicar em Continuar.
Iremos clicar em criar chave.
Iremos escolher a opção JSON(Guarde esse arquivo e não compartilhe, pois ele dará acesso aos recursos do seu projeto), então clicaremos em criar.
E depois clicaremos no botão concluir.
Essas são as configurações iniciais necessárias para iniciar o projeto, nos próximos post's iremos desenvolver a solução.
thierrysantos / text-speech-telegram-bot
Bot that convert Text to Speech and Speech to Text ⭐🚀
Telegram Bot TextSpeech
Telegram bot that convert Text to Speech and Speech to Text
Summary 📝
Motivation 💝
Convert a text to audio to listen when you can't read or convert an audio to text when you can't listen.
Getting Started 💻
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Prerequisites
You need to have NodeJS already installed.
Installing
A step by step series of examples that tell you how to get a development env running
Cloning project
git clone https://github.com/thierrysantos/text-speech-telegram-bot.git
Installing project depencies
yarn
# or
npm install
Start project
yarn dev
# or
npm run dev
# or
docker-compose up
Demo 📋
Built With 💎
- Typescript - TypeScript is a typed superset of JavaScript that compiles to plain JavaScript
Contributing 💖
Please read CONTRIBUTING.md for details…
Top comments (0)