The networkhotplug object can be used to generate events when a network interface becomes available or unavailable. A networkhotplugevent will be generated, indicating the interface and whether it was attached or detached.

note

Reconfiguring a network interface may cause it to detach and attach again.  A DHCP address renewal may cause an event, even if the IP address hasn't changed.

Reconfiguring a network interface may cause it to detach and attach again.  A DHCP address renewal may cause an event, even if the IP address hasn't changed.

networkhotplug IDL

interface NetworkHotplugEvent {
    attribute String type;
    attribute bool attached; // 1 -> attached, 0 -> detached
    attribute String interfaceName;
};

callback NetworkHotplugEventCallback = void (NetworkHotplugEvent event);

interface NetworkHotplug {
    void addEventListener(String type, NetworkHotplugEventCallback callback);
    void removeEventListener(String type, NetworkHotplugEventCallback callback);
}; 

ON THIS PAGE



Event Creation

To create a networkhotplug event, load the @brightsign/networkhotplug module using the Node.js® require() method:

let networkhotplugClass = require("@brightsign/networkhotplug");
let networkhotplug = new networkhotplugClass();

NetworkHotPlug 

Use this interface to configure a networkhotplug event.

networkhotplugevent: This event is raised when the hotplug status changes. Use the addEventListener() method to listen for this event, or the removeEventListener() method to remove an event listener.

NetworkHotPlugEvent Properties 

  • type string: Add or remove an event listener when this type of event occurs.

  • attached bool: Can be true or false (1 is attached, 0 is detached)

  • interfaceName string: Returns the interface name (for example, "eth0")

Example

let networkhotplugClass = require("@brightsign/networkhotplug");
let networkhotplug = new networkhotplugClass();

networkhotplug.addEventListener("networkhotplugevent", onNetworkHotplugEvent);    

function onNetworkHotplugEvent(data) {
  if (data.attached)
{     // connected on 'data.interfaceName'   }
}