[gelöst] userReading aus 2 Readings

Begonnen von FHEM-User22, 27 Mai 2020, 16:18:55

Vorheriges Thema - Nächstes Thema

FHEM-User22

Hallo an alle,
ich habe gesucht, bin aber nicht fündig geworden.

Ich habe beim SB_Player u.a. 2 Readings.

currentArtist    Thin Lizzy
currentTitle      Whiskey In the Jar

Diese logge ich in einer Datenbank. Nun möchte ich die Ausgabe "currentArtist, currentTitle" als ein Reading. In/aus der Datenbank bekomme ich es nicht als Tabelle, wie auch immer,  zusammen.

Somit wäre ein UserReading aus beiden zusammengefasst ein Schritt in meine Richtung.

Kann mir jemand bitte auf die Sprünge helfen? Dankeschön.

Viele Grüße

FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

attr SB_Player userReadings combined {ReadingsVal("SB_Player","currentArtist","n.a.") . "Trennzeichen" . ReadingsVal("SB_Player","currentTitle","n.a.")}

wäre eine Möglichkeit...

bzw.:

attr SB_Player userReadings combined {ReadingsVal($name,"currentArtist","n.a.") . "Trennzeichen" . ReadingsVal($name,"currentTitle","n.a.")}


Evtl. noch den "Trigger" einschränken, so wird das userReadings bei JEDER Änderung IRGENDEINES Readings "neu berechnet"...

https://wiki.fhem.de/wiki/UserReadings

Bzw. commandref...

Gruß, Joachim[/code]
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

FHEM-User22

#2
Hallo Joachim,
Dankeschön.
Den Befehl "combined" habe ich aber nirgends gefunden.

Es wird in der WEB-Oberfläche so angezeigt, so wie ich es möchte.

Mein UserReading:
currentSong {ReadingsVal($name,"currentTitle","n.a.") . " - " . ReadingsVal($name,"currentArtist","n.a.")}

Ich möchte es auch gerne in die Datenbank eintragen, also


Das Ergebnis:

07:12:40 SB_PLxx SB_PLxx currentSong: Lola -
07:09:17 SB_PLxx SB_PLxx currentSong: Www.rsa-Sachsen.de - The Kinks
07:08:38 SB_PLxx SB_PLxx currentSong: Www.rsa-Sachsen.de -
07:08:37 SB_PLxx SB_PLxx currentSong: I Should Be So Lucky -
07:05:53 SB_PLxx SB_PLxx currentSong: Www.rsa-Sachsen.de - Kylie Minogue
06:57:39 SB_PLxx SB_PLxx currentSong: Www.rsa-Sachsen.de -
06:57:34 SB_PLxx SB_PLxx currentSong: ADBREAK_LENGTH_15000-::ADONE:: -
06:56:17 SB_PLxx SB_PLxx currentSong: Lady D'Arbanville -
06:54:05 SB_PLxx SB_PLxx currentSong: Www.rsa-Sachsen.de - Cat Stevens


Irgendwas passt da noch nicht. Wie bekomme ich es hin, das er erst in die DB schreibt, wenn Artist und Title aktualisiert sind?

Dankeschön
FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

#3
combined ist kein Befehl/Kommando sondern so heißt das neue Reading wo eben beides "kombiniert" stehen sollte...
...wenn "irgendwas" im Device aktualisiert wird...

Bitte auch immer erst mal lesen/verstehen was gepostet wird und nicht einfach "blind" kopieren...

Darum ja der Link zu userReadings...

Gleiches gilt für "Trennzeichen": ich weiß doch nicht wie Artist und Title "getrennt" werden sollen, daher: "Trennzeichen"...

EDIT: ok, hast du "erkannt" und entsprechend angepasst ;)

Poste doch mal ein list vom Device...

Da durch userReadings eben ein neues Reading beim Device da ist, welches auch einen Event generieren sollte (Eventmonitor mal öffnen), sollte man das Reading auch loggen können...

