Neutral Point Measurement

    node-upnp-subscription

    1.0.6 • Public • Published

    Node UPNP Subscription Library

    Library to manage subscriptions, renewals and unsubscription of UPNP subscriptions.

    Events are currently handled via a provided callback which will be passed all the data from the event as a Javascript object. XML is automatically parsed into a javascript object.

    Installation

    npm install node-upnp-subscription

    Example

    var Subscription = require('node-upnp-subscription');
     
    var host = '192.168.1.122';
    var port = 55178;
    var infoSubUri = '/Ds/Info/event';
     
    var infoSub = new Subscription(host, port, infoSubUri);
    infoSub.on('message', console.log);
     
    setTimeout(infoSub.unsubscribe, 12000);

    Usage

    Construction

    On construction, a local HTTP server will begin to listen on a random port and a subscribe request will be made to the Upnp device advertising this address and a resubscribe timer is set. The timeout value is replaced with the value returned in the subcription response which may differ to your requested resubscribe timeout. A resubscription timer is set to resubscribe after a successful subscription attempt. When a response is received, the subscription Id sid is returned in an event.

    The resubscribe timer will cause a subscribe attempt to be resent to keep the Upnp subscription alive. If this is successful, a timer is set to resubscribe.

    Unsubscribe

    On unsubscribe, the resubscribe timer will be cancelled and the listening HTTP server closed. An unsubscribe request will be made to the Upnp device, if this fails an event is emitted with the reason.

    Events

    Initialisation

    • subscribed - Will return the sid
    • error - Will return the error object which occured during subscribe attempt.

    Resubscribe

    • resubscribed - Will return the sid
    • error:resubscribe - Will return both the sid of the subscription and the HTTP error object.

    Unsubscribe

    • unsubscribed - Will return the now defunct sid
    • error:unsubscribe - Will return the HTTP error object.

    Install

    npm i node-upnp-subscription

    DownloadsWeekly Downloads

    14

    Version

    1.0.6

    License

    MIT

    Last publish

    Collaborators

    • bazwilliams