65 lines
3.3 KiB
Markdown
65 lines
3.3 KiB
Markdown
# 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
|
|
|
|
Dieses Projekt steht unter der MIT-Lizenz - siehe die [LICENSE.md]
|