Benachrichtigungen im Fehlerfall über Telegram, Pushover/ Messages in case of error via telegram/pushover

EinEinfach

Well-known member
Hallo zusammen,

ich wollte schon seit langem an das Thema ran. War im Endeffekt viel einfacher als ich gedacht habe.
Was haben wir jetzt... CaSSAndRA schickt euch eine Nachricht über Telegram, wenn der Robot Offline oder Error Zustand hat.

photo1698071284.jpeg

Wie geht das? Als erstes braucht Ihr natürlich Telegram. Was das ist und wie das geht beschreibe ich nicht.

1. Startet telegram und sucht nach BotFather
2. Erstellt einen neuen Bot (es gibt genug Anleitungen im Web wie das geht)
3. Lasst euch vom BothFather den Token für den neuen Bot geben
4. Sucht im telegram nach eurem Bot und schreibt ihm eine belibige Nachricht.
5. Wechselt zu CaSSAndRA und geht zu Settings -> Message service
6. Klickt Telegram und tägt unter Token den Token aus dem Punkt 3
7. Lässt CaSSAndRA den Backendserver neuestarten.
Fertig!
P.S. Unter dem Menupunkt Telegram könnt ihr eine Testnachricht senden und schauen ob es bei euch ankommt.
----------------------------------------------------------------------------------------------------------------------------------------------------------

Hello everyone,
I've been wanting to do this for a long time. In the end, it was much easier than I thought.
So, what do we have now... CaSSAndRA will send you a message via Telegram when the robot is offline or in an error state.

photo1698071284.jpeg

How do you set this up? First, you'll need Telegram, and I won't go into detail about what that is and how to get it.

1. Start Telegram and search for BotFather.
2. Create a new bot (there are plenty of tutorials on the web on how to do this).
3. Have BotFather provide you with the token for the new bot.
4. Search for your bot in Telegram and send it any random message.
5. Switch to CaSSAndRA and go to Settings -> Message service.
6. Select Telegram and enter the token from step 3.
7. Let CaSSAndRA restart the backend server.
You're done!
P.S. Under the Telegram menu, you can send a test message to check if it reaches you.
 
Zuletzt bearbeitet:
Hi!
Um hier mal Feedback zu geben:
Ich finde das prinzipiell super! Nur bin ich absolut kein Freund dieser Schwurbelplattform ;)
Wenn ich das alles endlich mal zum Laufen bringe werde ich wohl eher die MQTT-Schnittstelle nutzen und über IOBroker und PushOver die Fehler aufs Mobiltelefon pushen.

Gruß

David
 
Gleich getestet:
API Token und UserKey eingetragen, Senden gedrückt.
"INFO Message could not send to operator"
Cassandra auf ubuntu im Visual Studio gestartet, Browser mit gleichem User kommt ins Internet.
Pushover-Application funktioniert in anderer Anwendung/Gerät (iobroker raspi)
 
2024-02-26 23:18:51 DEBUG Starting new HTTPS connection (1): api.pushover.net:443
2024-02-26 23:18:51 INFO Starting thread for data storage
2024-02-26 23:18:51 INFO Starting schedule thread
2024-02-26 23:18:51 INFO Subscribed to ardumower/Ardumower/props
2024-02-26 23:18:51 INFO Subscribed to ardumower/Ardumower/online
2024-02-26 23:18:53 DEBUG https://api.pushover.net:443 "POST /1/messages.json HTTP/1.1" 400 None
2024-02-26 23:18:53 INFO Message could not send to operator
Dash is running on http://0.0.0.0:8050/

Code 400 (Bad Request)
Eilt nicht. Wollte es nur testen. Bin morgen auch verhindert.
Aber: !!!
Wäre auch hier in settings schön, nach erneutem Formularaufruf die Parameter zu sehen und den Testknopf drücken zu können. In Connection ebenso und grundsätztlich in allen settings.
 
Den Testknopf kannst du drücken, der funktioniert auch ohne eingetragene Sachen zu sehen
Hallo, das absenden der Testnachricht geht bei mir nicht (Telegram). Die eingegebenen Parameter werden nach dem Speichern und erneutem Aufruf der Settings auch nicht angezeigt. Bei Connection sieht man auch nicht, welche zur Zeit genutzt wird Vielleicht ginge das noch zu programmieren?
Danke und Grüße
 
Hallo, das absenden der Testnachricht geht bei mir nicht (Telegram).
Was steht im Log
Die eingegebenen Parameter werden nach dem Speichern und erneutem Aufruf der Settings auch nicht angezeigt.
Das ist richtig und gewollt
Bei Connection sieht man auch nicht, welche zur Zeit genutzt wird Vielleicht ginge das noch zu programmieren?
Ebenfalls gewollt, du wechselst doch nicht täglich deine Verbindungsart und weißt was du nutzt
 
Hattesst du mal den Grund dafür genannt, weshalb das so gewollt ist? Die Usability ist an der Stelle nicht besonders hoch.

Ähnlich ist es bei Umbenennungen: Auch hier findet man keine Vorgabe. Dein Argument, dass der Browser das sowieso macht, zieht nur bei DEINEN Einstellungen des Browsers.
 
Hattesst du mal den Grund dafür genannt, weshalb das so gewollt ist? Die Usability ist an der Stelle nicht besonders hoch.
Passwörter und sonstige sensible Daten sollen vor neugierigen Blicken geschützt werden. Wenn man es sich anschauen oder ändern will, soll man sich bewusst dazu entscheiden und das entsprechende Radiobutton klicken
 
Was, außer dem Passwort ist da sensibel? Ich halte es für sinnvoller, die Vorauswahl anzuzeigen, damit man weiß, was in den Settings steht.

Und den Rest erklärt es auch nicht. Naja...
 
Ich habe nicht alle Infos, da ich ggf. gar nicht weiß, was ich gewählt habe. Man muss hier an die denken, die ihr System nicht so gut kennen und nach Monaten wieder in die Settings schauen. Die wissen gar nicht, welche Option sie vor langer Zeit gewählt haben.
 
Bezüglich Telegram, ist das ein Schreibfehler und du meinst BotFather? Unter Bothfather finde ich irgendwie nur sehr windig erscheinende Treffer. 😁

Hab eben mal versucht das mit BotFather ans laufen zu bekommen, aber Cassandra schickt irgendwie nix raus.
Hab den Bot erstellt, geadded und kann auch via HTTP Link mir Nachrichten schicken, das klappt alles.

Beispiel Link:
2024-04-16-11-32-07-api-telegram-org-bot6805090438-AAEwzi0-CQa-YRXin-YB0-J2-Kaz-Qyh-bhe6f-RQ-send-Me.png


Cassandra Config sieht dann so aus:
2024-04-16-11-28-10-Einstellungen.png


Log zeigt nach dem Reboot folgendes:
2024-04-16-11-29-08-Log.png


Wenn ich dann aber die Testnachricht anklicke... passiert gar nichts im Log und es kommt auch keine Nachricht an.

Worauf bezieht sich die Meldung mit dem commcfg.json File?
Hatte zu erst weil ich nicht genau wusste was er da als ChatID wollte den Botnamen drin, da ist dann aber auch der Message service nicht erfolgreich gestartet.
In dem File src/data/user/commcfg.json im Linux steht aber weiterhin folgendes, also da scheint er keine Altlasten drin zu haben.

Code:
    "MESSAGE_SERVICE": null,
    "TELEGRAM": [
        {
            "TOKEN": null
        },
        {
            "CHAT_ID": null
        }
    ],

Irgendeine Idee? :)
 
Oben