📬 NTFY.sh: Push Nachrichten an iOS, Android, PC, Command-Line, E-Mail & Telefon

Begonnen von Torxgewinde, 09 Februar 2024, 15:35:12

Vorheriges Thema - Nächstes Thema

byterazor

hi,

sorry ich benutze eine eigene Instanz mit Authentifizierung. Habe nicht daran gedacht, dass das ja bei ntfy.sh anders ist ...
Sollte gefixt sein.
Fehlermeldungen wären mir aber über ein Issue lieber, geht auch anonym ohne Anmeldung. Hab das hier nur deshalb mitbekommen weil die Seite noch auf meinem Tablet offen war ....

bis denn

Torxgewinde


Gisbert

Hallo,

ich nutze die Definition aus dem Anfangspost. Es funktioniert auch soweit alles bis auf die Tatsache, dass Meldungen mit einer Verzögerung von 2~3 Stunden eintreffen.

Woran könnte es liegen?

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

isy

Hallo Gisbert,
ich habe den Client auf iOS 17.3.1 und auf Android 9 und 13 Geräten installiert.
Auf allen kommt die Meldung sofort oder nur wenige Sekunden (Apple) verzögert.

Priorität im FHEM ist "high" eingestellt.

VG Helmut
Ein Weg wird erst zu einem Weg, wenn man ihn geht

Gisbert

Hallo Helmut,

ich hatte priority auf max stehen. Mit high oder max kommen Testnachrichten im Bruchteil einer Sekunde aufs Handy. Daran liegt es vermutlich eher nicht.
Vielleicht liegt es an der Definition (notify), mit der ich Nachrichten versende. Ich schau mir die logs dazu an, am besten verbose vorher auf 5 stellen.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome


byterazor


mähschaf

Guten Abend,

erst einmal vielen Dank für die tolle Arbeit!

Was mich interessieren würde: Gibt es beim Senden der Nachricht die Möglichkeit - ähnlich wie mit @TOPIC das defaultTopic - auch die defaultPriority zu überschreiben? Ich habe dazu nichts gefunden...

Vielen Dank und schöne Ostertage,
Martin

habl

Zitat von: mähschaf am 28 März 2024, 21:32:24Gibt es beim Senden der Nachricht die Möglichkeit - ähnlich wie mit @TOPIC das defaultTopic - auch die defaultPriority zu überschreiben?

wenn Du das  Modul von byterazor nutzt:

attr NTFY defaultPriority default
VG
  habl

mähschaf

Hallo,

ich habe mir den gut verständlichen Code auf GitHub angesehen. Die defaultPriority kann über ein vorangestelltes Ausrufezeichen mitgegeben werden.

Also z. B. ... publish @TOPIC !low blabla

Frohe Ostern!
Martin

Torxgewinde

Ich hatte nun endlich mal einen Anlass Dominik Meyers Device zu testen und vielleicht ist diese Zusammenfassung hier auch gut aufgehoben:

Um NTFY.sh einzurichten:
update add https://rm.byterazor.de/upd-fhem-ntfy/controls_byterazor-fhem-ntfy.txt
update
shutdown restart
Ein Device anlegen mit:
defmod NTFY0 NTFY_CLIENT https://ntfy.sh
attr NTFY0 defaultPriority default
attr NTFY0 defaultTopic FreundlichenGruesseAnAlleFHEMNutzer
attr NTFY0 room Experimente

Senden einer Nachricht mit einem curl-Befehl:
curl -d "Your message content here" \
     -H "Title: Bla" \
     https://ntfy.sh/FreundlichenGruesseAnAlleFHEMNutzer
Das Gleiche nur mit WGET:
wget --method=POST \
     --body-data="Your message content here" \
     --header="Title: Bla" \
     https://ntfy.sh/FreundlichenGruesseAnAlleFHEMNutzer -q -O -
Oder, wenn es ein reines HTTP-GET als Webhook sein soll:
https://ntfy.sh/FreundlichenGruesseAnAlleFHEMNutzer/publish?message=Your%20message%20content%20here&title=Bla

Oder, aus FHEM an den Server eine Nachricht senden mit:
set NTFY0 publish @FreundlichenGruesseAnAlleFHEMNutzer Testnachricht!

Im Event-Log taucht dann folgendes auf, darauf kann man mit notify oder DOIF reagieren:
2024-10-29 19:01:16.714 NTFY_TOPIC NTFY0_FreundlichenGruesseAnAlleFHEMNutzer nrReceivedMessages: 7
2024-10-29 19:01:16.715 NTFY_CLIENT NTFY0 subscriptions: FreundlichenGruesseAnAlleFHEMNutzer
2024-10-29 19:01:16.715 NTFY_CLIENT NTFY0 nrReceivedMessages: 7
2024-10-29 19:01:16.715 NTFY_CLIENT NTFY0 lastReceivedTitle: Bla
2024-10-29 19:01:16.715 NTFY_CLIENT NTFY0 lastReceivedData: Your message content here
2024-10-29 19:01:16.715 NTFY_CLIENT NTFY0 lastReceivedRawMessage: {"id":"oU5iqrdSFoeY","time":1730224876,"expires":1730268076,"event":"message","topic":"FreundlichenGruesseAnAlleFHEMNutzer","title":"Bla","message":"Your message content here"}

Testen kannst man hier:
https://ntfy.sh/FreundlichenGruesseAnAlleFHEMNutzer
https://demo-fhem.cooltux.net/fhem?detail=NTFY0 <-- Begrenzt gültiger Link
https://ntfy.sh/FreundlichenGruesseAnAlleFHEMNutzer/publish?message=Blubb&title=Bla

ReneR1986

Nach ein paar Tagen wird nicht mehr auf die Subscriptions reagiert.
Nur ein neu anlegen des Moduls hat bisher das Problem immer lösen können.

Internals:
   CFGFN     
   DEF        https://ntfy.sh password=XX user=XX
   FUUID      67717943-f33f-db0c-a5db-0b141b4f528e6772
   LASTInputDev NotifyClient_iyiDRZLk4Jks34Sa
   MSGCNT     1
   NAME       NotifyClient
   NR         437
   NotifyClient_iyiDRZLk4Jks34Sa_MSGCNT 1
   NotifyClient_iyiDRZLk4Jks34Sa_TIME 2024-12-29 17:31:45
   SERVER     https://ntfy.sh
   STATE      passive
   TYPE       NTFY_CLIENT
   USERNAME   XX
   VERSION    0.0.1
   eventCount 3
   READINGS:
     2024-12-29 17:31:45   Titel           Test123
     2024-12-29 17:31:45   lastReceivedData Hoftor
     2024-12-29 17:31:45   lastReceivedRawMessage {"id":"eA2G3dpAW6ji","time":1735489905,"expires":1735533105,"event":"message","topic":"XX","title":"Test123","message":"Hoftor"}
     2024-12-29 17:31:45   lastReceivedTitle Test123
     2024-12-29 17:31:45   lastReceivedTopic XXX
     2024-12-29 17:31:45   nrReceivedMessages 1
     2024-12-29 17:30:59   state           passive
     2024-12-29 17:31:45   subscriptions   XXX
   helper:
     PASSWORD   XXX
Attributes:
   defaultPriority default
   defaultTopic XXX
   group      Push Nachrichten
   userReadings Titel:lastReceivedRawMessage:.* { my $VAR=ReadingsVal("NotifyClient","lastReceivedRawMessage",0);$VAR =~ /"title":"(.*?)"/;return "$1";}

Torxgewinde

Hi @ReneR:
Das hatte ich auch mal (https://forum.fhem.de/index.php?topic=139621.msg1323988#msg1323988), allerdings hatte @ByteRazor das in seinem GIT bereits gefixt. Hast du die neuste Version von ihm? Magst du sonst ggf. dort ein Ticket anfragen?

Alternativ hatte ich mir mit einem zusammengezimmerten Dummy mit Websocket geholfen, vielleicht gefällt dir das ja auch (siehe auch oben verlinkter Post). Wenn du kannst, solltest du ByteRazors Lösung bevorzugen, die ist weniger "hacky" und mehr im Sinne von FHEM.

ReneR1986


Torxgewinde

Super, und falls das wieder Stress macht mal meinen Snippet ausprobieren und ggf. auch Byterazor bitten da nochmal nach zu schauen. Er ist NICHT hier im Forum aktiv, deswegen am besten direkt kontaktieren über seine Webseite - der ist IMHO ganz offen für sowas.