Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter mytime

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Test Adapter mytime

    This topic has been deleted. Only users with topic management privileges can see it.
    • OliverIO
      OliverIO @Sasa1887 last edited by

      @sasa1887

      siehe hier
      https://forum.iobroker.net/topic/33376/test-adapter-mytime-v0-1-x

      von github bekommst du adapter über den katzenknopf installiert,
      der nach Aktivierung der Expertendarstellung (auch so ein Kopf-symbol im titel von iobroker) sichtbar ist

      1 Reply Last reply Reply Quote 0
      • OliverIO
        OliverIO last edited by OliverIO

        Neue Version.
        Nach langer Zeit gibt es mal wieder eine neue Version des Adapters. Folgende Neuerungen gibt es:

        • Der komplette Adapter wurde komplett überarbeitet. Die Adminkonfiguration war zwar schonmal in React, hat aber durch Umstellungen im Admin-Adapter nicht mehr richtig funktioniert. Das sollte nun behoben sein.
        • Die Datenstruktur hat sich gegenüber früher verändert, so das die bisherigen Daten leider nicht mit übernommen werden konnten.
        • Die Widgets funktionieren nicht mit vis-2 zusammen. Evtl wird es einen weiteren Adapter geben, der für vis2 die widgets nachliefert, genau so wie beim rssfeed adapter.
        • es wurden neue Befehle hinzugefügt. +! , -! =! $! und #! startet den Donloadtimer gleich mit durch. Die laufende Zeit wird dann entsprechend verlängert, verkürzt oder je nach Parameter auf die Zielzeit gesetzt. Ein laufender Timer läuft weiter und berücksichtigt die neue Laufzeit.
        • Der save Befehl wurde repariert. Dieser sorgt dafür, das nach der initialen Anlage der Countdowntimer angepasst werden kann. Dies kann durch diesen Befehl in die Konfiguration zurück gesichert werden. Der Adapter wird nach Veränderung der Konfiguration automatisch neu gestartet.
        • Es gab einzelne Fixes bei den widgets
        • Die wordclock in der russischen Version ist so ein Problemfall, wer hier unterstützen kann und will, ist gern willkommen. Hier passt die erzeugte Zeit nicht mit der Matrix zusammen, so das die Zeit nicht vollständig angezeigt wird.
        • Auch die timeseries ist meiner Meinung nach ein sehr mächtiges Instrument, um beliebige Zeitreihen zu erzeugen. Diese können dann per Trigger abgefragt und mit Skript/Blockly/etc. dann darauf reagiert werden. So ist es relativ einfach möglich einen Trigger auf einen beliebigen Zeitpunkt am letzten/vorletzten/beliebiger Abstand) Tag eines Monats / Woche zu legen. Es gibt viele Möglichkeiten die Berechnung zu beeinflussen.

        Wer weitere Fehler findet, dann bitte gerne hier berichten oder auf github einen Issue anlegen.

        Meldung wurde am 13.11. aktualisiert.

        sigi234 1 Reply Last reply Reply Quote 1
        • sigi234
          sigi234 Forum Testing Most Active @OliverIO last edited by sigi234

          @oliverio

          Hallo, nach Installation vom Adapter startet VIS2 nicht mehr Richtig und bleibt hängen.
          Nach einer Deinstallation des Adapters läuft VIS2 wieder.

          Screenshot (1036).png!

          mytime.0
          2024-11-13 15:17:45.061	info	starting. Version 1.1.0 in C:/SmartHome/node_modules/iobroker.mytime, node: v20.18.0, js-controller: 7.0.2
          
          host.SmartHome
          2024-11-13 15:17:43.238	info	instance system.adapter.mytime.0 in version "1.1.0" started with pid 12436
          
          host.SmartHome
          2024-11-13 15:17:40.550	info	instance system.adapter.mytime.0 terminated with code null ()
          

          File widgets/mytime/i18n/translations.json not found: {}

          OliverIO 1 Reply Last reply Reply Quote 0
          • OliverIO
            OliverIO @sigi234 last edited by

            @sigi234
            ok, konnte ich beheben.
            da scheint es probleme mit den widgets in vis2 zu geben.
            da die aktuell noch nicht in vis2 funktionieren.
            ich muss da einen separaten adapter für die vis2 widgets machen.

            der fix kommt dann in version 1.1.1

            arteck 1 Reply Last reply Reply Quote 1
            • arteck
              arteck Developer Most Active @OliverIO last edited by arteck

              @oliverio davon mal abgesehen dass die Widget in der Vis auch nicht mehr gehen nach dem update auf 1.1.0

              7daaacf8-8e2b-4b17-b8c8-c013de8e2828-grafik.png

              edit: nach vis upload gehts...

              und die object struktur hat sich geändert von mytime.0.Countdown auf mytime.0.Countdowns

              S OliverIO D 3 Replies Last reply Reply Quote 0
              • S
                Shadowhunter23 @arteck last edited by

                @arteck sagte in Test Adapter mytime:

                und die object struktur hat sich geändert von mytime.0.Countdown auf mytime.0.Countdowns

                Danke! Hab ich das als wichtige Info bei den Änderungen übersehen das sich die Objektstruktur ändert?

                OliverIO 1 Reply Last reply Reply Quote 0
                • OliverIO
                  OliverIO @arteck last edited by

                  @arteck
                  Ja da kommt weil vis als dependency auf Anweisung entfernen musste.
                  Oder gibts da eine andere Möglichkeit den automatischen Upload nach vis anzustoßen?

                  arteck 1 Reply Last reply Reply Quote 0
                  • OliverIO
                    OliverIO @Shadowhunter23 last edited by

                    @shadowhunter23
                    Oh ja stimmt. Hatte ich geändert
                    Und nicht erwähnt

                    S 1 Reply Last reply Reply Quote 1
                    • arteck
                      arteck Developer Most Active @OliverIO last edited by

                      @oliverio sagte in Test Adapter mytime:

                      Oder gibts da eine andere Möglichkeit den automatischen Upload nach vis anzustoßen?

                      nicht das isch wüsste

                      1 Reply Last reply Reply Quote 0
                      • S
                        Shadowhunter23 @OliverIO last edited by

                        @oliverio
                        Würdest du das bei der nächsten Version noch als wichtiger Hinweis mit dazu nehmen?

                        OliverIO 1 Reply Last reply Reply Quote 0
                        • OliverIO
                          OliverIO @Shadowhunter23 last edited by

                          @shadowhunter23

                          Ich habe es oben ergänzt und ins readme geschrieben.

                          1 Reply Last reply Reply Quote 1
                          • D
                            darkblu @arteck last edited by darkblu

                            @arteck said in Test Adapter mytime:

                            edit: nach vis upload gehts...

                            ähh (vielleicht) dumme Frage, aber was ist denn vis upload ?

                            achso, die VIS instanz einmal neustarten

                            1 Reply Last reply Reply Quote 0
                            • OliverIO
                              OliverIO last edited by

                              Neue Version 1.2.0

                              • Die Widgets sollten nun auch mit vis2 kompatibel sein. bitte testen und berichten.
                                Allerdings erst mit einer vis-2 Version >=2.10.7. Diese Version muss im Expertenmodus in der iobroker Adapter Ansicht über das + (andere Version installieren) hinter dem Adapter installiert werden.
                                Warum die 2.10er Versionen noch nicht in Beta sind weiß ich leider nicht. dazu gab es bisher noch keine Kommunikation. daher ist das als Experimentiell zu sehen.
                              L 1 Reply Last reply Reply Quote 0
                              • L
                                looxer01 @OliverIO last edited by

                                @oliverio

                                Hi,
                                ich habe den update gemacht auf Version 1.2.0
                                danach iobroker upload Vis und vis neu gestartet.

                                Die Widgets unter myTime sehen nicht so aus wie Arteks post es zeigt, sondern entsprechen den alten Feldern.
                                Ich bin nicht sicher was da noch fehlt

                                Ausserdem habe ich einen countdown in der config der Instanz angelegt und dann bei den objekten folgendes versucht
                                Cmd = Start - jetzt hätte ich erwartet, dass der time anfängt zu zählen. bleibt aber alles still.

                                ein paar Bilder:

                                myTime_001.JPG
                                myTime_002.JPG
                                myTime_003.JPG

                                OliverIO 1 Reply Last reply Reply Quote 0
                                • OliverIO
                                  OliverIO @looxer01 last edited by OliverIO

                                  @looxer01

                                  im edit mode wird nicht live aktualisiert nur im runtime mode
                                  die datenpunkte ändern sich ebenfalls nicht während des ablaufs, da beim start
                                  die datenpunkte start und end berechnet und gesetzt werden. das wäre auch sehr ressourcenaufwändig, da ja jede sekunde dann uU diverse Datenpunkte aktualisiert werden müssen. Der Adapter prüft während des Ablaufs nur, ob ein Countdown Timer beendet ist und setzt dann endsprechend auf end
                                  die widgets nehmen diese informationen und berechnen dann die live ansicht
                                  Ich sehe gerade du hast "Start" eingegeben. Der korrekte Befehl ist "start"
                                  Da muss ich wohl mal noch die Befehle auf Kleinbuchstaben anpassen.

                                  L 1 Reply Last reply Reply Quote 0
                                  • L
                                    looxer01 @OliverIO last edited by looxer01

                                    @oliverio
                                    ich habe zur automatisierung ein Script im Einsatz.
                                    Dieses setzt die entsprechenden Komandos.
                                    Ich nahm an, dass ich nur die Namen der neuen Objektstuktur ändern muss.
                                    Scheint aber nicht so zu sein.

                                    //------------------------------------------------------------------------------ 
                                    // Einstellungsbereich 
                                    //------------------------------------------------------------------------------ 
                                    // Timer  Licht
                                    var HundLicht1 =  'hm-rpc.1.0008A0C992FE50.2.STATE'/*Licht Nordseite aussen STATE*/
                                    var HundLicht2 = 'hm-rpc.1.0025A0C9A3AD70.10.STATE'/*Licht aussen Wald STATE*/
                                    var HundLicht3 = 'hm-rpc.1.0025A0C9A3AD70.6.STATE'/*Licht aussen Gartenhuette Lichterkette STATE*/
                                    
                                    var IDBenjiLichtTimer =  'mytime.0.Countdowns.Benjilicht.timer' // ID Timer von mytime in millisekunden    
                                    var IDBenjiLichtEndTime = 'mytime.0.Countdowns.BenjiLicht.end'/*endTime in Millisec*/
                                    var IDBenjiLichtAction = 'mytime.0.Countdowns.BenjiLicht.action'/*action*/
                                    var IDBenjiLichtCmd = 'mytime.0.Countdowns.BenjiLicht.cmd'/*cmd*/
                                    var IDBenjiLichtSollZeit = 'javascript.0.Licht.BenjiLichtEinschaltzeitMan'/*Manuelles Ausschalten in xx Minuten*/
                                    
                                    var TestModus = false; // bei false wird das Liht nicht eingeschaltet aber ein log eintrag geschrieben
                                    //------------------------------------------------------------------------------ 
                                    // Einstellungsbereich 
                                    //------------------------------------------------------------------------------ 
                                    
                                    var AutoStop      = false; // zur Unterscheidung ob der Stop manuell aus VIS kommt oder hier im Programm gesetzt wurde
                                    CreateStates();
                                    
                                    //------------------------------------------------------------------------------ 
                                    // Beginn Subsricptions 
                                    //------------------------------------------------------------------------------ 
                                    
                                    // Wenn manuelle Laufzeit verändert wurde, dann update in adapter DP myTime
                                    on({id: IDBenjiLichtSollZeit, change: 'any'}, function(obj) {                                                         // Event: Licht ein gedrückt
                                       log("TimerSollZeit Benji aendern auf " + (getState(IDBenjiLichtSollZeit).val * 60*1000) + " Minuten");
                                       setState(IDBenjiLichtTimer, getState(IDBenjiLichtSollZeit).val * 60*1000);                      // minuten in Millisek umrechnen
                                    }) // endon
                                    
                                    
                                    // Wenn Timer stoppt dann soll der Status auf STOP gesetzt werden und der Licht wird gestoppt
                                    on({id: IDBenjiLichtAction, val: "end" }, function(obj) {                                                         // Event: Licht ein gedrückt
                                       if (!obj.state.ack) {return};
                                       log("Countdown nach Ablauf auf Stop gesetzt " + obj.id + " " + obj.state.val)
                                       setState(IDBenjiLichtCmd, "stop");
                                       AutoStop = true;
                                       if (!TestModus) {
                                           setState(HundLicht1,false);
                                           setState(HundLicht2,false);
                                           setState(HundLicht3,false);
                                       }else {
                                           log( "BenjiLicht Simulation aus")
                                       }
                                    }) // endon
                                    
                                    
                                    // Wenn Timer manuell gestoppt wurde dann wird der Licht wird gestoppt
                                    on({id: IDBenjiLichtAction, val: "stop" }, function(obj) {                                                         // Event: Licht ein gedrückt
                                       if (!obj.state.ack) {return};
                                       if (!AutoStop) {
                                           log("Timer BenjiLicht gestoppt manuell gesetzt " + obj.id + " " + obj.state.val)
                                           setState(IDBenjiLichtCmd, "stop");
                                           AutoStop = true;
                                           if (!TestModus) {
                                           setState(HundLicht1,false);
                                           setState(HundLicht2,false);
                                           setState(HundLicht3,false);
                                           }else {
                                               log( "BenjiLichtsimulation aus")
                                           }
                                       }
                                    }) // endon
                                    
                                    
                                    // Wenn der Timer auf RUN wechsel dann soll das Licht eingeschaltet werden
                                    on({id: IDBenjiLichtAction, val: "run" }, function(obj) {                                                         // Event: Licht start gedrückt
                                    if (!obj.state.ack) {return};
                                       log("Benjilicht wird eingeschaltet " + obj.id + " " + obj.state.val)
                                       if (!TestModus) {
                                           setState(HundLicht1,true);
                                           setState(HundLicht2,true);
                                           setState(HundLicht3,true);
                                       }else {
                                           log( "BenjiLichtsimulation ein")
                                       }
                                       AutoStop = false;
                                    }) // endon
                                    
                                    
                                    
                                    
                                    //------------------------------------------------------------------------------ 
                                    // Beginn Create States 
                                    //------------------------------------------------------------------------------ 
                                    function  CreateStates () {
                                    createState(IDBenjiLichtSollZeit, 20 ,  {read: true, write: true, type: 'number', name: 'BenjiLicht Bei manuellem einschalten anzahl der Minuten Laufzeit'  , desc: 'Manuelle BenjiLichtzeit in Minuten'});
                                    
                                    } // endfunction
                                    

                                    OliverIO 1 Reply Last reply Reply Quote 0
                                    • OliverIO
                                      OliverIO @looxer01 last edited by

                                      @looxer01

                                      eigentlich ja.
                                      Der Hauptknoten ist jetzt Countdowns als devices
                                      und ein Timer nun als channel.
                                      Aber vom schreiben her dürfte es kein unterschied machen.
                                      Die Datenpunktnamen auf der untersten ebene haben sich nicht geändert.

                                      Oben im Screenshot hast du halt bei cmd Start reingeschrieben, also mit großem S
                                      und das hat er so nicht erkannt. wird aber in der nächsten Version verbessert worden sein.
                                      wenn du aber start mit kleinem s reinschreibst dann funktioniert das.

                                      Ansonsten bitte log
                                      wie gesagt du wirst in den datenpunkten nur beim start eines timers und beim beenden Veränderungen sehen. aber kein herunterzählen. warum hatte ich ja schon geschrieben.

                                      arteck L 2 Replies Last reply Reply Quote 0
                                      • arteck
                                        arteck Developer Most Active @OliverIO last edited by arteck

                                        @oliverio da ist aber noch ein wurm drin...
                                        der müsste hier auf 20 sek stehen

                                        d216e79b-1244-4d88-a05b-606090792cdd-grafik.png

                                        171ccb4e-51cc-41bc-b118-0670f2488887-grafik.png

                                        wenn ich den starte ..dann beginnt der bei 1525101b-d723-4574-b7c0-1282a3f51531-grafik.png

                                        bei 11 geht der dann auf 0

                                        das ist die einstellung
                                        96467f77-b25c-4f94-b64f-fdaa65832e25-grafik.png

                                        OliverIO 1 Reply Last reply Reply Quote 0
                                        • OliverIO
                                          OliverIO @arteck last edited by

                                          @arteck

                                          Überprüfe bitte die zeiteinstellungen von Server und Client.
                                          Die start und Ende Zeit wird vom Server gesetzt und auf dem Client dann berechnet.
                                          Wenn es da zu Differenzen kommt entstehen diese Effekte.
                                          Am besten einen ntp Dienst auf beiden konfigurieren.

                                          arteck 1 Reply Last reply Reply Quote 0
                                          • L
                                            looxer01 @OliverIO last edited by looxer01

                                            @oliverio
                                            Hi,
                                            vielen Dank fuer die Unterstützung.
                                            Ich hatte mehrere Probleme. Meine Widgets haben ein "Start" statt "start" gesendet.
                                            Wie du schriebst, war das in der alten Version möglich.

                                            Im Javascript hatte ich zudem das Problem, dass ich auf ein acknowledge gewartet habe, das jetzt aber nicht mehr gesendet wird.

                                            Beide Punkte habe ich angepasst und es funktioniert jetzt wieder.

                                            Allerdings habe ich noch ein Problem mit dem Widget. Es zeigt keinen Zeitverbrauch an.
                                            Gab es denn ein neues Widget dazu, dass das dieses hier ersetzt ?
                                            myTime_003.JPG
                                            Dabei beziehe ich mich auf das Widget: MyTime CountDown Circle

                                            EDIT: ist gefixt und funktioniert. Es stimmte etwas nicht mit der Zuordnung zum Datenpunkt "timer". Nach Auswahl des Datenpunktes im Widget funktioniert wieder alles wie vorher. Bin nicht sicher was es war aber sieht ja so aus, dass der Datenpunkt falsch war (mehrfach kontrolliert - strange)

                                            vG Looxer

                                            OliverIO 2 Replies Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            770
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            adapter mytime test widget
                                            46
                                            454
                                            78104
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo