[gelöst] Sonos Restlaufzeit eines Titels

Begonnen von Schneewa, 09 September 2019, 17:04:41

Vorheriges Thema - Nächstes Thema

Schneewa

Hi all,

Ich würde gerne die Restlaufzeit eines Titels realisieren und im FTUI darstellen.

vorübergehend habe ich das folgend realisiert

define currentTrackremaining_dummy_Reading dummy

define currentTrackremaining_Dummy at +*00:00:01 {fhem "set currentTrackremaining_dummy_Reading ". strftime ("%H:%M:%S",localtime(ReadingsVal("Sonos_Schlafzimmer","currentTrackDurationSec",0) - ReadingsVal("Sonos_Schlafzimmer","currentTrackPositionSimulatedSec",0)-3600))}


Der currentTrackremaining_Dummy läuft natürlich immer, auch wenn kein Titel gespielt wird. - verschwendet eigentlich nur Resourcen von Fhem

Frage:
Gibt es ein Reading von Sonos das ich auslesen kann?
oder
Kann ich ein DOIF basteln, dass nur startet wenn "transportState" "playing" akitv ist?

für eure Hilfe wäre ich sehr dankbar

lg
 

Beta-User

Warum nutzt du nicht einen userReadings-Eintrag in dem Gerät Sonos_Schlafzimmer?
Das sollte nur triggern, wenn sich die currentTrackDurationSec ändert, und kann dann direkt die Restlaufzeit in dem Sonos_Schlafzimmer setzen, z.B. als Reading myRemainingTime...

Vorteile:
- Event-Basiert, wird also nur ausgewertet, wenn sich ein relevanter Wert ändert => geringst mögliche Systembelastung
- Direkt da, wo man es vermutet (beim Sonos...)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Schneewa

Hallo Beta-User

Vielen Dank für die rasche Antwort

Wie realisiere ich das am besten?

Beta-User

1. Schritt: commandref zu userreadings lesen (+ggf. Wiki).2. Schritt: selber versuchen... Basis ist ja schon in dem at.

Wenn's dann nicht will, code Posten...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

Schneewa

#4
hab's hinbekommen - Danke für den Hinweis Beta-User

Userreading


currentTrackremaining:currentTrackPositionSimulatedSec:.* {strftime ("%H:%M:%S",localtime(ReadingsVal("Sonos_Schlafzimmer","currentTrackDurationSec",0) - ReadingsVal("Sonos_Schlafzimmer","currentTrackPositionSimulatedSec",0)-3600))}


:)

Beta-User

 :) Schön, dass es geklappt hat.

Setzt du den Thread noch auf [gelöst]? (Ja, kannst du selbst: ersten Beitrag editieren und da den Titel ändern.)
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files