This repository has been archived by the owner on Dec 13, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 6
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
54 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
# UPnP for Homebridge | ||
|
||
[Universal Plug and Play (UPnP)](http://upnp.org/resources/documents/UPnP_UDA_tutorial_July2014.pdf) 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](http://upnp.org/specs/av/UPnP-av-MediaRenderer-v1-Device.pdf) | ||
|
||
Most of Smart TV supports this device type. | ||
|
||
It requires implementation of [RenderingControl v1](http://upnp.org/specs/av/UPnP-av-RenderingControl-v1-Service.pdf) 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 | ||
|
||
```bash | ||
$ npm install -g homebridge-upnp | ||
``` | ||
|
||
## Usage | ||
|
||
Simply add to your Homebridge config new platform called "UPnP" and restart Homebridge. | ||
|
||
```json | ||
{ | ||
"platforms": [ | ||
{ | ||
"platfrom": "UPnP" | ||
} | ||
] | ||
} | ||
``` | ||
|
||
Also you can provide custom config for [upnp-device-client](https://github.com/langovoi/node-upnp-device-client#readme) by `ssdpClient` and `ssdpServer` options: | ||
|
||
```json | ||
{ | ||
"platforms": [ | ||
{ | ||
"platfrom": "UPnP", | ||
"ssdpClient": { | ||
"interfaces": ["br0"] | ||
}, | ||
"ssdpServer": { | ||
"interfaces": ["br0"] | ||
} | ||
} | ||
] | ||
} | ||
``` |