EDIT: ok auf dem Handy schwer zu lesen/verstehen. Gut, dann hast du/das Device evtl. ein Event-Reihenfolgen"problem"... Es wird Title und Artist nacheinander gefüllt. Da musst du rausbekommen (Eventmonitor), ob die Reihenfolge immer gleich ist und dann (wie bereits geschrieben) den Trigger bei userReadings entsprechend setzen...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

MadMax-FHEM

#4
Sorry,

so diesmal "richtig" (grad nur auf dem Handy ;)  )...

Also am besten mal den Eventmonitor öffnen und schauen, wie die Events bzgl.

currentArtist und currentTitle kommen.

Und schauen, ob es eine bestimmte immer gleiche Reihenfolge gibt.

Wenn es eine Reihenfolge gibt, die IMMER gleich ist, dann eben zusätzlich beim userReadings dieses (das letzte Event der beiden) als Trigger nehmen.

Dann wird das userReadings nur "berechnet" wenn genau dieses Reading sich ändert.

Aktuell (und habe ich auch geschrieben) wird das userReadings "berechnet", egal welcher Wert/Readings sich beim Device ändert!!
(auch wenn sich ein Wert/Reading ändert, das mit dem "Problem" gar nichts zu tun hat)

Und da kann es nat. sein, dass eines der beiden Readings (currentTitle/currentArtist) noch nicht gesetzt ist oder sogar keines der beiden...

Wenn es KEINE FESTE Reihenfolge gibt, wird es schwer.
Weil irgendwie muss das userReadings ja "angestossen" werden und das müsste eben passieren, wenn beide Readings (currentTitle/currentArtist) auch existieren und richtig sind...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

frank

vielleicht gibt es auch ein ganz anderes event, das grundsätzlich nach den beiden readings erscheint.
FHEM: 6.0(SVN) => Pi3(buster)
IO: CUL433|CUL868|HMLAN|HMUSB2|HMUART
CUL_HM: CC-TC|CC-VD|SEC-SD|SEC-SC|SEC-RHS|Sw1PBU-FM|Sw1-FM|Dim1TPBU-FM|Dim1T-FM|ES-PMSw1-Pl
IT: ITZ500|ITT1500|ITR1500|GRR3500
WebUI [HMdeviceTools.js (hm.js)]: https://forum.fhem.de/index.php/topic,106959.0.html

FHEM-User22

Zitat von: frank am 28 Mai 2020, 08:43:46
vielleicht gibt es auch ein ganz anderes event, das grundsätzlich nach den beiden readings erscheint.

So sieht das Listing aus, wo könnte ich da noch suchen?

Da, wo ich die Punkte habe sind gefühlte 10.000 Seiten Text. Bekommt man das weg? Das Listing hat 32.484 Zeilen!


