Growler - Ein GrowlServer für den DSM

Status
Für weitere Antworten geschlossen.

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
29.04.2015 - Growler 0.7-050 beta

  • korrigiert: Autorisation unter DSM 5.x funktioniert nun auch mit aktivierter Option 'Schutz gegen Cross-Site-Request-Forgery-Attacken verbessern'
  • korrigiert: Farbtag wird nur übermittelt, wenn eine Farbe für den Benachrichtigungstyp eingestellt ist
  • korrigiert: URL und Cache-Verhalten in Verbindung mit Pseudo-Klassennamen, App-Icon und Titel werden nun korrekt im Notification Messenger und in den DSM-Benachrichtigungen (DSM < 5) angezeigt
  • korrigiert: Growler konnte in den meisten Fällen (DSM 5.x) nicht gestoppt werden, da sich das Verhalten von killall in busybox geändert hat
  • korrigiert: Sprachdateien befinden sich nun im Verzeichnis 'texts', Problem mit app:app_name
  • geändert: Benachrichtigungssymbole verwenden nun das Standardanwendungssymbol, wenn keine Benachrichtigungssymbole durch die Anwendung übermittelt wurden. Ist kein Anwendungssymbol verfügbar, wird das Standard-Benachrichtigungssymbol verwendet
  • hinzugefügt: Neues Farbschema, nur DSM 5.x
  • hinzugefügt: Erkennung der eingestellten Browsersprache
  • hinzugefügt: Konfiguration für Pseudoklassennamen registrierter Growler App-Symbole damit diese im Notification Messenger und DSM <5 angezeigt werden
  • hinzugefügt: automatische Anpassung der Größe der registrierten Growler App-Symbole auf 16x16 Pixel
  • kleinere Bugs gefixed
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
03.05.2015 - Growler 0.7-052
  • geändert: Ressourcen-Handling, Growler kann nun vollständig mit x-growl-resource für Anwendungs- und Benachrichtigungssymbolen umgehen
  • hinzugefügt: Rücksetzen der Benachrichtigungfarbe über das Kontextmenü
  • hinzugefügt: Möglichkeit zur Sicherung und Wiederherstellung der Konfiguration über DSM Datensicherung & Replikation
  • hinzugefügt: wahlweises Entfernen der Konfiguration bei der Deinstallation

Die schon sehr lange Betaphase beendet.
 
Zuletzt bearbeitet:

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
14.05.2015 - Growler 0.7-053

  • korrigiert: Konfiguration für Pseudoklassennamen registrierter Growler App-Symbole, vorhandene Einträge wurden fälschlicherweise bei jeder Registrierung überschrieben
 

cp389

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
532
Punkte für Reaktionen
5
Punkte
44
Hi QTip,

leider streikt der Growler wieder seit einiger Zeit. Ich hab gar nicht genau mitbekommen, wann er seinen Dienst eingestellt hat, aber es wäre durchaus denkbar, dass es seit dem letzten Update ist - das schließe ich zumindest aus dem Log.
Growler lässt sich im Paketzentrum nicht mehr starten und das Log zeigt folgende Einträge:

Rich (BBCode):
Fri Jul 31 17:34:37 2015 growld[8134]: ERROR: Died at /var/packages/growler/target/lib/Image/Resize.pm line 28.
Fri Jul 31 17:34:37 2015 growld[8134]: WARN: Use of uninitialized value $search_for in exists at ./growld line 706.
Fri Jul 31 17:34:37 2015 growld[8134]: WARN: Use of uninitialized value $ext in concatenation (.) or string at ./growld line 902.
Fri Jul 31 17:34:37 2015 growld[8134]: WARN: Use of uninitialized value $ext in concatenation (.) or string at ./growld line 899.
Fri Jul 31 17:34:37 2015 growld[8134]: WARN: Use of uninitialized value $path in pattern match (m//) at ./growld line 958.
Fri Jul 31 17:34:37 2015 growld[8134]: WARN: Use of uninitialized value $app_icon in pattern match (m//) at ./growld line 889.
Fri Jul 31 17:34:37 2015 growld[8134]: INFO: Daemon started

...

Sun May 17 18:09:58 2015 growld[23863]: ERROR: Died at /var/packages/growler/target/lib/Image/Resize.pm line 28.
Sun May 17 18:09:58 2015 growld[23863]: WARN: Use of uninitialized value $search_for in exists at ./growld line 706.
Sun May 17 18:09:58 2015 growld[23863]: WARN: Use of uninitialized value $ext in concatenation (.) or string at ./growld line 902.
Sun May 17 18:09:58 2015 growld[23863]: WARN: Use of uninitialized value $ext in concatenation (.) or string at ./growld line 899.
Sun May 17 18:09:58 2015 growld[23863]: WARN: Use of uninitialized value $path in pattern match (m//) at ./growld line 958.
Sun May 17 18:09:58 2015 growld[23863]: WARN: Use of uninitialized value $app_icon in pattern match (m//) at ./growld line 889.
Sun May 17 18:09:58 2015 growld[23863]: INFO: Daemon started
Sun May 17 18:09:51 2015 growld[16149]: INFO: Caught SIGKILL; exiting
Sun May 17 18:09:06 2015 growld[16149]: INFO: Accepted new gntp client connection from: 192.168.243.5, 47381
Sun May 17 09:02:15 2015 growld[16149]: INFO: Accepted new gntp client connection from: 192.168.243.5, 36924
Sun May 17 09:01:52 2015 growld[16149]: INFO: SERVER waiting for client connection
Sun May 17 09:01:52 2015 growld[16149]: INFO: Daemon started

Als DSM läuft bei mir nach wie vor DSM 5.0-4493 Update 3.
Ich wäre Dir super dankbar, wenn Du Dir das mal anschauen könntest.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
Hi,
eines deiner registrierten Apps in Growler besitzt kein App-Icon. In der zuletzt von mir hinzugefügten Routine fehlen 2 Abfragen, damit auch Apps mit fehlendem Icon mit einem Pseudoklassennamen registriert werden können.
Wenn du dir zutraust diese relativ kleine Änderung selbst durchzuführen, dann folge den Anweisungen:

  • Growler beenden
  • auf der Diskstation per Telnet oder SSH als root mit Passwort vom admin anmelden
  • die Datei /var/packages/growler/target/sbin/growld mit einem Linux-tauglichem Editor öffnen
  • in Zeile 888 das
    Rich (BBCode):
    my $app_icon = trim($app_data->{'apps'}[$j]->{'headers'}[0]{'Application-Icon'});
    in
    Rich (BBCode):
    my $app_icon = (defined $app_data->{'apps'}[$j]->{'headers'}[0]{'Application-Icon'} ? trim($app_data->{'apps'}[$j]->{'headers'}[0]{'Application-Icon'}):'application.png');
    ändern
  • in Zeile 914 das
    Rich (BBCode):
    my $application_icon = trim($register{'headers'}[0]{'Application-Icon'}) if (defined $register{'headers'}[0]{'Application-Icon'});
    in
    Rich (BBCode):
    my $application_icon = (defined $register{'headers'}[0]{'Application-Icon'} ? trim($register{'headers'}[0]{'Application-Icon'}):'application.png');
    ändern
  • Datei sichern

Falls du dir das nicht zutraust, must du leider noch ein wenig warten, sorry
 

cp389

Benutzer
Mitglied seit
07. Jan 2014
Beiträge
532
Punkte für Reaktionen
5
Punkte
44
Das hat super funktioniert. Danke.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
Freut mich das es nun wieder funktioniert.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
23.08.2015 - Growler 0.7-054
  • korrigiert: Konfiguration für Pseudoklassennamen registrierter Growler App-Symbole, Growler Absturz während Start beim Speichern eines nicht existierenden App-Icon's
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
05.09.2015 - Growler 0.7-055

  • korrigiert: Konfiguration für Pseudoklassennamen registrierter Growler App-Symbole, Benachrichtigungen von Growler Anwendungen zeigten im DSM-Tray nur "Die Nachricht ist nicht mehr verfügbar"
 

sea3pea0

Benutzer
Mitglied seit
22. Sep 2015
Beiträge
1
Punkte für Reaktionen
0
Punkte
0
Hello, sorry that I don't speak German very well :)

I have been trying to get growler to work with the ios application growl notifier (for jailbroken devices) but I get the following from the logs:

Tue Sep 22 12:11:37 2015 growld[25050]: INFO: Daemon started
Tue Sep 22 12:11:37 2015 growld[25050]: WARN: App config not exist: No such file or directory
Tue Sep 22 12:11:37 2015 growld[25050]: INFO: SERVER waiting for client connection
Tue Sep 22 12:11:52 2015 growld[25050]: INFO: Accepted new gntp client connection from: 192.168.0.112, 54067
Tue Sep 22 12:11:52 2015 growld[25050]: ERROR: INVALID_REQUEST at ./growld line 1222.

and the debug logs show this:

2015-09-22 12:00:33 DEBUG - ---------------------------------------------------------------------------------

2015-09-22 12:01:08 DEBUG - New gntp client connection from: tcp://192.168.0.112:23053 53927
2015-09-22 12:01:08 DEBUG - GNTP/1.0 REGISTER NONE SHA256:xxxxxxxxx[..]
Origin-Machine-Name: Sea’s iPhone
Origin-Software-Name: GrowlNotifier
Origin-Software-Version: 1.2.1
Origin-Platform-Name: iPhone OS
Origin-Platform-Version: 8.4
Connection: Close
Received: From Sea’s iPhone by Sea’s iPhone; 20150922T22:00:35Z
Application-Name: Settings (Sea’s iPhone)
Application-Icon: x-growl-resource://a62b003f-c5ad-6674-1955-3e1041f28bf9
Notifications-Count: 1

Notification-Name: Notification
Notification-Enabled: True

Identifier: a62b003f-c5ad-6674-1955-3e1041f28bf9
Length: 10017

[..]

2015-09-22 12:01:08 DEBUG - GNTP/1.0 -ERROR NONE
Origin-Machine-Name: tiki
X-Timestamp: 22.09.2015 12:01:08
Origin-Software-Version: 0.71-20150905
Origin-Software-Name: Growl/DSM
Origin-Platform-Version: Linux x86_64 #5592 SMP Wed Aug 19 13:38:50 CST 2015
Error-Description: The request contained an unsupported directive, invalid headers or values, or was otherwise malformed
X-Message-Daemon: Growl/DSM
Origin-Platform-Name: Linux
Error-Code: 300



2015-09-22 12:01:08 DEBUG - ---------------------------------------------------------------------------------

The ios application is able to send notifications perfectly to other growl applications such as growl for windows but I haven't had any success with growler. I did my best to read this thread with google translate, please excuse me if I missed something that has already been said on this subject. I have a ds412+ with the latest 5.2 beta installed.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
2015-09-22 12:01:08 DEBUG - New gntp client connection from: tcp://192.168.0.112:23053 53927
2015-09-22 12:01:08 DEBUG - GNTP/1.0 REGISTER NONE SHA256:xxxxxxxxx[..] <----

2015-09-22 12:01:08 DEBUG - GNTP/1.0 -ERROR NONE
Error-Description: The request contained an unsupported directive, invalid headers or values, or was otherwise malformed <----
Error-Code: 300
Hi, the error message indicated, that your growl notifier used a not supported feature in Growler. Growler can not handle requests with SHA256 hashes, try using MD5.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
20.10.2015 - Growler 0.7-056

  • Anpassungen für DSM 6.0 beta
 

PanNox

Benutzer
Mitglied seit
07. Jun 2015
Beiträge
3
Punkte für Reaktionen
0
Punkte
0
Error in Subscribe to notifications in Growl-for-Windows

Greetings.

In trying to subscribe to notifications from a windows machine, I find "server unavailabe":

growl subscription.jpg


The log in DiskStation Growler shows:

Wed Dec 16 09:40:51 2015 growld[11985]: ERROR: INVALID_REQUEST at ./growld line 1174.
Wed Dec 16 09:40:51 2015 growld[11985]: INFO: Accepted new gntp client connection from: 192.168.0.102, 54161

Wed Dec 16 09:40:21 2015 growld[11985]: ERROR: INVALID_REQUEST at ./growld line 1174.
Wed Dec 16 09:40:21 2015 growld[11985]: INFO: Accepted new gntp client connection from: 192.168.0.102, 54130

Wed Dec 16 09:39:51 2015 growld[11985]: ERROR: INVALID_REQUEST at ./growld line 1174.
Wed Dec 16 09:39:51 2015 growld[11985]: INFO: Accepted new gntp client connection from: 192.168.0.102, 54093

Wed Dec 16 09:39:21 2015 growld[11985]: ERROR: INVALID_REQUEST at ./growld line 1174.
Wed Dec 16 09:39:21 2015 growld[11985]: INFO: Accepted new gntp client connection from: 192.168.0.102, 54064

It is showing the correct client at -.102, but then errors out and no messages are received.

Thank you.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
Sorry, Growler does not support subscriptions, therefore the error message "ERROR: INVALID_REQUEST" appears. You must install Notification Forwarder and enter the address from your windows machine as destination.
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
05.03.2016 - Growler 0.7-057

  • Anpassungen für DSM 6.0 rc
 
Zuletzt bearbeitet:

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
18.03.2016 - Growler 0.7-058

  • korrigiert: Falsche Berechtigungen der Konfiguration für Pseudoklassennamen registrierter Growler App-Symbole und deren Icons in DSM 6.0
  • korrigiert: Senden von Benachrichtigungen mit HTML-Entitäten in DSM 6.0
 

QTip

Super-Moderator
Teammitglied
Mitglied seit
04. Sep 2008
Beiträge
2.341
Punkte für Reaktionen
14
Punkte
84
19.02.2017 - Growler 0.7-059

  • hinzugefügt: Modul 'CGI' für Perl 5.22 und höher (Paket 'Perl CGI Fix' nicht mehr notwendig)
 
Zuletzt bearbeitet:

gjdoornink

Benutzer
Mitglied seit
23. Sep 2017
Beiträge
2
Punkte für Reaktionen
0
Punkte
1
Hallo,


Ich habe ein Problem in Growler 0.7-059 gefunden.
Weil mein Deutsch nicht fließend ist, werde ich weiter auf Englisch schreiben.

When receiving a message from Tautulli (former PlexPy), running in a Docker container on the same NAS as Growler, the socket receive loop keeps receiving receiving zero bytes endlessly.

When enabled, the $debugterm logging will print the last line (Reading 0 chars) until the growld process is killed, while using 100% of a cpu core.

...
Reading 1024 chars
Reading 216 chars
Reading 0 chars
Reading 0 chars
Reading 0 chars
...

I am in no way a Perl programmer, but changing the following code:

Rich (BBCode):
                         while(1) {
                              $new_gntp->recv($data,1024);
                              $buffer = $buffer.$data;
                              if ($debugterm) {
                                   print "Reading ".length($data)." chars\n\n";
                              }
                              if ($buffer =~ /\x0D\x0A\x0D\x0A$/) {
                                   last;
                              }
                         }
to:
Rich (BBCode):
                         while(1) {
                              $new_gntp->recv($data,1024);
                              $buffer = $buffer.$data;
                              if ($debugterm) {
                                   print "Reading ".length($data)." chars\n\n";
                              }
                              if ($buffer =~ /\x0D\x0A\x0D\x0A$/ || length($data) == 0) {
                                   last;
                              }
                         }

fixes the problem.

Why this problem occurs, I do not know, but it looks like the received data is not terminated as expected.

System information:

NAS:
DS916+
DSM 6.1.6-15266 Update 1
2018/04/11

Tautulli:
http://tautulli.com/
VERSION V2.0.28

I have manually applied and tested this fix to growler_0.7-059.spk.


Kind regards,

Gerrit Jan
 
Status
Für weitere Antworten geschlossen.
 

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