Benachrichtigung: Array als Wert versenden

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Hi all,

geht es irgendwie einzustellen, dass Synology ein Array statt eines Einzelwertes versendet?

So soll die Nachricht aussehen. Das folgende gezeigte Beispiel ist NICHT mit Synology erstellt:
1685534542855.png

So seht die Nachricht aus wenn ich es in Synology unter System / Benachrichtigungen (über die GUI) einstelle:
1685534811277.png
1685534657593.png1685534777230.png

Könnte mir jemand Rat geben, wie ich dort ein Array generiere?


Grüße
T.
 
Zuletzt bearbeitet:

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
Ich kenne die Details der Benachrichtigung nicht.
Was hast du bisher versucht dass es als Array angezeigt wird?
Wenn es nur einen Recipient gibt, weshalb sollte dann ein Array angelegt werden?
Wurde schon versucht mehrere Empfänger einzurichten um zu prüfen ob in diesem Fall ein Array angelegt wird?

So soll die Nachricht aussehen:
Wie wurde denn diese Nachricht erstellt? Scheinbar nicht über das WebUI.
 

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Hi,

sorry, das war nicht klar rüber gebracht. Das erste Beispiel ist einfach ein curl, welches ich abgesetzt habe. Es ist NICHT mit Synology erstellt.

Code:
curl -X POST -H "Content-Type: application/json" "http://192.168.10.140:1880/synology" -d "{\"message\": \"Test Message 1\", \"number\": \"+491758033333\", \"recipients\": [ \"group.UWVOdkw3TitZdzBjK0tRRjA0SG50=\" ]}"

Es handelt sich um die API von der Signal-App. Ich will Benachrichtigungen in eine Signal Group abestzen. Die Signatur der API ist so, dass dort ein Array verwendet werden muss. Ohne Array geht es nicht.
 
Zuletzt bearbeitet von einem Moderator:

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
Okay dann sind es hier zwei unterschiedliche Ansätze. Einmal das was du gerne hättest bzw. erwartest und zum anderen das was Synology liefert.
Meine Frage wäre jetzt, weshalb du an dieser Stelle explizit ein Array erwartest? Was möchtest du damit bezwecken?
 

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Ich bin gezwungen ein Array zu nutzen, weil die API, die ich anspreche dieses Array erwartet. Wenn ich den POST Request ohne ein Array absetze, erhalte ich folgende Meldung von meiner API:

Code:
{"error":"Couldn't process request - invalid request"}

Was möchte ich bezwecken? Ich würde gerne Synology so einrichten, dass es Benachrichtigungen an meine "Monitoring" Signal App gruppe sendet. Ich benutze die folgende Signal API: https://github.com/bbernhard/signal-cli-rest-api.
 
Zuletzt bearbeitet von einem Moderator:

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
Verstehe, jetzt wird es mir klar was du vorhast.
Hast du schon versucht den Wert recipients auch als Array anzugeben so wie du es in deinem CLI Beispiel mit curl gezeigt hast?
[ "group.UWVOdkw3TitZdzBjK0tRRjA0SG50=" ]
 

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Hi @luddi

ja. Das habe ich auch probiert. Folgend die Screenshots für dein Input. Ich wette man muss die Klammern irgendwie geschickt escapen, damit es klappt. Ich komme aber nicht drauf, wie.


1685605304444.png
1685605426238.png

Falls sich jemand hier fragt, wie ich die Nachrichten abfange, die Synology versendet: ich nutze node-red, und schieße die Test-Nachrichten zunächst dagegen. Das Node-Red läuft als docker container auf der Synology. Könnte ja sein, dass diese Information irgend jemandem hilft, der in ein ähnliches Problem hineinläuft:

1685605651578.png

T.
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
Ich wette man muss die Klammern irgendwie geschickt escapen, damit es klappt.
Was hast du denn bisher alles versucht?

Mir fällt da spontan nur folgendes ein:
\[ "group.UWVOdkw3TitZdzBjK0tRRjA0SG50=" \]
oder evtl.
'[ "group.UWVOdkw3TitZdzBjK0tRRjA0SG50=" ]'
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
Das ist aber echt sch…ade 💩
Sieht wirklich so aus als würde alles was in dem Feld Wert eingetragen wird als String interpretiert.

Dann würde ich an deiner Stelle ein Ticket bei Synology erstellen.
 

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Ja, ist echt schade.
Ich bin bei Synology nicht registriert und wüsste auch nicht wo man ein Tickets einstellt. Ich glaube, ich forke einfach das Repo von bbernhard und mache mein eigenes release von dem Signal Wrapper. Müsste ja nur das eine POST fixen. Geht wahrscheinlich schneller als auf das Fix von Synology zu warten.
 

luddi

Benutzer
Sehr erfahren
Mitglied seit
05. Sep 2012
Beiträge
3.263
Punkte für Reaktionen
610
Punkte
174
[...] ich forke einfach das Repo [...] Geht wahrscheinlich schneller als auf das Fix von Synology zu warten.
Davon bin ich überzeugt ;)
Zudem müssten man Synology erst einmal davon überzeugen und sie müssten das Problem erst einmal verstehen. Also kann das schon sehr lange dauern.
 

Train

Benutzer
Mitglied seit
17. Mrz 2022
Beiträge
7
Punkte für Reaktionen
1
Punkte
3
Falls jemand irgendwann mal über diesen Thread stolpert und Synology Notifications / Benachrichtigungen an seine Signal App versenden möchte, kann er mich gerne anschreiben. Ich liefere ihm eine umgebaute Version der signal-cli-rest-api von bbernhard (https://github.com/bbernhard/signal-cli-rest-api) die im reciepients Attribut nur einen String erwartet. Mit deren Hilfe lassen sich Signal messages mit Synology Boardmitteln versenden.

Grüße
T.
 
  • Like
Reaktionen: luddi


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat