MontellugTelegramBot
Da MontelLUG WIKI.
Cosa è e cosa fa
Un "bot telegram" è una sorta di utente virtuale con il quale si può chattare tramite il client Telegram. A rispondere non sarà una persona ma un software e l'interazione che si può avere dipende dallo sviluppatore che ha creato il bot (il nostro è semplicissimo). Al momento le funzioni disponibili sono:
- distro , consiglia qualche distribuzione per neofiti
- iban , visualizza le coordinate bancarie per poter pagare la tessera o per le donazioni :-)
- logo , visualizza il logo del MontelLug
- sw <software_proprietario>, consente di trovare le alternative libere ai software proprietari, es. 'sw office' > LibreOffice
- orari , visualizza i prossimi appuntamenti in sede
- tessera , spiega qual è la procedura per iscriversi
Il sistema memorizza solo le richieste che non riesce a capire, per il tempo minimo necessario, al fine di poter migliorare il software.
Come posso usarlo
Se hai uno smartphone, devi installare Telegram e poi aprire una chat con l'utente @MontellugBot.
Come funziona?
Per fare un bot si possono usare diversi linguaggi di programmazione. Per semplicità e portabilità abbiamo scelto php. Per non partire da zero abbiamo scelto di usare la classe di Gabriele Grillo disponibile a questo indirizzo:
https://github.com/Eleirbag89/TelegramBotPHP
In sostanza bisogna seguire questi semplici passaggi:
- installare Telegram
- avviare una chat con il bot "BotFather"
- tramite BotFather creare il bot <vostro_nome>
- BotFather vi darà un codice di accesso alle API del tipo 01234567:tanticarattericasuali
- in un vostro server accessibile via https, copiare il file telegram.php e creare un file <nome_segreto>.php che risponderà alle richieste effettive degli utenti
- collegare il vostro bot alla vostra pagina php (modificate i parametri necessari):
Controllare il BOT da Bash
Inviare messaggi di testo: script send_telegram_message.sh
#!/bin/sh # TELEGRAM_BOT_API_TOKEN="9703794947:ABGqfiE_prpXfyvkwFzqfpzr7KtXVbtJcP" # CHAT_ID="-942536909" /usr/bin/curl -s -X POST \ https://api.telegram.org/bot$TELEGRAM_BOT_API_TOKEN/sendMessage \ -d chat_id="$CHAT_ID" -d text="Messaggio dal BOT: $1 $2 $3 $4" > /dev/null
Inviare foto: script send_telegram_photo.sh
#!/bin/sh # TELEGRAM_BOT_API_TOKEN="9703794947:ABGqfiE_prpXfyvkwFzqfpzr7KtXVbtJcP" # CHAT_ID="-942536909" /usr/bin/curl -s -X \ POST https://api.telegram.org/bot$TELEGRAM_BOT_API_TOKEN/sendPhoto \ -F chat_id="$CHAT_ID" -F photo=@"$1" \ -F caption="Invio foto: $2" > /dev/null
Inviare file: script send_telegram_document.sh
#!/bin/sh # TELEGRAM_BOT_API_TOKEN="9703794947:ABGqfiE_prpXfyvkwFzqfpzr7KtXVbtJcP" # CHAT_ID="-942536909" /usr/bin/curl -s -X \ POST https://api.telegram.org/bot$TELEGRAM_BOT_API_TOKEN/sendDocument \ -F chat_id="$CHAT_ID" -F document=@"$1" \ -F caption="Invio file: $2" > /dev/null