Weiter zum Inhalt

JavaScript

2.5k Themen 49.2k Beiträge

Hilfe für Skripterstellung mit JavaScript

NEWS

  • [Vorlage] LightControl brightness

    3
    0 Stimmen
    3 Beiträge
    143 Aufrufe
    ?
    @arteck sry, es sollte in die [Vorlage] lightcontrol.
  • objekt-Daten per Script ändern

    5
    0 Stimmen
    5 Beiträge
    393 Aufrufe
    H
    Hallo paul53, vielen Dank für die Ergänzung. Ich musste allerdings den Wert bei mir auf 35000 hochsetzten ,da bei mir auf meinem PI 3 die JS-Instance mit als Erstes startet und die Shelly fast zum Schluss. Jetzt war der Wert auf jeden Fall nach dem Reboot automatisch gesetzt. Muss dann wahrscheinlich jeder Benutzer bei sich selber den passenden Wert ermitteln. Vielen Dank und einen schönen Sonntag. VG Hasso
  • Dieses Thema wurde gelöscht!

    2
    0 Stimmen
    2 Beiträge
    22 Aufrufe
  • Datenpunktwert per JSON als HTTP Post versenden

    6
    0 Stimmen
    6 Beiträge
    232 Aufrufe
    mickymM
    @dominic-haußmann Wenn Du halt mehrere Datenpuntkte überwachen willst musst halt quasi ein regex nehmen oder einzelne Datenpunkte und die events als globales Array definieren. Hier mal das Bespiel mit 2 Datenpunkten. const request = require('axios'); var events = []; // Überwachen des Datenpunktes oder Wildcards // on({id: /0_userdata.0.*/, change: 'any'}, function (obj) { on({id: '0_userdata.0.doorStatus', change: 'any'}, sendObj); on({id: '0_userdata.0.target', change: 'any'}, sendObj); // Versenden des JSON Strings function sendObj(obj){ var state = getState(obj.id) var date = new Date(state.ts); var event = {"timestamp": date}; event[obj.id] =state.val; events.push(event); var data = JSON.stringify([{"tags": {"host":"iobroker"}, "events" : events}]); var url='$YOUR_HUMIO_URL/api/v1/ingest/humio-structured'; //var data = '[{"tags": {"host":"iobroler"}, "events" : [{"timestamp": "2021-06-06T12:00:00+02:00", "attributes": {"key1":"value1"}}]}]'; var config = { headers: { "Content-Type": "application/json", "Authorization": "Bearer $INGEST_TOKEN" } } request.post(url,data,config); } Das Ergebnis ist dann halt ein immer weiter wachsendes Array mit jeder Aktualisierung als Event: {"tags":{"host":"iobroker"},"events":[{"timestamp":"2022-01-22T16:20:46.811Z","0_userdata.0.target":5},{"timestamp":"2022-01-22T16:20:52.947Z","0_userdata.0.doorStatus":"40 %"},{"timestamp":"2022-01-22T16:22:44.935Z","0_userdata.0.doorStatus":"12.5 %"}]} [image: 1642868639968-a4e60f86-69d2-492c-b9a0-8730f0cddcc3-image.png] EDIT: Die ID des Selectors über eine Variable zu setzen geht natürlich auch. Du musst halt bedenken, dass Du jedes Mal einen neuen Selector generierst. Also müsstest Du mit unsubscribe den erst wieder löschen Mit Wildcards habe ich es auch getestet, aber da ist mein Array im Nu sehr lang. ;). Aber ich bin kein JS Fachmann, arbeite lieber mit NR - aber für weitere Fragen ist Dir @paul53 sicher behilflich.
  • axios Abfragen funktioniet nicht mehr

    4
    0 Stimmen
    4 Beiträge
    700 Aufrufe
    cashC
    @alcalzone wie peinlich. Ja damit geht es wieder. Vorher hat baseURL aber auch funktioniert.
  • Datenpunkte im Python-Skript lesen/ändern

    3
    0 Stimmen
    3 Beiträge
    644 Aufrufe
    H
    Danke schön für den Tipp. :)
  • Gelöst! Elemente nach Ereignis am Anfang eines Array [...]

    4
    0 Stimmen
    4 Beiträge
    546 Aufrufe
    ?
    @paul53 said in Elemente nach Ereignis am Anfang eines Array schreiben: Das gehört nicht in die Funktion count_doors(), sondern in den Trigger. Das war es danke. Manchmal denkt man einfach zu kompliziert. Ich danke dir und @liv-in-sky für euer Input! :)
  • Wake on Lan auf zweite Netzwerkkarte

    8
    0 Stimmen
    8 Beiträge
    393 Aufrufe
    B
    Hallo zusammen, ich bin jetzt endlich zum weitertesten gekommen. Also es liegt definitiv an den Berechtigungen in der sudoers-Datei. Ich habe mir mal einen test-User angelegt und für den einen Eintrag in meiner custom_iobroker-Datei gemacht. Der darf dann auch den etherwake-Befehl ohne Passwortabfrage machen. Für den iobroker-Benutzer habe ich das mit: sudo -u iobroker sudo /sbin/etherwake -i eth1 xx:xx:xx:1f:12:ab getestet und dort wurde das Passwort des iobroker-users abgefragt. Ich habe dann den gleichen Eintrag, den ich auch in meiner custom_iobroker-Datei gemacht habe, direkt in der /etc/sudoers.d/iobroker-Datei gemacht und es wird kein Passwort mehr abgefragt. Das Script funktioniert dann. Hat einer eine Erklärung dafür warum es nicht mit der custom_iobroker-Datei funktioniert? Ich habe sogar mal testweise ALL ALL=(ALL) NOPASSWD: /sbin/etherwake eingetragen gehabt. Für meinen test-User hat das auch funktioniert. Für den iobroker-User kam weiterhin eine Passwortabfrage. Ich bin verwirrt. Aber zur Not lebe ich damit, dass ich die /etc/sudoers.d/iobroker-Datei anpassen muss. Grüße und noch einen schönen Sonntag :-)
  • IP Devices im Netzwerk - HTML Tabelle, Unbekannte Geräte?

    4
    0 Stimmen
    4 Beiträge
    417 Aufrufe
    HomoranH
    @assid sagte in IP Devices im Netzwerk - HTML Tabelle, Unbekannte Geräte?: Also dann nicht wirklich erkennbar, um was für ein Gerät es sich handelt. Name, MAC-Adresse wäre schon gut. (Vendor der MAC-Adresse) ich weiß nicht ob @liv-in-sky da noch was eingebaut hat. Wir hatten an so etwas gearbeitet. Ich nutze noch ein uralte Version und da wird der Name wenn vorhanden schon angezeigt. Ich habe aber inzwischen alle Devices im Skript neu benannt, auch damit sie vernünftig sortiert werden: [image: 1642182566341-ip_scan.png] Ein testweise installierter RasPi wird mit seinem hostnamen angezeigt
  • fs.watch läuft weiter

    3
    0 Stimmen
    3 Beiträge
    316 Aufrufe
    D
    @alcalzone Super, funktioniert und wieder was gelernt! Dankeschön!!!
  • Integrieren in javascript

    12
    0 Stimmen
    12 Beiträge
    655 Aufrufe
    HomoranH
    @sgtpinback sagte in Integrieren in javascript: wenn ich nach einem Jahr feststelle, die Form der Anzeige gefällt mir nicht Ich lese hier schon länger oberflächlich mit. Einerseits glaube ich zu verstehen was du willst und kann auch den Wunsch nachvollziehen. Andererseits habe ich mit dieser Idee so meine Probleme. Historisierte Daten sind für mich ein Audit-Trail, da kann ich nicht nach einem Jahr sagen: das gefällt mir aber nicht. Zum Weiteren fällt mir auch gar nicht ein worum es da gehen sollte. Die Temperatur von Heiligabend 2019 um 13:42 ist gegeben, was willst du da ändern? Ebenso die Jahressumme der Regenmenge oder des Stromverbrauchs.
  • Parameter Übergabe beim Aufruf von Datenpunkten

    6
    0 Stimmen
    6 Beiträge
    288 Aufrufe
    arteckA
    @loxdan dann halt andersrum http://[MEINE-IP]:8087/set/javascript.0.scriptEnabled.common.Alexa_Text2Speak.TTS-Alexa-Garage-Test?value=1&tts=Test&prettyPrint hast du doch schon javascript.0.scriptEnabled.common.Alexa_Text2Speak.TTS-Alexa-Garage-Test dann musst du auf änderung dieser variable reagieren und diese auswerten.. du kannst abe rnicht mehrere parameter übergeben.. wenn dann so.. javascript.0.scriptEnabled.common.Alexa_Text2Speak.TTS-Alexa-Garage-Test?value=1Test&prettyPrint und dann dir die Variable zerlegen als das 1 raus holen und Test
  • [Gelöst]Bild von Webcam speichern

    javascript
    13
    0 Stimmen
    13 Beiträge
    1k Aufrufe
    amg_666A
    @glasfaser DANKE !!!!
  • [gelöst] Script Datenpunkte anlegen inkl. Logging

    9
    0 Stimmen
    9 Beiträge
    892 Aufrufe
    S
    @paul53 Top!, hat alles bestens funktioniert :)
  • Pushover Textgestaltung

    2
    0 Stimmen
    2 Beiträge
    264 Aufrufe
    cashC
    @stefanh-0 mir ist keine Möglichkeit bekannt, das zu realisieren. Meines Wissens kannst Du Text farbig machen, bold, italic usw. aber viel mehr geht nicht.
  • [Script] Kamera Alarm ohne Synology oder motion nutzen.

    3
    1 Stimmen
    3 Beiträge
    451 Aufrufe
    jmeister79J
    @jmeister79 ursprungspost angepasst und script stark optimiert
  • Fehlermeldung : Cannot redeclare block-scoped variable

    3
    0 Stimmen
    3 Beiträge
    398 Aufrufe
    SokomotoS
    @asgothian sagte in Fehlermeldung : Cannot redeclare block-scoped variable: @sokomoto Die Frage beantwortet dieser Text: *var and let are both used for variable .... Nicht ganz, da der Fehler nur auftritt , sobald man zwischen den Scripten Blockly und JS im Editor umschaltet. Ich interpretiere das ganze jetzt so, im Iobrocker mit der alten Variante var die Variablen deklarieren, das macht weniger Stress. :-)) tschuess peter
  • JS Blockly startet nicht....

    15
    0 Stimmen
    15 Beiträge
    852 Aufrufe
    Thomas BraunT
    @crunchip which nodejs node npm && nodejs -v && node -v && npm -v && whoami && sudo apt update &> /dev/null && sudo apt update && apt policy nodejs Jetzt passt es aber. :-D Muss mich mal wieder mehr um die Grundfertigkeiten in der bash kümmern.
  • Aqara Cube Skript - Bitte um Hilfe

    javascript
    25
    2
    0 Stimmen
    25 Beiträge
    3k Aufrufe
    KusselinK
    der SonoffGarten 4CH ist dein 4-fach Aktor richtig? Aber warum schreibst du für den Cube immer buttonpressed??? Gruss
  • Unifi WLAN Script 2 mit Anwesenheitskontrolle

    Gesperrt javascript monitoring
    1k
    6
    9 Stimmen
    1k Beiträge
    504k Aufrufe
    liv-in-skyL
    @sectorchan tut mir leid - mußte suchen - oder neuen thread öffnen

315

Online

32.8k

Benutzer

82.7k

Themen

1.3m

Beiträge