NEWS
ScriptGUI early access
-
` > Eine Baustelle die mich aber momentan am meisten stört ist das man selbst erstellte Objekte in iobroker nicht als Trigger verwenden kann, bekomme hier bei Live Test im rechten Fenster für das Objekt das als Trigger dienen soll undefined. Das Script wird auch nicht ausgeführt. Wenn ich aber ein Trigger eines durch einen Adapter erstellten Objektes (owfs oder z-wave) nehme geht alles wunderbar.
Ist das ein Bug? oder mache ich was beim anlegen eigener Objekte falsch? `
Wenn das gefixt würde, wäre ich schon zufrieden :roll: `
Habe das gerade mal probiert bei mir ist es kein Proble. Das selbst erstellte Objekt muss allerdings vom Typ ein state sein
-
> Habe das gerade mal probiert bei mir ist es kein Proble. Das selbst erstellte Objekt muss allerdings vom Typ ein state sein
Sorry für die späte Antwort :roll: War mal im Urlaub :roll:
Das mit dem state muss ich mal bei Gelegenheit checken, danke erst mal smiling_Jack
-
So Habe das mal überprüft
> Habe das gerade mal probiert bei mir ist es kein Proble. Das selbst erstellte Objekt muss allerdings vom Typ ein state sein
ist bei mir der fall
Hier das Objekt wo es geht
Hier das Objekt wo es NICHT geht
Und hier noch mal im script
-
Poste bitte mal die Objektdefinitonen (Tab "raw")
-
Ok! Bitteschön
-
Sorry, das 2te Bild noch mal
-
Zwei Ideen, rein ins Blaue:
1. Dein eigenes Objekt liegt nicht unter einer Adapterinstanz (z.b. javascript.0), das zwave-Objekt schon. Könnte eventuell Probleme machen, das gabs in ähnlicher Form schon mal.
2. Das Objekt muss nur type="state" haben, common.role kann passend gewählt sein. Mir ist hier keine Rolle "state" bekannt => https://github.com/ioBroker/ioBroker/bl … ject-types
Kann mir aber nicht vorstellen, dass das problematisch ist.
-
` > 2. Das Objekt muss nur type="state" haben, common.role kann passend gewählt sein. Mir ist hier keine Rolle "state" bekannt => https://github.com/ioBroker/ioBroker/bl … ject-types
Kann mir aber nicht vorstellen, dass das problematisch ist. `
Denke auch nicht das es an der Rolle liegt, Habe noch andere Objekte mit anderen common.role da geht es auch nicht. Wie wichtig ist denn die common.role eigentlich? Hatte das bisher so verstanden das es eigentlich nur zum besseren auffinden eines Objektes zu gebrauchen ist. :?
` > Zwei Ideen, rein ins Blaue:
1. Dein eigenes Objekt liegt nicht unter einer Adapterinstanz (z.b. javascript.0), das zwave-Objekt schon. Könnte eventuell Probleme machen, das gabs in ähnlicher Form schon mal. `
Ich denke hier könnte der Hase im Pfeffer liegen :shock: Sämtliche selbst erstellten Objekte liegen über einer Adapterinstanz, also in der Baumhierarchie ganz oben.
Wollte schon lange mal Ordnung da rein bringen, bisher habe ich immer eigene Objekte einfach mit dem +Button oben links angelegt und da landeten sie automatisch in der Obersten Baumhierarchie :? Wie lege ich denn einen Ordner, zb. "Eigene Objekte" unter der javascript.0 instanz an? In diesen Ordner könnte ich ja dann all meine selbst angelegten Objekte erstellen. Am besten noch mit mehreren Unterordnern, passend zum Script oder so.
Danke! für die Hilfe!
-
Wie lege ich denn einen Ordner, zb. "Eigene Objekte" unter der javascript.0 instanz an? In diesen Ordner könnte ich ja dann all meine selbst angelegten Objekte erstellen. `
Du musst nur der ID des States beim Anlegen ein Präfix wie "javascript.0.ordnername." voranstellen. Also statt "MeinState" nennst du den "javascript.0.Ordner.MeinState". Oder direkt in einer Fake-Adapterstruktur, z.b. "EigeneObjekte.0.Ordner.MeinState". Die (optische) Struktur legt ioBroker für dich an. -
So Habe es probiert, es geht
Habe ich das so richtig gemacht?
Gibt es die Möglichkeit bereits erstellte Objekte in einen neuen Ordner zu verschieben? Ohne das ich meine Scripte bzw. Views die diese Objekte verwenden anpassen muss? Hier stimmt ja dann der Pfad zum Objekt nicht mehr. Oder?
-
Habe ich das so richtig gemacht? `
Eigene_Objekte soll kein extra State sein. Du willst ja keinen Wert darin speichern, sondern nur in den Objekten darunter.Es reicht, ein Objekt z.B. "javascript.0.Eigene_Objekte.Test" zu erstellen, ohne dass "javascript.0.Eigene_Objekte" vorher existiert. Der Ordner wird in der Baumstruktur trotzdem angezeigt.
Gibt es die Möglichkeit bereits erstellte Objekte in einen neuen Ordner zu verschieben? `
Nicht dass ich wüsste, vielleicht weiß jemand anders mehr. -
Moin….
nachdem ich durch Zufall gesehen habe, das mein Lieblingstool von CCU.IO nun in ioBroker existiert, habe ich dieses auch gleich installiert.
Laufen tut´s auf einer Virtuellen Maschine:
Operating System: Debian GNU/Linux 9 (stretch)
Kernel: Linux 4.9.0-4-amd64
Architecture: x86-64
Nach anfänglichen Problemen mit dem "Live Test" , habe ich den Adapter "Javascript" und "ScriptGui" neu installiert, was Abhilfe schuf.
Nun bin ich an einen Punkt angekommen, wo ich absolut keinen Anhaltspunkt mehr habe.
Ich benutze im ScriptGui aus der Logic den "Timespan". Nur leider bekomme ich aus dem Log des IO.Broker s eine Fehlermeldung
Javascipt:
! // Force Variablen
! // Timeout Variablen
! // Blocking Variablen
! // CCU.IO Objekte
! // Trigger
! schedule(" */1 * * * * ", function (data){codebox_1(data); }); //Programm_1
! function codebox_1(data){ var string_1_out = "05:00";var string_2_out = "22:00";var now = new Date(); var time1 = new Date(); var time2 = new Date(); var in1 = string_1_out; var in2 = string_2_out; var double1 = in1.split(" "); var double2 = in2.split(" "); var time; var date1; var date2; if (double1[1]) { time = double1[1].split(":"); date1 = double1[0].split("."); date2 = double1[0].split("-"); } else { time = in1.split(":"); date1 = in1.split("."); date2 = in1.split("-"); } if (time.length == 2) { time1.setHours(time[0]); time1.setMinutes(time[1]); } if (time.length == 3) { time1.setHours(time[0]); time1.setMinutes(time[1]); time1.setSeconds(time[2]); } if (date2.length == 3) { if (date2[0].length == 4) { time1.setFullYear(date2[0]); } else { time1.setFullYear("20" + date2[0]); } time1.setMonth(date2[1] - 1); time1.setDate(date2[2]); } if (date1.length == 3) { if (date1[0].length == 4) { time1.setFullYear(date1[2]); } else { time1.setFullYear("20" + date1[2]); } time1.setMonth(date1[1] - 1); time1.setDate(date1[0]); } if (double2[1]) { time = double2[1].split(":"); date1 = double2[0].split("."); date2 = double2[0].split("-"); } else { time = in2.split(":"); date1 = in2.split("."); date2 = in2.split("-"); } if (time.length == 2) { time2.setHours(time[0]); time2.setMinutes(time[1]); } if (time.length == 3) { time2.setHours(time[0]); time2.setMinutes(time[1]); time2.setSeconds(time[2]); } if (date2.length == 3) { if (date2[0].length == 4) { time1.setFullYear(date2[0]); } else { time1.setFullYear("20" + date2[0]); } time2.setMonth(date2[1] - 1); time2.setDate(date2[2]); } if (date1.length == 3) { if (date1[0].length == 4) { time2.setFullYear(date1[2]); } else { time2.setFullYear("20" + date1[2]); } time2.setMonth(date1[1] - 1); time2.setDate(date1[0]); }process.send(time1);process.send(time2); if (time1.valueOf() < now.valueOf() && time2.valueOf() > now.valueOf()) { var timespan_4_out = true; }else{ var timespan_4_out = false; }log("Timespan01 -> Programm_1 -> " + timespan_4_out);};Fehlermeldung:
javascript.0 2018-02-25 14:24:00.439 error at Object. (script.js.Test_Scripte.Timespan01:10:43)
javascript.0 2018-02-25 14:24:00.439 error at codebox_1 (script.js.Test_Scripte.Timespan01:11:3558)
javascript.0 2018-02-25 14:24:00.436 error Error in callback: ReferenceError: process is not defined
javascript.0 2018-02-25 14:23:00.435 error at Object. (script.js.Test_Scripte.Timespan01:10:43)
javascript.0 2018-02-25 14:23:00.435 error at codebox_1 (script.js.Test_Scripte.Timespan01:11:3558)
javascript.0 2018-02-25 14:23:00.434 error Error in callback: ReferenceError: process is not defined
javascript.0 2018-02-25 14:22:18.435 info script.js.Test_Scripte.Timespan01: registered 0 subscriptions and 1 schedule
javascript.0 2018-02-25 14:22:18.412 info Start javascript script.js.Test_Scripte.Timespan01
Evtl. kann mir jemand weiterhelfen
-
Hallo!
Habe gestern auf Node 8.11.1 und NPM 4.6.1 geupdatet, Seitdem will ScriptGui nicht mehr, ich drehe durch :twisted: mein wichtigstes Tool!!!
Habe auch schon Javascript, und web deinstalliert und wieder installiert da ich irgendwo gelesen hatte das Scriptgui auf diese Adapter angewiesen ist!
Keinen Erfolg siehe Screenshot
BITTE, BITTE HELFEN!!!!!
-
Sorry, muss das noch mal hoch holen
Aber weiß wirklich nicht mehr weiter, ehe ich weiter rumprobiere.
Kann es sein das ScriptGui mit Node 8 nicht funktioniert, das wäre wenigsten eine Aussage und ich müsste nicht weiter im dunklen stochern.
Würde dann lieber wieder auf mein System mit Node 4 zurückgehen und warten das ScriptGui angepasst wird. Da ist aber das Dilemma das ich mich nicht mehr traue Updates von iobroker, oder anderen Adaptern zu machen da sie manchmal schon Node größer 4 voraussetzen, siehe zb. email Adapter.
Da ScriptGui schon ziemlich lange, early access ist, beschleicht mich das Gefühl hier wird sich in naher Zukunft auch nichts tun?
Vielleicht kann smiling_Jack mal drüber schauen? Ich weiß der hat mit Sicherheit genug um die Ohren. Von ihm wollen währscheinlich all irgend wie was
Wäre wirklich nett!!!
Wenn Infos benötigt werden bin ich gerne bereit sie zu liefern!
Habe vorhin noch mal versucht trotz Fehlermeldung ein script in ScriptGui zu erstellen
da hatte ich das im log :
Vieleicht hilft das den Fehler einzugrenzen -
Ich fürchte scriptgui wird wohl ewig in dem Zustand bleiben und der Entwickler nicht weiter was tun. Finde lieber Alternativen!
-
! Ich fürchte scriptgui wird wohl ewig in dem Zustand bleiben und der Entwickler nicht weiter was tun. Finde lieber Alternativen!
Das wäre jetzt aber echt ganz große sch…e!!!
Habe echt viele Sachen auf ScripGui gemacht, und ich finde es echt das Killer Tool schlechthin, wenn man nicht die Zeit und den Nerv hat sich in javascript einzuarbeiten.
Kann man den Entwickler, ich vermute mal es ist smiling_Jack nicht vielleicht doch mit Geld "zwingen" sich der Sache doch noch mal anzunehmen?
Für so ein super Tool wäre ich echt bereit einen vernünftigen preis zu zahlen.
-
Blockly ist keine Alternative für dich ?
–-----------------------
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
-
Smiling Jack ist hier schon lange nicht mehr aktiv.
Sieh dir mal Blockly an.
Da kann man auch alles mögliche Programmieren ohne js zu können.
Gruß
Rainer
-
Ich kam auch aus der CCU.io Welt und habe dort alles mit ScriptGui gemacht und war Happy als es hier den Adapter als "Alpha" gab … aber inzwischen habe ich akzeptiert das es da nicht mehr weitergeht
-
Das es da nicht mehr weitergeht; kann ich irgendwie nicht nachvollziehen. Sind denn alle hier im Forum die Mega "js Programmierer"
Blockly, mhh… schön und gut aber auch da muss man sich einarbeiten, zumindest ich :roll: alles zeit die man als Otto normal Anwender der auch eine Frau hat, nicht gerade im Überfluss zur Verfügung steht.
Ich finde das gerade ScriptGui gerade für alle die von CCU.IO kamen sehr wichtig ist!!!
Wirklich! Wirklich! Schade, wenn so ein Tool auf der strecke bleibt.
Da gibt es in meinen Augen Adapter, die nicht An nährend die Priorität des ScriptGui Adapters haben, aber über die hier im Forum heiß diskutiert wird!
Gucken die sich nur alle an wie schön das log in iobroker aussieht? Oder schalten die auch mal wirklich zustände? wofür Iobroker eigentlich gedacht ist, und hierfür sind scripte nun mal notwendig. Und ich denke hier war und ist ScripGui für den NORMAL User genau das richtige.
Gruss