Skip to content

JavaScript

Hilfe für Skripterstellung mit JavaScript

2.5k Themen 48.3k Beiträge

NEWS

  • Javscript mehrere Objekte auslesen und verarbeiten

    javascript
    2
    1
    0 Stimmen
    2 Beiträge
    349 Aufrufe
    paul53P
    @DerT sagte: Gibt es außerdem eine Möglichkeit den Pfad des aktuellen Scriptes auszulesen? Variable name.
  • Erstellen/Setzen Datenpunkt aus JSON in eigener Funktion

    1
    0 Stimmen
    1 Beiträge
    1k Aufrufe
    Niemand hat geantwortet
  • Daten aus SQL Lite auslesen und Mittelwert errechnen

    javascript
    1
    0 Stimmen
    1 Beiträge
    456 Aufrufe
    Niemand hat geantwortet
  • Umwandlung von TRUE/FALSE auf 1/0

    3
    0 Stimmen
    3 Beiträge
    484 Aufrufe
    paul53P
    @rene3128 Vorschlag: on("wiffi-wz.0.root.192_168_23_69.w_sonne_scheint", function (obj){ var sonne = 0; if(obj.state.val) sonne = 1; setState("modbus.0.holdingRegisters.12502_Sonnenschein", sonne); });
  • [gelöst] Raw-Daten mit JS auslesen

    3
    0 Stimmen
    3 Beiträge
    642 Aufrufe
    A
    Super - hat geklappt. Danke!
  • script wirft fehler anonymos

    4
    0 Stimmen
    4 Beiträge
    240 Aufrufe
    paul53P
    @doctorultra sagte: schreibt er den Wert nicht in die Variable? In welche Variable ? Der Ziel-Datenpunkt (für setState()) ist der gleiche wie der Quell-Datenpunkt (in on()).
  • Wie Error handling

    3
    1
    0 Stimmen
    3 Beiträge
    245 Aufrufe
    W
    @BuZZy Vielen, vielen Dank! Wieder etwas dazu gelernt. Funktioniert so perfekt.
  • [Gelöst] Java-Script API / NPM-Paket einbinden

    5
    0 Stimmen
    5 Beiträge
    486 Aufrufe
    paul53P
    @Singular75 sagte Erfolg Dann markiere bitte das Thema in der Überschrift als [gelöst].
  • In iCal einen Termin mit dem Text "Ferien" oder "Frei" suchen und Variable schalten

    8
    0 Stimmen
    8 Beiträge
    880 Aufrufe
    B
    Ich mache das auch ganz simpel über die Events: on({id: "ical.0.events.0.now.ferien", val: true}, function() { setState("hm-rega.0.7475", false); sendTo("pushover.0", { message: 'beginnen und Schule ist aus', // mandatory - your text message title: 'Ferien', // optional - your message's title, otherwise your app's name is used priority: -1, }); }); on({id: "ical.0.events.0.now.ferien", val: false}, function() { setState("hm-rega.0.7475", true); sendTo("pushover.0", { message: 'enden und Schule geht weiter', // mandatory - your text message title: 'Ferien', // optional - your message's title, otherwise your app's name is used priority: -1, }); }); Funktioniert absolut zuverlässig. "hm-rega.0.7475" ist dabei die Variable "Schulzeit". Grüße Brati
  • Datenpunkte Astro Zeiten

    Gelöst
    7
    2
    0 Stimmen
    7 Beiträge
    2k Aufrufe
    eule66E
    ok danke das wars schon, keine Fehlermeldungen im log mehr :-) bekomme aber nur Sonnenaufgang und Sonnenuntergang angezeigt, die restlichen Zeiten nicht,an was könnte das noch liegen? [image: 1555435312645-astro-neu.png] danke für eure hilfe Gruß Ronny
  • Speicherort von Scripts?

    3
    0 Stimmen
    3 Beiträge
    3k Aufrufe
    AlCalzoneA
    @BuZZy sagte in Speicherort von Scripts?: Die Scripte befinden sich standardmäßig in der Datei /opt/iobroker/iobroker-data/objects.json Gruß Du solltest aus dieser JSON-datei die Objekte script.js.XYZ extrahieren und auf der neuen Installation in diese Datei einfügen (bei ausgeschaltetem ioBroker). Es hilft, wenn dein Editor JSON-Formatierung unterstützt, da du dann die Objekte schneller eingrenzen kannst.
  • Objektinstanz behalten / Singleton

    6
    0 Stimmen
    6 Beiträge
    371 Aufrufe
    AsgothianA
    @synthe Hier muss ich Dir zustimmen. Alleine das Ablegen der Queue selber sorgt nicht für eine Synchrone Abarbeitung - dazu müsste sichergestellt sein das genau eine Instanz die Abarbeitung übernimmt, und andere Instanzen nur etwas hinzufügen können. Auch ist durch das Objekt-Modell vom IoBroker ein Hinzufügen von Queue Objekten kritisch - soweit ich das verstanden habe gibt es keine Funktionalität, die es erlaubt Schreibzugriffe auf einen Datenpunkt von anderen Stellen aus zu blockieren (zeitlich begrenzt, als "Resource Lock"). Da wirst Du dir etwas anderes einfallen lassen müssen.
  • [gelöst] Bitte um Hilfe bei JSON.parse bzw. Array handling

    javascript
    5
    0 Stimmen
    5 Beiträge
    560 Aufrufe
    S
    So, gelöst :-) falls jemand mal über so was stolpert: try { if(typeof flugplan[i].flight.arrival.gates[0].gate == 'undefined') { // does not exist arivalshtml=arrivalshtml + '<th class="tg-2uhc">'; arrivalshtml=arrivalshtml + " "; arrivalshtml=arrivalshtml + '</th>'; } else { // does exist arrivalshtml=arrivalshtml + '<th class="tg-2uhc">'; arrivalshtml=arrivalshtml + flugplan[i].flight.arrival.gates[0].gate; arrivalshtml=arrivalshtml + '</th>'; } } catch (error){ /* ignore */ } macht den Trick. Viele Grüße Christian
  • Mehrdimensionale Arrays

    javascript
    13
    0 Stimmen
    13 Beiträge
    2k Aufrufe
    G
    Danke, jetzt funktioniert es. Das Arraymodell ist irgendwie anders als ich sie kenne. Auch danke für den Hinweis mit der Arraygröße..
  • Heizungs-Skript spinnt relativ oft.

    4
    0 Stimmen
    4 Beiträge
    335 Aufrufe
    H
    Danke für deine Antwort, aber das Problem ist, das die Timer laut logs richtig aufgezogen sind, aber einfach nicht feuern. Verschachtelt hab ich da eigentlich nichts, denn jeder Timer ist für sich einer. Auch die Zeiten passen alle. Sprich kein Timer könnte den anderen behindern da immer 1-2 Stunden unterschied sind. Das komische ist ja, wenn ich das Skript neu starte geht es ja wieder eine Zeit lang
  • Anwesenheitsteuerung. Was mache ich falsch ? [gelöst]

    8
    0 Stimmen
    8 Beiträge
    392 Aufrufe
    paul53P
    @Sascha19861 sagte: was das "let" in der Schleife macht. Damit wird die Variable i deklariert (analog zur Deklaration mittels var). Siehe SELFHTML. @Sascha19861 sagte: Läuft !! Dann markiere bitte das Thema in der Überschrift als [gelöst].
  • EnergieSparen Tasmota - globale Funktion

    javascript
    2
    0 Stimmen
    2 Beiträge
    1k Aufrufe
    liv-in-skyL
    falls mal ein profi eine bewertung abgeben möchte hab es so gelöst: es gibt ein globales script - welches mehrere funktionen beinhaltet. siehe in der art wie im ersten post. dann habe ich in den blockly, wo ich die funktion verwenden möchte, folgende bausteine eingefügt: [image: 1554922046453-image-1.png] in dieser javascript-funktion wird eine funktion des globalen scripts aufgerufen - ist das in ordnung auf diese art ?
  • getAstroDate Was ist an diesem Script falsch?

    3
    0 Stimmen
    3 Beiträge
    780 Aufrufe
    JensenJ
    @paul53 danke, die Astrofunktion(Länge,Breite) war noch nicht korrekt eingerichtet dann ergibt sich undefined und das läßt sich nicht nach LocalTimeString umwandeln also Fehler
  • Sript Fenster bleibt Weis

    5
    0 Stimmen
    5 Beiträge
    306 Aufrufe
    P
    @totocotonio Hallo, Bei mir wurden die Skripte nicht angezeigt, wenn HTTPS genutzt wurde. Unter http wird wieder alles angezeigt.
  • [Gelöst] Geht das nicht direkt?

    7
    0 Stimmen
    7 Beiträge
    434 Aufrufe
    paul53P
    @Georgius Übrigens funktioniert es einfacher so createState("javascript.0.Sprit.Setup.lat", 48.092420, {type: 'number', name: 'Lat', read: true, write: true}); createState("javascript.0.Sprit.Setup.lon", 16.287854, {type: 'number', name: 'Lon', read: true, write: true});

457

Online

32.4k

Benutzer

81.4k

Themen

1.3m

Beiträge