Conhecimento do BotMan

Quero falar sobre a estrutura PHP para criar bots BotMan ( Site ). O Botman pode ser usado como uma biblioteca e como uma extensĂŁo do Laravel (BotMan Studio).


A vantagem dessa estrutura Ă© que o cĂłdigo para o bot pode funcionar para muitas plataformas:

  • Amazon Alexa
  • Cisco spark
  • Facebook messenger
  • Bate-papo do Hangouts
  • Hip chat
  • Microsoft Bot Framework
  • Nexmo
  • Slack
  • Telegram
  • Twilio
  • Web
  • Wechat
  • VK

Exemplo de cĂłdigo:

<?php $botman->hears('Hello BotMan!', function($bot) { $bot->reply('Hello!'); $bot->ask('Whats your name?', function($answer, $bot) { $bot->say('Welcome '.$answer->getText()); }); }); $botman->listen(); 


Resultado:



Instale o BotMan Studio


Crie um novo projeto na pasta botman:

 composer create-project --prefer-dist botman/studio botman 

VocĂȘ pode verificar a operação atravĂ©s da linha de comando:

 $ php artisan botman:tinker You: test BotMan: hello! 

Ou verifique através do navegador. Execute o servidor de teste:

 php artisan serve Laravel development server started: <http://127.0.0.1:8000> 

Abra no navegador 127.0.0.1 : 8000 / botman / tinker

E escreva um oi ou inicie uma conversa para verificar.

Como criar um bot para telegrama?


Primeiro de tudo, vocĂȘ precisa registrar o bot no @BotFather.





Todo bot estĂĄ registrado e temos um token.

Primeiro de tudo, vocĂȘ precisa instalar o driver de telegrama:

 composer require botman/driver-telegram 

Opção A se vocĂȘ estiver usando o BotMan Studio:

 php artisan botman:install-driver telegram 

No arquivo

 config/botman/telegram.php 

adicione seu token de telegrama

 'telegram' => [ 'token' => 'YOUR-TELEGRAM-TOKEN-HERE', ] 

Opção B se vocĂȘ nĂŁo estiver usando o BotMan Studio:

 DriverManager::loadDriver(\BotMan\Drivers\Telegram\TelegramDriver::class); // Create BotMan instance BotManFactory::create($config); 

Registrar Webhook no Telegram


Para que o Telegram saiba como ele pode se comunicar com o bot do BotMan, Ă© necessĂĄrio registrar a URL na qual o BotMan trabalha no Telegram.

VocĂȘ pode fazer isso enviando uma solicitação POST para este URL:

 https://api.telegram.org/bot<YOUR-TELEGRAM-TOKEN-HERE>/setWebhook 

Essa solicitação POST requer apenas um parĂąmetro de URL com uma URL apontando para a rota BotMan. Se vocĂȘ estiver usando o Botman Studio, serĂĄ:

 https://site.domain/botman 

HTTPS é necessårio por motivos de segurança.

Em vez de enviar manualmente uma solicitação ao Telegram, vocĂȘ pode usar o comando do console para registrar seu Webhook. VocĂȘ pode passar o sinalizador --output para ver a resposta do json Telegram.

 $ php artisan botman:telegram:register 

Boa sorte a todos. Faça bots.

Source: https://habr.com/ru/post/pt438936/


All Articles