Internals:
   AMPLIFIER  none
   ARTWORKURL http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F024LRXM2WDg.jpg
   CANPOWEROFF 1
   COVERARTLINK https://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F5KPK6L7XCNg.jpg&h=96&w=96
   COVERARTURL http://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F024LRXM2WDg.jpg&h=800&w=800
   COVERID    -94450450549232
   DEF        b8:27:eb:45:72:98 coverart:https://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F5KPK6L7XCNg.jpg&h=96&w=96
   DISPLAYTYPE none
   FAVREF     
   FAVSELECT  RSA_Live_976_Hit-Klassiker
   FAVSET     favorites
   FAVSTR     MDR,song-lebensrezepte---little-secretsmp3,Ballermann_Radio_Country_Country,Sound_Mania_Blues,Radio_Partywelle_Schlager,Radio_Schlagerparadies_Schlager,RSA_Live_976_Hit-Klassiker,Ballermann_Radio_Electro,RSA-Schlager,RSA_-_80er_Disco,DJ_Fifa_Boney_M_Mega_Mix_-_Mix_file_-_VA,Ballermann_Radio_Top_40Pop,DerDerbyMix_-_Kein_Album_-_DJ_Oetzi,Ballermann_Radio_Top_100_Top_40Pop,filemediamusicMPD1mediafsStimmung15_Deep_Fox_xDeep_Foxmp3,Deep_Dance_Presents_Nena_-_Nena_-_Deep_Dance_Presents
   FHEMUID    b827eb457298
   FUUID      5ca47790-f33f-6033-5578-3fa4894e2b399b17
   IODev      SqueezeHome
   ISREMOTESTREAM 1
   LASTALARM  1
   LASTANSWER time 9453.35552817726
   LASTInputDev SqueezeHome
   MODEL      SqueezeLite
   MSGCNT     36761
   NAME       SB_PLAYER_Zero01
   NOTIFYDEV  global
   NR         36
   NTFY_ORDER 50-SB_PLAYER_Zero01
   PLAYERIP   172.18.2.128:54228
   PLAYERMAC  b8:27:eb:45:72:98
   PLAYERNAME Zero01
   SBSERVER   172.18.2.126:9000
   SERVERPLAYLISTS 01,01-01,2014-04-26-1,Dance-Floor,DDR,Deutsch,Disco-Langsam,Disco-Oldies,Disco1,Favorites,Home,Jingles,Maxi-Dance-Sensation-90er,Radio,Radio-RSA,Woodstock,zz-01
   STATE      <div style='color:green'><b>Ring of Ice - Jennifer Rush</b></div></div>
<div style='color:red'> <b>RSA_Live_976_Hit-Klassiker</b><br>
<div style='color:red'> Volume: <b>39</b></div>

   SYNCED     no
   SYNCGROUP  none
   SYNCGROUPPN none
   SYNCMASTER none
   SYNCMASTERPN none
   SYNCMASTERS
   SYNCVOLUME 0
   SqueezeHome_MSGCNT 36761
   SqueezeHome_TIME 2020-05-28 09:06:46
   TYPE       SB_PLAYER
   WILLSLEEPIN ?
   Helper:
     DBLOG:
       currentArtist:
         LogDB:
           TIME       1590594325.26543
           VALUE      Omd
       currentSong:
         LogDB:
           TIME       1590649516.8512
           VALUE      Ring of Ice - Jennifer Rush
       currentTitle:
         LogDB:
           TIME       1590594325.30329
           VALUE      IF YOU LEAVE
   READINGS:
     2020-05-27 17:01:34   Song             - Www.rsa-Sachsen.de
     2020-05-28 06:29:12   alarmsDefaultVolume 50
     2020-05-28 06:29:12   alarmsEnabled   off
     2020-05-28 06:29:12   alarmsFadeIn    on
     2020-05-28 06:29:12   alarmsFadeSeconds 1
     2020-05-28 06:29:12   alarmsSnooze    9
     2020-05-28 06:29:12   alarmsTimeout   60
     2020-05-28 09:05:26   connected       1
     2020-05-28 09:05:26   coverarturl     http://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F024LRXM2WDg.jpg&h=800&w=800
     2020-05-28 09:05:16   currentAlbum   
     2020-05-28 09:05:16   currentArtist   Jennifer Rush
     2020-05-28 06:29:12   currentMedia    http://rsa.hoerradar.de/rsasachsen-live-mp3-hq?sABC=5rpqrpn2%230%2325s986q5osrn267ro37pp728q568p4rr%23gharva&amsparams=playerid:tunein;skey:1590553762
     2020-05-28 09:05:16   currentPlaylistName R.SA Live 97.6 (Hit-Klassiker)
     2020-05-28 06:29:12   currentPlaylistUrl
     2020-05-28 09:05:16   currentSong     Ring of Ice - Jennifer Rush
     2020-05-28 09:05:16   currentTitle    Ring of Ice
     2020-05-28 09:06:46   currentTrackPosition 9453
     2020-05-28 09:05:16   duration        0
     2020-05-28 09:05:16   favorites       RSA_Live_976_Hit-Klassiker
     2020-05-25 07:32:47   lastir          ?
     2020-05-25 07:32:47   lastunknowncmd  none
     2020-05-28 09:05:26   playStatus      playing
     2020-05-28 09:05:26   playlistCurrentTrack 1
     2020-05-28 09:05:26   playlistTracks  1
     2020-05-28 09:05:16   playlists       RSA_Live_976_Hit-Klassiker
     2020-05-28 09:05:26   power           on
     2020-05-28 09:05:26   presence        present
     2020-05-28 09:05:26   repeat          off
     2020-05-28 09:05:26   shuffle         off
     2020-05-28 09:05:26   signalstrength  wired
     2020-05-28 09:05:26   state           on
     2020-05-28 09:05:26   synced          none
     2020-05-28 09:05:26   volume          39
     2020-05-28 09:05:26   volumeStraight  39
   helper:
     ALARMSCOUNT 0
     CoverOk    0
     albumartists Diverse Interpreten:Stefan Raab:King Kool Savas:Shaq & DJ Tomekk:Shaq & DJ Tomekk:XXXTENTACION:XXXTENTACION:XXXTENTACION:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:Ed Sheeran:¥¬Äõ©gBRITNEY:SSIO:Chris de Burgh:Plaf Henning:Sunshine-Live:Musik Lampion - brennen CD:AcDc - 1997 - Bonfire:Michael Wendler:Musik Lampion - brennen CD:Rosanna Rocci:Musik Lampion - brennen CD:AcDc - 1997 - Bonfire:G.G. Anderson:Sunshine-Live:AcDc - 1997 - Bonfire:Matthias Carras:Peter Gabriel:Nino de Angelo:Hansi Süssenbach:Depeche Mode:Peter Schilling:Pierre Mertien:c:the beatles:Gigi D´Agostino:Unsortiert:V.A.:V.A.:V.A.:V.A.:V.A.:V.A.:V.A.:V.A.:Stanley Clarke:Maroon 5:Höhner:Tommy Roe:Jim Lowe:MARIAH CAREY:Mariah Carey:Beyonce Feat. Slim Thug:Tarkan:Alessandra Amoroso:Oliver Frank:Blondie:Baha Men
