Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. [Vorlage] Denon HEOS Script

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [Vorlage] Denon HEOS Script

    This topic has been deleted. Only users with topic management privileges can see it.
    • Hollywood82
      Hollywood82 last edited by

      Hallo , vielleicht kann mir einer bei dem Heos Script helfen. Ich nutze iobroker auf nem Raspberry pi3 und habe jetzt das Script aus dem letzten Spoiler hinzugefügt. Er zeigt mir immer einen Error an, wenn er zu der IP(vom Raspberry) und Port 1255 eine Verbindung aufbauen will. Bin noch recht neu hier...

       

      javascript.0 2019-04-30 20:34:31.357 info script.js.common.Heos: [Heos] disconnected from HEOS
      javascript.0 2019-04-30 20:34:31.355 info script.js.common.Heos: [Heos] disconnecting from HEOS ...
      javascript.0 2019-04-30 20:34:31.354 error script.js.common.Heos: [Heos] Error: connect ECONNREFUSED 192.168.2.38:1255
      javascript.0 2019-04-30 20:34:31.334 info script.js.common.Heos: [Heos] connecting to 192.168.2.38 ...
      javascript.0 2019-04-30 20:34:30.880 info script.js.common.Heos: registered 1 subscription and 0 schedules
      javascript.0 2019-04-30 20:34:30.607 info Start javascript script.js.common.Heos

      B 1 Reply Last reply Reply Quote 0
      • B
        Brati @Hollywood82 last edited by Brati

        @Hollywood82

        Ist bei dir die JS Instanz richtig konfiguriert?

        Zwischenablage01.jpg

        Dort muss node-ssdp eingetragen werden...

        Grüße

        Brati

        1 Reply Last reply Reply Quote 0
        • Hollywood82
          Hollywood82 last edited by

          Danke @Brati
          Probiere ich heute Abend aus.

          VG

          1 Reply Last reply Reply Quote 0
          • Hollywood82
            Hollywood82 last edited by

            Leider keine Änderung, versucht sich immer noch mit dem Raspberry zu verbinden und nicht im Netzwerk nach den HEOS Geräten zu suchen...

            1 Reply Last reply Reply Quote 0
            • B
              Brati last edited by

              @Hollywood82

              Ich glaube der Fehler ist, dass das Script bei dir unter "common" liegt. Lege es mal in das Hauptverzeichnis (also aus common löschen) oder erstelle dir selber einen Ordner...

              Grüße

              Brati

              1 Reply Last reply Reply Quote 0
              • Hollywood82
                Hollywood82 last edited by

                Leider keine Änderung. Ich werde mal auf ner anderen sd-Karte eine neue ioBroker Instanz installieren und dann schauen wir mal ob es läuft.

                1 Reply Last reply Reply Quote 0
                • Hollywood82
                  Hollywood82 last edited by

                  Sooo,
                  ich habe eine neue Instanz aufgesetzt und es geht auch mit einem neuen ioBroker nicht...mein Latein ist am Ende...

                  1 Reply Last reply Reply Quote 0
                  • M
                    Matten last edited by

                    Hallo, ich habe eben das Script ohne Probleme zum Laufen gebracht. Vielen Dank dafür!
                    Wo kann ich den die Favoriten bzw. die Musikquellen finden (Spotify, eigene Bibliothek?

                    1 Reply Last reply Reply Quote 0
                    • S
                      schubi82 last edited by

                      Nachdem ich meine Anlage eingeschaltet habe, habe ich nun auch die Favoriten. Wie kann ich diese den jetzt z.B. im Szenenadapter auswählen? Im Objekt gibt es ja keinen Button...

                      1 Reply Last reply Reply Quote 0
                      • Uhula
                        Uhula last edited by Uhula

                        Script im 1.Beitrag korrigiert und erweitert, man kann nun auch Player gruppieren / degruppieren. Dazu einfach die State-Variable javascript.?.heos.command füllen.

                        Bsp1: Gruppieren
                        Nutzung eines "jqui-ctrl-Icon State" und setzen der Eigenschaften

                        Object-ID = javascript.?.heos.command
                        Wert = group/set_group?pid={javascript.?.heos.192_168_2_46.pid},{javascript.?.heos.192_168_2_43.pid}
                        

                        Der erstgenannte Player wird der Hauptplayer

                        Bsp2: Gruppierung aufheben
                        Nutzung eines "jqui-ctrl-Icon State" und setzen der Eigenschaften

                        Object-ID = javascript.?.heos.command
                        Wert = group/set_group?pid={javascript.?.heos.192_168_2_46.pid}
                        

                        Also nur den Hauptplayer angeben.

                        Hinweis:
                        ? = eure Javascript-Instanz (0,1,...)
                        192_168_2_46 und 192_168_2_43 : die Werte eurer HEOS States aus den Objekten

                        Ich nutze immer die binding-Fähigkeit vom ioBroker, zu erkennen an den {}, ihr könnt aber stattdessen auch direkt den Inhalt des States (javascript.?.heos.192_168_2_46.pid) selbst eintragen.

                        Viel Spaß

                        B 1 Reply Last reply Reply Quote 0
                        • B
                          Brati @Uhula last edited by Brati

                          EDIT

                          Einmal alles neu gestartet und System läuft wieder.

                          Grüße

                          Brati

                          1 Reply Last reply Reply Quote 0
                          • C
                            chrisblu last edited by

                            Hallo Zusammen,

                            @Uhula: vielen Dank auch von mir für die tolle Umsetzung und das Javascript. Ich verwende es derzeit um das Radio im Bad mit einem Zigbee-Taster an- und auszuschalten. Funktioniert prima,

                            Allerdings kann ich die Presets nicht aufrufen/spielen.
                            Sonst läuft alles. Play, Pause, Mute, Play Url alles ok...

                            Die Boxen werden erkannt, es wird für jede Box ein Objektverzeichnis mit command-Befehl angelegt. Die Anmeldung am Konto klappt. Ich habe ein gefüllte Preset-Liste und meine Presets werden mir auch in dem Widget angezeigt.
                            Versuche ich es aber mit "play_preset&preset=x (klar habe ich für x eine existierende Zahl eingesetzt), passiert nichts.
                            Mehrmals neu gestartet habe ich...

                            Vielleicht weiß irgend jemand Abhilfe.

                            Vielen Dank und viele Grüße,
                            Christian

                            B 1 Reply Last reply Reply Quote 0
                            • B
                              Brati @chrisblu last edited by Brati

                              @chrisblu

                              Hallo,

                              welches Widget nimmst du dafür?

                              Mit dem Widget: jqui ctrl Icon state

                              auf Object ID: javascript.1.heos.xx_xx_178.command

                              und Wert: play_preset&preset=5

                              läuft es eigentlich.

                              Grüße

                              Brati

                              1 Reply Last reply Reply Quote 0
                              • C
                                chrisblu last edited by

                                Hallo Brati,
                                danke für deine Antwort. Ich habs gerade wieder hinbekommen. Ich habe das Skript erstmal direkt über den Objekteintrag angesteuert.

                                Ich hatte ein falsches Passwort und bin fälschlicherweise davon ausgegangen, da bei connected "true" steht und ich ja auch die Liste der presets bekommen habe, dass ich angemeldet bin.
                                Mit dem richtigen Passwort klappts sofort.

                                Danke, Christian

                                1 Reply Last reply Reply Quote 0
                                • C
                                  chrisblu last edited by

                                  @Uhula
                                  ich glaube ich habe einen kleinen Fehler in deinem Script gefunden
                                  In Zeile 262 ist beim disconnect die Instanz 1 angegeben:

                                  unsubscribe('javascript.1.heos');
                                  

                                  das müsste meine ich folgendermaßen lauten:

                                  unsubscribe('javascript.'+instance+'.heos');
                                  

                                  Viele Grüße,
                                  Christian

                                  1 Reply Last reply Reply Quote 0
                                  • Xsev
                                    Xsev last edited by

                                    Vielen Dank für das Script! Läuft wunderbar!

                                    Wäre jemand so nett und würde mir seine VIS als View Export zu verfügung stellen? Idealerweise ganz einfach gestrickt. 😉

                                    Das Beispiel im ersten thread bekomme ich leider nicht importiert, weder als Widget noch als View.

                                    1 Reply Last reply Reply Quote 0
                                    • L
                                      Lacoste9 last edited by

                                      Moin

                                      Gibt es evtl eine Möglichkeit direkt in Vis ein Button zu drücken um bei der Heos Bar die HDMI Eingänge zu schalten?

                                      MFG

                                      B 1 Reply Last reply Reply Quote 0
                                      • B
                                        Brati @Lacoste9 last edited by

                                        @Lacoste9

                                        Das hängt davon ab, wie du die Bar über das Script steuern kannst. Wenn es über den command state klappt, setzt die ihn einfach mit einem "ctrl state" Widget aus vis.

                                        Also du wählst ein dir passendes "ctrl state" Widget und schreibst dann damit in den state dein Kommando. Ich benutze viel das " jqui ctrl Icon state"

                                        Grüße

                                        Brati

                                        L 1 Reply Last reply Reply Quote 0
                                        • L
                                          Lacoste9 @Brati last edited by

                                          @Brati

                                          Sorry ich bin ganz frisch in dem Thema.
                                          Ich habe zwar das Objekt "Denon" da steht aber nur mein nicht vorhandener AVR drin.

                                          Eine Heos Bar / Sub / 2x Heos 1 habe ich im Haushalt.

                                          Wie das mit den Skripten geht und dann in Vis einbinden... Sorry da weiss ich noch nicht

                                          Hoffe du kannst mir dabei helfen

                                          MFG

                                          B 1 Reply Last reply Reply Quote 0
                                          • B
                                            Brati @Lacoste9 last edited by

                                            @Lacoste9

                                            Das wären zu wenig Objekt, die HEOS 1 sollten zumindest sowas erzeugen:

                                            Zwischenablage01.jpg

                                            Über den markierten State kannst du dann die Kommandos senden.

                                            Das wird in vis wie folgt gelöst:

                                            Zwischenablage02.jpg

                                            Die Objekt ID wird auf den State gelegt und das gewünschte Kommando (hier Preset 1 spielen) übergeben.

                                            Grüße

                                            Brati

                                            1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            571
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

                                            javascript template
                                            45
                                            341
                                            57121
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo