NEWS
Rückwärts laufender Timer
-
Hallo,
habe schon einiges rumprobiert, jedoch scheitere ich kläglich ^^.
Würde in meiner Visu gerne einen rückwärts laufenden Timer anzeigen. Im Format hh:mm.
Allerdings keine feste Zeit die ich einfach rückwärts zählen kann.
Würde gerne die verbleibende Zeit bis zu einem Zeitpunkt aus einem Datenpunkt anzeigen. Der Datenpunkt kann sich auch ändern, was zu einer Anpassung des Timers führt.
Der Timer geht nie über den Tag hinaus.Am liebsten hätte ich:
- Datenpunkt A mit der Zeit des Ereignisses (Hier ist mir das Format relativ egal)
- Datenpunkt B der von Blockly mit mit der verbleibenden Zeit in hh:mm befüllt wird.
Lässt sich das einigermaßen simpel lösen?
In meinem Kopf schweben die wildesten Formeln rum -
@david-g sagte in Rückwärts laufender Timer:
Würde gerne die verbleibende Zeit bis zu einem Zeitpunkt aus einem Datenpunkt anzeigen. Der Datenpunkt kann sich auch ändern, was zu einer Anpassung des Timers führt.
gibt es den Datenpunkt schon ? (weil der sich ja ändern kann ?) Wer ändert den Datenpunkt ? Änderst Du den Datenpunkt, oder ein Adapter oder ein Script ?
Datenpunkt A mit der Zeit des Ereignisses (Hier ist mir das Format relativ egal)
Soll das der oben erwähnte Datenpunkt sein ? Wenn ja, dann gibt es vielleicht doch ein definiertes Format ?
Gib mal bitte ein. praktisches Beispiel was Du damit vor hast, dann kann man sich da besser reindenken. -
Kann das dieser Adapter?
https://forum.iobroker.net/topic/33376/test-adapter-mytime-v0-1-x?_=1617902107367
Eventuell kann das @OliverIO einbauen?
-
@david-g sagte in Rückwärts laufender Timer:
Hallo,
habe schon einiges rumprobiert, jedoch scheitere ich kläglich ^^.
Würde in meiner Visu gerne einen rückwärts laufenden Timer anzeigen. Im Format hh:mm.
Allerdings keine feste Zeit die ich einfach rückwärts zählen kann.
Würde gerne die verbleibende Zeit bis zu einem Zeitpunkt aus einem Datenpunkt anzeigen. Der Datenpunkt kann sich auch ändern, was zu einer Anpassung des Timers führt.
Der Timer geht nie über den Tag hinaus.Am liebsten hätte ich:
- Datenpunkt A mit der Zeit des Ereignisses (Hier ist mir das Format relativ egal)
- Datenpunkt B der von Blockly mit mit der verbleibenden Zeit in hh:mm befüllt wird.
Lässt sich das einigermaßen simpel lösen?
In meinem Kopf schweben die wildesten Formeln rumder countdown-timer aus dem adapter mytime kann das fast so.
lese mal die Beschreibung.
du kannst die datenpunkte in millisekunden beschreiben, oder über befehle, die du in einen anderen datenpunkt schreibst das Ende oder die Länge anpassen.https://github.com/oweitman/ioBroker.mytime
der Adapter ist im latest/beta-Repository verfügbar.
-
@dslraser said in Rückwärts laufender Timer:
Soll das der oben erwähnte Datenpunkt sein ? Wenn ja, dann gibt es vielleicht doch ein definiertes Format ?
Gib mal bitte ein. praktisches Beispiel was Du damit vor hast, dann kann man sich da besser reindenken.Gerne doch.
Ich muss jeden Tag meinen Sohn vom Kindergarten abholen. Da gibt es 2 verschiedene Zeiten.
Für die 2 Zeiten habe ich Datenpunkte (nennen sich früh und spät). Den entsprechenden Datenpunkt schalte ich morgens beim abgeben von meinem Sohn im Kindergarten auf true.
Ein Blockly schickt mir dann eine Erinnerung bevor es so weit ist.Da ich oft ziemlich in meiner Arbeit versinke, kommt meine Erinnerung was zu spontan. Wenn sie länger vorher kommt, vergesse ich es
Deshalb würde ich auf meinem Zweitmonitor gerne in meiner Visualisierung einen Timer laufen lassen, wann mein Sohn geholt werden muss.
Datenpunkte mit Zeitangaben gibt es noch nicht.
Den erwähnten Datenpunkt würde ich von meinem bisherigen Skript mit der für den aktuellen Tag benötigten Uhrzeit füllen lassen. Wenn "früh" true setze auf 12 Uhr, wenn "spät" true setze auf 13 Uhr, zum Beispiel.Nun hätte ich gerne in einem weiteren Datenpunkt der die Zeit bis zum grad erwähnten Datenpunkt runterlaufen lässt. Da alles an dem einen Tag stattfindet reicht eben das hh:mm aus.
Es reicht, wenn das Blockly alle 5min Triggert, und die Zeit berechnet.
Drn habe ich mir auch angesehen. Ich habe es damit nicht geschafft. Die Datenpunkte enthalten scheinbar nur ms.
Die Widgets kann ich nicht nehmen, da ich kein VIS nutze. -
@david-g sagte in Rückwärts laufender Timer:
Drn habe ich mir auch angesehen. Ich habe es damit nicht geschafft. Die Datenpunkte enthalten scheinbar nur ms.
Die Widgets kann ich nicht nehmen, da ich kein VIS nutze.es wäre hilfreich zu wissen was du dann nutzt.
dann könntest du die ms umrechnen.
die berechnungsformeln stehen im widget, die könnte man daraus kopieren und was eigenes basteln. -
Nutze Lovelace.
Kann da den Inhalt von Datenpunkten einfach als Text anzeigen lassen und per HTML formatieren.Sehe grad, der Adapter ist sogar von dir....
-
@david-g sagte in Rückwärts laufender Timer:
Nutze Lovelace.
Kann da den Inhalt von Datenpunkten einfach als Text anzeigen lassen und per HTML formatieren.Sehe grad, der Adapter ist sogar von dir....
ja, sigi hat mich oben erwähnt, deswegen schreib ich hier
hier ist der umrechnungscode, der allerdings etwas mehr flexibiliät bietet als du benötigst (beliebige formatierung des countdowns). Evtl kannst du daraus etwas verwenden oder die lovelace-leute können weiterhelfen. mit lovelace kenn ich mich nicht aus. meine adapter können nur vis
https://github.com/oweitman/ioBroker.mytime/blob/4e0a5f85b0079bf02bb5d2d4d22731783feeb848/widgets/mytime/js/mytime.js#L815
https://github.com/oweitman/ioBroker.mytime/blob/4e0a5f85b0079bf02bb5d2d4d22731783feeb848/widgets/mytime/js/mytime.js#L771 -
@david-g
ja, diese rechnerei mit Zeiten.....(gar nicht so einfach)Sowas in der Art wahrscheinlich, oder ?
-
Genau, so in der Art. Die aktuelle Zeit könnte direkt aus Blockly kommen.
Evtl kann im Adapter ja die benötigte Zeit immer mit $Time setzen.
Mit ein paar Variablen und was rechnen bekommt man ja dann die Minuten raus. Denke ich.Stunden ausrechnen
Ms/1000/60/60 Das Ergebnisse auf volle Zahl abrunden.Minuten ausrechnen
Ms-(erste Ergebnis 6060*1000)*1000Kommt das hin?
-
@david-g
ich habe es ja "fast"
nur immer eine Stunde Rest zu viel...Edit: zum "rumprobieren" habe ich als Trigger erstmal nur den Schalter, noch nicht wenn sich die Abholzeit ändert ....
-
@david-g habe gestern erst eine eieruhr gebaut - etwas verändert sieht das so aus
die zeit wird immer neu berechnet - somit sind keine abweichungen
-
@liv-in-sky
ich habe das mal für mich umgebaut. Eine Frage, was macht das sonst ? (wofür braucht es das ?) -
@dslraser sagte in Rückwärts laufender Timer:
@liv-in-sky
ich habe das mal für mich umgebaut. Eine Frage, was macht das sonst ? (wofür braucht es das ?)@dslraser was meinst du genau - das ganze script oder einen baustein
das ganze script wahr ursprünglich als eieruhr gedacht, welche mit alexa gestartet wird. ich hatte mal ein script, welches die alexa timer anzeigt - aber nur in minuten oder stunden - der wunsch war, das ganze in minuten und sekunden anzugeben- was das script nicht hergibt.
https://forum.iobroker.net/post/611848 -
@liv-in-sky sagte in Rückwärts laufender Timer:
baustein
in dem falls mache, das sonst im Screenshot, was ich deaktiviert habe.
-
@dslraser es war doch die frage: wenn ein wert true ist, dann bis 13:00 uhr
wnn der wert false ist, soll bis 12:00 gezählt werdenoder habe ich da etwas falsch verstanden
-
Ich habe es jetzt so...
Es funktioniert auch
Ich muß jetzt aber erstmal weg....Ich melde mich heute Abend wieder
Abholzeit in den DP eintragen und Schalter auf true setzen -
@dslraser cool mit dem datenpunkt anlegen teil
-
@liv-in-sky sagte in Rückwärts laufender Timer:
@dslraser es war doch die frage: wenn ein wert true ist, dann bis 13:00 uhr
wnn der wert false ist, soll bis 12:00 gezählt werdenoder habe ich da etwas falsch verstanden
Nein, Du hast Recht....Ich schalte nur einen Timer mit true/false an/aus, der die gesetzte Abholzeit auswertet.
Edit: man könnte ja noch einen zweiten DP für die alternative Abholzeit anlegen und dann mit dem sonst Zweig...
-
das ganze funktioniert auch über tage - mit diesem eintrag
der datenpunkt für die tage ist nicht integriert - müßte man noch einbinden - da aber die sekunden wichtig sind, wird gezählt - nur momentan falsch angezeigt, weil die tage nicht sichtbar sind