Slide 1

Slide 1 text

Wagner Macedo 24 de maio de 2016

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

No content

Slide 4

Slide 4 text

Registrando o seu bot com o @BotFather /newbot Meu novo bot meunovobot @BotFather gera um token The one bot to rule them all...

Slide 5

Slide 5 text

Comunicação dos bots com a rede do Telegram Polling: o mais comum REST getUpdates updates Webhook REST setWebhook updates REST getUpdates updates ⋮ updates updates ⋮

Slide 6

Slide 6 text

Métodos disponíveis ● sendMessage ● forwardMessage ● sendPhoto ● sendAudio ● sendDocument ● sendSticker ● sendVideo ● sendVoice ● sendLocation ● sendContact ● ...

Slide 7

Slide 7 text

Bot tem regras estritas ● Um bot nunca inicia uma conversa! ● Um bot não pode mandar mensagens para um grupo se não for membro! ● Configurações de privacidade em grupos – Um bot só recebe as mensagens de /comandos ou quando o @nomebot é mencionado (por padrão). – Se houver mais de um bot, é importante usar a notação /comando@nomebot para desambiguar.

Slide 8

Slide 8 text

pyTelegramBotAPI https://github.com/eternnoir/pyTelegramBotAPI import telebot bot = telebot.TeleBot("TOKEN") @bot.message_handler(commands=['start', 'help']) def send_welcome(message): bot.reply_to(message, "Howdy, how are you doing?") @bot.message_handler(func=lambda m: True) def echo_all(message): bot.reply_to(message, message.text) bot.polling()

Slide 9

Slide 9 text

pyTelegramBotAPI https://github.com/eternnoir/pyTelegramBotAPI ● Implementa todos os recursos da API 2.0 ● Ainda não implementou a API 2.1 – Essa API foi lançada em 22 de maio!

Slide 10

Slide 10 text

Extra: Inline Bots ● Um tipo de bot que intermedia a mensagem ● Exemplos: @bold, @gif, @vid, @sticker @bot.inline_handler(func=lambda q: q.query != "") def query_text(inline_query): pass

Slide 11

Slide 11 text

Mais informações ● Telegram: https://telegram.me ● API dos bots: https://core.telegram.org/bots/api ● Implementação da API em Python: https://github.com/eternnoir/pyTelegramBotAPI