homebridge-upnp

Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices to seamlessly discover each other's presence on the network and establish functional network services.

Usage no npm install needed!

<script type="module">
  import homebridgeUpnp from 'https://cdn.skypack.dev/homebridge-upnp';
</script>

README

UPnP for Homebridge

Universal Plug and Play (UPnP) is a set of networking protocols that permits networked devices to seamlessly discover each other's presence on the network and establish functional network services.

Supported devices types

MediaRenderer v1

Most of Smart TV and other devices (Sonos for example) supports this device type.

It requires implementation of RenderingControl v1 service, which allow control volume and mute states.

Current implementation of plugin automatically discover UPnP devices and add Lightbulb accessory which allow to control volume by slider and mute by on/off.

Install

$ npm install -g homebridge-upnp@^0.1.0

Usage

Simply add to your Homebridge config new platform called "UPnP" and restart Homebridge.

{
  "platforms": [
      {
        "platform": "UPnP"
      }
  ]
}

Configure network interfaces

You can provide custom config for node-ssdp by ssdpClient and ssdpServer options:

{
  "platforms": [
      {
        "platform": "UPnP",
        "ssdpClient": {
          "interfaces": ["br0"]
        },
        "ssdpServer": {
          "interfaces": ["br0"]
        }
      }
  ]
}

Exclude devices

First find device's USN. It must be in logs of Homebridge:

...
[2019-1-15 21:21:15] [UPnP] Add device [TV] Samsung 7 Series (55) (USN: XXXXXXXXX)
...

Then use excludeUSN option:

{
  "platforms": [
      {
        "platform": "UPnP",
        "excludeUSN": ["XXXXXXXXX", "XXXXXXXX"]
      }
  ]
}