@Fibricus sagte in Host per Skript neu starten???:
Hallo zusammen!
Gibt es eine Möglichkeit, dass ich den Host per Skript neu starte.
Ich habe leider nicht immer einen PC zu Hause und ich würde gerne das System neustarten können, z.B. per Sprachbefehlt über die Alexa.
Geht das?
Gruß und Dank
Tobias
Linux Adapter wäre eine Möglichkeit.
Im blockly Script selber kann man auch einen "exec" Block nutzen
Es gibt in der Verson 1.3.0 einen neuen Node: iob-setObject (Stand 10.02.26 noch beta)
Mit dem neuen Node kann man ioBroker-Objektdefinitionen (Metadaten) direkt schreiben und ändern.
Hauptfunktionen:
Instanz-Konfigurationen ändern - z.B. MQTT publish-Pattern, Intervalle, etc.
Objekt-Eigenschaften aktualisieren - Namen, Rollen, Einheiten, Min/Max-Werte ändern
es gibt zwei Modi:
Merge-Modus : Ändert nur die angegebenen Eigenschaften, alle anderen bleiben erhalten
Replace-Modus: Überschreibt das komplette Objekt
Typischer Workflow:
Objekt mit iob-getobject holen
Mit Change-Node gewünschte Properties ändern
Mit iob-setobject zurückschreiben
Ich habe es am Ende etwas anders gelöst.
Wenn der Wind den Sturm-Wert überschreitet setze ich einfach einen neuen Zeitstempel in eine Variable.
[image: 1555998692038-3c1c7080-1a74-4730-8c2c-b986e84467bb-grafik.png]
Diese frage ich dann vor den rauf- oder runterfahren immer ab, und schuae ob sie älter als 30 Min ist.
[image: 1555998782291-3038adaf-34c2-4fc8-a702-a7f57dab2339-grafik.png]
@4-Real
Ich habe tatsächlich das selbe Problem mit dem Ping (TV im Standby, aber dennoch gibt es einen positiven Ping zurück). Habe mich schon immer gewundert, warum der Fernseher manchmal einfach von alleine an geht.
Ich würde mich auch über eine Alternative freuen.
Punkt 2 erinnerte mich spontan an die "alte" Jeopardy-Ratesendung, wo die Kandidaten zu einer vorgegebenen Antwort ("Steinmeier") die passenden Frage stellen mußten ("Alexa, wie heißt der aktuelle Bundespräsident?") Habe gut geschmunzelt! Und wer es schafft, Alexa das "Wort der Stunde" zu entlocken, gewinnt hierbei Zeit vor dem Fernseher.:relaxed:
@rantanplan sagte in Mit Blockly Snapshot an Telegram Adapter:
@MartinK sagte in Mit Blockly Snapshot an Telegram Adapter:
Vielen Dank für die Hilfe!
Dann bitte noch im ersten Beitrag [gelöst] im Betreff einfügen. Danke!
Wird gemacht! ;-)
Ich habe nightwatch gefunden.
http://nightwatchjs.org
Es erscheint mir möglich, das damit zu machen.
Aber vielleicht gibt es auch einen einfacheren Ansatz.
@MyzerAT dann benötigst Du allerdings den gesamten "falls" Bereich nicht mehr, da Du diese Unterscheidung ja nun im Trigger selbst bereits abfängst :-)
@siggi85 sagte:
Vielleicht müsste ich doch für jedes Fenster einen eigene Trigger mit eigenem Timeout bauen.
Das ist wohl die vernünftigste Lösung.
Dann wäre da jedoch immernoch das Problem mit dem Icon auf der Lametric...
Was hindert Dich daran, in einer gemeinsamen Funktion alle Timeout-Variablen zu prüfen ?
@dslraser Vielen Dank für die netten Tips ! :relaxed: :+1: ... habe ich angepasst.
Also der wert ist für das Objekt ist Zahl, das passt auch.
Daran hat es leider auch nicht gelegen. ;-)
Ich habe jetzt etwas anderes geändert, und zwar habe ich in meiner VIS für die Knöpfe
AUF + ZU jetzt bei dem Objekt die
States: open + close verwendet.
[image: 1555048494677-jalosie_objekt.png]
Ich hatte vorher auch für die Knöpfe in der VIS den State : Position - LEVEL verwendet, und den Wert für den Knopf dann mit 100 beschrieben.... komischerweise wurde auch in der VIS das Signalbild beim betätigen des AUF oder ZU Knopfes einmal kurz geöffnet und dann wieder geschlossen.... Erst wenn die Jalousie ganz geöffnet war, also auch der Wert auf 100 bekam ich die Nachricht: Jalousie offen.. ;-)
Sehr seltsam das ganze...
@BlurayXL
Das Script kann so nicht sauber funktionieren. Du initialisiert den Wert Zeit nicht, erhöhst ihn aber immer. Damit ist er irgendwann >3, und damit wird dein gesetzter Timeout immer sofort gestoppt.
Ich wuerde das ganze etwas anders machen:
Zunächst den Trigger: Nicht auf "ist wahr" sondern auf "ist grösser als vorher". Damit triggert er nur wenn das Objekt von Falsch auf Wahr gesetzt wurde. (fun Fact - in JS ist true > false)
Dann an Stelle des timeout ein intervall Objekt nehmen, das alle 15 Sekunden ausgeführt wird. In dem Objekt machst du dann das was aktuell im timeout gemacht wird.
VOR dem intervall Objekt dann noch ein "zeit = 0" und du bist sauber.
Das Falls am Ende muss dann auch noch in das Intervall hinein - am Ende, so das das Intervall sich selber beendet wenn es 3 mal gelaufen ist.
Ich hoffe das ist so verständlich - ich hab kein Blockly hier um das zusammen zu basteln.
A.
@pix
Hi Pix: ich hol das Thema nochmal hoch. Wäre es dir möglich dein Skript und deine Visu dafür zu veröffentlich.
Deine Umsetzung klingt sehr interessant und ist für mich bestimmt ein Skript zum dazulernen 😁👍🏻
VG