Squeezebox Modul - erste Version

Begonnen von bugster_de, 17 Dezember 2013, 22:12:10

Vorheriges Thema - Nächstes Thema

pschlaeppi

#1995
Hallo Chris,

Herzlichen für deine schnell Antwort.

Funktioniert super. Habe den Weg mit den Optionen im String gewählt.

Wo würde ich die Doku zu den so möglichen opt: Parametern und deren Syntax finden?
In der Commandref finde ich bei mir unter SB_PLAYER und SB_SERVER keine Angaben.

Liesse sich durch Angeben der Optionen auch kurze Pause einbringen. Mit Leerschlägen alleine funktioniert das leider nicht. Vielleicht könnte ich so bei einem Senderwechsel am Schluss der Ansage auch noch verhindern das der "alte sender" noch kurz weiterspielt bevor es umschaltet auf den neuen.

Grüsse Philipp


ChrisD

Hallo,

ZitatWo würde ich die Doku zu den so möglichen opt: Parametern und deren Syntax finden?
Die Optionen sind noch nicht in der Dokumentation enthalten, ich muss sie noch einpflegen.

ZitatLiesse sich durch Angeben der Optionen auch kurze Pause einbringen.
Nein, das ist nicht möglich. Wenn du eine Pause brauchst, kannst du ein 'leeres' mp3 mit der passenden Länge erzeugen. Ich bin mir aber nicht sicher ob dies das Problem beim Senderwechsel löst.

Wenn du nach der Sprachansage einen anderen Sender auswählst, ist es eigentlich nicht nötig den vorherigen Zustand wieder herzustellen. Mit |opt:nosaverestore| kannst du dies verhindern.

Grüße,

ChrisD

pschlaeppi

#1997
Hi ChrisD,

Herzlichen Dank für die Klärung wegen der Options Doku, hatte schon gefürchtet mein Update funktioniert irgendwie nicht richtig.

Danke auch für den Kniff mit dem nosaverestore. Gesehen hatte ich es, aber es hat nicht klick gemacht. Das wird dieses Problem sicherlich lösen.

Betreffend der Pausen habe ich beim rumpröbeln mit der Language Option festgestellt dass das umschalten der Sprache in etwa die gewünschte Pause bringt. Habe das nun so genutzt das ich immer wo ich ne Pause brauche, einfach zum Beispiel noch einmal auf die schon eingestellte Sprache wechsle. Funktioniert bisher gut.

Wie wird das von VoiceRSS gehandelt wenn ich die Sprache wechsle?
- bedeutet jeder Sprachwechsel mit dem folgenden String einen eigene VoiceRSS Aufruf?
- wenn ich also in jeder Message 5 Sprachwechsel hätte, würde dieses bedeuten das ich
  pro Tag noch 70 Messages absetzen kann mit den 350 Aufrufen des kostenlosen Kontos?

Grüsse Philipp   

ChrisD

Hallo,

ZitatBetreffend der Pausen habe ich beim rumpröbeln mit der Language Option festgestellt dass das umschalten der Sprache in etwa die gewünschte Pause bringt.
Die Pause kommt durch den Aufruf bei VoiceRSS, die Anfrage und Rückmeldung brauchen etwas Zeit während derer keine Ausgabe erfolgt.

Zitat- bedeutet jeder Sprachwechsel mit dem folgenden String einen eigene VoiceRSS Aufruf?
Ja, bei VoiceRSS kann man nur eine Sprache für den kompletten String angeben, das Modul erzeugt deshalb bei jedem Sprachwechsel einen neuen Aufruf.

Zitat- wenn ich also in jeder Message 5 Sprachwechsel hätte, würde dieses bedeuten das ich pro Tag noch 70 Messages absetzen kann mit den 350 Aufrufen des kostenlosen Kontos?
Ja.

Wenn die Anzahl der Anfragen ein Problem sind, könntest du versuchen einen Cache zu verwenden. Mit der Zeit sollten immer mehr Daten aus dem Cache kommen und die Anzahl der Aufrufe an VoiceRSS runtergehen. Wenn du einen lokalen Web-Server mit PHP hast, kann ich dir ein Skript schicken welches die Cache-Funktion übernehmen kann.

Ein Nachteil des Cache wird sein dass die Pause bei Daten die bereits im Cache sind quasi verschwindet.

Grüße,

ChrisD

pschlaeppi

Hallo Chris,

