Skip to content

JavaScript

Hilfe für Skripterstellung mit JavaScript

2.5k Topics 48.9k Posts

NEWS

  • Erster Versuch ein JSON zu erzeugen

    35
    0 Votes
    35 Posts
    3k Views
    Chris76eC
    @paul53 Ja, das klappt auch. Danke Jetzt habe ich noch versucht die Dauer zu berrechnen, bekomme auch einen Wert in ms. Wie kann ich das in hh:mm:ss umschreiben? const idTable = '0_userdata.0.JSON.Spülmaschiene'; // ID JSON-Tabelle // const idStatus = 'homeconnect.0.011040388898000963.status.BSH_Common_Status_OperationState'; // const idProg = 'homeconnect.0.011040388898000963.programs.selected.BSH_Common_Root_SelectedProgram'; const idAktiv = 'homeconnect.0.011040388898000963.programs.active.BSH_Common_Root_ActiveProgram'; const idVerbrauch = 'sonoff.0.Spuehlmaschine.ENERGY_Total'; var table = []; if(getState(idTable).val) table = JSON.parse(getState(idTable).val); var obj = {}; var StartVerbrauch = getState(idVerbrauch).val; var startDate = new Date(); var endDate = new Date(); on(idAktiv, function(dp) { if(dp.state.val) { obj = {}; obj.Start = formatDate(new Date(), 'MM.DD.YY hh:mm'); obj.StartUhr = formatDate(new Date(), 'hh:mm'); obj.Programm = dp.common.states[dp.state.val]; StartVerbrauch = getState(idVerbrauch).val; startDate = new Date(); } else { obj.Ende = formatDate(new Date(), 'MM.DD.YY hh:mm'); obj.EndeUhr = formatDate(new Date(), 'hh:mm'); obj.Verbrauch = getState(idVerbrauch).val - StartVerbrauch; endDate = new Date(); obj.Dauer = endDate - startDate, 'hh:mm:ss'; log(table); table.push(obj); if(table.length > 10) table.shift(); setState(idTable, JSON.stringify(table), true); log(table); } });
  • Anfängerfrage [gelöst]

    4
    0 Votes
    4 Posts
    503 Views
    liv-in-skyL
    @uwe1958 ja - schätze die info wird erst bei kompilieren richtig gelesen falls es dich stört: [image: 1665156938495-script-vis1.gif]
  • wget Äquivalent

    3
    0 Votes
    3 Posts
    137 Views
    W
    @oliverio Danke, klingt vielversprechend, werde es mir am WE ansehen.
  • Alle Thermostate eines Raums auslesen

    3
    1
    0 Votes
    3 Posts
    285 Views
    AndreiosA
    @slubitz Was für ein System benutzt Du denn bei den Sensoren und Thermostaten. Ich kann da nur für Homematic sprechen, die ich benutze und da verbinde ich einfach die Fenstersensoren mit den Thermostaten. Das hat den großen Vorteil, dass das per direkter Kommunikation funktioniert, also sogar dann, wenn die CCU, oder in Deinem Fall ioBroker, ausfällt.
  • Variablen Dynmisch steuern (setstate)

    3
    0 Votes
    3 Posts
    191 Views
    S
    @paul53 Das war der Denkfehler. Danke dir.
  • [gelöst] Hilfe bei "crypto" (für neue Switchbot API)

    4
    0 Votes
    4 Posts
    261 Views
    PlasmachefP
    @oliverio Herzlichen Dank :-)
  • Alias Objekt umrechnen und runden

    14
    1
    0 Votes
    14 Posts
    2k Views
    Michael SchmittM
    @paul53 sagte in Alias Objekt umrechnen und runden: @michael-schmitt sagte: in den Objekten stand es richtig Dann muss es an der "Material App" liegen. Hauptsache jetzt zeigt es richtig an. :hand_with_index_and_middle_fingers_crossed: :grinning:
  • REST API Post

    5
    0 Votes
    5 Posts
    460 Views
    OliverIOO
    @jörnw Programmieren ist eine exakte Disziplin. Nix mit ungefähr wird schon funktionieren. Viele müssen das erst lernen Texte genau zu lesen und zu verstehen. Aber um so öfters man das macht um so einfacher fällt einem das
  • Stromzählerscript PV Anlage Finanzamt in Json oder html

    84
    1
    0 Votes
    84 Posts
    11k Views
    A
    @wendy2702 siehe ersten Beitrag von smartboart
  • Selbst geschriebene States lösen Subscriptions nicht aus

    2
    0 Votes
    2 Posts
    121 Views
    Björn JüttnerB
    Okay, Fehler nach langer Suche gefunden. Bei nicht aktiver Heizperiode werden die Trigger nicht verarbeitet...
  • Javascript Warnung

    6
    1
    0 Votes
    6 Posts
    765 Views
    AlCalzoneA
    @rewenode sagte in Javascript Warnung: wenn ich groups[i] in eine Variable packe, wird nicht gemeckert. Ja, weil du dann nicht mehr die loop-Variable zu einem Zeitpunkt referenzierst, der ggf. zu spät ist. Wie gesagt, bei let sch***egal :)
  • Rechnen und runden

    2
    0 Votes
    2 Posts
    215 Views
    bahnuhrB
    @bino schedule oder trigger einfügen.
  • timout Frage

    15
    1
    0 Votes
    15 Posts
    1k Views
    OliverIOO
    @haus-automatisierung nur ne grobe Ahnung durch kurz googlen ermittelt: Sollte es nicht eigentlich throw new Error heißen. da es das Error-Objekt ja noch nicht gibt. d.h. der Fehler liegt in der Typescript-Deklaration das der Editor da keinen Fehler anzeigt? und da es das ur-Error-Objekt ist, greift der catch-Handler nicht sondern es wird der unhandled rejection Handler des prozesses verwendet https://nodejs.org/api/process.html#event-unhandledrejection
  • Script zum registrieren von datenpunkten für History

    1
    0 Votes
    1 Posts
    105 Views
    No one has replied
  • Cubinote Drucker Bring Einkaufsliste drucken

    5
    0 Votes
    5 Posts
    537 Views
    toniT
    @oliverio ja das stimmt, ich dachte es wäre eher leicht, das Alexa Script zu verwenden, leider hab ich zu wenig Ahnung und aus diesem Grund habe ich um Hilfe gebeten. Bitte versteh mich nicht falsch...
  • Anfängerfrage: Variable in ssh exec Befehl

    6
    0 Votes
    6 Posts
    482 Views
    haus-automatisierungH
    @stefan2812 oder mit Template literals (das sind Backticks): ssh.exec(`echo ${COLOR} > /sys/class/leds/mcu0/color`).start();
  • [gelöst] Diverse Daten zwischenspeichern

    6
    0 Votes
    6 Posts
    354 Views
    C
    Vielen herzlichen Dank an @bahnuhr und @paul53. Beide Varianten helfen mir sehr weiter und ich kann mich jetzt daran probieren. Alleine hätte ich das nicht hinbekommen. Danke Danke Danke
  • Gelöst: Anfänger-Frage zu Schleifen

    5
    0 Votes
    5 Posts
    329 Views
    S
    @paul53 Alles klar, sehr lehrreich! Danke, damit ist das dann auch schon gelöst hier.
  • Script täglich ausführen

    9
    0 Votes
    9 Posts
    610 Views
    R
    @kellerassel75 sagte in Script täglich ausführen: Javascript, Blockly, Node Red. Zum Start von Abläufen und Skripten ist Blockly meines Erachtens die intuitivste Art. NodeRed geht auch, klar, aber mir persönlich war das am Anfang etwas zu intransparent (ist aber Geschmacksache). Für jemand der als Developer unterwegs ist, wird Javascript natürlich das Richtige sein. Wie Du richtig erkannt hast, ist es wichtig zu wissen, was man tut und was das Skript tut, sonst hilft es einem genau so lange bis sich was ändert und nichts mehr funktioniert.
  • ID of type boolean or number is not supported.

    24
    1
    0 Votes
    24 Posts
    3k Views
    T
    @paul53 said in ID of type boolean or number is not supported.: @timee An den Trigger dürfen nur IDs übergeben werden - keine Werte! Richtig: [image: 1663012406558-bild_2022-09-12_215325624.png] Danke, werde ich testen. Ist die restliche Abfrage, welche ja eigentlich einer "case" entspricht so in Ordnung, oder könnte man die in Blockly einfacher und kürzer gestallten? thx Timee

732

Online

32.6k

Users

82.3k

Topics

1.3m

Posts