[FHEM-Tablet-UI] WeekdayTimer Widget

Begonnen von svenson08, 24 Januar 2016, 18:39:21

Vorheriges Thema - Nächstes Thema

juemuc

HAllo eki,

das passt leider nicht, da damit ja am WE der Befehl nicht ausgeführt wird. Am WE soll er aber nur an einer anderen Uhrzeit ausgeführt werden.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

eki

Na ja, dann musst Du das eben ein bisschen anpassen. Du könntest z.B. extra Profile definieren, die für das Wochenende zuständig sind und denen einen speziellen Wert geben (z.B. we_on und we_off). Im Code müsstest Du das dann entsprechend auf 'on' und 'off' Befehle anpassen. Siehe:

defmod Nachtlampe_WT WeekdayTimer FBDECT_FB_08761_0230141 de 06|22:15|we_on 06|{sunrise_abs(0,"00:00","23:59")}|we_off 1234|22:15|on 1234|{sunrise_abs(0,"00:00","23:59")}|off {if (($EVENT eq "on") or !we) {fhem("set $NAME $EVENT")};; if($EVENT eq 'we_on') {fhem("set $NAME on")};; if($EVENT eq 'we_off') {fhem("set $NAME off")};;}

juemuc

Hallo eki,

danke. Die Idee hört sich gut an. Ich werde dies am nächsten WE testen.
Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

m-d-ley

Hallo,
hat hier zufällig noch jemand ein Problem mit Toast Meldungen vom datetimepicker und Verbingung mit dem Widget, Flex layout und Änderung der Bildschirmgröße z. B. beim drehen des Smartphones von hoch auf Querformat bzw. beim Öffnen des WDTimers?


m-d-ley

Falls jemandem noch das Problem mit dem Datetimepicker auffällt, ich habe sonst einen leicht modifizierten Datetimepicker, der diese Fehlermeldung behebt.

FHA

#545
Hallo Community,

ich habe 2 Weekdaytimer für meine Rolladensteuerung eingebunden.

Jedoch habe ich das Problem, dass sobald ich auf dem Tablet auf speichern drücke, die Meldung "Einstellung können nicht übernommen werden" bekomme.

Hat von euch jemand eine Idee oder einen kleinen Schubs wo ich da gucken müsste?

Meine Definitiond es WD in FHEM:
defmod wdt_WZ_Rollo_gross WeekdayTimer HM_Rolllade_WZ_Tuer_gross de !$we|20:00|off !$we|05:30|on $we|23:00|off $we|07:00|on
attr wdt_WZ_Rollo_gross DbLogExclude .*
attr wdt_WZ_Rollo_gross commandTemplate set $NAME  $EVENT
attr wdt_WZ_Rollo_gross disable 0
attr wdt_WZ_Rollo_gross event-on-change-reading .*
attr wdt_WZ_Rollo_gross room Logik->WeekdayTimer

setstate wdt_WZ_Rollo_gross active
setstate wdt_WZ_Rollo_gross 2020-05-07 12:26:41 currValue on
setstate wdt_WZ_Rollo_gross 2020-05-07 08:37:17 disabled 0
setstate wdt_WZ_Rollo_gross 2020-05-07 12:26:41 nextUpdate 2020-05-07 20:00:00
setstate wdt_WZ_Rollo_gross 2020-05-07 12:26:41 nextValue off
setstate wdt_WZ_Rollo_gross 2020-05-07 12:26:41 state active



Die Einbindung in FHEM:
<li data-row="8" data-col="3" data-sizex="2" data-sizey="3">
                <header>
                    <div data-type="label" class="medium">Rolladen rechts</div>
                </header>
<table>
<tr>
<td>
<div data-type="symbol" class="cell big left" data-device="HM_Rolllade_WZ_Tuer_gross" data-get="level"
data-icons='["oa-fts_window_2w","oa-fts_shutter_10","oa-fts_shutter_20","oa-fts_shutter_30","oa-fts_shutter_40",
"oa-fts_shutter_50","oa-fts_shutter_60","oa-fts_shutter_70","oa-fts_shutter_80",
"oa-fts_shutter_90","oa-fts_shutter_100"]'
data-get-on='["0","10","20","30","40","50","60","70","80","90","100"]' data-color="#fafafa">
</div>
</td>
<td>
<div class="triplebox-v right" >
<div data-type="push" data-device="HM_Rolllade_WZ_Tuer_gross" data-icon="fa-chevron-up" data-color="#fafafa" data-background-icon="fa-square-o" data-set-on="off"> </div>
<div data-type="push" data-device="HM_Rolllade_WZ_Tuer_gross" data-icon="fa-minus" data-color="#fafafa" data-background-icon="fa-square-o" data-set-on="stop"> </div>
<div data-type="push" data-device="HM_Rolllade_WZ_Tuer_gross" data-icon="fa-chevron-down" data-color="#fafafa" data-background-icon="fa-square-o" data-set-on="on"> </div>
</div>
</td>
<td>
<div data-type="select" data-device="HM_Rolllade_WZ_Tuer_gross" data-items='["0","10","20","30","40","50","60","70","80","90","100"]'
       data-alias='["Auf","10%","20%","30%","40%","50%","60%","70%","80%","90%","Zu"]' data-get="" data-set="" class="cell" ></div>
</td>
</tr>
<tr>
<td>
<div style="position:absolute; bottom:0; left:0;"
data-type="wdtimer"
data-device="wdt_WZ_Rollo_gross"   
data-style="round"
data-theme="custom"
data-title="Rollade Tür gross"
data-cmdlist='{"Auf":"0","Zu":"100","10%":"10","20%":"20","30%":"30","40%":"40","50%":"50","60%":"60","70%":"70","80%":"80","90%":"90"}'
data-width="700"
data-height="500">
<div data-type="button" class="cell small readonly" data-icon="oa-edit_settings" data-background-icon="fa-square-o" data-on-color="#fafafa" data-on-background-color="#fafafa">
</div>
</div>
</td>
</tr>
</table>
</li>



Edit:
die Theme Auswahl kloppt da rein, nehme ich dark funktioniert es. Nehme ich Custom oder Light funktioniert es nicht.
Jemand hierzu eine Idee? @eki vllt?

eki

Ich schau's mir mal an, geht aber erst Anfang nächster Woche.

juemuc

Hallo eki,

nachdem am WeekdayTimer-Modul kräftig "geschraubt" wurde, habe ich größere Probleme mit dem Widget. Aktuell werden einige meiner WTs als disabled im FTUI angezeigt, obwohl sie enabled sind. Damit kann ich sie z.B. nicht mehr über FTUI deaktivieren. Eventuell kannst Du dich kurz mit Beta-User abstimmen, da er den Umbau im Modul durchgeführt hat. Das wäre super. Vielen Dank vorab.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

eki


juemuc

3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

eki

Hallo Jürgen,

wenn Dein Problem "nur" das disable ist, dann kannst Du mal folgendes probieren. Setze mal in FHEM das weekdaytimer device einmal auf disabled (attr disable 1) und dann wieder zurück (attr disable 0).
Falls das nichts hilft, dann schicke mir mal bitte sowohl das Ergebnis eines list <wdtimer_device> als auch Deine Definition des widgets in FTUI.

juemuc

Hallo eki,

dein Tipp hat leider nicht geholfen. Anbei meine Definitionen:

                        <table class="left-align inline bg-gray">
                        <header class="inline bg-lightgray black large">Timer</header>
                        <tr>
                           <td>
                              <div id="wdtimer_ftui" data-type="wdtimer" data-device="Nachtlampe_WT" data-language="de" data-style="square" data-theme="dark"
                                   data-timesteps="1" data-title="Nachtlampe" data-cmdlist='{"An":"on","Aus":"off"}' data-width="750" data-savecfg="true" class="left-space">
                                  <div data-type="label" class="big">Nachtlampe</div>
                              </div>
                           </td>
                           <td>
                              <div data-type="switch" data-device="FBDECT_FB_08761_0230141" data-get"state" data-set-on="on" data-set-off="off" class="tiny">
                              </div>
                           </td>
                           <td>
                              <div data-type="label" data-device="Nachtlampe_WT" data-get="nextUpdate"
                                   data-hide="disabled" data-hide-on="1" data-color="green" class="large">
                              </div>
                           </td>
                           <td>
                              <div data-type="label" data-device="Nachtlampe_WT" data-get="nextValue" data-substitution='["on","AN","off","AUS"]' data-limits='["on","off"]'
                                   data-colors='["red","green"]' data-hide="disabled" data-hide-on="1" data-color="white" class="large">
                              </div>
                              <div data-type="label" data-device="Nachtlampe_WT" data-get="disabled" data-substitution='["1","Timer ist AUS!"]'
                                   data-hide="disabled" data-hide-on="0" data-color="red" class="large right-space">
                              </div>
                           </td>
                       </tr>

defmod Nachtlampe_WT WeekdayTimer FBDECT_FB_08761_0230141 de 1234560|22:15|on 12345|06:10|off 1234560|{sunrise_abs(0,"00:00","23:59")}|off
attr Nachtlampe_WT commandTemplate set $NAME  $EVENT
attr Nachtlampe_WT devStateStyle style="text-align:right"
attr Nachtlampe_WT disable 0
attr Nachtlampe_WT event-on-change-reading .*
attr Nachtlampe_WT group Schaltzeitpunkte
attr Nachtlampe_WT room Schaltzentrale,Statuszentrale
attr Nachtlampe_WT stateFormat {my $val;;\
if (ReadingsVal($name, "disabled","") eq "1") {$val = "AUS"}\
else {$val = ReadingsVal($name, "currValue","")};;\
$val}


