Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [Vorlage] Denon HEOS Script

NEWS

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

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

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

[Vorlage] Denon HEOS Script

Scheduled Pinned Locked Moved JavaScript
javascripttemplate
357 Posts 48 Posters 75.8k Views 44 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • Hollywood82H Hollywood82

    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 Offline
    B Offline
    Brati
    wrote on last edited by Brati
    #29

    @Hollywood82

    Ist bei dir die JS Instanz richtig konfiguriert?

    Zwischenablage01.jpg

    Dort muss node-ssdp eingetragen werden...

    Grüße

    Brati

    CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

    1 Reply Last reply
    0
    • Hollywood82H Offline
      Hollywood82H Offline
      Hollywood82
      wrote on last edited by
      #30

      Danke @Brati
      Probiere ich heute Abend aus.

      VG

      1 Reply Last reply
      0
      • Hollywood82H Offline
        Hollywood82H Offline
        Hollywood82
        wrote on last edited by
        #31

        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
        0
        • B Offline
          B Offline
          Brati
          wrote on last edited by
          #32

          @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

          CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

          1 Reply Last reply
          0
          • Hollywood82H Offline
            Hollywood82H Offline
            Hollywood82
            wrote on last edited by
            #33

            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
            0
            • Hollywood82H Offline
              Hollywood82H Offline
              Hollywood82
              wrote on last edited by
              #34

              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
              0
              • M Offline
                M Offline
                Matten
                wrote on last edited by
                #35

                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?

                Hardware: NUC 386i, Proxmox: als VM ioBroker, HomeMatic, Hue(Zigbee), UnifiAC, Visualisierung: 24 Zoll Touchscreen Portrait Modus

                1 Reply Last reply
                0
                • S Offline
                  S Offline
                  schubi82
                  wrote on last edited by
                  #36

                  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
                  0
                  • UhulaU Offline
                    UhulaU Offline
                    Uhula
                    wrote on last edited by Uhula
                    #37

                    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ß

                    Uhula - Leise und Weise
                    Ex: ioBroker on Gigabyte NUC Proxmox

                    B 1 Reply Last reply
                    0
                    • UhulaU 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 Offline
                      B Offline
                      Brati
                      wrote on last edited by Brati
                      #38

                      EDIT

                      Einmal alles neu gestartet und System läuft wieder.

                      Grüße

                      Brati

                      CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                      1 Reply Last reply
                      0
                      • C Offline
                        C Offline
                        chrisblu
                        wrote on last edited by
                        #39

                        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
                        0
                        • C chrisblu

                          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 Offline
                          B Offline
                          Brati
                          wrote on last edited by Brati
                          #40

                          @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

                          CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                          1 Reply Last reply
                          0
                          • C Offline
                            C Offline
                            chrisblu
                            wrote on last edited by
                            #41

                            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
                            0
                            • C Offline
                              C Offline
                              chrisblu
                              wrote on last edited by
                              #42

                              @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
                              0
                              • XsevX Offline
                                XsevX Offline
                                Xsev
                                wrote on last edited by
                                #43

                                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
                                0
                                • L Offline
                                  L Offline
                                  Lacoste9
                                  wrote on last edited by
                                  #44

                                  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
                                  0
                                  • L Lacoste9

                                    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 Offline
                                    B Offline
                                    Brati
                                    wrote on last edited by
                                    #45

                                    @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

                                    CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                                    L 1 Reply Last reply
                                    0
                                    • B Brati

                                      @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 Offline
                                      L Offline
                                      Lacoste9
                                      wrote on last edited by
                                      #46

                                      @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
                                      0
                                      • L Lacoste9

                                        @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 Offline
                                        B Offline
                                        Brati
                                        wrote on last edited by
                                        #47

                                        @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

                                        CCU2 - 46 Geräte, ioBroker auf Intel NUC (DN2820FYKH) mit Tab als Frontend, Projekt Gartenhaus mit HM

                                        1 Reply Last reply
                                        0
                                        • L Offline
                                          L Offline
                                          Lacoste9
                                          wrote on last edited by
                                          #48

                                          Das sieht ja schon mal sehr viel versprechend aus.
                                          Mit welchen Adapter hast du die objekte denn erzeugt?

                                          Mfg

                                          B 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          713

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe