Skip to content

JavaScript

Hilfe für Skripterstellung mit JavaScript

2.5k Themen 48.8k Beiträge

NEWS

  • Alexa "Standard-Antworten" blockieren?

    4
    0 Stimmen
    4 Beiträge
    574 Aufrufe
    T
    Ja, @arteck hat recht. Es gibt Sätze und Kommandos, da fühlt es sich natürlicher an, sie zu sagen. Hat denn jemand vielleicht Erfahrung damit, wie es aussieht, wenn man den Kurzantwortmodus aktiviert?
  • on ID nur im bestimmten Zeitraum aktivieren

    6
    0 Stimmen
    6 Beiträge
    460 Aufrufe
    0
    OK, dann kann ich die Sache ja ruhig so laufen lassen :blush:
  • [gelöst] heute.getMonth() liefert falschen Wert

    2
    1
    0 Stimmen
    2 Beiträge
    562 Aufrufe
    CKMartensC
    Ok... Meinen Fehler gefunden... getMonth() fängt ja mit 0 an zu zählen...
  • Auf 2 Echos Nachricht abspielen

    8
    0 Stimmen
    8 Beiträge
    626 Aufrufe
    R
    @padrino Ja genau, ist das Gerät leise gestellt (z.B. wegen Einschlafen am Vorabend) dann wird der Rundruf auch nur in dieser leisen Lautstärke abgespielt.
  • Kamera PTZ Steuerung von Vis

    11
    0 Stimmen
    11 Beiträge
    1k Aufrufe
    K
    @paul53 sauber stimmt mal wieder. Mal wieder vielen DANK und großes Lob an dich !!
  • Ordner erstellen in JavaScript

    javascript
    17
    0 Stimmen
    17 Beiträge
    2k Aufrufe
    S
    ja, hab ich. das gif is vollkommen in Ordnung... eventuell muß ich in Telegram noch einen anderen parameter wählen...?
  • Serienbildaufnahme, alle 2 Sekunden ein Bild

    9
    0 Stimmen
    9 Beiträge
    545 Aufrufe
    S
    so, ich habe es gelöst bekommen... mein Fehler war die Annahme das die Schleife erst nach dem timeout weiter abgearbeitet wird. Die Schleife wird weiter abgearbeitet und die Funktion inner halb des Timeout nach ablauf des Timeout. Also muß sich der Timeout bei jedem Durchlauf der Schleife erhöhen. var screenon = "fullybrowser.0.xxx_xxx_xxx_xxx.Info.isScreenOn"/*isScreenOn*/; var timestamp; on(screenon, function(dp) { if(dp.state.val) { timestamp = formatDate(new Date(), "JJJJ.MM.TT SS:mm:ss"); for(let i=1;i <= 10; ++i) { setTimeout(function() { snapshot(timestamp, i); },i*2000); } var info_text = 'neue Bilder im Archive'; console.log('Snapshot sent'); sendTo('telegram.0', {text: info_text }); } }); function snapshot(timestamp, prefix){ // log(timestamp + "_" + prefix); var request = require('request'); var fs = require('fs'); request.get({url: 'http://192.xxx.xxx.xxx:2323/?cmd=getCamshot&password=xxx, encoding: 'binary'}, function (err, response, body) { fs.writeFile("/home/iobroker/" + timestamp + "_" + prefix + ".jpg", body, 'binary', function(err) { if (err) { console.error(err); } }); }); }
  • Script um JSON in states zu schreiben

    blockly javascript
    5
    1
    0 Stimmen
    5 Beiträge
    991 Aufrufe
    W
    @madjack84 Hab ich auch mal nach gesucht. Leider ist das bewusst blockiert. Du kannst einen Adapter in Javascript erstellen. Der kann sowas ;-) Für Deine Zwecke sollte aber doch auch so ok sein, oder? Auslesen kannst du den Wert ja überall. Geht Dir nur um Kosmetik oder?
  • Import Java Script

    5
    0 Stimmen
    5 Beiträge
    455 Aufrufe
    StabilostickS
    @stephan1827 Was hast Du denn eigentlich vor? Den Neato-Adapter https://forum.iobroker.net/post/3040 kennst Du ja schon. Ich gehe davon aus, dass Du an der Cleaning Map interessiert bis? https://github.com/Pmant/ioBroker.botvac/issues/11 Dann solltest Du berücksichtigen, dass der Adapter auf das folgende Modul aufsetzt: https://github.com/Pmant/node-botvac/issues/9 Und da gibt es seit kurzem die Funktion Robot.prototype.getPersistentMaps. Es tut sich also etwas. Vielleicht solltest Du den Entwickler etwas unterstützen?
  • Telegramm Buttons Farbig

    Verschoben
    5
    0 Stimmen
    5 Beiträge
    793 Aufrufe
    H
    @Xyolyp ok schau mal
  • [gelöst]Pushover Nachricht offene FensterAlarm

    7
    2
    0 Stimmen
    7 Beiträge
    532 Aufrufe
    B
    @paul53 Funktioniert!!!!, super :+1:
  • Fehler bei Telegram "Snapshot" sent

    6
    0 Stimmen
    6 Beiträge
    527 Aufrufe
    N
    @ReverZ der Befehl hat den Fehler gelöscht :) Danke dir . @UMBM und danke dir für die Info, es klappt jetzt .
  • Bild speichern Datum+Zeit Variable

    6
    0 Stimmen
    6 Beiträge
    1k Aufrufe
    L
    @Glasfaser danke schau ich mir an, ist nur für mich mit try&error aufwendig alles umzubasteln.😬 @paul53 Danke wenn ich die Variablen für die Zeit mit runter in die Funktion nehme klappt es so wie ich es wollte. Jetzt schaue ich mir das mit der Zeit noch mal an. Wenn ich jetzt ein Bild einer andern Kamera mit versenden möchte. Ist dieser Aufbau gut oder muss man da im Skript ganz anders ran gehen?
  • Kamera Steuerung (PTZ) mit Bewegungsmelder htp

    45
    0 Stimmen
    45 Beiträge
    4k Aufrufe
    K
    @paul53 ja logisch Sorry mein Fehler. Jetzt passt es. Noch mal vielen vielen DANK...….
  • Script aus altem Tread benutzen

    5
    0 Stimmen
    5 Beiträge
    432 Aufrufe
    T
    @Baerny Ich suche es dir gerne heute raus. Etwas Geduld bitten
  • [Solved] Globale Scripts referenzierten

    4
    0 Stimmen
    4 Beiträge
    319 Aufrufe
    T
    @paul53 OK...mit this geht es aber. Danke.
  • Nutzung Hue dimmer Switch

    1
    0 Stimmen
    1 Beiträge
    167 Aufrufe
    Niemand hat geantwortet
  • USB Sendkey auslesen im Script

    communication javascript
    3
    0 Stimmen
    3 Beiträge
    779 Aufrufe
    P
    Also, serial port klingt schon mal gut. Bisher hatte ich folgende Lösung, aber die ist umständlich. Es gibt das Node-Hid npm, dieses wir auch mitinstalliert mit dem Community-HID-Adapter. Der alte von SOEF scheint nicht mehr zu funktionieren, ist aber noch in der Repo. Könnte man bei Gelegenheit mal ändern. Also, der HID installiert Node-HID mit. Jetzt gibt es die npm Module Node-HID-Stream sowie usb-barcode-transform. Die hochen auf der Vendor ID und wandeln den Buffer dann in Integer. Aber die Lösung ist nicht so dolle, da der User iobroker erst noch Rechte braucht. Also alles sehr umständlich. Serial Port klingt da einfacher und besser. Hast du zufällig ein Beispiel parat? Per Sendkey kommen HEX blöcke rein, die wandeln wir jetzt auch schon in Integer um mit einer Schleife, wollte das aber mal mit dem Readbuffer machen. Scheint wohl so ne Funktion zu sein von Node. sonst, ich könnte dir auch 2 Geräte mal zukommen lassen, wenn du gerade Langeweile hast :-) Könnte mir vorstellen, dass es für einige User interessant sein könnte, da die über USB angeschlossen werden können und kosten nur 6€. Die anderen Varianten kenne ich nur mit Wemos und mqtt z.B. , Aber das auch wieder frickellei. Gruß und Danke Update: So es gibt anscheinend noch einen einfacheren Weg, der auch unter Node 10 usw. läuft. Da der RFID als HID erkannt wird, geht Serialport soweit auch nicht, zumindest was ich gelesen habe. Die Vollständige Anleitung mache ich morgen fertig. Auf die schnelle: usb-barcode-scanner im Javascript mit eintragen, wird soweit auch alles mitinstalliert auch Node-HID. udev Regel anlegen, da der User Iobroker keine Rechte hat, das HID Device zu lesen. Es ist ein Hidraw Devices. sudo nano /etc/udev/rules.d/90-hidraw-permission.rules KERNEL=="hidraw*", SUBSYSTEM=="hidraw", MODE="0664", GROUP="plugdev" User iobroker mit in die Gruppe plugdev. sudo usermod -aG plugdev iobroker Script für USB Device erkennen var hid = require('node-hid'); console.log(JSON.stringify(hid.devices())); Script für ID der RFIDReader auszulesen. let UsbScanner = require('usb-barcode-scanner').UsbScanner; let scanner = new UsbScanner({ vendorId: 65535, productId: 53 }); scanner.on('data', (data) => { console.log(decimalToHex(data)); }); scanner.startScanning(); function decimalToHex(d, padding) { var hex = Number(d).toString(16); padding = typeof (padding) === "undefined" || padding === null ? padding = 2 : padding; while (hex.length < padding) { hex = "0" + hex; } var s = ""; var i = hex.length; while (i>0) { s += hex.substring(i-2,i); i=i-2; } return s; } Gruß
  • [gelöst] Datum mit Uhrzeit in Unixzeit umwandeln

    15
    0 Stimmen
    15 Beiträge
    2k Aufrufe
    O
    @paul53 said in Datum mit Uhrzeit in Unixzeit umwandeln: on(idDatenpunkt, function(dp) { // triggert bei Wertänderung var zeit = dp.state.val; // Abfrage }); Vielen Dank für deine Hilfe!!
  • DWD EXP

    8
    0 Stimmen
    8 Beiträge
    491 Aufrufe
    J
    danke jetzt klappt alles wieder bei mir.

734

Online

32.6k

Benutzer

82.1k

Themen

1.3m

Beiträge