Hatte mir bereits Gedanken in Richtung einer Cache Lösung gemacht. Vor allem auch im Hinblick darauf das es dann vielleicht mal keinen kostenlosen Dienst mehr geben könnte. 
Habe auch bereits auf meinem Synology einen Webserver mit BicBucStrim am laufen für meine eBooks. Ich denke da könnte ich gerade drauf aufsetzen, der ist ziemlich unterbeschäftigt. Betreffend der Pausen werde ich mir einfach noch einige MP3's zusammenschneiden die ich dann an geeigneter Stelle aufrufen kann

Wenn ich deine obenstehende Antwort korrekt interpretiere, hätte das einfügen einer Pause in Form eines MP3 Files aber auch denselben Effekt wie ein Sprachwechsel?
Erster Aufruf mit dem String, dann MP3 und wieder ein String wären auch zwei Aufrufe oder?

Ich würde es sehr gerne mal mit deinem Script versuchen mit einer Cache Lösung.

Herzlichen Dank

Grüsse Philipp

ChrisD

Hallo,

Anbei ein Skript für die Cache-Funktion mit VoiceRSS. Benötigt wird ein Webserver mit PHP. Im Verzeichnis mit dem Skript muss ein Unterverzeichnis mit dem Namen ttscachev angelegt werden und der Webserver muss darauf Schreibrechte haben.

Anschließend muss das Attribut ttslink beim Player geändert werden, z.B. wenn der Webserver die Adresse 192.168.45.67 hat und das Skript im Hautpverzeichnis liegt:
attr myPlayer ttslink http://192.168.45.67/ttscachev.php?key=<APIKEY>&src=<TEXT>&hl=<LANG>&c=AAC

Grüße,

ChrisD

pschlaeppi

Hallo Chris,

Ganz herzlichen Dank. Werde es in den nächsten Wochen mal angehen.

Grüsse Philipp

dadoc

