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

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Off Topic
  4. Volumio adapter?

NEWS

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

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

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

Volumio adapter?

Geplant Angeheftet Gesperrt Verschoben Off Topic
75 Beiträge 10 Kommentatoren 9.2k Aufrufe 7 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.
  • da_WoodyD da_Woody

    @muellerra moin. dachte, ich hätte eine eingebung gehabt, dachte ich aber nur... wutb.gif
    hatte im 2. script

    var Volumios = ["Studio"] //["rStream","workStream","kitchenStream","flurStream"]  //muss in beiden Skripten identisch sein
    

    nicht angepasst.
    dann komplett neu angefangen, da der fehler nach wie vor da war. kurioser weise hat sich durch deine änderung das warning um eine zeile verschoben.

    09:53:07.452	info	javascript.0 (521) Start javascript script.js.common.Volumio.Volumio
    09:53:07.473	info	javascript.0 (521) script.js.common.Volumio.Volumio: registered 22 subscriptions, 0 schedules, 0 messages, 0 logs and 0 file subscriptions
    09:53:10.972	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:10.972	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:11.471	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:11.471	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:11.976	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:11.976	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:12.472	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:12.472	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:12.972	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:12.972	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:13.472	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:13.472	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:13.973	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:13.973	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:14.473	warn	javascript.0 (521) at restapiRequest (script.js.common.Volumio.Volumio:602:8)
    09:53:14.473	warn	javascript.0 (521) at Object.getVolumioStates (script.js.common.Volumio.Volumio:943:9)
    09:53:14.800	info	javascript.0 (521) Stop script script.js.common.Volumio.Volumio
    

    602 nach deinen angaben ausgebessert

    if(getState('ping.0.ioBroker.' + Volumios[ID_Volumio]).val + '.alive'){
    

    der DP ist da und auf true
    aa2584d3-ec64-4034-83b2-4018208bff73-image.png
    943 sehe ich auch keinen fehler

    restapiRequest('192.168.0.' + Volumios_IPs[ID_Volumio],"getState",ID_Volumio)
    

    zusätzlich hab ich im states_icons script die zeile 4 geändert, damit ich in den objekten nur mehr player0 bekomme

    var names = ['Volumio_Player_0'] //,'Volumio_Player_1','Volumio_Player_2','Volumio_Player_3']
    

    das klappt auch.
    ich weis echt nicht mehr weiter... nochmal das neue hauptscript...
    Volumio.txt
    alle 3 scripte 3x durchsucht ob ich was übersehn habe. (notepad++ mit suchen und ersetzen)

    M Offline
    M Offline
    muellerra
    schrieb am zuletzt editiert von muellerra
    #65

    @da_woody

    if(getState('ping.<instance>.<iobrokerHostName>.' + Volumios[ID_Volumio] + '.alive').val){
    

    Das .val ist an falscher stelle. Da wäre ein Syntax highlighting im Forum ganz nett

    da_WoodyD 1 Antwort Letzte Antwort
    0
    • M muellerra

      @da_woody

      if(getState('ping.<instance>.<iobrokerHostName>.' + Volumios[ID_Volumio] + '.alive').val){
      

      Das .val ist an falscher stelle. Da wäre ein Syntax highlighting im Forum ganz nett

      da_WoodyD Offline
      da_WoodyD Offline
      da_Woody
      schrieb am zuletzt editiert von
      #66

      @muellerra dankedeus.gif
      wollte schon am rad drehn. hab ich gestern abend echt nicht mehr mitbekommen. näxter fault dann, hab iobroker getippt statt ioBroker. logischer weise selber fehler. fool.gif
      okido, die 3 scripte laufen jetzt. jetzt kann ich mich um iQontrol kümmern... banane2.gif

      gruß vom Woody
      HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

      M 1 Antwort Letzte Antwort
      1
      • da_WoodyD da_Woody

        @muellerra dankedeus.gif
        wollte schon am rad drehn. hab ich gestern abend echt nicht mehr mitbekommen. näxter fault dann, hab iobroker getippt statt ioBroker. logischer weise selber fehler. fool.gif
        okido, die 3 scripte laufen jetzt. jetzt kann ich mich um iQontrol kümmern... banane2.gif

        M Offline
        M Offline
        muellerra
        schrieb am zuletzt editiert von
        #67

        @da_woody das freut mich :blush:
        Viel Spaß mit dem Skript :blush:

        da_WoodyD 1 Antwort Letzte Antwort
        0
        • M muellerra

          @da_woody das freut mich :blush:
          Viel Spaß mit dem Skript :blush:

          da_WoodyD Offline
          da_WoodyD Offline
          da_Woody
          schrieb am zuletzt editiert von
          #68

          @muellerra jup!
          auch schon bißchen in iQontrol gefummelt.
          7c441a89-4915-4620-b674-b964a08afe0d-grafik.png

          gruß vom Woody
          HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

          1 Antwort Letzte Antwort
          1
          • M Offline
            M Offline
            muellerra
            schrieb am zuletzt editiert von muellerra
            #69

            Mir kam grad noch in den Sinn, das der im Skript angelegte javascript.0.Allgemeine_Variablen.Player.Volumio_Player_<VolumioID>.playbackInfo.statusIncomingCall Datenpunkt durchaus sinnvoll in Verwendung ist. Ich verwende ihn als Merker für den Play/Pause Status. So werden dann z.b. bei einem aus- oder eingehendem Anruf (über Fritz!Box) alle spielenden Volumios pausiert und nach dem auflegen wieder fortgesetzt. Volumios die nicht spielen werden nicht angesteuert. Bei Playern im Multiroomverbund, wird nur der sendende Volumio getriggert.
            Die im Ursprungspost geposteten globalen Funktionen werden vorausgesetzt:

            @muellerra sagte in Volumio adapter?:

            und hier noch weitere, vllt nützliche, Funktionen (bei mir global definiert)

            function getVolumiosReceiving(VolumiosReceiving,ReturnID){
            usw...
            
            var ID_Ringing = "tr-064.0.callmonitor.ringing"
            var ID_PhoneStatus = "tr-064.0.callmonitor.toPauseState" // connected, end(wenn nichts ist), ring
            var FolderVolumio = 'javascript.0.Allgemeine_Variablen.Player.Volumio_Player_'
            on({id: ID_PhoneStatus, change: 'ne'}, function (obj) {
                var value = obj.state.val;
                var timestamp = obj.state.ts;
                var oldValue = obj.oldState.val
                var Verursacher = obj.id;
                var VolumiosStatus = getVolumiosStatus([])
                var ReceivingVolumiosIDs = getVolumiosReceiving([],true)
            
                if(value != 'end' && value != 'connect'){ // connect da sonst nichts ausgeführt wird, wenn der angenommene anruf beendet wird
                    //Aktionen die passieren, wenn jemand anruft oder jemand im gespräch ist
                    
                    //Volumios auf Pause         
                    var PlayingVolumiosIDs = getVolumiosPlaying([],true)
                    log(ReceivingVolumiosIDs)
                    for(var iop in VolumiosStatus){
                        setState(FolderVolumio + iop + '.playbackInfo.statusIncomingCall',VolumiosStatus[iop])
                        //nur pis die nicht empfangen auf pause setzen, der rest erledigt sich von alleine
                        if(ReceivingVolumiosIDs.indexOf(String(iop)) != -1 ){ // pi empfängt
                        }else{ // pi empfängt nicht
                            setState(FolderVolumio + iop + '.control.pause',true)
            
                        }
                    }
                }
                if(value == 'end' && oldValue != 'end'){
                    // aktionen, wenn aufgelegt wird oder das telefon nicht mehr klingelt
            
                    //Volumios auf Play, wenn sie vorher pausiert wurden
                    for(var xbf in VolumiosStatus){
                        var VolumioStatusHistoric = getState(FolderVolumio + xbf + '.playbackInfo.statusIncomingCall').val
                        if(VolumioStatusHistoric == 'play' || VolumioStatusHistoric == "play"){ // hier aber aich nur die die nicht receiven!
                            //nur pis die nicht empfangen auf play setzen, bzw toggeln
                            if(ReceivingVolumiosIDs.indexOf(String(xbf)) != -1 ){ // pi empfängt
                            }else{ // pi empfängt nicht
                                setState(FolderVolumio + xbf + '.PlayPause',true) //toogle, da play multiroom killt wenn multiroom aktiv ist...
            
                            }
                        }
                    }
                }
            });  
            
            da_WoodyD 1 Antwort Letzte Antwort
            0
            • M muellerra

              Mir kam grad noch in den Sinn, das der im Skript angelegte javascript.0.Allgemeine_Variablen.Player.Volumio_Player_<VolumioID>.playbackInfo.statusIncomingCall Datenpunkt durchaus sinnvoll in Verwendung ist. Ich verwende ihn als Merker für den Play/Pause Status. So werden dann z.b. bei einem aus- oder eingehendem Anruf (über Fritz!Box) alle spielenden Volumios pausiert und nach dem auflegen wieder fortgesetzt. Volumios die nicht spielen werden nicht angesteuert. Bei Playern im Multiroomverbund, wird nur der sendende Volumio getriggert.
              Die im Ursprungspost geposteten globalen Funktionen werden vorausgesetzt:

              @muellerra sagte in Volumio adapter?:

              und hier noch weitere, vllt nützliche, Funktionen (bei mir global definiert)

              function getVolumiosReceiving(VolumiosReceiving,ReturnID){
              usw...
              
              var ID_Ringing = "tr-064.0.callmonitor.ringing"
              var ID_PhoneStatus = "tr-064.0.callmonitor.toPauseState" // connected, end(wenn nichts ist), ring
              var FolderVolumio = 'javascript.0.Allgemeine_Variablen.Player.Volumio_Player_'
              on({id: ID_PhoneStatus, change: 'ne'}, function (obj) {
                  var value = obj.state.val;
                  var timestamp = obj.state.ts;
                  var oldValue = obj.oldState.val
                  var Verursacher = obj.id;
                  var VolumiosStatus = getVolumiosStatus([])
                  var ReceivingVolumiosIDs = getVolumiosReceiving([],true)
              
                  if(value != 'end' && value != 'connect'){ // connect da sonst nichts ausgeführt wird, wenn der angenommene anruf beendet wird
                      //Aktionen die passieren, wenn jemand anruft oder jemand im gespräch ist
                      
                      //Volumios auf Pause         
                      var PlayingVolumiosIDs = getVolumiosPlaying([],true)
                      log(ReceivingVolumiosIDs)
                      for(var iop in VolumiosStatus){
                          setState(FolderVolumio + iop + '.playbackInfo.statusIncomingCall',VolumiosStatus[iop])
                          //nur pis die nicht empfangen auf pause setzen, der rest erledigt sich von alleine
                          if(ReceivingVolumiosIDs.indexOf(String(iop)) != -1 ){ // pi empfängt
                          }else{ // pi empfängt nicht
                              setState(FolderVolumio + iop + '.control.pause',true)
              
                          }
                      }
                  }
                  if(value == 'end' && oldValue != 'end'){
                      // aktionen, wenn aufgelegt wird oder das telefon nicht mehr klingelt
              
                      //Volumios auf Play, wenn sie vorher pausiert wurden
                      for(var xbf in VolumiosStatus){
                          var VolumioStatusHistoric = getState(FolderVolumio + xbf + '.playbackInfo.statusIncomingCall').val
                          if(VolumioStatusHistoric == 'play' || VolumioStatusHistoric == "play"){ // hier aber aich nur die die nicht receiven!
                              //nur pis die nicht empfangen auf play setzen, bzw toggeln
                              if(ReceivingVolumiosIDs.indexOf(String(xbf)) != -1 ){ // pi empfängt
                              }else{ // pi empfängt nicht
                                  setState(FolderVolumio + xbf + '.PlayPause',true) //toogle, da play multiroom killt wenn multiroom aktiv ist...
              
                              }
                          }
                      }
                  }
              });  
              
              da_WoodyD Offline
              da_WoodyD Offline
              da_Woody
              schrieb am zuletzt editiert von
              #70

              @muellerra nicht schlecht!
              was mir noch gefallen würde, favoriten, sender und co. auswahl...

              gruß vom Woody
              HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

              M 1 Antwort Letzte Antwort
              1
              • da_WoodyD da_Woody

                @muellerra nicht schlecht!
                was mir noch gefallen würde, favoriten, sender und co. auswahl...

                M Offline
                M Offline
                muellerra
                schrieb am zuletzt editiert von
                #71

                @da_woody Gute Idee!, den Use Case hab ich bei mir aber tatsächlich nicht, daher hab ich es auch nicht implementiert. Darf gerne jemand anders übernehmen:stuck_out_tongue_winking_eye:

                1 Antwort Letzte Antwort
                0
                • mcm1957M Online
                  mcm1957M Online
                  mcm1957
                  schrieb am zuletzt editiert von
                  #72

                  Wenn ich das hier grob überfliege dann geht es schon länger nicht mehr um den VOLUMIO ADAPTER sondern um eine Skript das ihn - wenn ichs richtig sehe - ersetzt.

                  Könnte hier jemand klarstellen, ob der Adapter:
                  https://github.com/a-i-ks/ioBroker.volumio
                  nun brauchbar ist (mit Einschränkungen) oder derzeit bereits ein Totalausfall?

                  Es gibt zwar ein Issue dazu (https://github.com/a-i-ks/ioBroker.volumio/issues/12) aber so richtig klar ist (mir) nicht ob es da um ein Einzelproblem handelt oder nicht,

                  Auf was ich raus will:
                  Wenn der Adapter zu 99% nicht mehr unfktioniert würde ich / sollte man ein Issue mit einem gewissen Timeout erstellen. Und anschließend den Adapter zumindest mal aus dem Stable Repo nehmen.

                  Das kann und will ich aber nicht tun, nur weil er ev bei einigen wenigen Installationen zickt. Ich brächte also eher klare Aussagen. EV. kann auch wer der Probleme nachvollziehen kann im referenzierten Issue nachfrage und / oder wenn das besser passt ein neues Issue anlegen.

                  Danke

                  Entwicklung u Betreuung: envertech-pv, hoymiles-ms, ns-client, pid, snmp Adapter;
                  Support Repositoryverwaltung.

                  Wer Danke sagen will, kann nen Kaffee spendieren: https://paypal.me/mcm1957atiobroker

                  LESEN - gute Forenbeitrage

                  da_WoodyD 1 Antwort Letzte Antwort
                  0
                  • mcm1957M mcm1957

                    Wenn ich das hier grob überfliege dann geht es schon länger nicht mehr um den VOLUMIO ADAPTER sondern um eine Skript das ihn - wenn ichs richtig sehe - ersetzt.

                    Könnte hier jemand klarstellen, ob der Adapter:
                    https://github.com/a-i-ks/ioBroker.volumio
                    nun brauchbar ist (mit Einschränkungen) oder derzeit bereits ein Totalausfall?

                    Es gibt zwar ein Issue dazu (https://github.com/a-i-ks/ioBroker.volumio/issues/12) aber so richtig klar ist (mir) nicht ob es da um ein Einzelproblem handelt oder nicht,

                    Auf was ich raus will:
                    Wenn der Adapter zu 99% nicht mehr unfktioniert würde ich / sollte man ein Issue mit einem gewissen Timeout erstellen. Und anschließend den Adapter zumindest mal aus dem Stable Repo nehmen.

                    Das kann und will ich aber nicht tun, nur weil er ev bei einigen wenigen Installationen zickt. Ich brächte also eher klare Aussagen. EV. kann auch wer der Probleme nachvollziehen kann im referenzierten Issue nachfrage und / oder wenn das besser passt ein neues Issue anlegen.

                    Danke

                    da_WoodyD Offline
                    da_WoodyD Offline
                    da_Woody
                    schrieb am zuletzt editiert von da_Woody
                    #73

                    @mcm57 naja, länger ist relativ. ich bin mit besagtem adapter nicht zurecht gekommen und hat mir immer wieder probleme gemacht. ja, die scripte ersetzen den adapter komplett.
                    da du mein issue erwähnst. nuja, nicht wirklich was verändert, auch wenn da was gemacht wurde.
                    im moment komm ich mit den scripten von @muellerra (trotz meiner unfähigkeit mit JS) gut zurecht.
                    vllt könnte man das mal in einen "neuen" adapter gießen?

                    edith ist da: wie gesagt, für mich ist das reine spielerei. so ein mugge geschichtel mit alexa würe mir mehr wert bringen. die beschreibung im iQontrol wiki ist auch nicht mehr up2date. zumindest klapperts bei mir nicht mehr.

                    gruß vom Woody
                    HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                    a-i-ksA 1 Antwort Letzte Antwort
                    1
                    • da_WoodyD da_Woody

                      @mcm57 naja, länger ist relativ. ich bin mit besagtem adapter nicht zurecht gekommen und hat mir immer wieder probleme gemacht. ja, die scripte ersetzen den adapter komplett.
                      da du mein issue erwähnst. nuja, nicht wirklich was verändert, auch wenn da was gemacht wurde.
                      im moment komm ich mit den scripten von @muellerra (trotz meiner unfähigkeit mit JS) gut zurecht.
                      vllt könnte man das mal in einen "neuen" adapter gießen?

                      edith ist da: wie gesagt, für mich ist das reine spielerei. so ein mugge geschichtel mit alexa würe mir mehr wert bringen. die beschreibung im iQontrol wiki ist auch nicht mehr up2date. zumindest klapperts bei mir nicht mehr.

                      a-i-ksA Offline
                      a-i-ksA Offline
                      a-i-ks
                      schrieb am zuletzt editiert von
                      #74

                      Hallo Leute, der Volumio Adapter ist jetzt gefixt. Entschuldigt, dass es so lange gedauert hat. Der aktuelle master Stand auf Github kann noch bis Samstag Abend getestet werden. Danach veröffentliche ich ihn offiziell in v0.2.0.

                      1 Antwort Letzte Antwort
                      0
                      • da_WoodyD Offline
                        da_WoodyD Offline
                        da_Woody
                        schrieb am zuletzt editiert von
                        #75

                        @a-i-ks na Mal schauen. Wollte seit Tagen den Raspberry schon zusätzlich in der Werkstatt rein operieren.
                        Alexa klappt ja so. Allerdings hab ich auch Boxen hängen. Muss ich nur noch Adapter für die Mini Klinke basteln.

                        gruß vom Woody
                        HAPPINESS is not a DESTINATION, it's a WAY of LIFE!

                        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

                        843

                        Online

                        32.4k

                        Benutzer

                        81.6k

                        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