Autor Thema: Connected und menu  (Gelesen 1288 mal)

Offline australien

  • Full Member
  • ***
  • Beiträge: 336
Connected und menu
« am: 03 Oktober 2022, 11:42:52 »
Hallo zusammen,

ich hab bei meinen Sonos eine Mqtt Version. In dem device SonosBridge gibt es 2 Readings, einmal Favorites und einmal favlist. Diese zwei sollen im menue angezeigt werden, nur ich schaffe es irgendwie nicht.

Das addOption wird im device Esszimmer aufgerufen.

Danke für eure Hilfe

oder wie bekommt Ihr die Favoriten in ein Menü?

addOptions
appOptions

{"template": "sonosmqtt", "connected": {"favquelle":"SonosBridge"}, "name": "Sonos Esszimmer", "dashboard": true, "group": "Sonos", "sortby": "2"}

template:
{
  "name": "sonosplay_mqtt",
  "author": "robert",
  "date": "2022-03-24",
  "expand": true,
  "status": {
    "bar": ["transportState:PLAYING:100:success","transportState:TRANSITIONING:100:warning","transportState:(STOPPED|PAUSED_PLAYBACK):100:error"],
"error": []
  },
  "main": [
    {
      "leftBtn": ["currentTrack_ProtocolInfo:sonos.com-http:mdi-skip-previous:disabled","currentTrack_ProtocolInfo::mdi-skip-previous"],
      "leftClick": ["transportState::previous"],
      "midBtn": ["transportState:PLAYING:mdi-pause", "transportState::mdi-play"],
      "midClick": ["transportState::toggle"],
      "rightBtn": ["currentTrack_ProtocolInfo:sonos.com-http:mdi-skip-next:disabled","currentTrack_ProtocolInfo::mdi-skip-next"],
      "rightClick": ["state::next"]
    },
    {
      "leftBtn": ["mute:false:mdi-volume-high", "mute:true:mdi-volume-mute"],
      "leftClick": ["mute:false:mute true", "mute:true:mute false"],
      "slider": ["volume::volume %v:%n:0:70"],

    "rightBtn": "mdi-menu",
        "rightMenu": ["Connected.favquelle.Readings.favlist.Value.%s:Connected.favquelle.Readings.Favorites.Value.%s"
    },
{
      "leftBtn": ["currentTrack_ProtocolInfo:sonos.com-http:mdi-skip-previous:disabled","currentTrack_ProtocolInfo::mdi-skip-previous"],
      "leftClick": ["transportState::previous"],
      "rightBtn": ["currentTrack_ProtocolInfo:sonos.com-http:mdi-skip-next:disabled","currentTrack_ProtocolInfo::mdi-skip-next"],
      "rightClick": ["state::next"]
    },
{
      "text": ["nextTrack_Artist::%s"],
      "text2": ["nextTrack_Title::%s"]
    }
  ],
  "info": {
    "left1": ["mute:true::mdi-volume-off", "transportState:PLAYING::mdi-play", "transportState:::mdi-pause"],
    "left2": ["currentTrack_Artist:$:%s"],
    "right2": ["currentTrack_Title::%s"]
  }
}

Readings  Favorites in SonosBridge
{"Result":[{"AlbumArtUri":"http://cdn-profiles.tunein.com/s172072/images/logoq.png","Title":"2Day Buddha (Chill)","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/9","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s172072?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s202791/images/logoq.png?t=155748","Title":"Boom","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/4","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s202791?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/22/0c/2703/1/c300.png","Title":"FM4","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/22","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:2703?sid=264&flags=8232&sn=7","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/37/bf/4524/1/c175.png","Title":"Gold FM","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/5","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:4524?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/6e/9c/122244/1/c175.png","Title":"Heart 80s","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/8","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:122244?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/47/5f/4511/c175.png","Title":"Hitradio Ö3","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/21","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:4511?sid=264&flags=8224&sn=7","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/c5/c5/9012/1/c300.png","Title":"ooe Radio Oberösterreich","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/11","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:9012?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/a3/fe/9807/1/c300.png","Title":"ORF Radio Burgenland","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/12","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:9807?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s265024/images/logoq.jpg?t=158163","Title":"smooth fm Brisbane","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/6","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s265024?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s8786/images/logoq.jpg?t=153330","Title":"Sydneys-2CH","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/7","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s8786?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-radiotime-logos.tunein.com/s294407q.png","Title":"Triple M Greatest Hits (Classic Rock)","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/10","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s294407?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"}],"NumberReturned":11,"TotalMatches":11,"UpdateID":2}
Readings favlist in SonosBridge
Day.Buddha.(Chill),Boom,FM4,Gold.FM,Heart.80s,Hitradio.Ö3,ORF.Radio.Burgenland,Sydneys-2CH,Triple.M.Greatest.Hits.(Classic.Rock),ooe.Radio.Oberösterreich,smooth.fm.Brisbane
« Letzte Änderung: 03 Oktober 2022, 13:39:58 von australien »
raspberry pi3
signalduino, Shelly1, Shelly2, Sonos, Unifi
Amazon Fire Tablet 7 | Noname Android Tablet 10"

Offline australien

  • Full Member
  • ***
  • Beiträge: 336
Antw:Connected und menu
« Antwort #1 am: 03 November 2022, 11:26:31 »
Ist es eigentlich möglich ein Menü aus einem array zu erstellen?
Das ist glaub ich jetzt, das eigentliche Problem.
raspberry pi3
signalduino, Shelly1, Shelly2, Sonos, Unifi
Amazon Fire Tablet 7 | Noname Android Tablet 10"

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #2 am: 03 November 2022, 12:13:19 »
Das Menü ist recht einfach aufgebaut und kann nur mit fest definierten "Wertepaaren", bestehend aus einem Text und einem Kommando, befüllt werden. Siehe dazu auch die Beschreibung unter https://github.com/jemu75/fhemApp#eigene-templates-erstellen

Grüße
Jens :)

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #3 am: 03 November 2022, 13:15:30 »
Beinhalten die beiden Readings die selben Favoriten?

Offline australien

  • Full Member
  • ***
  • Beiträge: 336
Antw:Connected und menu
« Antwort #4 am: 03 November 2022, 15:15:20 »
Die Readings kommen aus der SonosBridge.
Das eine favlist beinhaltet den Text und die Favorites den Befehl (html). Die Reihenfolge ist natürlich die gleiche.

Reading favlist

2Day.Buddha.(Chill),Boom,FM4,Gold.FM,Heart.80s,Hitradio.Ö3,ORF.Radio.Burgenland,Sydneys-2CH,Triple.M.Greatest.Hits.(Classic.Rock),ooe.Radio.Oberösterreich,smooth.fm.Brisbane

Readings Favorites
{"Result":[{"AlbumArtUri":"http://cdn-profiles.tunein.com/s172072/images/logoq.png","Title":"2Day Buddha (Chill)","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/9","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s172072?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s202791/images/logoq.png?t=155748","Title":"Boom","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/4","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s202791?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/22/0c/2703/1/c300.png","Title":"FM4","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/22","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:2703?sid=264&flags=8232&sn=7","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/37/bf/4524/1/c175.png","Title":"Gold FM","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/5","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:4524?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/6e/9c/122244/1/c175.png","Title":"Heart 80s","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/8","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:122244?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/47/5f/4511/c175.png","Title":"Hitradio Ö3","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/21","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:4511?sid=264&flags=8224&sn=7","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/c5/c5/9012/1/c300.png","Title":"ooe Radio Oberösterreich","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/11","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:9012?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"https://static.radio.de/images/broadcasts/a3/fe/9807/1/c300.png","Title":"ORF Radio Burgenland","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/12","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:STATION:9807?sid=264&flags=8224&sn=3","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s265024/images/logoq.jpg?t=158163","Title":"smooth fm Brisbane","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/6","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s265024?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-profiles.tunein.com/s8786/images/logoq.jpg?t=153330","Title":"Sydneys-2CH","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/7","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s8786?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"},{"AlbumArtUri":"http://cdn-radiotime-logos.tunein.com/s294407q.png","Title":"Triple M Greatest Hits (Classic Rock)","UpnpClass":"object.itemobject.item.sonos-favorite","ItemId":"FV:2/10","ParentId":"FV:2","TrackUri":"x-sonosapi-stream:s294407?sid=254&flags=8224&sn=0","ProtocolInfo":"x-sonosapi-stream:*:*:*"}],"NumberReturned":11,"TotalMatches":11,"UpdateID":1}
raspberry pi3
signalduino, Shelly1, Shelly2, Sonos, Unifi
Amazon Fire Tablet 7 | Noname Android Tablet 10"

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #5 am: 04 November 2022, 06:54:01 »
Mir erschließt sich noch nicht, wozu du das Reading favlist verwenden möchtest. Der Name befindet sich auch in dem Reading Favorites, wenn ich das richtig sehe. (steht in der JSON Definition unter "Title")
Gibt es da einen Unterschied zwischen den beiden Readings?

VG
Jens

Offline australien

  • Full Member
  • ***
  • Beiträge: 336
Antw:Connected und menu
« Antwort #6 am: 04 November 2022, 07:51:18 »
Stimmt, hatte ich übersehen. Sorry.

Aber du verstehst was ich vor habe? Oder?
Ist jetzt nicht so, dass sich die Favoriten permanent ändern, aber so wäre es halt für andere auch gut zu verwenden. Bzw vielleicht/sicher gibt es noch andere dynamischen Menüpunkte.

Zu meinem Problem zurück.
Sollte also mit regex zu machen sein, wenn ich das nur könnte 🥲
« Letzte Änderung: 04 November 2022, 07:52:57 von australien »
raspberry pi3
signalduino, Shelly1, Shelly2, Sonos, Unifi
Amazon Fire Tablet 7 | Noname Android Tablet 10"

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #7 am: 04 November 2022, 10:10:03 »
Wie schon geschrieben, lässt sich die Definition für menu bisher nicht dynamisch füllen. Und regex wird dir hier auch nicht weiterhelfen. Ich könnte mir generell nochmal Gedanken machen, wie sich menu dynamisch befüllen lassen könnte. Auf jeden Fall benötige ich für jeden Menüeintrag eine Bezeichnung (Text) und ein zugehoriges Kommando. Beides müsste optimaler Weise aus jedem FHEM Device in gleicher Form auslesbar sein, damit ich nicht für jede Art von Device (im konkreten Fall sonosbridge) eine individuelle Implementierung bauen müsste. Wie das FHEM-seitig am besten zu realisieren wäre, habe ich bisher noch nicht rausgefunden und wäre für Ideen offen.  :)

Jens

Offline mark24

  • New Member
  • *
  • Beiträge: 8
Antw:Connected und menu
« Antwort #8 am: 04 November 2022, 23:50:12 »
ich stehe vor der gleichen Herausforderung mit den Menu Einträgen.
Für mich klingt der Versuch das mit einer wie auch immer geartete Logik in FHEMapp zu lösen, nicht sinnvoll da es imho unnötig Komplexität rein bringt.
Einfacher wäre es doch die Logik in FHEM zu belassen und dort die fertige Syntax in ein Reading zu speichern.
FHEMapp zieht dann "nur" den Wert des readings und baut daraus das Menu (sollte das bereits funktionieren, brauch ich mal bitte ein Beispiel zum abschreiben).


Das Ergebnis der FHEM Logik mal simuliert:
setreading Sonos_Wohnzimmer appMenu ["George FM:StartFavourite George%20FM", "Jump FM:StartFavourite Jump%20FM"]

im FHEMapp template:
"rightMenu": ["appMenu %s"]

Sofern der Ansatz überhaupt realisierbar ist, wäre der flexibel einsetzbar.

grüße
Marcus

Offline binford6000

  • Tester
  • Hero Member
  • ****
  • Beiträge: 1548
  • 🏠⚙️💡🛠📱
Antw:Connected und menu
« Antwort #9 am: 05 November 2022, 10:56:05 »
ich stehe vor der gleichen Herausforderung mit den Menu Einträgen.
Für mich klingt der Versuch das mit einer wie auch immer geartete Logik in FHEMapp zu lösen, nicht sinnvoll da es imho unnötig Komplexität rein bringt.
Einfacher wäre es doch die Logik in FHEM zu belassen und dort die fertige Syntax in ein Reading zu speichern.
FHEMapp zieht dann "nur" den Wert des readings und baut daraus das Menu (sollte das bereits funktionieren, brauch ich mal bitte ein Beispiel zum abschreiben).


Das Ergebnis der FHEM Logik mal simuliert:
setreading Sonos_Wohnzimmer appMenu ["George FM:StartFavourite George%20FM", "Jump FM:StartFavourite Jump%20FM"]

im FHEMapp template:
"rightMenu": ["appMenu %s"]

Sofern der Ansatz überhaupt realisierbar ist, wäre der flexibel einsetzbar.

grüße
Marcus

Moin,
ohne Eingriff in die FHEMapp durch Jens wird das m.E. nichts werden...
Ich hatte mir mal was gebaut um dark/light-Theme, Debug-Modus und Update zu steuern. Dabei ändere ich die config.json per sed:
fhemapp.d:.* {
  if ($EVENT =~ /light/) {
    fhem("\"sed -i 's/\"dark\": true,/\"dark\": false,/g' ./www/fhemapp/cfg/config.json\"")
  }
  elsif ($EVENT =~ /dark/) {
    fhem("\"sed -i 's/\"dark\": false,/\"dark\": true,/g' ./www/fhemapp/cfg/config.json\"")
  }
  elsif ($EVENT =~ /on/) {
    fhem("\"sed -i 's/\"debugMode\": false,/\"debugMode\": true,/g' ./www/fhemapp/cfg/config.json\"")
  }
  elsif ($EVENT =~ /off/) {
    fhem("\"sed -i 's/\"debugMode\": true,/\"debugMode\": false,/g' ./www/fhemapp/cfg/config.json\"")
  }
  elsif ($EVENT =~ /debug_level/) {
    my $level = (split ' ', $EVENT)[-1];
    fhem("\"sed -i 's/\"debugLevel\": .*/\"debugLevel\": $level/g' ./www/fhemapp/cfg/config.json\"")
  }
  elsif ($EVENT =~ /update/) {
    fhem("\"/opt/fhem/scripts/update_fhemapp.sh\"")
  }
}

Sowas könnte man auch auf ein SONOS-Template anwenden um die Favourites zu ändern.
Nur mal so als Denkanstoß...  ;)

VG sebastian

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #10 am: 05 November 2022, 13:40:40 »
Vielen Dank für eure Rückmeldungen. Ich wäre grundsätzlich bereit, in FHEMapp was passendes zu implementieren. Optimaler Weise aber eben so, dass ich nicht für jedes FHEM Device eine spezielle Implementierung bauen muss. Der Ansatz mit dem setreading sieht auf jeden Fall schonmal gut aus. Sowas könnte ich in FHEMapp auslesen und das menu damit befüllen.
Gut wäre natürlich, wenn sich das setreading automatisch aus den Sonos Favoriten generieren würde. Ansonsten läuft es ja letztlich wieder auf eine manuelle Definition der Menüeinträge raus. Nur, dass diese dann im setreading anstatt im Template hinterlegt werden.

Offline mark24

  • New Member
  • *
  • Beiträge: 8
Antw:Connected und menu
« Antwort #11 am: 05 November 2022, 22:46:19 »
Quelle: reading FavouritesListAlias der Sonos
FavouritesListAlias: 1LIVE diggi - Multimedia - 1LIVE|BBC Radio 1 98.8 (Top 40/Pop)|BBC Radio 1Xtra (Hip Hop)|DASDING|Fritz vom rbb|George FM

Logik:
attr sonos userReadings 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};;\
}

