klingelbot/README.md

65 lines
3.4 KiB
Markdown
Raw Permalink Normal View History

2024-09-09 17:18:36 +02:00
# Arduino Telegram Bot - README
## Übersicht
Dieses Projekt implementiert einen Telegram-Bot auf einem ESP8266-Mikrocontroller, der mit einem Telegram-Konto verbunden ist und Nachrichten basierend auf einem externen Eingang (z.B. einem Taster) sendet. Das Setup verwendet die ESP8266WiFi-Bibliothek, um den ESP8266 mit einem WLAN-Netzwerk zu verbinden, und die UniversalTelegramBot-Bibliothek, um den Bot zu steuern.
## Funktionen
- **Telegram Bot Integration:** Der ESP8266 ist mit einem Telegram-Bot verbunden, der Nachrichten an einen vordefinierten Chat sendet.
- **Eingangserkennung:** Ein GPIO-Pin wird als Eingang verwendet, um ein externes Signal (z.B. ein Tastendruck) zu erfassen. Wenn ein Signal erkannt wird, sendet der Bot eine Nachricht an den definierten Telegram-Chat.
- **Prellschutz:** Der Code enthält einen einfachen Mechanismus, um Prellen des Tasters zu vermeiden.
## Komponenten
- **ESP8266 Mikrocontroller** (z.B. NodeMCU)
- **Taster** oder andere Eingangsquelle, die an den definierten GPIO-Pin angeschlossen ist
- **WLAN Netzwerk** mit Zugangsdaten
- **Telegram Bot Token** und **Chat ID**
## Bibliotheken
Die folgenden Bibliotheken werden verwendet:
- `ESP8266WiFi.h`: Ermöglicht die WLAN-Verbindung des ESP8266.
- `WiFiClientSecure.h`: Bietet sichere (SSL) Verbindungen für den ESP8266.
- `UniversalTelegramBot.h`: Ermöglicht die Steuerung eines Telegram-Bots.
## Installation
1. **Arduino IDE vorbereiten:**
- Installiere die Arduino IDE, falls noch nicht geschehen.
- Installiere das ESP8266 Board-Paket über den Board-Manager.
- Installiere die benötigten Bibliotheken (`ESP8266WiFi`, `WiFiClientSecure`, `UniversalTelegramBot`) über den Bibliotheks-Manager der Arduino IDE.
2. **Telegram Bot erstellen:**
- Erstelle einen neuen Bot über den [@BotFather](https://t.me/BotFather) auf Telegram und notiere dir den generierten Bot Token.
3. **Projektkonfiguration:**
- Ersetze die Platzhalter `WIFISSID`, `WFIPASS`, `TOKEN`, und `chatID` im Code durch die tatsächlichen Werte für dein WLAN und den Telegram Bot.
4. **Verkabelung:**
- Verbinde den Taster (oder einen anderen Eingang) mit dem entsprechenden GPIO-Pin des ESP8266 (z.B. GPIO0, D1 auf einem NodeMCU).
## Nutzung
1. **Upload:** Lade den Sketch auf deinen ESP8266 hoch.
2. **Verbindung:** Der ESP8266 verbindet sich mit dem angegebenen WLAN und startet den Telegram-Bot.
3. **Eingabe Erkennen:** Drücke den angeschlossenen Taster, um eine Nachricht ("Ding Dong") an den konfigurierten Telegram-Chat zu senden.
4. **Nachrichtenüberprüfung:** Der ESP8266 überprüft regelmäßig auf neue Nachrichten im Bot-Chat, die in der Konsole angezeigt werden.
## Anpassungen
- **Eingabepin:** Der Eingabepin kann in der `inputPin`-Variable definiert und an die spezifischen Anforderungen angepasst werden.
- **Bot-Konfiguration:** Anpassungen an der Frequenz der Nachrichtenüberprüfung (`BOT_MTBS`) und anderen Bot-Einstellungen können vorgenommen werden.
## Fehlersuche
- **Verbindung fehlgeschlagen:** Überprüfe WLAN-SSID und Passwort.
- **Keine Nachrichten gesendet:** Überprüfe den Status des GPIO-Pins und stelle sicher, dass der Bot korrekt eingerichtet ist.
- **Sicherheitswarnungen:** Stelle sicher, dass das Root-Zertifikat für Telegram korrekt eingebunden ist.
## Lizenz
2024-09-09 17:34:18 +02:00
Dieses Projekt steht unter der MIT-Lizenz weitere Informationen findest du in der LICENSE.md Datei im Repository.