...
...
...
/default/empty.png"},{"Artist":"","Title":"03.16. Transvision Vamp","Album":"","Time":"","File":"17468","Track":"","Cover":"/fhem/images/default/empty.png"},{"Artist":"","Title":"03.17. Thompson Twins","Album":"","Time":"","File":"17469","Track":"","Cover":"/fhem/images/default/empty.png"},{"Artist":"","Title":"03.18. Dave Stewart feat.
...
...
...

randomplayyear:
         category   Zufallsmix
         title      Jahrgangsmix
         url        randomplay://year
     elapsedTime:
       TS         1590649606.97575
       VAL        9453.35552817726
       count      0
       last       9453.35552817726
     ftuiSupport:
     myPlaylists:
     playlistUrls:
       -94450450549232 http://rsa.hoerradar.de/rsasachsen-live-mp3-hq?sABC=5rpqrpn2%230%2325s986q5osrn267ro37pp728q568p4rr%23gharva&amsparams=playerid:tunein;skey:1590553762
     text2speech:
     ttsOptions:
Attributes:
   DbLogInclude (currentSong)
   IODev      SqueezeHome
   alias      Z01
   amplifier  play
   coverartheight 800
   coverartwidth 800
   donotnotify false
   event-on-change-reading .*
   fadeinsecs 10
   group      Musik
   ignoreUnknownSonginfoTags 1
   room       00,Musik
   stateFormat <div style='color:green'><b>currentSong</b></div></div>
