Ankündigung

Einklappen
Keine Ankündigung bisher.

KNX/Sonos-Integration kommt

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    #31
    Siehe #20

    Kommentar


      #32
      Zitat von viggo Beitrag anzeigen
      ... per KNX-Taster zu steuern ... bei den Sonos natürlich die Lautstärke ...
      Hab' gerade mal geschaut - wenn es wirklich nur um die Laufstärke geht, kannst Du das jetzt schon mit Firmware v5 machen. Ein kleines LUA-Script, das mir Gemini gerade gebastelt hat, führt zum Ziel.

      Code:
      local config = {
          ip = "192.168.x.x",
          port = 1400,
          target_vol = 25
      }
      
      local service = "urn:schemas-upnp-org:service:RenderingControl:1"
      local action = "SetVolume"
      
      local soap_body = '<?xml version="1.0"?>' ..
      '<s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" s:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">' ..
      '<s:Body><u:' .. action .. ' xmlns:u="' .. service .. '">' ..
      '<InstanceID>0</InstanceID>' ..
      '<Channel>Master</Channel>' ..
      '<DesiredVolume>' .. config.target_vol .. '</DesiredVolume>' ..
      '</u:' .. action .. '></s:Body></s:Envelope>'
      
      local url = "http://" .. config.ip .. ":" .. config.port .. "/MediaRenderer/RenderingControl/Control"
      
      local headers = {
          ["Content-Type"] = "text/xml; charset=utf-8",
          ["SOAPAction"] = '"' .. service .. "#" .. action .. '"',
          ["Content-Length"] = tostring(string.len(soap_body))
      }
      
      local opts = {
          headers = headers,
          timeout = 5000
      }
      
      log.info("SONOS VOL: " .. config.target_vol)
      
      local resp, stat = http.post(url, soap_body, opts)
      
      if tonumber(stat) == 200 then
          log.info("OK")
      else
          log.info("ERROR: " .. tostring(stat))
      end​
      Müsste man natürlich entsprechend noch anpassen, was die Bedienung über KNX-Tasten angeht, aber Gemini führt einen da sicher zum Ziel.

      Kommentar

      Lädt...
      X