upnpserver
upnpserver copied to clipboard
Fast and light upnp server for node
upnpserver
UpnpServer is a fast and light UPnP server written in NodeJS. This version does not need an external database (mysql, mongodb), it stores all information in memory.
Compatibility
- Freebox HD
- Soundbridge
- ht5streamer
- Intel Device Validator
- Samsung AllShare play
- LG Smart Share
- Android
- VPlayer (with UPNP Plugin)
- NX Player
Installation
$ npm install upnpserver
Command line
For command line, install upnpserver-cli package.
API Usage
var Server = require("upnpserver");
var server = new Server({ /* configuration, see below */ }, [
'/home/disk1',
{ path: '/home/myDisk' },
{ path: '/media/movies', mountPoint: '/My movies'},
{ path: '/media/albums', mountPoint: '/Personnal/My albums', type: 'music' }
]);
server.start();
##Configuration Server constructor accepts an optional configuration object. At the moment, the following is supported:
-
log
Boolean Enable/disable logging. Default: false. -
logLevel
String Specifies log level to print. Possible values:TRACE
,DEBUG
,INFO
,WARN
,ERROR
,FATAL
. Defaults toERROR
. -
name
String Name of server. Default 'Node Server' -
modelName
String Model name of server. Default 'Node upnpserver' -
uuid
String UUID of server. (If not specified, a UUID v4 will be generated) -
hostname
String Hostname to bind the server. Default: 0.0.0.0 -
httpPort
Number Http port. Default: 10293 -
dlnaSupport
Boolean Enable/disable dlna support. Default: true -
strict
Boolean Use only official UPnP attributes. Default: false -
lang
String Specify the language (en, fr) for virtual folder names. Default: en -
ssdpLog
Boolean Enable log of ssdp layer. Default: false -
ssdpLogLevel
String Log level of ssdp layer.
Testing
For testing purposes used mocha framework. To run tests, you should do this:
make test
Author
Olivier Oeuillot
Contributors
https://github.com/oeuillot/upnpserver/graphs/contributors