Skip to content

JavaScript

Hilfe für Skripterstellung mit JavaScript

2.5k Themen 48.7k Beiträge

NEWS

  • Absolute Feuche Berechnung

    9
    1
    0 Stimmen
    9 Beiträge
    914 Aufrufe
    P
    @paul53 Alias ist mir hier zu aufwendig. Wann ist mal ein Homematic Temp. Sensor defekt. Hatte noch keinen! Nochmals besten Dank für das Script, paul
  • [gelöst] - Programm lässt JS komplett aussteigen

    10
    0 Stimmen
    10 Beiträge
    474 Aufrufe
    wendy2702W
    @mwolle Erster Beitrag und dann die 3 Punkte rechts unten im Beitrag.
  • setState als Schrittkette ausführen

    3
    0 Stimmen
    3 Beiträge
    252 Aufrufe
    SchmakusS
    @ente34 Ich stelle keinen Unterschied fest. Egal ob SetState oder setStateAsync Hab nun folgendes Code und laut Log wird alles nacheinander abgearbeitet so wie ich es gerne hätte. Gibt es vielleicht eine elegantere Lösung? if(this.pathColortemp) { await setState(this.pathTransistion, this.defaultTransition) console.warn('1: Set Transition') } if(this.pathColortemp) { await setState(this.pathColortemp, this.defaultColorTemp) console.warn('2: Set Colortemp') } if(this.pathColor) { await setState(this.pathColor, this.defaultColor) console.warn('3: Set Color') } if(this.pathControl) { await setState(this.pathControl, (this.pathControlType == 'number') ? this.defaultLevel : true) console.warn('4: Set Control') setState(this.pathLastValue, (this.pathControlType == 'number') ? this.defaultLevel : true, true); console.warn('5: Set Light State') setState(this.pathLightState, true, true); console.warn('6: Set Group Light State') if (extLogging) console.log(`${scriptname}: Licht wird eingeschaltet: ${this.name} // Pfad: ${this.pathControl} // Wert: ${(this.pathControlType == 'number') ? this.defaultLevel : true}`); }
  • Skript wird ausgeführt auch wenn deaktiviert.

    2
    0 Stimmen
    2 Beiträge
    218 Aufrufe
    paul53P
    @dominic-reber sagte: Eines der pausierten wir aber trotzdem ausgeführt. Hab das betreffende skript auch abgeändert aber es sendet mir immer noch push-nachrichten vom alten skript... Nicht das Skript wird weiter ausgeführt, sondern der Sende-Puffer wird weiter abgearbeitet. Hast Du ein Skript in der Gruppe "global". Das würde im Kontext der anderen (aktiven) Skripte ausgeführt.
  • Fenster Script: Liste der offenen Fenster

    56
    0 Stimmen
    56 Beiträge
    6k Aufrufe
    paul53P
    @nobody28 sagte: Unterschied zwischen Kanal und Datenpunkt Ein Datenpunkt ist ein Objekt vom Typ "state" und hat Zustände/Werte (rechts in Deinem Bild). Ein Kanal ist ein Objekt vom Typ "channel" und hat keine Zustände.
  • setState nur wenn Wert noch nicht gesetzt ist?

    12
    0 Stimmen
    12 Beiträge
    857 Aufrufe
    ?
    @oliverio said in setState nur wenn Wert noch nicht gesetzt ist?: da die autoren hier nicht reagiert haben, kannst du ja mal bei github einen issue einstellen und die frage nochmal dort stellen https://github.com/ioBroker/ioBroker.zigbee/issues ich habe gesehen, das da ganz fleißig dran gearbeitet wird und fast täglich Änderungen in den adapter eingearbeitet werden. Ja, nur das ich kein Zigbee verwende sondern Hue und HM. Aber werde es nochmal beobachten. Und wenn es nicht nötig ist, nehme ich die vorherige Abfrage, ob schon true oder false gesetzt ist, einfach raus. Lg
  • Go e-charger

    javascript
    5
    2 Stimmen
    5 Beiträge
    24k Aufrufe
    W
    @homoran Jo, vertippt. Habs editiert. Danke. Gruss, Jürgen
  • Trigger auf Aktualisierung und nicht Änderung

    javascript
    3
    0 Stimmen
    3 Beiträge
    261 Aufrufe
    J
    @paul53 So einfach kann es sein. Vielen Dank.
  • [Gelöst] Fensterzähler mit Aufzählungen

    19
    0 Stimmen
    19 Beiträge
    1k Aufrufe
    Masterg 23M
    Mein Problem ist, die richtige Zuweisung damit die Anzeigen korrekt dargestellt werden. Aber wenn ich es mir so anschaue, dann ist es ziemlich komplex. Vielleicht sollte ich erstmal kleinere Brötchen backen. [image: 1613654166116-bildschirmfoto-2021-02-18-um-14.15.51-resized.png] EDIT: Die Fensteranzeige habe ich hinbekommen, jedoch die kleine Symbole unten (Ausrufezeichen oder Haken) noch nicht. Aber ich denke das kriege ich auch hin. Ich stelle es hier auf gelöst. Vielen Dank :) [image: 1613654910319-bildschirmfoto-2021-02-18-um-14.27.05-resized.png]
  • Eigenes Logging in Datenpunkt wird manchmal überschreiben

    javascript
    2
    1
    0 Stimmen
    2 Beiträge
    246 Aufrufe
    D
    @manfred-outlaw Hallo Manfred, ich habe genau das gleiche Problem. Wenn Trigger in unterschiedlichen Skripten den gleichen Auslöser haben, so wird immer nur eine Meldung im Log erzeugt. Da alle meine Skripte in Blockly sind, suche ich auch eine Lösung die ich in Blockly implementieren kann. Hast du für dich eine Lösung gefunden? Grüße Sascha
  • Javaskript Instanz stürzt bei Skript ab [gelöst]

    Verschoben
    5
    2
    0 Stimmen
    5 Beiträge
    286 Aufrufe
    paul53P
    @dj-rico sagte: Kann dann hier wohl geschlossen werden Das musst Du schon selbst machen, indem Du das Thema in der Überschrift des ersten Beitrags als [gelöst] markierst.
  • Vergleich von Objekten in Arrays

    12
    0 Stimmen
    12 Beiträge
    718 Aufrufe
    SchmakusS
    Vielen Dank euch allen! Viele Wege führen nach Rom. Aber das von @OliverIO gefällt mir sehr gut. Schön kompaktes Coding. @paul53, deine Schleifen sind gut lesbar. Danke.
  • Werte von "Funktionen" abfragen und Datenpunkt setzen

    javascript
    7
    0 Stimmen
    7 Beiträge
    646 Aufrufe
    J
    @ja-rod sagte in Werte von "Funktionen" abfragen und Datenpunkt setzen: @fastfoot Jetzt wechselt er auf "true". Muss nur schauen ob er das richtige anzeigt. Danke Vielen Dank. Passt alles.
  • SQL Mittelwert

    9
    0 Stimmen
    9 Beiträge
    763 Aufrufe
    H
    @hanss said in SQL Mittelwert: Weist Du, wie diese Methode heißt? Das nennt sich arithmetisches Mittel.
  • SQL Modul wird nicht erkannt

    6
    0 Stimmen
    6 Beiträge
    261 Aufrufe
    Marlon GemmerM
    @unclesam Vielen Dank für den Hinweis. Ich hatte damals beim Adapter einfach nicht genau gelesen, weil in der Kurbeschreibung im ioBroker nur steht, dass man damit Datenbanken loggen kann. Mit dem Adapter geht es jetzt. Per Code hat es weiterhin nicht funktioniert. Connect hat auch nichts gebracht. Das "mysql" Modul wurde einfach nicht gefunden. Naja. Jetzt geht alles wie gewünscht. Vielen Dank
  • Tintenstand für Canon TR8550 (als Netzwerkdrucker)

    monitoring javascript
    2
    1 Stimmen
    2 Beiträge
    751 Aufrufe
    H
    @bazidibavaria Dein Script ist genau das was ich suche. Habe es mal getestet (mit IP meines Druckers). Es werden Datenpunkte angelegt aber keine füllstände eingetragen. Kannst du mir evtl. helfen? Wenn ich die Adresse bei mir im Browser eingebe, bekomme ich diesen Code var g_Administrator = 0; var inktank=[]; inktank[0]=[4,8,0]; inktank[1]=[0,8,0]; inktank[2]=[2,0,0]; inktank[3]=[3,0,0]; var g_help_url = 'http://rs.ciggws.net/rd.cgi?FNC=RUI_HELP&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;DEV=MB5100+series&amp;SFV=1.0&amp;CTV=1.0&amp;LNG=DE&amp;CTN=SDP%2Fsdp-os.html'; var g_eid_url = 'dummy'; var g_ink_url = 'http://rs.ciggws.net/rd.cgi?FNC=RUI_INK&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;DEV=MB5100+series&amp;LNG=DE&amp;HRI=D'; var g_sup_url = 'http://canon.com/support/'; var g_err_url = 'http://rs.ciggws.net/rd.cgi?FNC=RUI_ERR&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;DEV=MB5100+series&amp;LNG=DE&amp;PDR=4&amp;ERR=NO'; var g_pass_url = 'http://rs.ciggws.net/rd.cgi?FNC=RUI_PASS&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;DEV=MB5100+series&amp;LNG=DE&amp;CTN=PW%2Fpw_certifications.html'; var g_cert_url = 'http://rs.ciggws.net/rd.cgi?FNC=RUI_CERT&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;DEV=MB5100+series&amp;LNG=DE&amp;CTN=PW%2Fpw_security.html'; var g_signal_strength = '0'; var g_link_quality = '0'; var g_err_msg_id = 'HTTP_ERR_DISP_IDLE'; var g_bst_st = '0'; var g_battery_lv = 'AC_ON'; var g_prndoc = '0'; var g_firm_up_date=0; var g_micro_ap=0; var g_wifi_direct=0; var g_nfc_mode=0; var g_ipp_over_usb=0; var g_network_mode='NORMAL'; var g_fax_model=1; var g_scanner=1; var g_adf=2; var g_mobile=0; var g_scanto_folder=1; var g_lan_if = 'LAN_IF_WIRED'; var g_password_enable=0; var g_logon_screen = '0'; var g_cartridge_rest = [-1,-1]; var g_ink_empty = '-1'; wenn ich nur die IP eingebe erscheint diese Seite [image: 1613396010833-druckerindex.jpg] mit diesem Quellcode <!DOCTYPE html> <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <meta http-equiv="Expires" content="0"> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> <meta http-equiv="X-UA-Compatible" content="IE=edge" > <link rel="stylesheet" type="text/css" href="rui/CSS/common.css?ver=1.070-1790-101"> <link rel="stylesheet" type="text/css" href="rui/CSS/other.css?ver=1.070-1790-101"> <script type="text/javascript" src="http://me.kis.v2.scr.kaspersky-labs.com/FD126C42-EBFA-4E12-B309-BB3FDD723AC1/main.js?attr=8thD_SsniDpSpjKd1_86rnzkWVo2AjBAnCXQRG4MogbfGPVTJLGgz9CupPrHdDMm" charset="UTF-8"></script><style type="text/css"></style> <title></title> <script src="LANG/messID.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="JS_MDL/model.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS/utility.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS_TBL/table_error.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS/event.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS/framework.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS/view.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script src="rui/JS/top.js?ver=1.070-1790-101" type="text/javascript" charset="UTF-8"></script> <script language="javascript"></script> </head> <body onSelectStart="return false;"> <div class="UserView Lcd_large" id="userviewArea"> <div class="ReturnAppBar" id="returnAppBar"> <a class="LinkArea" href="#" id="returnApp"> <div class="Text" id="returnAppText">12345</div> </a> </div> <div class="HorizontalContainer" id="TopMenu"> <div class="MenuPage"> <div class="ContentRelative"> <div class="dummy" id="replaceTop"></div> </div> </div> <div class="ContentPage"> <div class="h10Container" id="h10Container" style="width:300%"> <div class="Page_for_h10"> <div class="ContentRelative" id="stack1"><div class="dummy" id="replaceDebug1"></div></div> </div> <div class="Page_for_h10"> <div class="ContentRelative" id="stack2"><div class="dummy" id="replaceDebug2"></div></div> </div> <div class="Page_for_h10"> <div class="ContentRelative" id="stack3"><div class="dummy" id="replaceDebug3"></div></div> </div> </div> </div> </div> </div> <div class="Sample" id="SampleArea"> <div class="PRINF" id="samplePRINF"> <div class="Title"> <div class="Text">12345</div> <div class="EventTarget" id="EVT_PRINF_BBTN"> <div class="BwdBtn"> <div class="Text">12345</div> </div> </div> </div> <div class="TitleEnd"></div> <div class="EventTarget" id="EVT_PRINF_UPDW"> <div class="ContentArea" id="prinf_content_class"> <div class="ErrMsgArea" id="PrintInfo_MsgArea"> <div class="Text" id="PrintInfo_MsgText">12345</div> <div class="LinkButtonArea Err"> <div class="LinkButton" id="lnkbtn_Detail">12345</div> </div> </div> <div class="InkLevel"> <div class="Text">12345</div> </div> <div class="InkInfo"> <div class="InkAreaLine" id="ink_area_line1"> <div class="InkPattern" id="inktank0"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank1"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank2"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank3"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank4"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank5"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> </div> <div class="InkAreaLine" id="ink_area_line2"> <div class="InkPattern" id="inktank6"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank7"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank8"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank9"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank10"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> <div class="InkPattern" id="inktank11"> <div class="InkMess"></div> <div class="InkArea"><div class="InkBar"></div></div> </div> </div> </div> <div class="LinkButtonArea" id="InkLink"> <a class="LinkButton" id="lnkbtn_InkModel" target="_blank">12345</a><a class="LinkButton" id="lnkbtn_BuyInk" target="_blank">12345</a> </div> <div class="InfoArea" id="infoArea"> <div class="InfoItem" id="InfoItem00"> <div class="Text">12345</div> <div class="Level"> <div class="Text" id="ItemText00">12345</div> </div> <div class="InfoGraph"> <div class="GraphArea" id="gauge00"><div class="Graph" id="indi00"></div></div> </div> </div> <div class="InfoItem" id="InfoItem01"> <div class="Text">12345</div> <div class="Level"> <div class="Text" id="ItemText01">12345</div> </div> <div class="InfoGraph"> <div class="GraphArea" id="gauge01"><div class="Graph" id="indi01"></div></div> </div> </div> </div> <div class="BatteryLevelArea" id="batteryLevelArea"> <div class="BatteryLevelPattern" id="battery"> <div class="Text" id="ErrMes">12345</div> <div class="BatteryGraphArea" id="batteryGraph"> <div class="BatteryGraph"><div class="Graph" id="Low"></div></div> </div> </div> </div> <div class="MaintenanceCartridgeArea" id="maintenanceCartridgeArea"> <div class="CartridgeLevelPattern" id="cartridge"> <div class="Text" id="cartridgeMes">12345</div> <div class="CartridgeMess" id="cartridgeMess"></div> <div class="InfoGraph"> <div class="CartridgeGraph"><div class="InkBar" id="cartridgeGraph"></div></div> </div> </div> </div> <div class="ModeBtnArea"><a class="FtrButton" id="modeSelectForSmall"><div class="Text">12345</div></a></div> <div class="LinkButtonArea"><a class="LinkButton" id="webManualForSmall" target="_blank" ><div class="Text">12345</div></a></div> <div class="CertBtnArea"><a class="CertLinkButton" id="certBtn" ><div class="Text">12345</div></a></div> </div> </div> <div id="pageendPRINF"></div> </div> <div class="DTL" id="sampleDTL"> <div class="Title"> <div class="Text">12345</div> <div class="EventTarget" id="EVT_DTL_BBTN"> <div class="BwdBtn"> <div class="Text">12345</div> </div> </div> </div> <div class="TitleEnd"></div> <div class="ContentArea" id="EVT_DTL_UPDW"> <div class="ErrTitle" id="ErrTitle"> <div class="Text" id ="ErrTitleText">12345</div> </div> <div class="ErrMsg"> <div class="Text" id ="ErrMsgText">12345</div> </div> <div class="LinkButtonArea"> <a class="LinkButton" id="lnkbtn_ErrInf" target="_blank" ></a> <a class="LinkButton" id="lnkbtn_Support" target="_blank" ></a> </div> </div> <div id="pageendDTL"></div> </div> <div class="MODE" id="sampleMODE"> <div class="Title"> <div class="Text">12345</div> <div class="EventTarget" id="EVT_MODE_BBTN"> <div class="BwdBtn"> <div class="Text">12345</div> </div> </div> </div> <div class="TitleEnd"></div> <div class="EventTarget" id="EVT_MODE_UPDW"> <div class="ContentArea"> <div class="MODE_Item" id="MODE_Item"> <div class="Text" id="MODE_ItemText">12345</div> </div> <div class="ModeMessArea"> <div class="Text" id="ModeMessArea">12345</div> </div> <div class="RadioDetailButton" id="MODE_RadioButton"> <div class="ModeSelect" id="ModeSet00"> <input type="radio" name="ModeSelect" id="ModeRadio00" checked="true"> <label for="ModeRadio00" class="Text">12345</label> </div> <div class="ModeSelect" id="ModeSet01"> <input type="radio" name="ModeSelect" id="ModeRadio01"> <label for="ModeRadio01" class="Text">12345</label> </div> </div> <div class="ModeBtnArea"> <a class="FtrButton" id="logonBtn" > <div class="Text">12345</div> </a> </div> <div class="LinkButtonArea"> <a class="LinkButton" id="TopWebManual" target="_blank" > <div class="Text">12345</div> </a> </div> <div class="CertBtnArea"> <a class="CertLinkButton" id="certBtn" > <div class="Text">12345</div> </a> </div> <div id="pageendMODE"></div> </div> </div> </div> <div class="MES_LINK" id="sampleMES_LINK"> <div class="Title"> <div class="Text">12345</div> <div class="EventTarget" id="EVT_MES_LINK_BBTN"> <div class="BwdBtn"> <div class="Text">12345</div> </div> </div> </div> <div class="TitleEnd"></div> <div class="EventTarget" id="EVT_MES_LINK_UPDW"> <div class="ContentArea"> <div class="MesItem"> <div class="Text" id="MesItemText">12345</div> </div> </div> <div class="SelectArea"> <div class="EventTarget"> <div class="SelectButton" id="EVT_MES_LINK_BTN"> <div class="Text">12345</div> </div> <a class="CertLinkButton" id="EVT_MES_LINK_BTN_LINK" href="javascript:void(0);" target="_blank" style="display:none;"> <div class="Text">12345</div> </a> </div> </div> <div id="pageendMES_LINK"></div> </div> <div class="Footer" id="FooterBar"> <div class="EventTarget"> <div class="FtrButton" id="EVT_MES_LINK_FTRBTN"> <div class="Text">12345</div> </div> </div> </div> </div> </div> <div class="ScreenGarage" id="GarageArea"> </div> <input type="hidden" id="EID" value="http://rs.ciggws.net/rd.cgi?FNC=RUI_EID2&amp;RES=4&amp;DEV=MB5100+series&amp;CNM_SEP=0&amp;mdl=MB5100+series&amp;low=0&amp;out=0&amp;ac=0&amp;srcmdl=6&amp;resid=Other&amp;hriid=D"> </body> </html> Die Tintenstände auf der Seite sind die aktuellen, werden aber von dem Script leider nicht eingetragen. Kannst du mir evtl. helfen bzw denkanstöße geben woran das liegt? Gruß HappyUser20
  • Anfänger Fragen - Log wird geflutet und Fehlererkennung

    11
    0 Stimmen
    11 Beiträge
    861 Aufrufe
    paul53P
    @olis sagte: Einziger "Nachteil", es wird auch ausgeführt, wenn alle 60 Sekunden der Adapter neue Werte einliest - ohne Änderung. on("i2c.0.0x76.temperature", function(dp) { triggert nur, wenn sich der Temperaturwert ändert.
  • 2 Punkt Regler

    javascript heating
    6
    0 Stimmen
    6 Beiträge
    549 Aufrufe
    M
    @paul53 said in 2 Punkt Regler: on(hsid, function(dp) { hs = dp.state.val; if(hs == 1 || hs == 3) hys(); else setState(yid, false); }); DANKE !! So hatte ich es fast in der Function nur das ich die 2 Bedingung nicht in Klammern gesetzt habe, was mir aber jetzt logisch erscheint. Das ich denn unten aber nochmal abfeuern muss, da bin ich nicht drauf gekommen. Aber auch klar. Danke schön.
  • Beispiel Script Bahnhofsuhr läuft leider nicht

    6
    0 Stimmen
    6 Beiträge
    371 Aufrufe
    AlCalzoneA
    @heinzie Tut mir Leid, das weiß ich leider nicht. Geht sicher irgendwo in VIS, aber das nutze ich nicht.
  • EchoShow8 (oder vis) fernsteuern - youtube,streamplayer

    template
    14
    4
    1 Stimmen
    14 Beiträge
    911 Aufrufe
    liv-in-skyL
    @mcu das funktioniert nicht - wollte ich auch haben - daher das umgedrehte - ich zeige meine videos auf dem echo show an und nicht mehr am pc - somit kann ich reagieren, wenn z.b. das telefon klingelt und die videos unterbrechen. das ganze funktioniert nur, weil ich die yt-player api im echo show habe (über die widgets). diese kann ich bedienen. auf dem pc läuft es im browser. mein echo show steht neben dem schreibtisch. daher sehe ich dort die videos. da ich am pc keine erkennung habe , ob irgendwo im browser youtube läuft, habe ich noch einen zweiten teil - ich schaue youtube nur über vlc an - vlc kann ich über batch script auf dem pc erkennen und dann andere geräte steuern - bzw vlc stoppen, wenn ein anruf kommt - so kann ich auch die werbung von youtube umgehen https://forum.iobroker.net/topic/41988/offtopic-wenn-die-werbung-auf-youtube-nervt

816

Online

32.6k

Benutzer

81.9k

Themen

1.3m

Beiträge