Source code zum Workshop "M37 Ein GameBot für Telegram". In diesem Repostiory findest du folgendes:
- QR Code Zähler: Zeigt einen QR code mit einem Zähler, welcher um eins erhöht wird, sobald eingescannt
- Einfacher Telegram Bot: Einfacher Telegram bot welcher auf Nachrichten antworten kann und Katzenbilder versendet
- Einfacher Server: Wird benötigt, wenn ein Telegram Game gebaut werden will
- Popper Game: Ein etwas komplexeres HTML Game
- Server + Bot in einem: Vereint den Telegram Bot und den Server
- Python3 installieren:
- Windows: https://www.python.org/downloads/windows/
- MacOS: https://www.python.org/downloads/macos/
- Linux:
apt install python3
- Source code herunter laden:
- Wenn du dich mit git auskennst:
git clone https://github.com/oposs/tecdays-bot.git
- Source code als zip herunterladen: Grüner Button "Code", dann "Download ZIP"
- Wenn du dich mit git auskennst:
- Projekt einrichten
- Windows: Script setup_project_win.cmd ausführen
- Linux/MacOS: Script setup_project_mac_linux.sh ausführen
- Telegram bot erstellen
- Mit @botfather ein Gespräch anfangen
- Der Befehl
/newbot
fragt dich nach einen Botnamen + Beschreibung - Das Token (welches in etwa so aussieht:
57xxxxxxxx:AAHRhXvlb0HqgLtZZZUUUHHNNEEDDCCEEFFSASAF
) aufschreiben
- Token im file simple_echo_bot.py und simple_server.py eintragen
- Bot starten
- Windows: Script start_echo_bot_win.cmd ausführen
- Linux/MacOS: Script start_echo_bot_linux_mac.sh ausführen
- Mit @botfather eine Konversation starten
/setinline
- Inline mode aktivieren/newgame
- Anweisungen folgen
Damit das Game funktioniert, brauchst brauchst du einen Computer der vom Internet aus direkt erreichbar ist. Da startest du dann den Game Server. Dieser medldet sich bei Telegram an und wartet auf bot requests. Gleichzeitig werden von dem Server auch die Gamefiles ausgeliefert und alfällige Score Updates an Telegram weitergeleitet.
Das Game selbst ist in JavaScript geschrieben und befindet sich im Ordner public. Der Server ist in Python geschrieben und befindet sich im Ordner sanicbot. Bevor du den Server startest, musst du im config.ini
file den Token eintragen. Den Token bekommst du von @botfather (siehe oben).
$ cp config.ini.dist config.ini
$ vim config.ini
$ . venv/bin/activate
$ sanic sanicbot:app -H 0.0.0.0 -p 8080 -d
Du kannst uns entweder eine Mail an support[at]oetiker[dot]ch schreiben oder wenn Du ein Github account hast hier ein Issue aufmachen.
Code is published under MIT
Cat images are taken from wikipedia: