Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. ioBroker Allgemein
  4. Harmony Hub - Sender umschalten

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.6k

Harmony Hub - Sender umschalten

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
32 Beiträge 13 Kommentatoren 6.6k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • P Offline
    P Offline
    Pman
    schrieb am zuletzt editiert von
    #22

    @eXTreMe:

    Super Sache dieses Script!

    Nur kann mir jemand bitte genau das Format für die Zeitverzögerung erklären? Und ist die Zeitangabe in sekunden oder millisekunden?

    [[commandId1,time],commandId2,…]

    so wie es im code-kommentar angegeben ist funktioniert es bei mir nicht. Habe sämtliche kombinationen ausprobiert. Scheinbar mach ich etwas falsch.... `
    "time" ist nicht die Zeit zwischen den Commands, sondern wie lange die Taste gedrückt werden soll, also z.B 1000 für eine Sekunde. Ohne Angabe sind es immer 110ms, weniger kann der Hub wohl eh nicht.

    Um auch Zeiten zwischen den Eingaben zu ermöglichen könnte man das Skript erweitern:

    NICHT GETESTET!

    `/* created States */
    var sequenceStateId = "javascript." + instance + ".HIFI.HubSequence.input";
    createState(sequenceStateId, "");
    
    /* format:
    * [[commandId1,time], time, commandId2,...]
    */
    
    on({id: sequenceStateId, change: "any"}, function (state) {
        if (state.newState.ack === false){
            setState(sequenceStateId, "", true);   
            try{
                var array = JSON.parse(state.newState.val);
                var delay = 0;
                if (Array.isArray(array)){
                    for (var i = 0; i < array.length; i++){
                        if (Array.isArray(array[i])) {
                            if (array[i].length > 1) {
                                setStateDelayed(array[i][0], array[i][1], delay, false);
                                delay += array[i][1];
                            }else{
                                setStateDelayed(array[i][0], 110, delay, false);
                                delay += 110;
                            }
                        } else if (typeof array[i] === 'number') {
                            delay += array[i];
                        } else if (typeof array[i] === 'string'){
                            setStateDelayed(array[i], 110, delay, false);
                            delay += 110;
                        } 
                    }    
                }
            }catch(e) {
                log("invalid json", 'warn');
            }
        }
    });`[/i][/i][/i][/i][/i][/i][/i][/i][/i][/i]
    
    1 Antwort Letzte Antwort
    0
    • E Offline
      E Offline
      eXTreMe
      schrieb am zuletzt editiert von
      #23

      @senger1985:

      Hallo und danke für deine Antwort.

      Ist das soweit richtig?(Siehe Fotos)

      Denn, wenn ich auf den Btn. klicke, passiert leider nichts. `

      Bei Wert sehe ich nicht die eckigen klammern, die sind notwendig!

      ["command1","command2","command3"] usw ist das erforderliche schema!

      1 Antwort Letzte Antwort
      0
      • E Offline
        E Offline
        eXTreMe
        schrieb am zuletzt editiert von
        #24

        @Pman:

        @eXTreMe:

        Super Sache dieses Script!

        Nur kann mir jemand bitte genau das Format für die Zeitverzögerung erklären? Und ist die Zeitangabe in sekunden oder millisekunden?

        [[commandId1,time],commandId2,…]

        so wie es im code-kommentar angegeben ist funktioniert es bei mir nicht. Habe sämtliche kombinationen ausprobiert. Scheinbar mach ich etwas falsch.... `
        "time" ist nicht die Zeit zwischen den Commands, sondern wie lange die Taste gedrückt werden soll, also z.B 1000 für eine Sekunde. Ohne Angabe sind es immer 110ms, weniger kann der Hub wohl eh nicht.

        Um auch Zeiten zwischen den Eingaben zu ermöglichen könnte man das Skript erweitern:

        NICHT GETESTET!

        ! ```
        `/* created States /
        var sequenceStateId = "javascript." + instance + ".HIFI.HubSequence.input";
        createState(sequenceStateId, "");
        ! /
        format:

        • [[commandId1,time], time, commandId2,...]
          */

        ! on({id: sequenceStateId, change: "any"}, function (state) {
        if (state.newState.ack === false){
        setState(sequenceStateId, "", true);
        try{
        var array = JSON.parse(state.newState.val);
        var delay = 0;
        if (Array.isArray(array)){
        for (var i = 0; i < array.length; i++){
        if (Array.isArray(array[i])) {
        if (array[i].length > 1) {
        setStateDelayed(array[i][0], array[i][1], delay, false);
        delay += array[i][1];
        }else{
        setStateDelayed(array[i][0], 110, delay, false);
        delay += 110;
        }
        } else if (typeof array[i] === 'number') {
        delay += array[i];
        } else if (typeof array[i] === 'string'){
        setStateDelayed(array[i], 110, delay, false);
        delay += 110;
        }
        }
        }
        }catch(e) {
        log("invalid json", 'warn');
        }
        }
        });! Habs gestetet und funktioniert! Angabe der zeitverzögerung muss in Millisekunden erfolgen. Danke dir![/i][/i][/i][/i][/i][/i][/i][/i][/i][/i] ```

        1 Antwort Letzte Antwort
        0
        • S Offline
          S Offline
          senger1985
          schrieb am zuletzt editiert von
          #25

          @eXTreMe:

          @senger1985:

          Hallo und danke für deine Antwort.

          Ist das soweit richtig?(Siehe Fotos)

          Denn, wenn ich auf den Btn. klicke, passiert leider nichts. `

          Bei Wert sehe ich nicht die eckigen klammern, die sind notwendig!

          ["command1","command2","command3"] usw ist das erforderliche schema! `

          Hallo eXTreMe,

          ich bekomme es einfach nicht hin.

          Falls es keine Umstände macht, könntest du mir evtl. Screenshots machen, wie es genau auszusehen hat?

          Einen guten Start in die Woche.

          1 Antwort Letzte Antwort
          0
          • E Offline
            E Offline
            eXTreMe
            schrieb am zuletzt editiert von
            #26

            @senger1985:

            @eXTreMe:

            @senger1985:

            Hallo und danke für deine Antwort.

            Ist das soweit richtig?(Siehe Fotos)

            Denn, wenn ich auf den Btn. klicke, passiert leider nichts. `

            Bei Wert sehe ich nicht die eckigen klammern, die sind notwendig!

            ["command1","command2","command3"] usw ist das erforderliche schema! `

            Hallo eXTreMe,

            ich bekomme es einfach nicht hin.

            Falls es keine Umstände macht, könntest du mir evtl. Screenshots machen, wie es genau auszusehen hat?

            Einen guten Start in die Woche. `

            Hier anbei ein Screenshot von den Einstellungen meines VIS Widgets für Pro7 (Sendernummer 16)
            2665_hubsequence.png
            Hier der Wert der in den input Datenpunkt geschrieben wird

            ["harmony.0.Wohnzimmer.activities.Fernsehen","harmony.0.Wohnzimmer.Samsung-Fernseher.Exit","harmony.0.Wohnzimmer.Samsung-Fernseher.InputTv","harmony.0.Wohnzimmer.Samsung-Fernseher.Number1","harmony.0.Wohnzimmer.Samsung-Fernseher.Number6","harmony.0.Wohnzimmer.Samsung-Fernseher.Select"]
            

            im Prinzip reicht auch das hier um den Sender 16 (bei mir Pro7) anzuschalten:

            ["harmony.0.Wohnzimmer.Samsung-Fernseher.Number1","harmony.0.Wohnzimmer.Samsung-Fernseher.Number6","harmony.0.Wohnzimmer.Samsung-Fernseher.Select"]
            

            Datenpunkte musst du halt entsprechend auf deinen Fernseher anpassen.

            1 Antwort Letzte Antwort
            0
            • S Offline
              S Offline
              senger1985
              schrieb am zuletzt editiert von
              #27

              Hallo,

              ich hab jetzt alles versucht.

              Mit[], im Script, ohne und vieles mehr.

              Jetzt bekomme ich folgende Meldung(siehe Bild)
              5296_umschalten.png
              5296_umschalten1.png

              1 Antwort Letzte Antwort
              0
              • E Offline
                E Offline
                eXTreMe
                schrieb am zuletzt editiert von
                #28

                Was schreibst du bei "Wert" rein, kopier mal alles hier rein bitte

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  senger1985
                  schrieb am zuletzt editiert von
                  #29

                  z. B.:

                  ["harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number8"]
                  
                  1 Antwort Letzte Antwort
                  0
                  • E Offline
                    E Offline
                    eXTreMe
                    schrieb am zuletzt editiert von
                    #30

                    hmm ja, so ist das korrekt wenn er die 8 drücken soll.

                    wenn er nach der 8 noch beispielsweise die 5 drücken soll müsste das vom Schema her so aussehen:

                    ["harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number8","harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number5"]
                    

                    Aber das scheinst du ja verstanden zu haben.

                    Funktioniert denn der Command mit nur der "8" (also ohne weitere tastencommands hintendran)?

                    Oder kommt da die gleiche meldung?

                    Falls da auch die meldung kommt: funktioniert es denn wenn du unter Objekte beim Harmony Adapter die Buttons für die Zahlen des Geräts mit der Maus anklickst?

                    Weil die Fehlermeldungen sagen ja "client offline" also "Hub nicht erreichbar".

                    1 Antwort Letzte Antwort
                    0
                    • S Offline
                      S Offline
                      senger1985
                      schrieb am zuletzt editiert von
                      #31

                      Nope, sehe gerade, dass gar nichts über den Adapter funktioniert, nicht mal die Aktionen, im Vis führt er aus.

                      [EDIT] Habe den Adapter neu gestartet und jetzt den erstellten erstellten Btn klicke, sendet er den Befehlsreihenfolge aber gleich 2x.

                      harmony.0	2018-02-20 04:22:25.055	info	hub busy, stateChange delayed: harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number7=110
                      harmony.0	2018-02-20 04:22:25.054	info	hub busy, stateChange delayed: harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number1=110
                      harmony.0	2018-02-20 04:22:25.045	info	hub busy, stateChange delayed: harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number1=110
                      harmony.0	2018-02-20 04:22:25.045	info	hub busy, stateChange delayed: harmony.0.Hub_Wohnzimmer.Sagemcom-DVR.Number7=110
                      
                      

                      Und warum er die letzte Zahl am Anfang senden möchte(obwohl sie nicht geschalten wird), ist mir schleierhaft.

                      Aber es funktioniert jetzt.

                      1 Antwort Letzte Antwort
                      0
                      • H Offline
                        H Offline
                        helfi9999
                        schrieb am zuletzt editiert von
                        #32

                        Hallo zusammen,

                        vielleicht kann einer von euch mir helfen.

                        Habe das Script "Hifi Hub Sequenze" genommen um die States anzulegen.

                        Habe diesen Befehl bei Wert im Widget "Ctrl. Icon State "angegeben ["harmony.0.Wohnzimmer.TV Home.Number1","harmony.0.Wohnzimmer.TV Home.Number0","harmony.0.Wohnzimmer.TV Home.Number7","harmony.0.Wohnzimmer.TV Home.Select"].

                        Es wird aber nur 2stellig geschaltet.

                        Bräuchte es aber 3stellig.

                        Grüße helfi9999

                        Intel NUC mit Iobroker

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        274

                        Online

                        32.4k

                        Benutzer

                        81.4k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        logo
                        • Anmelden

                        • Du hast noch kein Konto? Registrieren

                        • Anmelden oder registrieren, um zu suchen
                        • Erster Beitrag
                          Letzter Beitrag
                        0
                        • Home
                        • Aktuell
                        • Tags
                        • Ungelesen 0
                        • Kategorien
                        • Unreplied
                        • Beliebt
                        • GitHub
                        • Docu
                        • Hilfe