ESP8266: Telegram-Bot

setup

Einen Mikrocontroller per Messenger Befehle senden oder Daten erhalten? Ja das geht, und es ist auch genau so cool wie es sich anhört! In dem Tutorial baue ich eine WLAN-Türklingel, die euch Nachrichten aufs Smartphone schickt, sobald jemand klingelt.

Außerdem zeige ich weitere Möglichkeiten, die digitalen Ausgänge zu nutzen, Stichwort INPUT_PULLUP.

Also, los geht’s auf meiner Website!

Advertisements

17 Gedanken zu “ESP8266: Telegram-Bot

  1. Hallo, sehr gute Beschreibung, danke dafür. Ich suche eine Möglichkeit, um beim Öffnen eines Reedkontaktes einmalig eine Nachricht abzusetzen, bis er wieder schließt. Zur Zeit werde ich dauerhaft mit Nachrichten attackiert.

    Gefällt mir

  2. Hey Andre, ich bin zur Zeit leider nicht in der Nähe meiner Hardware, um das zu testen.
    Lass dir mal im seriellen Monitor ausgeben, was zurückkommt, wenn du /get schickst.

    Also einfach: Serial.print(bot.message[i][5]);

    Ich kann mir gut vorstellen, dass in der Zwischenzeit ein Update der Lib rausgekommen ist, oder sich generell die API geändert hat, und dass es nun heißen muss:

    if (bot.message[i][5] == „/get“)) // Achte auf den Schrägstrich

    Hast du mein Script so getestet wie es auf GitHub ist? Wenn ja, dann erstmal Danke für die Info, ich schau mir das an!

    LG

    Gefällt mir

  3. Hi,
    deine Anleitung ist echt Klasse. danke für’s teilen im Netz !
    Trotzdem habe ich ein kleines Problem.

    Gebe ich jedoch info oder get ein, bekomme ich Command unknown.
    Warum, weiß ich nicht.

    Hast du eine Idde. ID passt.

    Kurioserweise bekomme ich eine Antwort, wenn ich:

    if (bot.message[i][5] = „get“))

    Das ist total unlogisch. Warum funktioniert das wohl nicht in der Ur-Version ?

    Viele Grüße und besten Dank

    André

    Gefällt mir

  4. Gute Idee, Kompliment, gute Anleitung. Ich komme nur leider nicht weiter.. Ich möchte durch den Bot eine Message an ein Telegram Channel senden. Wenn ich also in folgender Zeile :

    bot.sendMessage(adminID, „Türklingel“, „“);

    die adminID durch die ID des Channels ersetze kommt nichts an.

    Leider hilft mir die Telegramm-Api da auch nicht so richtig weiter. Den Bot habe ich schon dem Channel hinzugefügt so das er da Nachrichten posten kann. Die Meldung „Access-denied“ kommt auch…

    Hast du da nen heißen Tipp für mich?

    Gefällt mir

    1. Dass die ‚Access denied‘ msg kommt ist schon mal gut. Lass dir einfach mal die ID des Channels im seriellen Monitor ausgeben.

      Wirf einfach eine kurze Serial.print(…) unter die Zeile, in der die ‚Access denied‘ Medlung geschrieben wird:

      Serial.print(bot.message[i][4]);

      Ich hab’s jetzt nicht getestet, aber es sollte alles typenkompatibel sein.

      LG

      Gefällt mir

      1. Danke für den Tipp so habe ich einen neuen Gedankenanstoss bekommen… Ich musste in der Zeile:

        bot.sendMessage(„-1001151702000“, „Alarm“, „“);

        Der Channel ID ein – voranstellen. Nun funktioniert es!

        Gefällt 1 Person

  5. bin totaler Anfänger. Lerne mit deinem Code. Finde ihn super! DANKE für Deine Arbeit!
    Als erstes wollte ich Telegram mal ein paar Infos zuschicken lassen.
    Dabei bin ich über die IP Adresse gestoßen:
    Dies ist in deinem Code m.E. nicht ganz richtig: String(WiFi.localIP())
    da kommt eine nicht korrekte Nummer raus.

    Der richtige Wert kommt mit WiFi.localIP().toString()

    (Statt auf Monitor hab ich es als Telegram Nachricht verschickt.

    Gefällt mir

      1. Aquarium Wetter simulator – erste idee war alles aufm Lcd anzuzeigen an Infos. Aber ausgabe als Telegramm bot pluss steuerbar über Telegramm weniger knöpfe zum einstellen … und mehr platz für sensoren fürs wasser

        Gefällt mir

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden /  Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s