NEWS
Wunschliste Blockly-Elemente
-
Super! Man muss nur kreativ sein.
@all
Versuche gerade an alle meine Echos (deren Seriennummer mit "G09" beginnt) etwas zu schicken, das gesprochen werden soll.
Dachte, dass ich dafür den "id from selector" Block nutzen könnte.
Auch wenn ich den nicht (richtig) verstanden habe, scheint er doch in etwa das zu machen, was ich evtl. brauchen kann.
Allerdings haut er mir zu viel raus, statt aller ".speak" bekomme ich sowas wie ".speak*"
16:58:07.572 error javascript.0 script.js.common.Willkommen: alexa2.0.Echo-Devices.G09XXXXXXXXXXX1.Commands.speak,alexa2.0.Echo-Devices.G09XXXXXXXXXXX1.Commands.speak-volume,alexa2.0.Echo-Devices.G09XXXXXXXXXXX2.Commands.speak,alexa2.0.Echo-Devices.G09XXXXXXXXXXX2.Commands.speak-volume,alexa2.0.Echo-Devices.G09XXXXXXXXXXX3.Commands.speak,alexa2.0.Echo-Devices.G09XXXXXXXXXXX3.Commands.speak-volume,alexa2.0.Echo-Devices.G09XXXXXXXXXXX4.Commands.speak,alexa2.0.Echo-Devices.G09XXXXXXXXXXX4.Commands.speak-volume
Kann mir evtl. jemand helfen den Block richtig zu verstehen.
Nachtrag: ich hab' jetzt mal so "gefiltert"...
-
Also, irgendwie scheine ich den "ID selector" wirklich nicht zu verstehen.
Meins Skript
var Liste; Liste = Array.prototype.slice.apply($('channel[state.id=Zustaende.0.testgerät.*]')); console.error(Liste);
gibt bei folgender Situation
nur
17:19:12.779 error javascript.0 script.js.common.timer_fortschritt:
aus, sollte es nicht so aussehen?
17:19:12.779 error javascript.0 script.js.common.timer_fortschritt: Zustaende.0.testgerät.an_aus,Zustaende.0.testgerät.helligkeit
-
@padrino hast du den Javascript Adapter neugestartet, nachdem du die states angelegt hast?
Schonmal ohne ä probiert?
-
Danke, der fehlende restart war es dann wohl.
Schade, dann kann man die Funktion wohl leider nicht zur Überwachung von Änderungen am "Datenpunkt Baum" nutzen, es wird ja nicht bei jeder Änderung der JS Adapter neu gestartet...
-
@padrino du könntest den regex Block in 3inem trigger verwenden. Der funktioniert auch ohne Neustart.
-
@thewhobox
Ok, durch Verwendung des Triggers mit RegExp, kann man praktisch das ganze "falls, mache" weglassen...Hmm, mehr Tipps?
Sowas scheint nicht zu klappen, wird zwar getriggert (sprich, wenn ich eine neue Erinnerung anlege, wird das Skript ausgeführt, aber der neuste Eintrag wird nicht abgearbeitet, sprich ist nicht im "ID selector".
-
Guten Abend,
ich betreibe zwei ioBroker Installationen in identischer Konstellation:
Node v8.16.0
Node.js v8.16.0
NPM 6.4.1
ioBroker.admin 3.6.2
javascript Engine 4.1.12Eine Version läuft auf einer Synology im Docker Container, die andere auf einem NUC in einer Proxmox VS.
Auf letzterer (NUC) läuft die Installation von https://github.com/thewhobox/ioBroker.javascript sowie auch der anschließende Upload ohne Fehler durch und alle Erweiterungen funktionieren.
Wenn ich bei gleichem Vorgehen (incl. upload usw.) die Installation im Docker mache, bekomme ich nach ebenso fehlerfreier Installation und Upload beim Öffnen der Skripte im ioBroker die Fehlermeldung:
Cannot extract Blockly code!
In der Auflistung im Blockly-Fenster fehlt der oberste TAB "System" und damit auch alle entsprechenden Bausteine. Eine Programmerstellung ist nicht möglich.
Hat jemand einen Tip?
-
@zahnheinrich sagte in Wunschliste Blockly-Elemente:
javascript Engine 4.1.12
heißt nicht das die Versionen identisch sein müssen.
hast du beide über die gleiche Methode / URL installiert?
event. mal Uploade im Adapter machen.
mehr Ideen hab ich erst mal nicht. -
@iomountain
Ja der Tip mit den Versionen war zielführend!
Habe den Verwahrort auf latest umgestellt, dann die Script-Engine 4.1.14 geladen.
Damit geht´s.
Vielen Dank! -
Hmm, mal eine Frage...
Wäre es nicht sinnvoll, wenn bei timeouts bzw. intervallen das "ms" am Ende weggelassen würde (also, wie rechts in meinem "mockup")?
Oder muss man das dran lassen um zu zeigen, dass intern doch wieder auf ms umgerechnet wird? -
@thewhobox
Es wäre schön, wenn man auch im Blockly Telegrammitteilungen ohne akustische Meldung versenden könnte.Könnte man das in das Telegram-Blockly als Checkbox mit einbauen?
sendTo("telegram", "send", { text: (), disable_notification: true });
-
@padrino du musst doch schon wissen ob die 1000 ms, sec. oder min. sind
Mitunter ist es ja einfacher/übersichtlicher "3 min." anstelle von 180000 ms einzustellen -
@zahnheinrich sagte in Wunschliste Blockly-Elemente:
@thewhobox
Es wäre schön, wenn man auch im Blockly Telegrammitteilungen ohne akustische Meldung versenden könnte.Könnte man das in das Telegram-Blockly als Checkbox mit einbauen?
sendTo("telegram", "send", { text: (), disable_notification: true });
Ist doch drinn, oder was meinst Du ? (zweite von unten, Haken setzen.)
-
@dslraser
Uff,
wer lesen kann... -
@BBTown
Aber da steht doch immer ms/sek/min im pull down Menü und dann nochmal fest "ms" dahinter. -
@padrino jetzt verstehe ich erst was Du meinst, das ist mir tatsächlich bisher noch gar nicht aufgefallen
-
@BBTown
Rischtisch
(nächstes Mal versuche ich an Pfeile zu denken )(Pfeile ergänzt )
Wie gesagt, der einzige Grund, den ich sehen könnte, dass es ein (versteckter) Hinweis ist, dass intern immer auf ms umgerechnet wird (sieht man im JS code).
Aber so recht glauben mag ich das nicht. -
Man kann in einem Cron Trigger bspw. Werktags auswählen. Jedoch ist es schwierig in einem Datenpunkt Trigger zu prüfen, ob gerade Werktags ist.
In dem Menüpunkt "Datum und Zeit" kann man diese Konfiguration nicht durchführen, lediglich Uhrzeiten auswählen.Bei der Zustandsänderung eines Datenpunktes möchte ich eine Meldung erhalten; jedoch nur Werktags, wie mache ich das vernünftig?
Einen "Werktagsdatenpunkt" per Cron zu füllen und dann in der Bedingung zu nutzen halte ich für den falschen Weg. Ebenso ein Skript mit dem gewünschten Datenpunkttrigger per Cron nur an Werktagen zu aktivieren. -
@siggi85 Du kannst dir den aktuellen Wochentag als Nummer geben lassen.
Müsste so sein:
1 = Montag
2 = Dienstag
...
7 = Sonntag -
@thewhobox sagte in Wunschliste Blockly-Elemente:
@siggi85 Du kannst dir den aktuellen Wochentag als Nummer geben lassen.
Müsste so sein:
1 = Montag
2 = Dienstag
...
7 = SonntagWoa, es kann so einfach sein. Danke für die schnelle Hilfe!!!