Hi Chris,
zur Info: Ich hatte seit einiger Zeit regelmäßige Freezes von ziemlich exakt 3 Sekunden jede Minute. Freezmon & Co. haben diese zwar detektiert, konnten aber keinen Verursacher ausmachen:
2019.11.13 16:14:57 1: [Freezemon] myFreezemon: possible freeze starting at 16:14:54, delay is 3.008 possibly caused by: no bad guy found :-(
2019.11.13 16:16:00 1: [Freezemon] myFreezemon: possible freeze starting at 16:15:57, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:17:03 1: [Freezemon] myFreezemon: possible freeze starting at 16:17:00, delay is 3.008 possibly caused by: no bad guy found :-(
2019.11.13 16:18:06 1: [Freezemon] myFreezemon: possible freeze starting at 16:18:03, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:19:09 1: [Freezemon] myFreezemon: possible freeze starting at 16:19:06, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:20:12 1: [Freezemon] myFreezemon: possible freeze starting at 16:20:09, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:21:15 1: [Freezemon] myFreezemon: possible freeze starting at 16:21:12, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:22:18 1: [Freezemon] myFreezemon: possible freeze starting at 16:22:15, delay is 3.008 possibly caused by: no bad guy found :-(
2019.11.13 16:23:21 1: [Freezemon] myFreezemon: possible freeze starting at 16:23:18, delay is 3.008 possibly caused by: no bad guy found :-(
2019.11.13 16:24:24 1: [Freezemon] myFreezemon: possible freeze starting at 16:24:21, delay is 3.008 possibly caused by: no bad guy found :-(
2019.11.13 16:25:27 1: [Freezemon] myFreezemon: possible freeze starting at 16:25:24, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.13 16:26:30 1: [Freezemon] myFreezemon: possible freeze starting at 16:26:27, delay is 3.008 possibly caused by: no bad guy found :-(

Ich habe dann mal alle möglichen Verdächtigen nach und nach rausgenommen, und als ich den SB_Server rausnahm, war das Freezen weg.
Viele Grüße
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

ChrisD

Hallo,

Es wäre möglich dass die Freezes durch den alivecheck kommen. Merkwürdig ist aber dass Freezemon nichts anzeigt.

Welche Werte haben die Attribute alivetimer, doalivecheck und internalPingProtocol beim Server ?

Grüße,

ChrisD

dadoc

Hi,
Hier mal ein kpl. List:
Internals:
   ALIVECHECK ?
   CLICONNECTION off
   CLIPORT    9090
   CMDSTACK   0
   DEF        192.168.x.x
   DeviceName 192.168.X.x:9090
   FUUID      xyz
   IP         192.168.x.x
   LASTANSWER none
   NAME       squeezekiss
   NOTIFYDEV  global,squeezekiss
   NR         1259
   NTFY_ORDER 50-squeezekiss
   PASSWORD   ?
   PRESENCENAME none
   RCCNAME    none
   STATE      disabled
   TYPE       SB_SERVER
   USERNAME   ?
   WOLNAME    none
   READINGS:
     2019-11-13 19:55:13   db_albums       ?
     2019-11-13 19:55:13   db_artists      ?
     2019-11-13 19:55:13   db_genres       ?
     2019-11-13 19:55:13   db_songs        ?
     2019-10-26 01:07:23   favoritesname   
     2019-11-13 19:55:13   favoritestotal  ?
     2019-11-13 19:55:13   players         ?
     2019-11-13 19:55:13   players_mysb    ?
     2019-11-13 19:55:13   players_other   ?
     2019-11-13 19:55:13   power           ?
     2019-10-26 01:07:23   scan_last       17-12-2017 16:8:55
     2019-11-13 19:55:13   scandb          ?
     2018-09-23 12:20:39   scanduration    38
     2019-11-13 19:55:13   scanlastfailed  ?
     2019-11-13 19:55:13   scanning        ?
     2019-11-13 19:55:13   scanprogressdone ?
     2019-11-13 19:55:13   scanprogresstotal ?
     2019-11-13 19:55:13   serversecure    ?
     2019-11-13 19:55:13   serverversion   ?
     2019-11-13 19:55:13   state           disabled
   helper:
     SB_SERVER_VERSION 0054
     httpport   9000
     lastPRESENCEstate ?
     onAfterAliveCheck 0
     pingCounter 0
     presenceReading state
     presenceValueAbsent absent
     presenceValuePresent present
     wolSetCmd   
     wolSetValue on
     albums:
       reread     1
     artists:
       reread     1
     genres:
       reread     1
     syncGroups:
Attributes:
   alivetimer 120
   disable    1
   doalivecheck true
   httpport   9000
   maxcmdstack 200
   maxfavorites 30
   room       lala
   verbose    0

Grüße
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

ChrisD

Hallo,

Du kannst versuchen das Attribut doalivecheck auf false zu setzen. Damit wird der alivecheck abgeschaltet. Allerdings passt der Wert von alivetimer nicht zu den Freezes jede Minute, durch den alivecheck hätten die Freezes nur alle 2 Minuten auftreten dürfen.

Wenn damit die Freezes weg sind kannst du den alivecheck auf PRESENCE umstellen.

Grüße,

ChrisD

dadoc

Danke Chris,
nachdem ich den SB Server wieder enabled hatte, sah es dann so im Log aus (seit dem disablen gestern war sonst kein Freeze mehr gelogged worden):
2019.11.14 13:10:10 1: [Freezemon] myFreezemon: possible freeze starting at 13:10:09, delay is 1.697 possibly caused by: tmr-SB_SERVER_tcb_Alive(squeezekiss)
2019.11.14 13:12:11 1: [Freezemon] myFreezemon: possible freeze starting at 13:12:09, delay is 2.792 possibly caused by: tmr-SB_SERVER_tcb_Alive(squeezekiss)
2019.11.14 13:13:14 1: [Freezemon] myFreezemon: possible freeze starting at 13:13:11, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:14:10 1: [Freezemon] myFreezemon: possible freeze starting at 13:14:09, delay is 1.704 possibly caused by: tmr-SB_SERVER_tcb_Alive(squeezekiss) tmr-HttpUtils_Err(N/A)
2019.11.14 13:14:17 1: [Freezemon] myFreezemon: possible freeze starting at 13:14:14, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:15:20 1: [Freezemon] myFreezemon: possible freeze starting at 13:15:17, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:16:10 1: [Freezemon] myFreezemon: possible freeze starting at 13:16:09, delay is 1.701 possibly caused by: tmr-SB_SERVER_tcb_Alive(squeezekiss)
2019.11.14 13:16:23 1: [Freezemon] myFreezemon: possible freeze starting at 13:16:20, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:17:26 1: [Freezemon] myFreezemon: possible freeze starting at 13:17:23, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:18:10 1: [Freezemon] myFreezemon: possible freeze starting at 13:18:09, delay is 1.704 possibly caused by: tmr-SB_SERVER_tcb_Alive(squeezekiss)
2019.11.14 13:18:29 1: [Freezemon] myFreezemon: possible freeze starting at 13:18:26, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:19:32 1: [Freezemon] myFreezemon: possible freeze starting at 13:19:29, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:20:10 1: [Freezemon] myFreezemon: possible freeze starting at 13:20:09, delay is 1.705 possibly caused by: tmr-ENIGMA2_GetStatus(kathi1) tmr-ENIGMA2_GetStatus(kathiy) tmr-SB_SERVER_tcb_Alive(squeezekiss)

Also in der Tat alle zwei Minuten explizit der SB-Server.
Und mit doalivecheck auf false sieht es nun so aus:
2019.11.14 13:47:14 1: [Freezemon] myFreezemon: possible freeze starting at 13:47:11, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:48:17 1: [Freezemon] myFreezemon: possible freeze starting at 13:48:14, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:49:20 1: [Freezemon] myFreezemon: possible freeze starting at 13:49:17, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:50:23 1: [Freezemon] myFreezemon: possible freeze starting at 13:50:20, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:51:26 1: [Freezemon] myFreezemon: possible freeze starting at 13:51:23, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:52:29 1: [Freezemon] myFreezemon: possible freeze starting at 13:52:26, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:53:32 1: [Freezemon] myFreezemon: possible freeze starting at 13:53:29, delay is 3.007 possibly caused by: no bad guy found :-(
2019.11.14 13:54:35 1: [Freezemon] myFreezemon: possible freeze starting at 13:54:32, delay is 3.007 possibly caused by: no bad guy found :-(

Und erst wenn ich den SB Server wieder disable, gibt es kein Freeze-Gemecker mehr...
Hast Du noch eine Idee, was da alle Minute dazwischenfunken könnte?
Danke & Grüße
Martin

Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods

ChrisD

Hallo,

Ausser dem internen alivecheck gibt es nicht was zu einem Freeze führen kann.

Du kannst noch versuchen zuerst bei squeezekiss verbose auf 5 und danach global verbose auf 5 zu setzen. Eventuell lässt sich so herausfinden was die Freezes auslöst.

Seit wann hast du das Problem ?

Grüße,

ChrisD

FHEMAN

Hallo zusammen,
ich weiß nicht, ob die Problematik noch aktuell ist und ob es auch die aktuelle Ursache ist. Ich hatte das Problem auch damals, als ich noch nicht so potente Hardware hatte. Grund war createNotifyHash. Siehe meinen Threat hierzu https://forum.fhem.de/index.php/topic,83228.msg755611.html#msg755611

Viele Grüße
Ronny
NUC7i5 | PROXMOX | FHEM 6.2 | 1 HMLAND | 2 UART | HM | LMS | HIFIBERRY | DOORBIRD | BLINK | BUDERUS | HUE | ALEXA | MILIGHT | LUFTDATENINFO | MQTT| ZIGBEE2MQTT | INDEGO | ROBOROCK | SMA | APC | OPENWB

dadoc

Der Verbose-Versuch hat keine neuen Erkenntnisse gebracht, außer das eine Denon AVR-Abfrage immer kurz danach stattfand. Habe die Denon-Module disabled, aber die minütlichen Freezes hielten an.
Mit verbose 3 für den Squeezekiss und das fhem-Log steht nun folgendes im Log:
2019.11.15 16:21:06 1: [Freezemon] myFreezemon: possible freeze starting at 16:21:03, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:22:09 1: [Freezemon] myFreezemon: possible freeze starting at 16:22:06, delay is 3.015 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:23:12 1: [Freezemon] myFreezemon: possible freeze starting at 16:23:09, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:24:15 1: [Freezemon] myFreezemon: possible freeze starting at 16:24:12, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:25:18 1: [Freezemon] myFreezemon: possible freeze starting at 16:25:15, delay is 3.012 possibly caused by: tmr-CUL_HM_complConfigTO(N/A) tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:26:21 1: [Freezemon] myFreezemon: possible freeze starting at 16:26:18, delay is 3.014 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:27:24 1: [Freezemon] myFreezemon: possible freeze starting at 16:27:21, delay is 3.011 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:28:27 1: [Freezemon] myFreezemon: possible freeze starting at 16:28:24, delay is 3.011 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:29:30 1: [Freezemon] myFreezemon: possible freeze starting at 16:29:27, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:30:33 1: [Freezemon] myFreezemon: possible freeze starting at 16:30:30, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)
2019.11.15 16:31:36 1: [Freezemon] myFreezemon: possible freeze starting at 16:31:33, delay is 3.013 possibly caused by: tmr-FW_closeInactiveClients(N/A)

@Ronny: Danke, werde ich mir mal ansehen.
Grüße
Martin
Standort 1: FS20 mit CUL und FHEM auf Raspi. HM-Komponenten (Heizung, Rollladen, Schalter). HM IP über Raspimatic (testweise)
Standort 2: Homematic (Wired) über CCU2 und PocketHome HD
3 x Raspi3 mit piCorePlayer/Kodi für Multiroom Audio (+ Tablets/iPeng/iPods