NEWS
Instanz per Blockly starten / stoppen
-
Hallo zusammen, ist es nicht mehr möglich Adapter per Blockly zu starten oder zu stoppen ?
Ich habe ein paar Skripte gebaut, die bei bestimmten Bedinungen Adapter stoppen bzw. wieder starten ?
Ich habe es noch einmal mit dem Adapter "Feiertage" und dem entsprechenden DP "system.adapter.feiertage.0.alive" versucht. Es tut sich leider nichts.
Der Befehl
aus dem Thread Instanz mit Blockly neu starten - Lösung funktionert, jedoch will ich die Instanz stoppen und kontrolliert starten.
Kennt jemand das Problem und hat eine Lösung?
-
@Kuddel
Man muss das Beispiel zu extendObject() als Javascript-Funktion abbilden. Inhalt mit Übergabeparametern Instanz und start:extendObject('system.adapter.' + Instanz, {common: {enabled: start}});
-
@paul53
@Kuddel
ich weiß nicht ob ich es so richtig umgesetzt habe, aber es funktioniert ?Adapter start mit wahr (Adapter startet)
Adapter start mit falsch (Adapter stoppt)
Adapter Neustart geht mit der anderen Funktion.(Ich hatte es auch mal mit getrennten Funktionen für start stop probiert, ging auch.)
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="" id="Kin_d{P!1pKMo+5cZU`O">Instanz</variable> <variable type="" id="b/PDv/D$qo]b|JPj@BAK">start</variable> <variable type="" id="gNO}QNI;x%lo_FS`UdH_">neustart</variable> </variables> <block type="procedures_defcustomnoreturn" id="`HD|n)F.zEhjAS[_Ha*9" x="13" y="13"> <mutation statements="false"> <arg name="Instanz" varid="Kin_d{P!1pKMo+5cZU`O"></arg> <arg name="start" varid="b/PDv/D$qo]b|JPj@BAK"></arg> </mutation> <field name="NAME">Adapter_start_stop</field> <field name="SCRIPT">ZXh0ZW5kT2JqZWN0KCdzeXN0ZW0uYWRhcHRlci4nICsgSW5zdGFueiwge2NvbW1vbjoge2VuYWJsZWQ6IHN0YXJ0fX0pOw==</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_defcustomnoreturn" id="ah/A{b.V+X!ZYAf:RS[E" x="13" y="63"> <mutation statements="false"> <arg name="Instanz" varid="Kin_d{P!1pKMo+5cZU`O"></arg> <arg name="neustart" varid="gNO}QNI;x%lo_FS`UdH_"></arg> </mutation> <field name="NAME">Adapter_neustart</field> <field name="SCRIPT">ZXh0ZW5kT2JqZWN0KCdzeXN0ZW0uYWRhcHRlci4nICsgSW5zdGFueiwge2NvbW1vbjoge2VuYWJsZWQ6IHRydWV9fSk7</field> <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment> </block> <block type="procedures_callcustomnoreturn" id="ih~h61Q(ObZv?~_lB4)0" x="13" y="113"> <mutation name="Adapter_start_stop"> <arg name="Instanz"></arg> <arg name="start"></arg> </mutation> <value name="ARG0"> <block type="text" id="%zVo=K]Eh*18L:d2HupD"> <field name="TEXT">telegram.0</field> </block> </value> <value name="ARG1"> <block type="logic_boolean" id="f9;bz|~4KqI9RDyGrziD"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="procedures_callcustomnoreturn" id="K=]s_7pVuYVfj.g(RRKO" disabled="true"> <mutation name="Adapter_neustart"> <arg name="Instanz"></arg> <arg name="neustart"></arg> </mutation> <value name="ARG0"> <block type="text" id="E2cJ`,2vK)}G-bva[Hws"> <field name="TEXT">telegram.0</field> </block> </value> <value name="ARG1"> <block type="logic_boolean" id="n:6Wm|%}`;J$Ri9DMe)F"> <field name="BOOL">TRUE</field> </block> </value> </block> </next> </block> </xml>
-
@dslraser sagte:
Adapter Neustart geht mit der anderen Funktion.
Startet die Instanz wirklich neu, wenn man common.enabled auf true setzt ohne vorher gestoppt zu haben ?
Wozu übergibst Du an die Funktion Adapter-neustart() den Parameter neustart, wenn er in der Funktion nicht ausgewertet wird ? -
@paul53
deswegen habe ich ja nachgefragt ob das so richtig ist. Neustart ging tatsächlich. Probiert habe ich telegram und hue. -
@dslraser sagte:
Neustart ging tatsächlich. Probiert habe ich telegram und hue.
Gut zu wissen, denn das habe ich nie getestet.
Lass bei der Neustart-Funktion den Parameter neustart weg (stiftet nur Verwirrung). -
@paul53
okay. -
@paul53 Danke für die erklärung hat mir sehr geholfen mit dem Octoprint Adapter
-
@paul53
Du scheinst ja damit sehr fit zu sein.
Bei mir ist es so das mein Alexa Adapter, obwohl er grün ist vom Blockly keine Sprachausgabe über Alexa gemacht wird. Unter Objekte bei Alexa speak kann ich aber sehen, das dort steht, was sie eigentlich auch sagen sollte.Gehe ich beim Alexa Adapter dann auf neu laden ist alles wieder ok.
Ich wollte einfach ein Blockly erstellen was zu einer bestimmten Zeit, den Alexa Adapter einfach neu startet oder neu lädt.
Ich habe das ja hier gelesen aber ich weiß nicht, wo Du die Daten hernimmst.
Kannst du mir da helfen? -
@biker1602 sagte: ich weiß nicht, wo Du die Daten hernimmst.
Welche Daten?
-
@paul53 said in Instanz per Blockly starten / stoppen:
Welche Daten?
Ja beim normalen Erstellen eines Blocklys habe ich Objekt ID usw. wo ich dann auf eine Liste komme, wo ich etwas auswählen kann aber ja nicht bei dieser Javascript Funktion. Ich komme dann nur auf den JS Editor und da bin ich dann raus.
Ich brauche ja irgendwie ein Blockly der den ganzen Adapter und nicht nur Objekte im Unterordner neu startet -
@biker1602 Hi, wenn es dir nur darum geht den Adapter zu einer bestimmten Zeit neu zu starten, brauchst du doch kein Blockly.
Das kann man bei den Instanzen einstellen. Wenn du den Expertenmodus aktivierst gibts den Reiter Zeitplanung, dort kannst du einstellen wann der Adapter neu starten soll.
Edit: Quatsch, geht auch ohne Expertenmodus, habe da was verwechselt.
-
@frankyboy73
Super muss ich gleich mal schauen wie ich es einstellen kann. -
@dslraser sagte in Instanz per Blockly starten / stoppen:
@paul53
okay.Kannst du mir sagen wie ich diesen "für mich" Code Schnipsel verwenden kann/muss um auf einen Trigger zu reagieren der dann die Javascript Instanz 2 neu startet?
-
@wendy2702
Ich selbst verwende es nicht, ich wollte nur wissen ob es funktioniert. Beispiele könnten sein, wenn Du eine Instanz per VIS oder Sprache (Alexa) neu starten möchtest. Ich hatte gar keine javascript.2 Instanz, habe ich aber extra mal angelegt und ausprobiert. Neustart der Instanz sowie die Instanz an oder ausschalten funktioniert bei mir. Ich habe einen Testbutton und einen Testschalter angelegt.Beispiel:
-
-
Hallo. Ich weiß dass es hier ein altes Thema ist. Aber gibt es eine Möglichkeit sich auch den Status einer Instanz ausgeben zu lassen?
-
@planetkeane Ja, dazu in den Expertenmodus wechseln und dann wird Dir unter Objekten "System" angezeigt.
Hier ein Beispiel:
system.adapter.admin.0.alive