Ergebins: neues reading appMenu
appMenu: "1LIVE diggi - Multimedia - 1LIVE:StartFavourite 1LIVE%20diggi%20-%20Multimedia%20-%201LIVE", "BBC Radio 1 98.8 (Top 40/Pop):StartFavourite BBC%20Radio%201%2098.8%20(Top%2040/Pop)", "BBC Radio 1Xtra (Hip Hop):StartFavourite BBC%20Radio%201Xtra%20(Hip%20Hop)", "DASDING:StartFavourite DASDING", "Fritz vom rbb:StartFavourite Fritz%20vom%20rbb", "George FM:StartFavourite George%20FM"

Wenn es eine Möglichkeit gibt, das FHEMapp im Command Teil nicht nach dem ersten Space aufhört, könnte der ganze $item_html und das replace entfallen.
« Letzte Änderung: 05 November 2022, 22:51:47 von mark24 »

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #12 am: 06 November 2022, 11:13:08 »
Das ist ein guter Ansatz!  :)
Wenn das userReading ein Array mit folgendem Inhalt liefert, würde ich das als Grundlage verwenden -> ["text1:command1", "text2:command2", "text3:command3", ...]
Die Leerzeichen in den Kommandos fange ich intern in FHEMapp bereits ab. Das könnte also in der Definition des userReading entfallen.

Ich mache mir mal Gedanken, wie ich das in die Definition menu implementiere und würde dann ein neues Release zur Verfügung stellen.

Jens.  :)
Gefällt mir Gefällt mir x 1 Liste anzeigen

Offline mark24

  • New Member
  • *
  • Beiträge: 8
Antw:Connected und menu
« Antwort #13 am: 06 November 2022, 21:42:40 »
ich sehe dass FHEMapp space in %20 umwandelt

Request: http://fhem:80/fhem?fwcsrf=csrf_1234&cmd=set%20Sonos_Kueche%20StartFavourite%20DASDING

aber das scheint für den Fall eines Wertes mit Leerzeichen nicht zu reichen.

Request: http://fhem:80/fhem?fwcsrf=csrf_1234&cmd=set%20Sonos_Kueche%20StartFavourite%20George%20FM

Sonos_Kueche: LastActionResult: StartFavourite: Favourite "George" not found. Choose one of: ...,"George FM",...

mit %20 im Kommando sieht es so aus
Request: http://fhem:80/fhem?fwcsrf=csrf_1234&cmd=set%20Sonos_Kueche%20StartFavourite%20George%2520FM
und startet wie gewünscht.


noch das Update für die [ ]
attr Sonos_Kueche userReadings appMenu:FavouritesListAlias.* {\
 my $result;; my $command=':StartFavourite ';;\
 foreach my $item (split(/\|/, ReadingsVal($name, "FavouritesListAlias" ,""))) { \
   if($result ne "") {$result .= ', '}\
   $result .= '"' . $item . $command . $item . '"';;\
 };;\
 $result = '[' . $result . ']';;\
 {return $result};;\
}


appMenu: ["1LIVE diggi - Multimedia - 1LIVE:StartFavourite 1LIVE diggi - Multimedia - 1LIVE", "BBC Radio 1 98.8 (Top 40/Pop):StartFavourite BBC Radio 1 98.8 (Top 40/Pop)", "BBC Radio 1Xtra (Hip Hop):StartFavourite BBC Radio 1Xtra (Hip Hop)", "DASDING:StartFavourite DASDING"]

Offline jemu75

  • Moderator
  • Sr. Member
  • ***
  • Beiträge: 882
    • FHEM App
Antw:Connected und menu
« Antwort #14 am: 07 November 2022, 14:51:52 »
Ich wollte das eben testen und habe festgestellt, dass es bei meinen Sonosplayern kein Reading mit dem Name FavouritesListAlias gibt.  ???