Skip to content

JavaScript

Hilfe für Skripterstellung mit JavaScript

2.5k Themen 48.9k Beiträge

NEWS

  • Javascript Adapter startet nach update häufig nicht mehr

    3
    0 Stimmen
    3 Beiträge
    229 Aufrufe
    crunchipC
    @geko-eder sagte in Javascript Adapter startet nach update häufig nicht mehr: nicht mehr gestartet haben, nachdem ich ein Update gemacht hatte. Ich mache das Nachts automatisch, auf einer Proxmox VM fährst du die VM dabei runter? warum nicht im snapshot mode
  • ical Abfrage ob letzter Abruf erfolgreich war und wann?

    javascript
    9
    0 Stimmen
    9 Beiträge
    472 Aufrufe
    liv-in-skyL
    @cash der vergleich der daten wird auch eine zeit beanspruchen - daher kann man evtl gleich die daten schreiben - bin kein adapter entwickler - daher ?? von welchen true sprichst du ? [image: 1669123971790-image-009.png] @Homoran bei mir werden auch immer beide werte upgedatet [image: 1669124095660-image-010.png]
  • Abfrage, ob Mitglied in Liste

    javascript
    3
    1
    0 Stimmen
    3 Beiträge
    235 Aufrufe
    M
    @paul53 Genau das wars. Danke Dir!
  • Zigbee2Mqtt Converter ME16

    1
    0 Stimmen
    1 Beiträge
    201 Aufrufe
    Niemand hat geantwortet
  • [gelöst] - Learning JS - ein erster Versuch

    31
    1 Stimmen
    31 Beiträge
    2k Aufrufe
    CodierknechtC
    @homoran Achtung Goldwaagenalarm. Virtuell natürlich :joy:
  • Grundlast berechnen

    17
    0 Stimmen
    17 Beiträge
    1k Aufrufe
    paul53P
    @chrille1507 Die Mindestdauer der Abwesenheit hängt von den Gewohnheiten ab, aber man wird nicht alles ausschalten, bevor man nur den Müll raus bringt. Skriptvorschlag: const idAnwesend = 'abc'; const idZaehler = 'xyz'; // kWh const idGrundlast = '0_userdata.0.xyz'; // W var standVerlassen; on(idAnwesend, function(dp) { if(dp.state.val) { // Rückkehr let dauer = (dp.state.lc - dp.oldState.lc) / 3600000; // h if(dauer > 5 && standVerlassen) { let grundlast = 1000 * (getState(idZaehler).val - standVerlassen) / dauer; setState(idGrundlast, Math.round(grundlast), true); } } else standVerlassen = getState(idZaehler).val; });
  • Script funzt nicht mehr

    22
    2
    0 Stimmen
    22 Beiträge
    2k Aufrufe
    CodierknechtC
    @homoran Du hast es nicht anders gewollt: https://forum.iobroker.net/topic/60034/learning-js-ein-erster-versuch
  • Selector - Filter funktioniert nicht bei Enums (gelöst)

    3
    3
    0 Stimmen
    3 Beiträge
    360 Aufrufe
    T
    @paul53 ja grad mal versucht keine Änderung Irgendwie erkennt er den von Hand angelegten Enum nicht…
  • Ordnerüberwachung, die bei Änderung eine Mailnot. sendet

    9
    0 Stimmen
    9 Beiträge
    239 Aufrufe
    AlanVA
    @glasfaser ok werd ich mir anschauen vielen dank für den hinweis
  • Event handling abbrechen bzw. Event verwerfen

    javascript
    3
    0 Stimmen
    3 Beiträge
    187 Aufrufe
    H
    @mickym du hast Recht, insofern ich sofort aus dem Eventhandler raus will. Das Problem jedoch ist, dass der Thermostat-DP aus dem Event trotzdem gesetzt wird. In dem Event-Handler schreibe ich ja quasi einen extra user-Datenpunkt. Ich möchte aber den Thermostat-DP nicht schreiben, wenn das Fenster auf ist. Man könnte das auch anders lösen, aber dann muss ich bei mir leider sehr viel in den Skripten ändern :cold_sweat:
  • delete folder in objects

    9
    0 Stimmen
    9 Beiträge
    449 Aufrufe
    liv-in-skyL
    @paul53 @MCU Danke euch beiden Werde Mal testen
  • Lampe an der Haustüre und Abwesenheit

    13
    0 Stimmen
    13 Beiträge
    431 Aufrufe
    M
    @mickym Danke, Du hast es auf das reduziert, was es ist: Ein Logikproblem... Und ich habe jetzt mehrmals lesen müssen, bis ich es verstanden habe: Der Trigger ist meine Ankunft zuhause. Das ist auch deswegen sinnvoll, weil ich vielleicht auch Dinge triggern will, wenn ich tagsüber ankomme... Das lasse ich mal so sacken, und starte mein konzeptionelles Denken nochmal neu...
  • Energieanzeige (kWh) über HTML Tabelle - vis

    javascript template
    696
    18
    8 Stimmen
    696 Beiträge
    166k Aufrufe
    liv-in-skyL
    @Homoran könntest du den thread bitte schliessen - Das Script wird nicht mehr von mir supportet - geht das ?
  • [gelöst] Result in Widget bekommen

    6
    0 Stimmen
    6 Beiträge
    302 Aufrufe
    CodierknechtC
    @spinne1000 Dann markiere den Thread bitte als "gelöst"
  • [gelöst] Massenbearbeitung Objektnamen

    3
    0 Stimmen
    3 Beiträge
    329 Aufrufe
    TimoGoerlichT
    @liv-in-sky Funktioniert. Ich danke dir.
  • unklar Fehlermeldung "Error by canceling scheduled job"

    javascript
    10
    0 Stimmen
    10 Beiträge
    307 Aufrufe
    haus-automatisierungH
    @homoran sagte in unklar Fehlermeldung "Error by canceling scheduled job": einen Link bitte! https://github.com/ioBroker/ioBroker.javascript/issues/1102
  • [Help] Skript Wassersensor auswerten

    12
    0 Stimmen
    12 Beiträge
    822 Aufrufe
    D
    @paul53 Hallo Paul, wie kann ich beim Starten des Skriptes einmalig prüfen, ob ein Rauchmelder ausgelöst hat. Aktuell bekomme ich keine Meldung wenn ich das Skript nach dem der Rauchmelder ausgelöst hat, starte. Danke und Gruß createState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlert'/*smokeAlert*/, false, {type: 'boolean', name: 'Feueralarm'}); createState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlertRoom'/*smokeAlertRoom*/, '', {type: 'string', name: 'Raum Feueralarm'}); var timer = null; var room = ''; var idEcho = "alexa2.0.Echo-Devices.G2A1A605204600ED"; var volume = getState(idEcho+".Player.volume"/*volume*/).val; function alarmOnAlexa() { setState(idEcho+".Commands.speak"/*speak*/,'Achtung! Im ' + room + ' wurde Rauch festgestellt!'); timer = setTimeout(alarmOnAlexa, 6000); } function alexa2controll(){ setState(idEcho+".Player.controlPause"/*pause*/,true,false); setState(idEcho+".Player.volume"/*volume*/,100); alarmOnAlexa(); } function nachrichtOnWhatsApp(obj){ if(getState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlert'/*smokeAlert*/).val) { WhatsAppBot(2, String ('*!!Achtung!!*<br>' + (obj.channelName ? obj.channelName :"")) + '<br>meldet Rauch/Feuer <br>im ' + room + '!<br>*Bitte sofort überprüfen!!!!*'); } } on(Array.prototype.slice.apply($("state[id=*](functions=check_smoke)")), function(dp) { if(dp.state.val) { room = getObject(dp.id, 'rooms').enumNames; for(let i = 0; i < room.length; i++) { if(typeof room[i] == 'object') room[i] = room[i].de; }; room = room.join(', '); setState('zigbee.0.0015bc0031015362.alarm'/*Manual Start of Siren - Esszimmer OG*/, true, true); setState('zigbee.0.0015bc0031014470.alarm'/*Manual Start of Siren - Treppenhaus OG*/, true, true); setState('zigbee.0.0015bc0031013f40.alarm'/*Manual Start of Siren - Arbeitszimmer EG*/, true, true); setState('zigbee.0.0015bc0031013dc7.alarm'/*Manual Start of Siren - Esszimmer EG*/, true, true); setState('zigbee.0.0015bc003101495b.alarm'/*Manual Start of Siren - Technikraum UG*/, true, true); setState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlert'/*smokeAlert*/, true, true); setState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlertRoom'/*smokeAlertRoom*/, room, true); alexa2controll(); nachrichtOnWhatsApp(dp); } else { clearTimeout(timer); setState('zigbee.0.0015bc0031015362.alarm'/*Manual Start of Siren - Esszimmer OG*/, false, true); setState('zigbee.0.0015bc0031014470.alarm'/*Manual Start of Siren - Treppenhaus OG*/, false, true); setState('zigbee.0.0015bc0031013f40.alarm'/*Manual Start of Siren - Arbeitszimmer EG*/, false, true); setState('zigbee.0.0015bc0031013dc7.alarm'/*Manual Start of Siren - Esszimmer EG*/, false, true); setState('zigbee.0.0015bc003101495b.alarm'/*Manual Start of Siren - Technikraum UG*/, false, true); setState('0_userdata.0.Datenpunkte.Rauchmelder.smokeAlert'/*smokeAlert*/, false, true); setState(idEcho+".Player.controlPause"/*pause*/,false,true); setState(idEcho+".Player.volume"/*volume*/,30); } });
  • SG-Reay anstoßen

    1
    0 Stimmen
    1 Beiträge
    148 Aufrufe
    Niemand hat geantwortet
  • HTML Tabelle für TrashSchedule Adapter

    javascript template
    135
    5
    4 Stimmen
    135 Beiträge
    21k Aufrufe
    liv-in-skyL
    @novregen also ehrlich - warum macht man ein neues skript ? damit man dann von jedem einzelnen das skript wieder nachprogrammiert hast du wenigsten mal versucht, das neue skript anzugleichen die bilder zu definieren gerade und ungerade zeilenfarbe eingeben überschriften der spalten auf weiß setzen schriftfarbe schwarz ich beantworte dir gerne fragen zum setting
  • Script starten nach start der Javascript Instanz

    4
    0 Stimmen
    4 Beiträge
    539 Aufrufe
    H
    @paul53 Hallo Paul, vielen Dank, ich werde dies in dieser Form machen. Ich hatte mir gestern auch noch die Funktion ListSchedules angesehen um die laufenden Schedules auszuwerten und dann zu starten wenn der Schedule für den Tag nicht gesetzt ist. Mit deiner Lösung ist es aber deutlich effizienter.

777

Online

32.6k

Benutzer

82.2k

Themen

1.3m

Beiträge