Es ist nicht bei allen WT-Definitionen.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

eki

Wenn es nicht bei allen Definitionen ist, kannst Du mir dann ein Beispiel schicken, bei dem es geht (falls das angehängte ein nicht Funktionierendes ist, ansonsten natürlich umgekehrt). Dann kann ich einfacher heraus bekommen was es sein könnte.

juemuc

Hallo eki,

aktuell funktioniert es bei keinem WT. Da muss ich mich wohl vertan haben.

Viele Grüße
Jürgen
3x Sonos Play 1, 1x Sonos Arc + Sub, 1 Sonos-One, 1x Sonos Playbar
FB6690 + FB7490 mit 4x Dect 200 und 3 Dect-ULE-Thermostate,  raspberry3B+, HM Funkmodul HM-MOD-RPI-PCB, HM Klingelsensor HM-Sen-DB-PCB, HM (IP) Fensterkontakte und  Amazon Echo Dot,  piVCCU, pi OS (bookworm).

freddykr

Hallo eki,

ich habe mich jetzt die letzten Tage neu mit dem Widget beschäftigt und prinzipiell funktioniert es so weit.
Ich habe aber ein Problem mit der "data-cmdlist". Die zeigt den Anzeigetext nicht an, sondern den FHEM-Befehl.

Es gab dies zwar schon mal hier https://forum.fhem.de/index.php/topic,48106.msg875629.html#msg875629 aber eine Lösung habe ich nicht gefunden.
FTUI-Version: 2.6.15 (bei 2.7.15 das gleiche Bild, kann ich aber noch nicht verwenden, da es meine ganze Oberfläche zerschießt)
Widget-Version: 2.1

FHEM-Code:
Internals:
   COMMAND   
   CONDITION 
   DEF        T1000 de 1|08:00|start
   DEVICE     T1000
   FUUID      5f2b0664-f33f-bbf9-0710-62ef901a2d236915
   GlobalDaylistSpec
   LANGUAGE   de
   NAME       WDT_T1000
   NR         554
   Profil 1: Montag 08:00:00 start,
   STATE      inactive
   STILLDONETIME 0
   TYPE       WeekdayTimer
   READINGS:
     2020-08-11 16:19:15   currValue       start
     2020-08-11 16:19:14   disabled        0
     2020-08-11 16:19:15   nextUpdate      2020-08-17 08:00:00
     2020-08-11 16:19:15   nextValue       start
     2020-08-11 16:19:15   state           inactive
   SWITCHINGTIMES:
     1|08:00|start
   TIMER:
     WDT_T1000_SetTimerOfDay:
       HASH       WDT_T1000
       MODIFIER   SetTimerOfDay
       NAME       WDT_T1000_SetTimerOfDay
       SETTIMERATMIDNIGHT 1
   helper:
     daysRegExp (so|mo|di|mi|do|fr|sa|\$we|\!\$we)
     daysRegExpMessage (so|mo|di|mi|do|fr|sa|$we|!$we)
     SWITCHINGTIME:
       0:
       1:
         08:00:00   start
       2:
       3:
       4:
       5:
       6:
     WEDAYS:
       4          1
       5          1
   profil:
     1:
       EPOCH      1597125600
       PARA       start
       TIME       08:00
       WE_Override 0
       TAGE:
         1
   profile_IDX:
     1:
       08:00:00   1
Attributes:
   commandTemplate set $NAME  $EVENT
   disable    0


HTML-Code (Testseite)

<!DOCTYPE html>
<html>
<head>

    <link rel="stylesheet" href="lib/jquery.gridster.min.css" />
    <link rel="stylesheet" href="lib/jquery.toast.min.css" />
    <link rel="stylesheet" href="css/fhem-tablet-ui.css" />
    <link rel="stylesheet" href="css/fhem-tablet-ui-wdtimer.css" />
    <link rel="stylesheet" href="lib/jquery.datetimepicker.css" />

    <script src="../pgm2/jquery.min.js"></script>
    <script src="js/fhem-tablet-ui.js"></script>
    <script src="js/widget_wdtimer.js"></script>
    <script src="lib/jquery.datetimepicker.js"></script>

</head>

<body>
        <div class="line-normal" style="color: black;">FTUI-Version</div>
        <div class="normal" style="color: black;">
        <div data-bind="ftui.version"></div>
        </div>

   <div
          data-type="wdtimer"
          data-device="WDT_T1000"
          data-style="noicons nokeyboard"
          data-theme="dark"
          data-title="Schaltzeiten 1Live"
          data-savecfg="true"
          data-timesteps="30"
          data-cmdlist='{"Starten":"start","Anhalten":"stop"}'
          data-width="700"
          data-height="300"
          data-codemirror="true">
                <div data-type="button"></div>
   </div>

</body>
</html>

Viele Grüße,
Danilo