<div style='color:red'> <b>favorites</b><br>
<div style='color:red'> Volume: <b>volume</b></div>

   ttslanguage de
   ttslink    http://translate.google.com/translate_tts?ie=UTF-8&tl=<LANG>&q=<TEXT>&client=tw-ob
   userReadings currentSong:currentTitle.* {ReadingsVal($name,"currentTitle","n.a.") . " - " . ReadingsVal($name,"currentArtist","n.a.")}
   verbose    0
   volumeLimit 100
   volumeStep 10
   webCmd     off:volume:on:favorites




Dankeschön
FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

Geht es jetzt mit dem gesetzten Trigger beim userReadings!?

Ansonsten eben den Eventmonitor öffnen und schauen wie die Events kommen und ob sie immer in DIESER Reihenfolge kommen oder wie von Frank vorgeschlagen schauen ob es einen Event gibt, der zuverlässig gleich danach kommt, dann eben einen passenden Trigger finden...

Falls der aktuelle nicht funktionieren sollte...

Ansonsten bzgl. Logging: es ist ein "normales" (neues) Reading und da einfach deine "Log-Funktion" anpassen, dass eben (auch) das Reading geloggt wird...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

FHEM-User22

Hallo Joachim,

Zitat von: MadMax-FHEM am 28 Mai 2020, 08:18:23
Sorry,

so diesmal "richtig" (grad nur auf dem Handy ;)  )...

Wenn es KEINE FESTE Reihenfolge gibt, wird es schwer.
Weil irgendwie muss das userReadings ja "angestossen" werden und das müsste eben passieren, wenn beide Readings (currentTitle/currentArtist) auch existieren und richtig sind...

Alles Gut. Der Titel wird als zweites geschrieben.
Es klappt mit:

currentSong:currentTitle.* {ReadingsVal($name,"currentTitle","n.a.") . " - " . ReadingsVal($name,"currentArtist","n.a.")}

prima.


Room with a View - Tony Carey
Valerie - Steve Winwood
Www.rsa-Sachsen.de -
Alane - Wes


Nur ein Schönheitsfehler ist noch, in den Pausen gibts nur "currentTitle" und kein "currentArtist", somit wird

Www.rsa-Sachsen.de -

in die Datenbank geschrieben. Gibts einen Filter, der nur Namen durchlässt, wo beide Felder ("currentTitle" UND "currentArtist") ausgefüllt sind?

Dankeschön
FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

Evtl. sowas:


currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return "Kein Artist"}else{return (ReadingsVal($name,"currentTitle","n.a.") . " - " . ReadingsVal($name,"currentArtist","n.a.")}}


statt return "Kein Artist" kannst du dir auch eine andere "Alternativstrategie" überlegen... ;)

Es geht nat. auch was mit RegEx und und und ... ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

FHEM-User22

#10
Super,
habe eine Klammer geändert.

currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return "Kein Artist"} else {return (ReadingsVal($name,"currentTitle","n.a.")) . " - " . ReadingsVal($name,"currentArtist","n.a.")}}

Eine letzte Frage..... sorry,

statt return "Kein Artist" einfach nichts machen, also den alten Eintrag stehen lassen und somit auch nichts in die Datenbank schreiben, geht das?

Ich habe jetzt
return "Kein Artist"
zu
return
geändert, nun warten....

Dankeschön für Eure Hilfen.
Dankeschön
FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

#11
Hmm ob einfach return geht wirst du sehen ;)

Ansonsten return "" also "Leerstring"...

Du kannst dort schreiben was du willst, z.B. das "Gleiche" wie "hinten" nur halt den Bindestrich und den Artist weglassen:


currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return (ReadingsVal($name,"currentTitle","n.a."))} else {return (ReadingsVal($name,"currentTitle","n.a.")) . " - " . ReadingsVal($name,"currentArtist","n.a.")}}


Ich mache etwas ähnliches bei Alexa/echodevice.
Ich habe einen MagicMirror mit Anzeige was grad läuft.

"Dummerweise" ist die Anzeige des MagicMirror-Moduls etwas naja.
Drum "muss" ich die Daten in einen Dummy kopieren (weil das MagicMirror-Modul nur EIN Reading aus EINEM Device schön "darstellen" kann / oder ich es nicht anders schaffe ;)  )...

