NEWS
ICal Daten in Datenpunkte schreiben
-
Jetzt ist doch irgendwie der Hund drin. Kannst Du da bitte mal drüber schauen?
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter."+idCal); var instopt = inst.native; var calendar = {}; var event / var date = "" for (var i = 0; i < 3; i++) { var entry = calTable.val[i]; if ( entry._calName != calendar.name ) { calendar = {}; for (var c = 0; c < instopt.calendars.length; c++ ) { if (entry._calName == instopt.calendars[c].name ) { calendar = instopt.calendars[c]; break; } } } event += entry.event + "," date += entry.date + "," } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; console.log(event); console.log(event1); console.log(event2); console.log(event3); console.log(date); console.log(date1); console.log(date2); console.log(date3); setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();` Komme nicht drauf, was daran falsch ist bzw was die errors bedeuten... Danke schon mal [10117_bildschirmfoto_2019-02-05_um_16.02.00.png](/assets/uploads/files/10117_bildschirmfoto_2019-02-05_um_16.02.00.png) [/i] -
Auch wenn du mich per PN anschreibst geht es nicht schneller. Ich bin weder bezahlter Programmierer, noch hier angestellt.
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter." + idCal); var instopt = inst.native; var calendar = {}; var event = ""; var date = ""; for (var i = 0; i < 3; i++) { var entry = calTable.val[i]; if (entry._calName != calendar.name) { calendar = {}; for (var c = 0; c < instopt.calendars.length; c++ ) { if (entry._calName == instopt.calendars[c].name ) { calendar = instopt.calendars[c]; break; } } } event += entry.event + ","; date += entry.date + ","; } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();` Bis jetzt fallen mir nur fehlende ";" auf, habe ich mal hinzugefügt. Welche Zeile ist die, die den Fehler generiert? Ich weiss ja nicht, ob dein Script noch größer ist.[/i] -
Das wären die Fehler im Log wenn Dir das evtl was sagt.
avascript.0 2019-02-06 13:30:39.609 error at ContextifyScript.Script.runInContext (vm.js:59:29)
javascript.0 2019-02-06 13:30:39.609 error at script.js.common.Kalender.Daniel.iCal.1:61:1
javascript.0 2019-02-06 13:30:39.609 error at iCalToHTMLTable (script.js.common.Kalender.Daniel.iCal.1:17:20)
javascript.0 2019-02-06 13:30:39.609 error TypeError: Cannot read property '_calName' of undefined
javascript.0 2019-02-06 13:30:39.608 error ^
javascript.0 2019-02-06 13:30:39.608 error if ( entry._calName != calendar.name ) {
javascript.0 2019-02-06 13:30:39.608 error script.js.common.Kalender.Daniel.iCal.1: script.js.common.Kalender.Daniel.iCal.1:17
-
Steht dann auch was in den Objekten des Adapter drin? Wie gesagt: Hier kein Problem.
Ersatz mal folgende Zeilen
`for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) {` [/i][/i] -
Das wären die Fehler im Log wenn Dir das evtl was sagt.
avascript.0 2019-02-06 13:30:39.609 error at ContextifyScript.Script.runInContext (vm.js:59:29)
javascript.0 2019-02-06 13:30:39.609 error at script.js.common.Kalender.Daniel.iCal.1:61:1
javascript.0 2019-02-06 13:30:39.609 error at iCalToHTMLTable (script.js.common.Kalender.Daniel.iCal.1:17:20)
javascript.0 2019-02-06 13:30:39.609 error TypeError: Cannot read property '_calName' of undefined
javascript.0 2019-02-06 13:30:39.608 error ^
javascript.0 2019-02-06 13:30:39.608 error if ( entry._calName != calendar.name ) {
javascript.0 2019-02-06 13:30:39.608 error script.js.common.Kalender.Daniel.iCal.1: script.js.common.Kalender.Daniel.iCal.1:17 `
Dann steht nix in den Objektes des Adapters drin.
-
Das wären die Fehler im Log wenn Dir das evtl was sagt.
avascript.0 2019-02-06 13:30:39.609 error at ContextifyScript.Script.runInContext (vm.js:59:29)
javascript.0 2019-02-06 13:30:39.609 error at script.js.common.Kalender.Daniel.iCal.1:61:1
javascript.0 2019-02-06 13:30:39.609 error at iCalToHTMLTable (script.js.common.Kalender.Daniel.iCal.1:17:20)
javascript.0 2019-02-06 13:30:39.609 error TypeError: Cannot read property '_calName' of undefined
javascript.0 2019-02-06 13:30:39.608 error ^
javascript.0 2019-02-06 13:30:39.608 error if ( entry._calName != calendar.name ) {
javascript.0 2019-02-06 13:30:39.608 error script.js.common.Kalender.Daniel.iCal.1: script.js.common.Kalender.Daniel.iCal.1:17 `
Dann steht nix in den Objektes des Adapters drin. `
Meinst Du im Kalender oder der Standardwert der Datenpunkte?
-
Die sind aber nicht leer.
Den Teil wenn ich ersetze sind anscheinend geschweifte Klammern zu viel. wenn ich diese lösche komme ich wieder auf eine Meldung das eine andere Zeile mit code falsch ist.
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter."+idCal); var instopt = inst.native; var calendar = {}; var event / var date = "" for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) { break; } } } event += entry.event + "," date += entry.date + "," } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; console.log(event); console.log(event1); console.log(event2); console.log(event3); console.log(date); console.log(date1); console.log(date2); console.log(date3); setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();` [10117_bildschirmfoto_2019-02-06_um_13.48.22.png](/assets/uploads/files/10117_bildschirmfoto_2019-02-06_um_13.48.22.png) [/i][/i] -
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter."+idCal); var instopt = inst.native; var calendar = {}; var event / var date = "" for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) { break; } } } event += entry.event + "," date += entry.date + "," } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; console.log(event); console.log(event1); console.log(event2); console.log(event3); console.log(date); console.log(date1); console.log(date2); console.log(date3); setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();` `~~[code]~~javascript.0 2019-02-06 13:55:11.874 error at TCP.onread (net.js:601:20) javascript.0 2019-02-06 13:55:11.874 error at Socket.Readable.push (_stream_readable.js:208:10) javascript.0 2019-02-06 13:55:11.874 error at readableAddChunk (_stream_readable.js:250:11) javascript.0 2019-02-06 13:55:11.874 error at addChunk (_stream_readable.js:263:12) javascript.0 2019-02-06 13:55:11.873 error at Socket.emit (events.js:211:7) javascript.0 2019-02-06 13:55:11.873 error at emitOne (events.js:116:13) javascript.0 2019-02-06 13:55:11.873 error at Socket._ultron.on (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:138:22) javascript.0 2019-02-06 13:55:11.873 error at Receiver.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:139:10) javascript.0 2019-02-06 13:55:11.873 error at Receiver.startLoop (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:165:16) javascript.0 2019-02-06 13:55:11.873 error at Receiver.getData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:330:12) javascript.0 2019-02-06 13:55:11.872 error at Receiver.dataMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/Receiver.js:389:14) javascript.0 2019-02-06 13:55:11.872 error at Receiver._receiver.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/WebSocket.js:141:47) javascript.0 2019-02-06 13:55:11.872 error at WebSocket.emit (events.js:211:7) javascript.0 2019-02-06 13:55:11.872 error at emitOne (events.js:116:13) javascript.0 2019-02-06 13:55:11.872 error at WebSocket.onMessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/ws/lib/EventTarget.js:99:16) javascript.0 2019-02-06 13:55:11.872 error at WebSocket.ws.onmessage (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transports/websocket.js:147:10) javascript.0 2019-02-06 13:55:11.872 error at WS.Transport.onData (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:137:8) javascript.0 2019-02-06 13:55:11.871 error at WS.Transport.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/transport.js:145:8) javascript.0 2019-02-06 13:55:11.871 error at WS.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20) javascript.0 2019-02-06 13:55:11.871 error at WS. <anonymous>(/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:273:10) javascript.0 2019-02-06 13:55:11.871 error at Socket.onPacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/engine.io-client/lib/socket.js:456:14) javascript.0 2019-02-06 13:55:11.871 error at Socket.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20) javascript.0 2019-02-06 13:55:11.870 error at Socket. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) javascript.0 2019-02-06 13:55:11.870 error at Manager.ondata (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:335:16) javascript.0 2019-02-06 13:55:11.870 error at Decoder.add (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-parser/index.js:251:12) javascript.0 2019-02-06 13:55:11.870 error at Decoder.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20) javascript.0 2019-02-06 13:55:11.870 error at Decoder. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) javascript.0 2019-02-06 13:55:11.870 error at Manager.ondecoded (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/manager.js:345:8) javascript.0 2019-02-06 13:55:11.870 error at Manager.Emitter.emit (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/component-emitter/index.js:133:20) javascript.0 2019-02-06 13:55:11.869 error at Manager. <anonymous>(/opt/iobroker/node_modules/component-bind/index.js:21:15) javascript.0 2019-02-06 13:55:11.869 error at Socket.onpacket (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:244:12) javascript.0 2019-02-06 13:55:11.869 error at Socket.onack (/opt/iobroker/node_modules/iobroker.js-controller/node_modules/socket.io-client/lib/socket.js:319:9) javascript.0 2019-02-06 13:55:11.869 error at Socket.adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:837:17) javascript.0 2019-02-06 13:55:11.869 error at createActiveObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1214:20) javascript.0 2019-02-06 13:55:11.869 error at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1160:37) javascript.0 2019-02-06 13:55:11.868 error at compile (/opt/iobroker/node_modules/iobroker.javascript/main.js:971:28) javascript.0 2019-02-06 13:55:11.868 error at Object.createScript (vm.js:80:10) javascript.0 2019-02-06 13:55:11.868 error SyntaxError: Unexpected token } javascript.0 2019-02-06 13:55:11.868 error ^ javascript.0 2019-02-06 13:55:11.868 error } javascript.0 2019-02-06 13:55:11.867 error at script.js.common.Kalender.Daniel.danw:27 javascript.0 2019-02-06 13:55:11.867 error script.js.common.Kalender.Daniel.danw compile failed:[/code]</anonymous></anonymous></anonymous></anonymous>`[/i][/i] -
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter." + idCal); var instopt = inst.native; var calendar = {}; var event = ""; var date = ""; for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) { break; } } } event += entry.event + ","; date += entry.date + ","; } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();`[/i][/i] -
Ist es nicht. Siehe hier.
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { console.log(idCalTable); var calTable = getState(idCalTable); var inst = getObject("system.adapter." + idCal); var instopt = inst.native; var calendar = {}; var event = ""; var date = ""; for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) { calendar = {}; for (var c = 0; c < instopt.calendars.length; c++ ) { if (entry._calName == instopt.calendars[c].name ) { calendar = instopt.calendars[c]; break; } } } event += entry.event + ","; date += entry.date + ","; } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();` //edit: Du hast deinen Beitrag nachträglich geändert. Da sind die fehlenden ";" vorhanden, korrekt. Was ist die aktuelle Fehlermeldung? Der Code ist bei mir so in Benutzung und funktioniert (ausser deine "Hilfsvariablen").[/i][/i] -
Hab ich auch gesehen… hatte beide Skripte offen und das alte hier eingestellt <emoji seq="1f648">🙈</emoji>
`var idCal = "ical.1"; var idCalTrigger = idCal + ".data.trigger"; var idCalTable = idCal + ".data.table"; var idCalHTML = idCal + ".data.html"; var idCalHTMLtable = idCal + "_1.json"; function iCalToHTMLTable() { var calTable = getState(idCalTable); var inst = getObject("system.adapter." + idCal); var instopt = inst.native; var calendar = {}; var event = ""; var date = ""; for (var i = 0; i < 3; i++) { console.log("entry: " + JSON.stringify(entry)); console.log("caltable: " + JSON.stringify(calTable)); console.log("caltable inc: " + JSON.stringify(calTable.val[i])); var entry = calTable.val[i]; if (entry._calName != calendar.name) { break; } } } event += entry.event + ","; date += entry.date + ","; } var event1 = event.split(",")[0]; var event2 = event.split(",")[1]; var event3 = event.split(",")[2]; var date1 = date.split(",")[0]; var date2 = date.split(",")[1]; var date3 = date.split(",")[2]; setState('Hilfsvariablen.0.Kalender.Daniel.event1', event1); setState('Hilfsvariablen.0.Kalender.Daniel.event2', event2); setState('Hilfsvariablen.0.Kalender.Daniel.event3', event3); setState('Hilfsvariablen.0.Kalender.Daniel.date1', date1); setState('Hilfsvariablen.0.Kalender.Daniel.date2', date2); setState('Hilfsvariablen.0.Kalender.Daniel.date3', date3); setState('Hilfsvariablen.0.Kalender.Daniel.event', event); setState('Hilfsvariablen.0.Kalender.Daniel.date', date); } on({id: idCalTable, change: "ne"}, function (obj) { iCalToHTMLTable(); }); schedule("5,35 * * * *", function () { iCalToHTMLTable(); }); iCalToHTMLTable();`[/i][/i]