Autor Thema: Connected und menu  (Gelesen 2396 mal)

Offline mark24

  • New Member
  • *
  • Beiträge: 9
Antw:Connected und menu
« Antwort #15 am: 07 November 2022, 22:44:14 »
ich gehe mal davon aus, dass deine SONOSPLAYER im attr userReadings Funktionen für "Favourites", "Radio" usw. enthalten.
Das ist laut Wiki der "alte" Weg.

Im SONOS Device gibt es ein paar neue Schalter
define Sonos SONOS localhost:4711
attr Sonos getFavouritesListAtNewVersion 1
attr Sonos getListsDirectlyToReadings 1
Damit übernimmt das Modul die Aufbereitung und füllt die Readings im SONOSPLAYER.

Dazu kommt noch ein notify
define Sonos_GetNewFavouritesNotify notify Sonos_[^_]+:FavouritesVersion.* { fhem("get $NAME FavouritesWithCovers");; fhem("get $NAME Favourites");; }

Sobald dann eine Änderung an der Favoriten-Liste (add/del) erfolgt, tauchen die neuen Readings auf.
« Letzte Änderung: 07 November 2022, 23:27:55 von mark24 »

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 914
    • FHEM App
Antw:Connected und menu
« Antwort #16 am: 27 November 2022, 13:11:46 »
Ich habe eben das Release 3.36.0 freigegeben. Mit diesem kann der Parameter leftmenu, midmenu bzw. rightmenu jetzt auch über ein reading befüllt werden.
Damit die Favoriten für SONOS korrekt gestartet werden, muss das Userreading, wie hier von mark24 beschrieben erstellt werden.

appMenu:FavouritesListAlias.* {
 my $result;; my $command=':StartFavourite ';;
 foreach my $item (split(/\|/, ReadingsVal($name, "FavouritesListAlias" ,""))) {
   my $item_html = $item;;
   $item_html =~ s/\s/%20/g;;
   if($result ne "") {$result .= ', '}
   $result .= '"' . $item . $command . $item_html . '"';;
 };;
 {return $result};;
}
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline mark24

  • New Member
  • *
  • Beiträge: 9
Antw:Connected und menu
« Antwort #17 am: 10 Dezember 2022, 22:05:25 »
Works like a charm  8)
Danke fürs einbauen!

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1580
  • 🏠⚙️💡🛠📱
Antw:Connected und menu
« Antwort #18 am: 11 Dezember 2022, 16:52:51 »
Wie muss es im Template denn jetzt lauten? So...
"rightMenu": ["fhemApp_FavList %s"]...passiert jedenfalls nichts beim Klick auf das Menu. Das Reading ist natürlich vorhanden und befüllt wie es sein soll...  ;)
Neuste Version ist auch drauf.

VG Sebastian
« Letzte Änderung: 11 Dezember 2022, 22:08:57 von binford6000 »

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 914
    • FHEM App
Antw:Connected und menu
« Antwort #19 am: 14 Dezember 2022, 22:39:13 »
Hi Sebastian,

wenn das Menu durch ein Reading befüllt werden soll, dann wird der Name des Reading einfach als String in dem Parameter angegeben. Vermutlich habe ich das in der Doku etwas missverständlich geschrieben. Probiere bitte mal folgendes in deinem Template.

"rightMenu": "fhemApp_FavList"
Beste Grüße
jens  :)

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1580
  • 🏠⚙️💡🛠📱
Antw:Connected und menu
« Antwort #20 am: 15 Dezember 2022, 07:38:26 »
Moin Jens,
das hatte ich bereits ausprobiert. Dann sieht das device so aus wie im Anhang...

VG Sebastian

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 914
    • FHEM App
Antw:Connected und menu
« Antwort #21 am: 17 Dezember 2022, 20:34:38 »
Hi Sebastian,

wie sieht der Inhalt deines Readings fhemApp_FavList aus?

Bei mir sieht das Reading wie folgt aus und damit funktioniert es
["ABSOLUTE CHILLOUT:StartFavourite ABSOLUTE%20CHILLOUT", "ANTENNE BAYERN Chillout:StartFavourite ANTENNE%20BAYERN%20Chillout", "Absolut relax:StartFavourite Absolut%20relax"]
und die Definition vom userreading sieht wie folgt aus
appMenu:FavouritesListAlias.* {
 my $result;; my $command=':StartFavourite ';;
 foreach my $item (split(/\|/, ReadingsVal($name, "FavouritesListAlias" ,""))) {
   my $item_html = $item;;
   $item_html =~ s/\s/%20/g;;
   if($result ne "") {$result .= ', '}
   $result .= '"' . $item . $command . $item_html . '"';;
 };;
 $result = '[' . $result . ']';;
 {return $result};;
}

Grüße
Jens  :)
« Letzte Änderung: 17 Dezember 2022, 20:36:12 von jemu75 »