Also quasi gleicher/ähnlicher Code wie in deinem userReadings nur halt in einem notify...

Achso da wollte ich hin:

wenn nichts abgespielt wird, dann schreibe ich einfach "Keine Wiedergabe" ;)
Dazu prüfe ich den Playstatus, vielleicht kannst du das ja auch so tun...
(also noch ein if(ReadingsVal($name,"PlayStatus","n.a.") eq "paused" / bzw. wie das halt bei dir so heißt)

Oder es gibt auch die Möglichkeit das Attribut oldReadings zu setzen.
Dann "hebt" das Device den letzten Reading-Wert auf, den könnte man dann auch setzen...
Dann bleibt die Anzeige bis zum nächsten Wechsel auf dem zuletzt Abgespielten stehen...

EDIT: setzt aber voraus, dass event-on-change etc. gesetzt ist, nicht dass der SELBE Wert dann das oldReading mit dem neuen "Quatschwert" überschreibt. Abfrage des "oldreadings" dann mit OldReadingsVal etc.

Zitat von: commandref
oldreadings
Dieses Attribut enthält eine durch Kommata getrennte Liste von Readings. regex sind erlaubt. Für jedes Reading aus der Liste speichert FHEM intern den vorherigen Wert wenn sich das Reading ändert. Zum Zugriff auf die Werte gibt es die OldReadings.* Routinen.

Kurz: es ist Perl-Code, was immer mit Perl geht kann man hier tun ;)

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

FHEM-User22

Hallo Joachim,
Supi, danke für Deine Ausführungen. Passt alles. Und ich habe wieder viel dazugelernt. Das nächste klappt alleine.

Meine Lösung:
currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return} else {return (ReadingsVal($name,"currentTitle","n.a.")) . " - " . ReadingsVal($name,"currentArtist","n.a.")}}

Ich habe mich eventuell nicht korrekt ausgedrückt. Ich möchte einfach eine Liste der gespielten Songs führen. Zum Beispiel am Wochenende die 100 schönsten Lieder aus der Jugend.. oder die TOP 1000 der 70er....
Daher wollte ich keine Anzeige, falls nichts gespielt wird, sondern nur eine Aufeinanderreihung der Titel. Das klappt jetzt super.
Alles läuft in die Datenbank.

Und für eine einfache txt-Datei:

defmod Musik_Z01 FileLog ./log/Musik_Z01_FileLog_1.log SB_PLAYER_Zero01:currentSong.*
attr Musik_Z01 room Musik


Somit kann ich alles nachvollziehen.

Super, Dankeschön.
FHEM auf Raspberry Pi und Proxmox und... und.... und....

MadMax-FHEM

Bitte gerne!

Ja die Anzeige war ja auch mein Beispiel ;)

Oder vielleicht war ich auch halb in einem anderen Thread ;)

Machst du dann bitte noch ein [gelöst] vor den ersten Post, danke!

Viel Spaß noch, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

FHEM-User22

Hallo,
ich weiss nicht, obs optimal ist, hier wieder zu schreiben. Aber es ist ein Problem genau hierzu.

Mein UserReading:
currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return} else {return (ReadingsVal($name,"currentTitle","n.a.")) . " - " . ReadingsVal($name,"currentArtist","n.a.")}}

funktionierte über ein Jahr. Seit einer Woche aktualisiert das UserReading CurrentSong nicht mehr. Ausser Update habe ich aber nichts verändert.

Hier mal das komplette raw:
defmod SB_PLAYER_Zero01 SB_PLAYER b8:27:eb:45:72:98 coverart:https://www.mysqueezebox.com/public/imageproxy?u=http%3A%2F%2Fcdn-albums.tunein.com%2Fgn%2F5KPK6L7XCNg.jpg&h=96&w=96
attr SB_PLAYER_Zero01 DbLogInclude (currentSong)
attr SB_PLAYER_Zero01 IODev SqueezeHome
attr SB_PLAYER_Zero01 alias Z01
attr SB_PLAYER_Zero01 amplifier play
attr SB_PLAYER_Zero01 coverartheight 800
attr SB_PLAYER_Zero01 coverartwidth 800
attr SB_PLAYER_Zero01 donotnotify false
attr SB_PLAYER_Zero01 event-on-change-reading currentSong
attr SB_PLAYER_Zero01 fadeinsecs 10
attr SB_PLAYER_Zero01 group Musik
attr SB_PLAYER_Zero01 ignoreUnknownSonginfoTags 1
attr SB_PLAYER_Zero01 room 00,Musik
attr SB_PLAYER_Zero01 stateFormat <div style='color:green'><b>currentSong</b></div></div>\
<div style='color:red'> <b>favorites</b><br>\
<div style='color:red'> Volume: <b>volume</b></div>\

attr SB_PLAYER_Zero01 ttslanguage de
attr SB_PLAYER_Zero01 ttslink http://translate.google.com/translate_tts?ie=UTF-8&tl=<LANG>&q=<TEXT>&client=tw-ob
attr SB_PLAYER_Zero01 userReadings currentSong:currentTitle.* {if(ReadingsVal($name,"currentArtist","n.a.") eq ""){return} else {return (ReadingsVal($name,"currentTitle","n.a.")) . " - " . ReadingsVal($name,"currentArtist","n.a.")}}
attr SB_PLAYER_Zero01 verbose 0
attr SB_PLAYER_Zero01 volumeLimit 100
attr SB_PLAYER_Zero01 volumeStep 10
attr SB_PLAYER_Zero01 webCmd off:volume:on:favorites

setstate SB_PLAYER_Zero01 <div style='color:green'><b>WORLD - BEE GEES</b></div></div>\
<div style='color:red'> <b>Absolut_Bella</b><br>\
<div style='color:red'> Volume: <b>25</b></div>\

setstate SB_PLAYER_Zero01 2021-08-13 16:32:06 IODev SqueezeHome
setstate SB_PLAYER_Zero01 2020-05-27 17:01:34 Song - Www.rsa-Sachsen.de
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsDefaultVolume 50
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsEnabled off
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsFadeIn on
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsFadeSeconds 1
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsSnooze 9
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 alarmsTimeout 60
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 connected 1
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 coverarturl http://www.mysqueezebox.com/public/imageproxy?u=html%2Fimages%2Ffavorites.png&h=800&w=800
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 currentAlbum
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 currentArtist
setstate SB_PLAYER_Zero01 2021-08-13 16:31:55 currentMedia ?
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 currentPlaylistName Absolut Bella
setstate SB_PLAYER_Zero01 2021-08-13 16:35:04 currentPlaylistUrl
setstate SB_PLAYER_Zero01 2021-08-09 10:11:47 currentSong WORLD - BEE GEES
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 currentTitle ABSOLUT BELLA-SUPER-OLDIES UND MEGA-SCHLAGER!
setstate SB_PLAYER_Zero01 2021-08-13 16:36:08 currentTrackPosition 5037
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 duration 0
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 favorites Absolut_Bella
setstate SB_PLAYER_Zero01 2021-08-13 16:31:55 lastir ?
setstate SB_PLAYER_Zero01 2021-08-13 16:31:55 lastunknowncmd none
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 playStatus playing
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 playlistCurrentTrack 1
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 playlistTracks 1
setstate SB_PLAYER_Zero01 2021-08-13 16:35:47 playlists Absolut_Bella
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 power on
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 presence present
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 repeat off
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 shuffle off
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 signalstrength wired
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 state on
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 synced none
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 volume 25
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 volumeStraight 25
setstate SB_PLAYER_Zero01 2021-08-13 16:35:58 willSleepIn ?


Dankeschön fürs drüberschauen.
FHEM auf Raspberry Pi und Proxmox und... und.... und....