Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Tester
  4. [Aufruf] Countdown Adapter testen

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.3k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.3k

[Aufruf] Countdown Adapter testen

Geplant Angeheftet Gesperrt Verschoben Tester
adaptercountdowntester
97 Beiträge 6 Kommentatoren 10.4k Aufrufe 12 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • sigi234S sigi234

    @jackblackson sagte in [Aufruf] Countdown Adapter testen:

    @sigi234 Komisch..irgendwas im Log? Wenn er das SendTo erhält loggt er das eigentlich - received message oder so

    countdown.0	2019-06-12 12:08:32.386	error	Could not create alarm as minute value is no int!
    countdown.0	2019-06-12 12:08:32.386	error	Could not create alarm as month value is no int!
    countdown.0	2019-06-12 12:08:32.386	info	received message!
    javascript.0	2019-06-12 12:08:32.383	info	script.js.Test.Count1: registered 0 subscriptions and 0 schedules
    javascript.0	2019-06-12 12:08:32.379	info	Start javascript script.js.Test.Count1
    

    Screenshot (3431).png

    Screenshot (3433).png

    jackblacksonJ Offline
    jackblacksonJ Offline
    jackblackson
    schrieb am zuletzt editiert von
    #46

    @sigi234 ah - wegen der führenden 0 bei minute und monat - prüfe da auf int werte. Könntest du sie mal weg löschen? Ich bau das um für die nächste version das ich es automatisch entferne

    sigi234S 1 Antwort Letzte Antwort
    0
    • jackblacksonJ jackblackson

      @sigi234 ah - wegen der führenden 0 bei minute und monat - prüfe da auf int werte. Könntest du sie mal weg löschen? Ich bau das um für die nächste version das ich es automatisch entferne

      sigi234S Online
      sigi234S Online
      sigi234
      Forum Testing Most Active
      schrieb am zuletzt editiert von sigi234
      #47

      @jackblackson sagte in [Aufruf] Countdown Adapter testen:

      @sigi234 ah - wegen der führenden 0 bei minute und monat - prüfe da auf int werte. Könntest du sie mal weg löschen? Ich bau das um für die nächste version das ich es automatisch entferne

      Ja, das stimmt noch was nicht.......

      Screenshot (3435).png

      Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
      Immer Daten sichern!

      jackblacksonJ 1 Antwort Letzte Antwort
      0
      • sigi234S sigi234

        @jackblackson sagte in [Aufruf] Countdown Adapter testen:

        @sigi234 ah - wegen der führenden 0 bei minute und monat - prüfe da auf int werte. Könntest du sie mal weg löschen? Ich bau das um für die nächste version das ich es automatisch entferne

        Ja, das stimmt noch was nicht.......

        Screenshot (3435).png

        jackblacksonJ Offline
        jackblacksonJ Offline
        jackblackson
        schrieb am zuletzt editiert von
        #48

        @sigi234 oweh..ich geh dem nach und geb euch Bescheid wenn es ordentlich läuft - sorry!

        sigi234S 1 Antwort Letzte Antwort
        0
        • jackblacksonJ jackblackson

          @sigi234 oweh..ich geh dem nach und geb euch Bescheid wenn es ordentlich läuft - sorry!

          sigi234S Online
          sigi234S Online
          sigi234
          Forum Testing Most Active
          schrieb am zuletzt editiert von
          #49

          @jackblackson sagte in [Aufruf] Countdown Adapter testen:

          @sigi234 oweh..ich geh dem nach und geb euch Bescheid wenn es ordentlich läuft - sorry!

          Kein Problem..........:relaxed:

          Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
          Immer Daten sichern!

          jackblacksonJ 1 Antwort Letzte Antwort
          0
          • sigi234S sigi234

            @jackblackson sagte in [Aufruf] Countdown Adapter testen:

            @sigi234 oweh..ich geh dem nach und geb euch Bescheid wenn es ordentlich läuft - sorry!

            Kein Problem..........:relaxed:

            jackblacksonJ Offline
            jackblacksonJ Offline
            jackblackson
            schrieb am zuletzt editiert von
            #50

            @sigi234 So - gut Ding braucht Weile - Version 0.5 ist online, und das mit dem Datum sollte nun funktionieren - hab deine Werte geteste, und es hat funktioniert.

            liv-in-skyL 3 Antworten Letzte Antwort
            1
            • jackblacksonJ jackblackson

              @sigi234 So - gut Ding braucht Weile - Version 0.5 ist online, und das mit dem Datum sollte nun funktionieren - hab deine Werte geteste, und es hat funktioniert.

              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #51

              @jackblackson

              kuck mal da

              web.1 2019-07-04 15:24:08.720 info <==Disconnect system.user.admin from ::ffff:192.168.178.26
              host.raspberry3 2019-07-04 15:24:05.247 info Restart adapter system.adapter.countdown.0 because enabled
              host.raspberry3 2019-07-04 15:24:05.247 error instance system.adapter.countdown.0 terminated with code 7 (Adapter already running)
              host.raspberry3 2019-07-04 15:24:04.906 info instance system.adapter.countdown.0 started with pid 29421
              web.1 2019-07-04 15:23:53.852 info <==Disconnect system.user.admin from ::ffff:192.168.178.42 vis.0
              web.1 2019-07-04 15:23:48.391 info <==Disconnect system.user.admin from ::ffff:192.168.178.26 vis.0
              host.raspberry3 2019-07-04 15:23:34.871 info Restart adapter system.adapter.countdown.0 because enabled
              host.raspberry3 2019-07-04 15:23:34.871 error instance system.adapter.countdown.0 terminated with code 7 (Adapter already running)
              host.raspberry3 2019-07-04 15:23:34.482 info instance system.adapter.countdown.0 started with pid 29380
              host.raspberry3 2019-07-04 15:23:04.465 info Restart adapter system.adapter.countdown.0 because enabled
              host.raspberry3 2019-07-04 15:23:04.465 error instance system.adapter.countdown.0 terminated with code 7 (Adapter already running)
              host.raspberry3 2019-07-04 15:23:04.117 info instance system.adapter.countdown.0 started with pid 29341
              web.1 2019-07-04 15:22:43.180 info ==>Connected system.user.admin from ::ffff:192.168.178.26
              web.1 2019-07-04 15:22:41.870 info <==Disconnect system.user.admin from ::ffff:192.168.178.26
              host.raspberry3 2019-07-04 15:22:34.101 info Restart adapter system.adapter.countdown.0 because enabled
              host.raspberry3 2019-07-04 15:22:34.101 error instance system.adapter.countdown.0 terminated with code 7 (Adapter already running)
              host.raspberry3 2019-07-04 15:22:33.734 info instance system.adapter.countdown.0 started with pid 29298
              countdown.0 2019-07-04 15:22:30.699 info received message!

              die instanz geht immer mal wieder auf rot, dann grün, dann rot

              der fehler kam, als ich dass folgende blockly Image 3.png einfach nochmal mit einem anderem datum ausführte

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              1 Antwort Letzte Antwort
              0
              • jackblacksonJ jackblackson

                @sigi234 So - gut Ding braucht Weile - Version 0.5 ist online, und das mit dem Datum sollte nun funktionieren - hab deine Werte geteste, und es hat funktioniert.

                liv-in-skyL Offline
                liv-in-skyL Offline
                liv-in-sky
                schrieb am zuletzt editiert von
                #52

                @jackblackson habe die instanz mal gestoppt - htop sagt aber etwas anderes

                Image 4.png

                nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                0
                • jackblacksonJ jackblackson

                  @sigi234 So - gut Ding braucht Weile - Version 0.5 ist online, und das mit dem Datum sollte nun funktionieren - hab deine Werte geteste, und es hat funktioniert.

                  liv-in-skyL Offline
                  liv-in-skyL Offline
                  liv-in-sky
                  schrieb am zuletzt editiert von liv-in-sky
                  #53

                  @jackblackson

                  hätte noch eine frage:
                  auf githaub schreibst du, dass datum muss folgendermaßen angegebene werden
                  Image 5.png

                  der obere pfeil mit den punkten funktioniert nicht- also nur mit bindestrichen getrennt ?

                  wäre es nicht möglich, dass datum in deutsch einzugeben: jetzt ist es eine mischung aus amerikanisch und deutsch (jahr am anfang (amerikanisch) aber dann monat und tag (deutsch)

                  schöner wäre 31.12.2020 24:00

                  wie kann ich die alarme löschen ? geht das über ein sendto oder muss ich datenpunkte löschen ?

                  sieht im moment so aus!
                  Image 6.png

                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                  jackblacksonJ 1 Antwort Letzte Antwort
                  0
                  • P Offline
                    P Offline
                    PatrickFro
                    schrieb am zuletzt editiert von
                    #54

                    Hallo jackblackson,

                    super, dass Du diesen Adapter entwickelst.

                    Wenn es schon ein Countdown ist, könnte man nicht alternativ zu einem bestimmten Datum auch ein Countdown für bestimmte Zeit, z.b. 30 Tage, hinzufügen?

                    jackblacksonJ 1 Antwort Letzte Antwort
                    0
                    • P PatrickFro

                      Hallo jackblackson,

                      super, dass Du diesen Adapter entwickelst.

                      Wenn es schon ein Countdown ist, könnte man nicht alternativ zu einem bestimmten Datum auch ein Countdown für bestimmte Zeit, z.b. 30 Tage, hinzufügen?

                      jackblacksonJ Offline
                      jackblacksonJ Offline
                      jackblackson
                      schrieb am zuletzt editiert von
                      #55

                      @PatrickFro Hallo! Würdest du das als "heute + 30 Tage" sehen? Oder welchen Anwendungsfall hättest du hier?

                      P 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @jackblackson

                        hätte noch eine frage:
                        auf githaub schreibst du, dass datum muss folgendermaßen angegebene werden
                        Image 5.png

                        der obere pfeil mit den punkten funktioniert nicht- also nur mit bindestrichen getrennt ?

                        wäre es nicht möglich, dass datum in deutsch einzugeben: jetzt ist es eine mischung aus amerikanisch und deutsch (jahr am anfang (amerikanisch) aber dann monat und tag (deutsch)

                        schöner wäre 31.12.2020 24:00

                        wie kann ich die alarme löschen ? geht das über ein sendto oder muss ich datenpunkte löschen ?

                        sieht im moment so aus!
                        Image 6.png

                        jackblacksonJ Offline
                        jackblacksonJ Offline
                        jackblackson
                        schrieb am zuletzt editiert von
                        #56

                        @liv-in-sky Das mit dem deutschen Datumsformat ist eine gute Idee. Soweit ich das bisher gesehen hab, sind eh die meisten Nutzer von ioBroker hier in Europa. Ich hab auch nachgedacht, ob ich das Datumsformat als Parameter im Setup konfigurierbar mache..ich werd mir das nochmal ansehen.

                        Aktuell kann der Datenpunkt nur manell gelöscht werden, oder er läuft ab und man hat im Setup das automatische löschen aktiv. Hier könnte ich eine Möglichkeit sehen, das wenn du mir per SendTo nur einen Namen ohne sonstige Parameter schickst, das es "löschen" bedeutet. Was meinst du dazu?

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • jackblacksonJ jackblackson

                          @liv-in-sky Das mit dem deutschen Datumsformat ist eine gute Idee. Soweit ich das bisher gesehen hab, sind eh die meisten Nutzer von ioBroker hier in Europa. Ich hab auch nachgedacht, ob ich das Datumsformat als Parameter im Setup konfigurierbar mache..ich werd mir das nochmal ansehen.

                          Aktuell kann der Datenpunkt nur manell gelöscht werden, oder er läuft ab und man hat im Setup das automatische löschen aktiv. Hier könnte ich eine Möglichkeit sehen, das wenn du mir per SendTo nur einen Namen ohne sonstige Parameter schickst, das es "löschen" bedeutet. Was meinst du dazu?

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von liv-in-sky
                          #57

                          @jackblackson wär cool - namen eingeben und als zweiten parameter löschen/delete

                          welche datenpunkte muss ich löschen - auch etwas unter setup? sollte die instanz gestoppt sein?

                          ich habe dir mal ein im ersten post ein link gesendet - darin habe ich so eine verwandlung von amerikanischen in deutsches datum gemacht - in der beschreibung sieht man auch welche formate möglich sind - vielleicht hilft es ja

                          if (deadline)  var str = getState("javascript.0.Countdown.Termin.Datum").val;
                          if (logging) log(str.indexOf("."));
                          if (str.indexOf(".") > 0) {
                          
                              var dmyall = str.split(" ");
                              if (logging)   log(dmyall[0] + '  ' + dmyall[1]);
                              var dmy = dmyall[0].split(".");
                              if (logging)   log(dmy[0] + dmy[1] + dmy[2] + dmyall[0] + dmyall[1]);
                            
                          
                          if (typeof(dmyall[1]) != 'undefined') {deadline = new Date(dmy[1] +'.'+ dmy[0] + '.' + dmy[2] + ' ' + dmyall[1]);if (logging) log("mit Zeit")} else { deadline = new Date(dmy[1] +'.'+ dmy[0] + '.' + dmy[2]);if (logging) log("keine Zeit")}} else 
                          {deadline = new Date(getState(idTerminDatum).val);if (logging) log("altes Datumsformat)"); } 
                          

                          https://forum.iobroker.net/topic/22574/vorlage-zeit-herunterzählen-bis-googletermin-eintritt

                          bei dem fehler von oben - evtl habe ich auch ein falsches datum eingegeben - und dann ist der adapter abgestürtzt - und iobroker wollte ihn neustarten und dann kam der fehler , dass erschon läuft - hast du falscheingaben abgefragt

                          das mit dem sendto ist ein echter mehrwert - wäre/ist/wird ein super adapter

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          1 Antwort Letzte Antwort
                          0
                          • jackblacksonJ jackblackson

                            @PatrickFro Hallo! Würdest du das als "heute + 30 Tage" sehen? Oder welchen Anwendungsfall hättest du hier?

                            P Offline
                            P Offline
                            PatrickFro
                            schrieb am zuletzt editiert von
                            #58

                            @jackblackson Genau. Ich sehe dafür einige Anwendungsmöglichkeiten. Ich suche z.b. gerade einen Countdown, durch den ich an die Reinigung der Kaffeemaschine erinnert werde (alle 30 Tage). Über ical lohnt sich das meiner Meinung nach nicht. Erinnerungen zum Nachkauf von Verbrauchsartikeln wäre damit auch möglich...

                            liv-in-skyL 1 Antwort Letzte Antwort
                            0
                            • P PatrickFro

                              @jackblackson Genau. Ich sehe dafür einige Anwendungsmöglichkeiten. Ich suche z.b. gerade einen Countdown, durch den ich an die Reinigung der Kaffeemaschine erinnert werde (alle 30 Tage). Über ical lohnt sich das meiner Meinung nach nicht. Erinnerungen zum Nachkauf von Verbrauchsartikeln wäre damit auch möglich...

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von
                              #59

                              @PatrickFro wenn es schnell gehen soll funktioniert das damit - der eigentliche countdown ist das 2te script (javascript) .

                              aber ich hoffe, es wird in diesem adapter integriert - da tolle idee - dann einfach warten
                              hier steuer-blockly zum import

                              <xml xmlns="http://www.w3.org/1999/xhtml">
                                <block type="on" id="Yu_[ga/s]Hyeh8nsx^+:" x="88" y="112">
                                  <field name="OID">javascript.0.Countdown.Termin.inTagen</field>
                                  <field name="CONDITION">ne</field>
                                  <field name="ACK_CONDITION"></field>
                                  <statement name="STATEMENT">
                                    <block type="control" id="4Wm(ATbrtz9$IE;YViQ.">
                                      <mutation delay_input="false"></mutation>
                                      <field name="OID">javascript.0.Countdown.Termin.Datum</field>
                                      <field name="WITH_DELAY">FALSE</field>
                                      <value name="VALUE">
                                        <block type="convert_from_date" id="N?=6!uE55(IgDv+~R@+h">
                                          <mutation format="true" language="false"></mutation>
                                          <field name="OPTION">custom</field>
                                          <field name="FORMAT">TT.MM.JJJJ SS:mm</field>
                                          <value name="VALUE">
                                            <block type="math_arithmetic" id="0zHp1C{=1+0BqMb^]Wve">
                                              <field name="OP">ADD</field>
                                              <value name="A">
                                                <shadow type="math_number" id=";rfh%LBqSCHmgS?Lu8gC">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="time_get" id="x3FH1{1qx{mjE^G`7[;J">
                                                  <mutation format="false" language="false"></mutation>
                                                  <field name="OPTION">object</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="8*zEGo+u^A}wgHE0*w:!">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="math_arithmetic" id="l]S_I1TT{S1/QP^qOCt$">
                                                  <field name="OP">MULTIPLY</field>
                                                  <value name="A">
                                                    <shadow type="math_number" id="9(cDBM/2W$P,k8.keSSI">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="math_number" id="8TC2R-FAd;R(5`=?/vC+">
                                                      <field name="NUM">86400000</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <shadow type="math_number" id="rgP;5M:c9HlgZF.R9RxU">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="get_value" id="9+DRg;F3gTh$C}J~1uq2">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">javascript.0.Countdown.Termin.inTagen</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                    </block>
                                  </statement>
                                </block>
                                <block type="schedule" id="1J7D1Q/))cpAR,$0[,Y/" x="62" y="362">
                                  <field name="SCHEDULE">* * * * *</field>
                                  <statement name="STATEMENT">
                                    <block type="controls_if" id="Vz9CXtmz#C$?=DIhBrtx">
                                      <value name="IF0">
                                        <block type="logic_compare" id="2iy?B56Y^Qr#XQYNW-}Z">
                                          <field name="OP">EQ</field>
                                          <value name="A">
                                            <block type="get_value" id="MC^AXX]95vxPW?KN#}Il">
                                              <field name="ATTR">val</field>
                                              <field name="OID">javascript.0.Countdown.Termin.Datum</field>
                                            </block>
                                          </value>
                                          <value name="B">
                                            <block type="text" id="`/DK+W6T6BxE}D+xQ#e`">
                                              <field name="TEXT">FERTIG</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="DO0">
                                        <block type="control" id="txCpapjXf9C}|TaeuAFk">
                                          <mutation delay_input="false"></mutation>
                                          <field name="OID">javascript.0.Countdown.Termin.Datum</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE">
                                            <block type="convert_from_date" id="(.4KE[dPnOZR+]OBlgiX">
                                              <mutation format="true" language="false"></mutation>
                                              <field name="OPTION">custom</field>
                                              <field name="FORMAT">TT.MM.JJJJ SS:mm</field>
                                              <value name="VALUE">
                                                <block type="math_arithmetic" id="2([b[!X#}^f])9rC!s(^">
                                                  <field name="OP">ADD</field>
                                                  <value name="A">
                                                    <shadow type="math_number" id=";rfh%LBqSCHmgS?Lu8gC">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="time_get" id="|zV9MwctrO5Ln,,,z5N3">
                                                      <mutation format="false" language="false"></mutation>
                                                      <field name="OPTION">object</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <shadow type="math_number" id="8*zEGo+u^A}wgHE0*w:!">
                                                      <field name="NUM">1</field>
                                                    </shadow>
                                                    <block type="math_arithmetic" id="]a#l{:!#GH*I`%PitXWq">
                                                      <field name="OP">MULTIPLY</field>
                                                      <value name="A">
                                                        <shadow type="math_number" id="9(cDBM/2W$P,k8.keSSI">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                        <block type="math_number" id="(u53CEM{S@x9y~yafF$#">
                                                          <field name="NUM">86400000</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <shadow type="math_number" id="rgP;5M:c9HlgZF.R9RxU">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                        <block type="get_value" id="B3Wz6T/T?1}z$.eZ7Yj@">
                                                          <field name="ATTR">val</field>
                                                          <field name="OID">javascript.0.Countdown.Termin.inTagen</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                              </xml>
                              

                              und als grundscript den countdown hier zum import

                              // Termin Skript zählt bis Termin runter   erstellt: 26.01.2016 von Pix  
                              // weiterverarbeitet 26-2-2019 von liv-in-sky  
                              //moegliche formate fur das datum - uhrzeit optional
                              // 9.4.2019 10:00
                              // 9.4.2019
                              // 9 May 2019 10:00   - (Monat 3 Buchstaben engl. Abkuerzung)
                              // 9 May 2019 - (Monat 3 Buchstaben engl. Abkuerzung)
                              var instanz = 'javascript.0'; var logging = false;  
                              // ab hier nix mehr ändern  
                              createState('Countdown.Termin.Datum', '9/4/2019', { name: 'Termin Datum', desc: 'Datum des Termins (als Objekt)', type: 'string' }); 
                              createState('Countdown.Termin.Datum.String', '3.12.2019', { name: 'Termin Datum (als String)', desc: 'Datum des Termins als Zeichenkette', type: 'string' }); 
                              createState('Countdown.Termin.Name', 'Name des Termins', { name: 'Termin Name', desc: 'Bezeichnung des Termins', type: 'string' }); 
                              createState('Countdown.Termin.Rest.TotalText', 'Termingesamt', { name: 'TotalText', desc: 'TotalText', type: 'string' }); 
                              createState('Countdown.Termin.Rest.Total', { name: 'Millisekunden bis zum Termin', desc: 'Restliche Millisekunden bis zum Datum des Termins', type: 'number', unit: 'ms' }); 
                              createState('Countdown.Termin.Rest.Tage', { name: 'Tage bis zum Termin', desc: 'Restliche Tage bis zum Datum des Termins', type: 'number', unit: 'Tage' });
                              createState('Countdown.Termin.inTagen', { name: 'Start in Tagen', desc: 'Start in Tagen', type: 'number', unit: 'Tage' }); 
                              createState('Countdown.Termin.Rest.Minuten', { name: 'Minuten bis zum Termin', desc: 'Restliche Tage bis zum Datum des Termins', type: 'number', unit: 'Minuten' }); 
                              createState('Countdown.Termin.Rest.Stunden', { name: 'Stunden bis zum Termin', desc: 'Restliche Tage bis zum Datum des Termins', type: 'number', unit: 'Stunden' });
                              createState('Countdown.Termin.Rest.Wochen', { name: 'Wochen bis zum Termin', desc: 'Restliche Wochen bis zum Datum des Termins', type: 'number', unit: 'Wochen' });  
                              createState('Countdown.Termin.Rest.Alarm', { name: 'Alarm', desc: 'Alarm bis zum Datum des Termins', type: 'boolean' });
                              createState('Countdown.Termin.Rest.Fertig', { name: 'Fertig', desc: 'Fertig', type: 'boolean' });
                              var idFertig = instanz + '.Countdown.Termin.Rest.Fertig', idAlarm = instanz + '.Countdown.Termin.Rest.Alarm', idStunden = instanz + '.Countdown.Termin.Rest.Stunden', idMinuten = instanz + '.Countdown.Termin.Rest.Minuten', idTotalText = instanz + '.Countdown.Termin.Rest.TotalText', idTerminDatum = instanz + '.Countdown.Termin.Datum', idTerminDatumString = instanz + '.Countdown.Termin.Datum.String', idTerminName = instanz + '.Countdown.Termin.Name', idTotal = instanz + '.Countdown.Termin.Rest.Total', idTage = instanz + '.Countdown.Termin.Rest.Tage', idWochen = instanz + '.Countdown.Termin.Rest.Wochen';  
                              var deadline;  
                               
                              function getTimeRemaining(endtime) { 
                              
                              
                              var virttime = new Date();
                              
                              
                              var virt2time=formatDate(virttime);
                              var t = Date.parse(endtime) - Date.parse(virttime);
                              
                              if (virttime.getTimezoneOffset() == -60 && virttime.getTimezoneOffset() == -120  ){t=t+3600000};
                              if (virttime.getTimezoneOffset() == -120 && virttime.getTimezoneOffset() == -60  ){t=t-3600000};
                              var seconds = Math.floor( (t/1000) % 60 ); 
                              var minutes = Math.floor( (t/1000/60) % 60 ); 
                              var hours = Math.floor( (t/(1000*60*60)) % 24 ); 
                              var days = Math.floor( t/(1000*60*60*24) ); 
                              var weeks = Math.floor( t/(1000*60*60*24*7) ); 
                              return { 'total': t, 'days': days, 'hours': hours, 'minutes': minutes, 'seconds': seconds, 'weeks' : weeks }; 
                              
                              }
                              function restzeit() { 
                               
                              if (deadline)  var str = getState("javascript.0.Countdown.Termin.Datum").val;
                              if (logging) log(str.indexOf("."));
                              if (str.indexOf(".") > 0) {
                              
                                  var dmyall = str.split(" ");
                                  if (logging)   log(dmyall[0] + '  ' + dmyall[1]);
                                  var dmy = dmyall[0].split(".");
                                  if (logging)   log(dmy[0] + dmy[1] + dmy[2] + dmyall[0] + dmyall[1]);
                                
                              
                              if (typeof(dmyall[1]) != 'undefined') {deadline = new Date(dmy[1] +'.'+ dmy[0] + '.' + dmy[2] + ' ' + dmyall[1]);if (logging) log("mit Zeit")} else { deadline = new Date(dmy[1] +'.'+ dmy[0] + '.' + dmy[2]);if (logging) log("keine Zeit")}} else 
                              {deadline = new Date(getState(idTerminDatum).val);if (logging) log("altes Datumsformat)"); } 
                              
                              setState(idTerminDatumString, formatDate(deadline)); 
                              setState(idTage, getTimeRemaining(deadline).days); 
                              setState(idWochen, getTimeRemaining(deadline).weeks); 
                              setState(idTotal, getTimeRemaining(deadline).total); 
                              setState(idMinuten, getTimeRemaining(deadline).minutes);
                              setState(idStunden, getTimeRemaining(deadline).hours);
                              //log(deadline.getTimezoneOffset());
                              
                              setState(idTotalText,  getTimeRemaining(deadline).days.toString() + " Tag(e) " +getTimeRemaining(deadline).hours.toString() + " Stunde(n) " + getTimeRemaining(deadline).minutes.toString() + " Minute(n) "); 
                                setTimeout(function () { //The timer    
                               
                              if ( getState(idTage).val == 0  && getState(idStunden).val <= 4  ){setState(idAlarm, true) ;} else {setState(idAlarm, false); } //
                               }, 2000);
                               setTimeout(function () { //The timer  
                               if ( getState(idTage).val == 0  && getState(idStunden).val == 0 && getState(idMinuten).val <= 0 ){setState(idFertig, true) ;setState(idTerminName, "FERTIG");setState(idTerminDatum, "FERTIG");} else {setState(idFertig, false); } //
                               }, 3000);
                              if (logging) log(getTimeRemaining(deadline).days + ' Resttage (' + getTimeRemaining(deadline).weeks + ' Wochen) bis zum ' + formatDate(deadline) + ' (' + getState(idTerminName).val + ')'); }  
                              // Mitternacht 
                               
                              
                              schedule('*/1 * * * *', function() { restzeit(); });  
                              //bei Restart
                              var datecounter = getState("javascript.0.Countdown.Termin.Datum").val;
                              if (getState("javascript.0.Countdown.Termin.Datum").val != "") {
                              setStateDelayed("javascript.0.Countdown.Termin.Datum", datecounter, 2000, false);}
                              // Bei Terminänderung 
                              on({id: 'javascript.0.Countdown.Termin.Datum', change: 'any'}, function (obj) {
                              
                                  deadline = new Date("4.5.2019");
                              
                                   restzeit();
                              
                                   
                                   
                                   });  
                              
                                
                               
                              // Scriptstart 
                               
                               
                              

                              das blockly script steuert das javascript - alle datenpunkte werden unter javascript.0.countdown angelegt - du musst nur die anzahl tage (javascript.0.Countdown.Termin.inTagen) ändern und schon wird "gecountdownt"

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              1 Antwort Letzte Antwort
                              0
                              • P Offline
                                P Offline
                                PatrickFro
                                schrieb am zuletzt editiert von
                                #60

                                super, vielen Dank. Eingebaut ist es, morgen werde ich sehen, ob ich es korrekt gemacht habe 😉

                                1 Antwort Letzte Antwort
                                0
                                • jackblacksonJ Offline
                                  jackblacksonJ Offline
                                  jackblackson
                                  schrieb am zuletzt editiert von
                                  #61

                                  @PatrickFro @liv-in-sky So - Version 0.6 ist fertig. Ihr könnt nun das Datumsformat aussuchen - Standard ist DD.MM.YYYY HH.mm. Weiters kann man mit SendTo nur des Namens den Countdown löschen. Es ist auch möglich, mit adddays, addmonths und addyears einen Countdown ab Heute zu erstellen - sollte alles im Readme erklärt sein. Freu mich auf euer Feedback und etwaige Verbesserungsvorschläge - und danke für eure Geduld!

                                  liv-in-skyL 2 Antworten Letzte Antwort
                                  1
                                  • jackblacksonJ jackblackson

                                    @PatrickFro @liv-in-sky So - Version 0.6 ist fertig. Ihr könnt nun das Datumsformat aussuchen - Standard ist DD.MM.YYYY HH.mm. Weiters kann man mit SendTo nur des Namens den Countdown löschen. Es ist auch möglich, mit adddays, addmonths und addyears einen Countdown ab Heute zu erstellen - sollte alles im Readme erklärt sein. Freu mich auf euer Feedback und etwaige Verbesserungsvorschläge - und danke für eure Geduld!

                                    liv-in-skyL Offline
                                    liv-in-skyL Offline
                                    liv-in-sky
                                    schrieb am zuletzt editiert von
                                    #62

                                    @jackblackson

                                    • konnte ohne probleme drüber installieren
                                    • konnte alle alten tests löschen
                                    • konnte neue anlegen
                                    • falsches datum wurde erkannt
                                    • konnte existierenden einfach mit neuen datum überschreiben

                                    eine frage - habe es in der vis versucht, einzugeben - also direkt in das datumsfeld zu schreiben - das funktioniert nicht- kann man das noch "enabeln" ? (man kann es über ein script ja auch lösen - falls nicht) (gelber pfeil)
                                    Image 2.png

                                    adddays:
                                    ich habe einfach mal einen neuen namen und adddays benutzt - datenpunkte werde angelegt bleiben aber leer - bug oder feature :-) - kann ihn nicht mehr löschen über blockly !
                                    Image 5.png

                                    • ist adddays mit exisiterenden countdown oder einem neuen countdown zu nutzen?

                                    Image 4.png

                                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                    jackblacksonJ 2 Antworten Letzte Antwort
                                    0
                                    • jackblacksonJ jackblackson

                                      @PatrickFro @liv-in-sky So - Version 0.6 ist fertig. Ihr könnt nun das Datumsformat aussuchen - Standard ist DD.MM.YYYY HH.mm. Weiters kann man mit SendTo nur des Namens den Countdown löschen. Es ist auch möglich, mit adddays, addmonths und addyears einen Countdown ab Heute zu erstellen - sollte alles im Readme erklärt sein. Freu mich auf euer Feedback und etwaige Verbesserungsvorschläge - und danke für eure Geduld!

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von liv-in-sky
                                      #63

                                      @jackblackson

                                      so wie es aussieht geht adddays nur mit neuem namen - ist das richtig ? das funktioniert jetzt, nachdem ich mal alle alten tests gelöscht habe

                                      einen neuen countdown mit adddays kann ich anlegen und löschen

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      dslraserD 2 Antworten Letzte Antwort
                                      0
                                      • liv-in-skyL liv-in-sky

                                        @jackblackson

                                        so wie es aussieht geht adddays nur mit neuem namen - ist das richtig ? das funktioniert jetzt, nachdem ich mal alle alten tests gelöscht habe

                                        einen neuen countdown mit adddays kann ich anlegen und löschen

                                        dslraserD Offline
                                        dslraserD Offline
                                        dslraser
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von dslraser
                                        #64

                                        @liv-in-sky
                                        zeige mir doch mal bitte wie ich den Adapter aktuell nutzen kann. (Screeshot Blockly reicht)

                                        Beispiel:
                                        Der Rasenmäher schaltet auf Regenpause (state ist vorhanden-true/false), dann soll ein Countdown gestartet werden der mir die Restlaufzeit der Regenpause anzeigt.(bei mir 90 Minuten, auch der state ist vorhanden)
                                        Wenn die Zeit abgelaufen ist, oder der Mäher wieder fährt, kann der Countdown automatisch wieder gelöscht werden oder auf Null gesetzt werden.
                                        Ich würde mir das dann gern in iQontrol anzeigen lassen. (wie lange dauert die Regenpause noch ?)

                                        Screenshot_20190706-134249_Chrome.jpg

                                        1 Antwort Letzte Antwort
                                        0
                                        • liv-in-skyL liv-in-sky

                                          @jackblackson

                                          so wie es aussieht geht adddays nur mit neuem namen - ist das richtig ? das funktioniert jetzt, nachdem ich mal alle alten tests gelöscht habe

                                          einen neuen countdown mit adddays kann ich anlegen und löschen

                                          dslraserD Offline
                                          dslraserD Offline
                                          dslraser
                                          Forum Testing Most Active
                                          schrieb am zuletzt editiert von
                                          #65

                                          @liv-in-sky

                                          PS: ich habe bisher nicht verstanden wie man einen neuen Countdown setzt und dann startet.
                                          Bisher schmiert mir der Adapter mit meinen Versuchen über sendto immer ab und startet ständig neu...

                                          liv-in-skyL 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          665

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe