Anzeige eines Shelly 2.5 in Roller-Mode

Begonnen von moonsorrox, 10 August 2020, 18:39:50

Vorheriges Thema - Nächstes Thema

moonsorrox

Hat hier jemand schon mal eine halbwegs vernünftige Anzeige eines Shelly 2.5 im Shutter Modus für eine Markise als Anzeige hin bekommen. In Fhem habe ich das aber mir fehlt noch die Anzeige und Betätigung in FTUI.

Mir würden da eigentlich zwei Anzeigen reichen einmal "Eingefahren" und als zweite Anzeige jede andere Stellung als "Ausgefahren"
Betätigen und anzeigen wollte ich das über das Widget Switch. Bekomme das absolut nicht hin  :-\
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

amenomade

Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

moonsorrox

#2
diese Variante habe ich probiert:

<div class="card">
<div data-type="switch" data-device="AU_Markise" data-get="state" data-set-on="50" data-set-off="close" data-icon="fs-awning" data-states='["50","close"]' data-background-icons='["red-box","green-box"]' data-off-color="lightgreen" data-on-color="#DC143C"></div>
<div style="margin-top:10px; font-size:100%;">Markise<br>Terrasse</div></div>

Die beiden Icons habe ich extra mal erstellt und funktionieren bei all meine anderen Switches prima, bei Ein eben in Rot und Aus in Grün. Die setze ich auch bei meinen Shelly 1 ein, aber dieser Rollladenschalter bekomme ich nicht hin.

Am liebsten wäre es mir wenn die Markise eingefahren ist also auf "0" das der Switch grün ist, alle anderen Positionen können gern in Rot sein, aber ich komme auch mit diesen Positionen nicht hin. Meistens ist die Markise wenn sie ausgefahren ist auf der Position 50, deshalb habe ich die oben im Code auch eingetragen aber das funktioniert nicht.
data-get-on="[0-9]{1,3}|on"

Ich hänge mal ein Screenshot ran unten rechts sind die beiden Versuche zu sehen, aber die funktionieren eben nicht.
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

amenomade

#3
Was liefert denn [AU_Markise:state] für Werte? Gehört "close" dazu?

Wenn Du mit data-states arbeitest, musst Du nicht noch dazu data-off-color und data-on-color definieren, sondern data-colors

EDIT: Korrektur
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

moonsorrox

eigentlich bringt der state nur Zahlen momentan steht er auf "0" das wäre eingefahren oder close, die readinglist im Shelly hat noch weitere Werte, die hänge ich mal ran.
Ich habe noch eine Anzeige die funktioniert, soll heißen diese Anzeige zeigt mit den Status eben jetzt gerade als Eingefahren und der state ist wie geschrieben "0" aber in dem Schaltpanel mache ich das ja mit dem switch und das bekomme ich nicht hin.
Ich habe es auch schon mit "pct" probiert, aber kein Erfolg weil den Wert gibt es auch noch. Ich habe leider nur diesen einen Shelly 2.5 in Betrieb kann also nichts vergleichen.

shellies/AU_Markise-shellyswitch25-B94C34/roller/0/pos:.* pct
  shellies/AU_Markise-shellyswitch25-B94C34/status/0/rollers:.* power
  shellies/AU_Markise-shellyswitch25-B94C34/online:.* online
  shellies/AU_Markise-shellyswitch25-B94C34/announce:.* { json2nameValue($EVENT) }
  shellies/announce:.* { $EVENT =~ m,..id...AU_Markise-shellyswitch25-B94C34...mac.*, ? json2nameValue($EVENT) : return }
  shellies/AU_Markise-shellyswitch25-B94C34/roller/0:.* current
  shellies/AU_Markise-shellyswitch25-B94C34/roller/0:open {{'state' => 'opening'}}
  shellies/AU_Markise-shellyswitch25-B94C34/roller/0:close {{'state' => 'closing'}}
  shellies/AU_Markise-shellyswitch25-B94C34/roller/0/pos:.* state
  shellies/AU_Markise-shellyswitch25-B94C34/input/1:.* input1
  shellies/AU_Markise-shellyswitch25-B94C34/input/0:.* input0
  shellies/AU_Markise-shellyswitch25-B94C34/relay/power:.* power
  shellies/AU_Markise-shellyswitch25-B94C34/relay/energy:.* energy
  shellies/AU_Markise-shellyswitch25-B94C34/temperature:.* temperature
  shellies/AU_Markise-shellyswitch25-B94C34/overtemperature:.* overtemperature
shellyswitch25_B94C34:shellies/AU_Markise-shellyswitch25-B94C34/roller/0/power:.* roller_0_power
shellyswitch25_B94C34:shellies/AU_Markise-shellyswitch25-B94C34/roller/0/energy:.* roller_0_energy
shellyswitch25_B94C34:shellies/AU_Markise-shellyswitch25-B94C34/temperature_f:.* temperature_f
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM

amenomade

#5
Also, Vorschlag für einen Anfang mit multistate und zufälligen Werte :
<div data-type="switch"
   data-device="AU_Markise"
   data-get="state"
   data-states='["0","50","80"]'
   data-set-states='["50","close","close"]'
   data-background-icons='["green-box","orange-box","red-box"]'
   data-icons='["fs-awning","fs-awning","fs-awning"]'
   data-colors='["#DC143C","lightgreen","black"]'
></div>

Von 0 bis 49 werden das background grün und das IconFarbe  #DC143C dargestellt, und ein klick macht ein "set... 50"
Von 50 bis 79 werden das background orange und das Icon lightgreen dargestellt, und ein klick macht ein "set...close"
Ab 80 werden das background rot und das Icon  black dargestellt, und ein klick macht auch ein "set... close"
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

moonsorrox

#6
vielen Dank für das Beispiel.
Es geht leider gar nichts, weder Funktion noch Icon Anzeige... ich glaube in meinen Versuchen hatte ich es auch schon mal so drin, habe jetzt aber nicht alle dokumentiert.
Lag wohl am Browsercache das er erst gar nichts angezeigt hat.
Ich werde mal noch einiges probieren, habe da mit dem Shelly 2.5 noch gar keine Erfahrung wie man das ambesten darstellen kann... :-\

EDIT://
Ich habe das jetzt mit einem PopUp gelöst und steuere so wie in Fhem, heißt ich habe jedem Befehl ein Icon mit einem Fahrbefehl zugeordent, das funktioniert soweit OK.

Eine Frage zu der Anzeige ich habe das Icon so dargestellt mit festen Werten so das er mir anzeigt welchen Status es hat.
Was aber schöner wäre wenn ich alles was ab 50% bis zu 100% in rot angezeigt momentan zeigt da muss ich dann bei dat-states 51 eintragen..? Ich habe das mal gemacht werde mal schauen...

<div data-type="symbol" data-device="AU_Markise" data-states='["0","50","100"]' data-colors='["lightgreen","black","crimson"]' data-background-icons='["green-box","yellow-box","red-box"]' data-icons='["fs-fts_sunblind_0","fs-fts_sunblind_50","fs-fts_sunblind_100"]'></div>
Intel-NUC i5: FHEM-Server 6.1 :: Perl v5.18.2

Homematic: HM-USB-CFG2,HM-CFG-LAN Adapter, HM-LC-BL1-FM, HM-LC-Sw1PBU-FM, HM-LC-Sw1-PI-2, HM-WDS10-TH-O, HM-CC-TC, HM-LC-SW2-FM