NEWS
Scriptausführung nach Neustart verhindern
-
@eagleeye Vorher das Script anhalten. SCNR
Nein, was hast du denn vor? Gar nicht ausführen? Oder verzögert?
-
@eagleeye vermute, dir fehlt der DP als Trigger, folglich löst das Script bei jedem Neustart der Java-instanz/iobroker, aus
-
@crunchip sagte in Scriptausführung nach Neustart verhindern:
@eagleeye vermute, dir fehlt der DP als Trigger, folglich löst das Script bei jedem Neustart der Java-instanz/iobroker, aus
vermute ich auch...(oder script enabled als Trigger genommen)
-
Danke schon mal für die vielen Antworten.
Ich hab diverse Scipte (& Blockly's) ohne Trigger, welche ich über text2command ausführe (-> z.B. Telegram Buttons). Da ich den iobroker auf 'nem Raspi3b+ laufen habe mache ich jede Nacht ein Backup und Reboot. Morgens hab ich dann (gefühlte) 1000 Neue Nachrichten von meinem Bot. Ich suche also z.B einen Datenpunkt o.ä. um ihn im Script / oder Blockly einzubinden mit der Funktion "nach Restart nicht ausführen". Das ist jedenfalls mein Denkansatz. Für andere Lösungen bin ich selbstverständlich auch offen.Danke.
Stefan
-
@eagleeye
dann erstelle Dir doch eigene Datenpunkte als Trigger und steuere dann damit Deine Nachrichten. -
@eagleeye sagte in Scriptausführung nach Neustart verhindern:
ohne Trigger, welche ich über text2command ausführe
Nutzst du die script_enabled states?
Das solltest du nicht.
Du benötigst dann aber einen Trigger. -
@eagleeye
stelle am Besten hier mal eines Deiner Blocklys exemplarisch rein, dann könnte man Dir event. zeigen wie Du es lösen kannst. -
Super, und wie mach ich das ??? Einbinden und so - kein Problem, aber Datenpunkt entsprechend erzeugen???? So weit bin ich (noch) nicht.
Bitte um kleinen Anstubser.Danke!
-
@eagleeye
es gibt einen Block create State im Blockly...
Moment, Beispiel folgt gleich.Edit: das wäre ein kurzes Beispiel
-
ok, verstanden! Und wie bringe ich dem Datenpunkt dazu, das er z.B. nach einem reboot auf "false" (oder true) steht?
-
@eagleeye sagte in Scriptausführung nach Neustart verhindern:
ok, verstanden! Und wie bringe ich dem Datenpunkt dazu, das er z.B. nach einem reboot auf "false" (oder true) steht?
hier noch eine kurze Erklärung.
https://forum.iobroker.net/post/240223
Und nochmal die Bitte eines Deiner Blocklys zu zeigen...
-
Ich verstehe wie man einen Datenpunkt "erzeugt" ich benötige aber doch einen Trigger mit der Information "NEUSTART" oder "START" o.ä. womit ich diesen setzen kann.
Oder stehe ich da auf der Leitung?Hier ein Script für einen Abruf über Telegram:
sendTo("telegram", "send", {
text: (
['<u><b>Das Wetter in </b></u>',
'<u>',getState("daswetter.0.NextDays.Location_1.Location").val,'</u>',
'\n','\n',
'<u>heute am </u>',
'<u>',getState("daswetter.0.NextDays.Location_1.Day_1.Tag_value").val,'</u>',
' : ','\n',
'Höchsttemperatur : ',
'<b>',getState("daswetter.0.NextDays.Location_1.Day_1.Maximale_Temperatur_value").val,'</b>',
' °C',
'\n','Mindesttemperatur : ',
'<b>',getState("daswetter.0.NextDays.Location_1.Day_1.Minimale_Temperatur_value").val,'</b>',
' °C',
'\n','Wind : ',getState("daswetter.0.NextDays.Location_1.Day_1.Wind_value").val,
' mit ', '<b>',getState("daswetter.0.NextDays.Location_1.Day_1.Wind_id").val,'</b>',
'<b> km/h </b>',
'\n',
getState("daswetter.0.NextDays.Location_1.Day_1.Wetterbedingungen_value").val,
'\n','\n',
'<u>morgen am </u>',
'<u>',getState("daswetter.0.NextDays.Location_1.Day_2.Tag_value").val,'</u>',
' : ','\n',
'Höchsttemperatur : ',
'<b>',getState("daswetter.0.NextDays.Location_1.Day_2.Maximale_Temperatur_value").val,'</b>',
' °C',
'\n','Mindesttemperatur : ',
'<b>',getState("daswetter.0.NextDays.Location_1.Day_2.Minimale_Temperatur_value").val,'</b>',
' °C',
'\n','Wind : ',
getState("daswetter.0.NextDays.Location_1.Day_2.Wind_value").val,
' mit ', '<b>',getState("daswetter.0.NextDays.Location_1.Day_2.Wind_id").val,'</b>',
'<b> km/h </b>',
'\n',
getState("daswetter.0.NextDays.Location_1.Day_2.Wetterbedingungen_value").val,
].join('')
),
parse_mode: "HTML"
});Und ein Blockly für Abruf über Telegram
Beide Scripte werden nach Start von iobroker ausgelöst und das möchte ich verhindern.
Danke.
-
@eagleeye sagte:
Und ein Blockly für Abruf über Telegram
Bei welchem Ereignis soll das Telegramm gesendet werden ?
-
Auslöser ist text2command über Telegram Buttons
-
@eagleeye und welchen command willst/kannst du texten?
-
@Homoran sorry, ich verstehe deine Frage nicht und den Bezug auf meine Problemstellung.
-
@eagleeye sagte in Scriptausführung nach Neustart verhindern:
@Homoran sorry, ich verstehe deine Frage nicht.
Um dir dagen zu können, wie das Skript getriggert werden soll muss man doch wissen was genau als Auslöser genommen werden muss.
Also was kommt beim iobroker an, auf das das Skript reagieren soll. -
@Homoran OK, hier die Zeile aus text2command:
-
@eagleeye dann bin ich raus, das kenne ich nicht.
-
@Homoran Schade ... aber danke für Deine Hilfe!