Das Versenden von Nachrichten über die CCU3 an das eigene Smartphone, ist ein wichtiges Thema bei Homematic. Wir haben hier im Blog bereits über die Möglichkeiten berichtet, PUSH Meldungen über Telegram oder PushOver zu versenden. Nun funktioniert das auch über die weit verbreitete Messenger App Whatsapp. Die Einrichtung und die Nutzung der API ist wirklich sehr einfach und möchte ich euch hier in diesem Artikel kurz beschreiben. Da ich so wenig Zusatzsoftware auf der CCU3 verwenden möchte, bietet sich diese Lösung an, weil es mit Hausmitteln der HomeMatic Zentralle funktioniert.

Allgemeines

In diesem Artikel möchte ich euch eine einfache Bedienungsanleitung zur Verfügung stellen, welche es euch ermöglicht, Nachrichten von eurer HomeMatic Zentrale CCUx oder einer Partnerlösung wie piVCCU oder RaspberryMatic zu versenden. In meiner Beschreibung zeige ich, wie ihr den sogenannten CallMeBot von WhatsApp aktiviert und wir ihr die dann freigeschaltet API verwenden könnt. Dazu müsst ihr die nachfolgend aufgeführten Schritte durchführen und in ein paar Minuten könnt ihr euch die erste Nachricht von eurer Zentrale an WhatsApp senden lassen.

CallMeBot API freischalten

Bitte die nachfolgenden Schritte durchführen:

  • Telefon Kontakt im Smartphone anlegen
    • Als Namen habe ich HomeMatic Whatsapp verwendet. Ihr könnt das natürlich beliebig anpassen.
    • Als Telefonnummer bitte +34 644 47 97 52 eingeben und den Kontakt speichern.
  • Zur App Whatsapp wechseln un die folgende Nachricht an den neu angelegten Kontakt versenden
    • I allow callmebot to send me messages
  • Kurze Zeit später erhaltet ihr von Whatsapp die folgende Nachricht
    • CallMeBot API *Activated* for +491234567890 Your apikey is: *111111*
    • Die erste Nummer ist eure Handnummer und die zweite ist der apikey. Beides habe ich hier geändert.
  • Ihr bekommt noch eine weitere Nachricht, die wie folgt aussieht
    • You can now send messages using the API.
    • https://api.callmebot.com/whatsapp.php?phone=+491234567890&text=This+is+a+test&apikey=111111
    • Auch hier habe ich die beiden Nummern für den Blog hier geändert.

Das war es dann auch bereits alles was ihr tun müsst um über den korrekten HTTPS Befehl eine Meldung an WhatsApp zu senden. Ihr könnt zum Testen die obige Zeile kopieren und im Browser reinkopieren und absenden. Wenig später bekommt ihr eure erste Mail von der neu angelegten WhatsApp ID zugesendet.

Programm zum versenden einer Meldung aus HomeMatic heraus

In diesem Absatz zeige ich euch zum einen den Inhalt des WebUI Programmes, sowie ein Skript, um den HTTPS Befehl von der HomeMatic Zentrale zu versenden. Ich habe hier bewusst auf das HomeMatic Zusatzsoftware CUx-Daemon (kurz CUxD) verzichtet, weil diese nicht erforderlich ist.

Skript

Wie ihr oben sehen könnt, muss für ein Leerzeichen ein + eingegeben werden.

Programm

Nachfolgend seht ihr das dazugehörende WebUI Programm:

Oben seht ihr einmal das normale Bild eines WebUI Programmes und zweitens den „Ausdruck“ mit der Zusatz App „Programme drucken“.

Fazit

Ich verwende diese Möglichkeit mich über WhatsApp von der HomeMatic Zentrale informieren zu lassen, jetzt bereits seit zwei Wochen. Bis auf einen Tag, wo es etwas länger gedauert hat, sind die Meldungen innerhalb weniger Sekunden gekommen. Zum Vergleich habe ich ein Programm erstellt, um die Geschwindigkeit zwischen Telegram und WhatsApp zu vergleichen. Telegram ist meist ein paar Sekunden schneller. Aber das spielt eigentlich keine Rolle. Viel Spass beim Ausprobieren. Diese einfache Möglichkeit lässt sich sicherlich auch bei weiteren Smart Home Systemen verwenden, beispielsweise auch bei KNX.

close

Melde Dich zu unserem Newsletter an!

Wir senden keinen Spam! Erfahre mehr in unserer Datenschutzerklärung.

15 Kommentare
  1. Matthias Richstein
    Matthias Richstein sagte:

    Nachdem ich das Script ebenfalls kopiert und auf meine CCU3 abgestimmt habe sowie auch auf die Formatierung geachtet habe, tut sich auch bei nichts.
    Den fehlenden Strich von Tino in der letzten Zeile kann ich nicht erkennen bzw. sehen.
    Trotz allem ein Dank an Werner für den Tip.
    Wer kann helfen?
    Gruss
    Matthias

    Antworten
  2. Michael Jansen
    Michael Jansen sagte:

    Nachdem ich den Skript neu kopiert habe, sieht er in meiner CCU so aus:

    ! Push Versand Whatsapp – INFO: Waschmaschine ist fertig !!!string stderr;string stdout;string url=“\“https://api.callmebot.com/whatsapp.php?phone=+4915711111111&text=INFO:+Waschmaschine+ist+fertig!&apikey=111111\““;system.Exec( „wget –no-check-certificate -q -O – „#url, &stdout, &stderr);

    Aber es passiert rein gar nichts. Wo steckt denn jetzt noch der Fehler?

    Beste Grüße

    Michael

    Antworten
  3. Michael Jansen
    Michael Jansen sagte:

    Hallo Tino,

    ich kann beim besten Willen keinen einzelnen zusätzlichen Strich in der von Dir geposteten Zeile sehen, wo soll der sein?

    Gruss
    Michael

    Antworten
    • Mathias
      Mathias sagte:

      Ups, das ist ja das, was ich im homematic-forum losgetreten habe.
      Und weiß hier zufällig jemand, wem WhatsApp gehört?
      Entschuldige bitte meine Datenschutz-Bedenken, aber Amazon, Facebook und Google sind die letzten, denen ich meine Daten anvertrauen würde.

      Antworten
      • Manuel
        Manuel sagte:

        Spannende Einstellung:

        – Callmebot gehört NICHT zu Whattsapp
        – es liegt ja an dir, deine Nachrichten kryptisch zu gestalten die du versendest

        Antworten
  4. Tino Bühner
    Tino Bühner sagte:

    Na ja … der Autor mag im Urlaub sein oder sonstwie eingebunden zu sein … ist ja ein Hobbyblog und keine Bundsbehörde.

    Aber die Lösung des Problems liegt in der letzten Zeile, da fehlt ein einzelner Strich:
    system.Exec(„wget –no-check-certificate -q -O – „#url, &stdout, &stderr);

    Anführungsstriche unten DÜRFEN nicht sein, da hat die Blogsoftware den Code leider aufgehübscht und ihn dann nicht mehr funktionieren lassen alle Anführungszeichen sind “ keine „ …. wenn man Copy & Paste macht muss man unter Umständen die Ausrufezeichen neu setzen, das hängt mit der Internetseite und/oder der Schriftart zusammen aber dann sollte es gehen wenn man den Zusatzstrich in der letzten Zeile setzt

    An den Autor: Vielen Dank für dieses Script …. ich überlege nun mein E-Mail Addon zu löschen

    Antworten
    • Werner
      Werner sagte:

      Hallo Tino,
      Danke für deine Antwort. Es war genauso wie du geschrieben hast. Ich habe heute die Formatierung im Workpress verändert und nun wird der Code korrekt dargestellt. Das war bisher nur in der Entwurf Version, sobald der Beitrag Online ging, wurde die Zeichen verändert.
      War mir nicht aufgefallen und die letzten Tage war ich „out of Order“.
      Funktioniert in meiner Anlage jetzt seit gut 4 Wochen ohne Probleme.
      Gruss Werner

      Antworten
  5. Michael Jansen
    Michael Jansen sagte:

    Hallo,

    ich habe das gleiche Problem wie Uwe und Marcus, das einfache Entfernen der %Zeichen und einsetzen der eigentlichen Zeichen bringt nichts, zumal ich es nicht hin bekomme, die Anführungsstriche „unten“ in die letzte Zeile einzufügen.
    VG
    Michael

    Antworten
    • Werner
      Werner sagte:

      Hallo Michael,
      da hat mir WordPress einen Streich gespielt und den Code verändert. Ich habe heute die Formatierung geändert, einfach kopieren und nun sollte es funktionieren.
      Gruss Werner

      Antworten
  6. Uwe Weiß
    Uwe Weiß sagte:

    Hallo Werner,

    ich habe folgendes Script eingegeben:

    ! Push Versand Whatsapp – INFO: Alarmanlage EXTERN SCHARF geschaltet !!!
    string stderr;
    string stdout;
    string url=“\“https://api.callmebot.com/whatsapp.php?phone=+4917xxxxxxxx&text=INFO:+Alarmanlagen+EXTERN+SCHARF+geschaltet!&apikey=1xxxxx\““;
    system.Exec(„wget –no-check-certificate -q -O – „#url, &stdout, &stderr);

    Nach dem speichern wird das Script automatisch wie folgt geändert, so dass das Script nicht funktioniert.

    ! Push Versand Whatsapp %u2013 INFO: Alarmanlage EXTERN SCHARF geschaltet !!!
    string stderr;
    string stdout;
    string url=%u201C\%u201Chttps://api.callmebot.com/whatsapp.php?phone=+4917xxxxxxxx&text=INFO:+Alarmanlagen+EXTERN+SCHARF+geschaltet!&apikey=1xxxxx\%u201C%u201C;
    system.Exec(%u201Ewget %u2013no-check-certificate -q -O %u2013 %u201E#url, &stdout, &stderr);

    Was mache ich falsch bzw. was kann ich tun?

    Vielen Dank!

    Gruß
    Uwe

    Antworten
    • Werner
      Werner sagte:

      Hallo Markus,
      da hat mir WordPress einen Streich gespielt und den Code verändert. Ich habe heute die Formatierung geändert, einfach kopieren und nun sollte es funktionieren.
      Gruss Werner

      Antworten
  7. Marcus
    Marcus sagte:

    Hallo,

    ich gebe folgenden String ein:

    ! Push Versand Whatsapp – INFO: Alarmanlage EXTERN SCHARF geschaltet !!!
    string stderr;
    string stdout;
    string url=“\“https://api.callmebot.com/whatsapp.php?phone=+491xxxxxxxx&text=INFO:+Alarmanlagen+SCHARF+geschaltet!&apikey=12xxxx\““;
    system.Exec(„wget –-no-check-certificate -q -O – „#url, &stdout, &stderr);

    und bekomme folgende Fehlermeldung:

    Error 1 at row 4 col 13 near ^\https://api.callmebot.com/whatsapp.php?phone=+491xxxxxxxxxxx&text=INFO:+Alarmanla
    Parse following code failed:
    ! Push Versand Whatsapp INFO: Alarmanlage EXTERN SCHARF geschaltet !!!
    string stderr;
    string stdout;
    string url=\https://api.callmebot.com/whatsapp.php?phone=+491xxxxxxxxxx&text=INFO:+Alarmanlagen+SCHARF+geschaltet!&apikey=12xxxx\;
    system.Exec(wget -no-check-certificate -q -O #url, &stdout, &stderr);

    Was könnte das Problem sein ?

    Gruß und Danke

    Antworten
    • Werner
      Werner sagte:

      Hallo Markus,
      da hat mir WordPress einen Streich gespielt und den Code verändert. Ich habe heute die Formatierung geändert und nun sollte es funktionieren.
      Gruss Werner

      Antworten
  8. Mike Siegenthaler
    Mike Siegenthaler sagte:

    Hallo Werner
    Super, vielen Dank, soeben erfolgreich getestet!
    Dein code habe ich mit copy past in mein Scrypt gepasted, habe dann viele zusätzliche falsche „%“ Zeichen erhalten. Aber als ich die korrigierte, funktionierte alles.$
    Well done!
    Gruss
    mike

    Antworten

Hinterlasse einen Kommentar

An der Diskussion beteiligen?
Hinterlasse uns deinen Kommentar!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.