UNPKG

@jibestream-dev/jmap-device-kit

Version:

Kit for the Jibestream SDK to utilize Devices plotted in the CMS

1,271 lines (907 loc) 342 kB
# DeviceKit Jibestream plugin for using Devices ### Documentation ## Classes <dl> <dt><a href="#Device">Device</a></dt> <dd></dd> <dt><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code></dt> <dd><p>Class representing a collection of Devices.</p> </dd> <dt><a href="#DeviceKit">DeviceKit</a></dt> <dd><p>Kit for working with Jibestream Devices</p> </dd> </dl> ## Typedefs <dl> <dt><a href="#DeviceViewConfig">DeviceViewConfig</a> : <code>Object</code></dt> <dd><p>The configuration object for the creation and update of an asset</p> </dd> </dl> <a name="Device"></a> ## Device **Kind**: global class * [Device](#Device) * [new Device()](#new_Device_new) * [.heading](#Device+heading) : <code>Number</code> * [.name](#Device+name) : <code>String</code> * [.waypointId](#Device+waypointId) : <code>Number</code> * [.mapId](#Device+mapId) : <code>Number</code> * [._getLocation(model)](#Device+_getLocation) <a name="new_Device_new"></a> ### new Device() Class representing a Device. <a name="Device+heading"></a> ### device.heading : <code>Number</code> **Kind**: instance property of <code>[Device](#Device)</code> <a name="Device+name"></a> ### device.name : <code>String</code> **Kind**: instance property of <code>[Device](#Device)</code> <a name="Device+waypointId"></a> ### device.waypointId : <code>Number</code> **Kind**: instance property of <code>[Device](#Device)</code> <a name="Device+mapId"></a> ### device.mapId : <code>Number</code> **Kind**: instance property of <code>[Device](#Device)</code> <a name="Device+_getLocation"></a> ### device._getLocation(model) Create a Device. **Kind**: instance method of <code>[Device](#Device)</code> | Param | Type | Description | | --- | --- | --- | | model | <code>object</code> | The model object passed back from the /full payload | <a name="DeviceCollection"></a> ## DeviceCollection ⇐ <code>jmap.core.BaseCollection</code> Class representing a collection of Devices. **Kind**: global class **Extends**: <code>jmap.core.BaseCollection</code> * [DeviceCollection](#DeviceCollection) ⇐ <code>jmap.core.BaseCollection</code> * [new DeviceCollection()](#new_DeviceCollection_new) * [.isDevice(item)](#DeviceCollection+isDevice) ⇒ <code>Boolean</code> * [.getByName(name)](#DeviceCollection+getByName) ⇒ <code>Array</code> * [.getByWaypoint(waypoint)](#DeviceCollection+getByWaypoint) ⇒ <code>Array</code> * [.getByMap(map)](#DeviceCollection+getByMap) ⇒ <code>Array</code> <a name="new_DeviceCollection_new"></a> ### new DeviceCollection() Create a collection of Devices. <a name="DeviceCollection+isDevice"></a> ### deviceCollection.isDevice(item) ⇒ <code>Boolean</code> Returns a boolean for weather or not argument is constructed as an Device object **Kind**: instance method of <code>[DeviceCollection](#DeviceCollection)</code> **Returns**: <code>Boolean</code> - Boolean based on evaluation result | Param | Type | Description | | --- | --- | --- | | item | <code>Object</code> | Item to evaluate | <a name="DeviceCollection+getByName"></a> ### deviceCollection.getByName(name) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of <code>[DeviceCollection](#DeviceCollection)</code> **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | name | <code>String</code> | A device name | <a name="DeviceCollection+getByWaypoint"></a> ### deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of <code>[DeviceCollection](#DeviceCollection)</code> **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | Any waypoint to query with | <a name="DeviceCollection+getByMap"></a> ### deviceCollection.getByMap(map) ⇒ <code>Array</code> Get a specific set of devices belonging to a map **Kind**: instance method of <code>[DeviceCollection](#DeviceCollection)</code> **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | map | <code>jmap.core.Map</code> | Any map to query with | <a name="DeviceKit"></a> ## DeviceKit Kit for working with Jibestream Devices **Kind**: global class * [DeviceKit](#DeviceKit) * [new DeviceKit(core, control)](#new_DeviceKit_new) * [.getDevices(callback)](#DeviceKit+getDevices) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.wayfindToDevice(callback, device, number)](#DeviceKit+wayfindToDevice) ⇒ <code>Array</code> * [.wayfindFromDevice(waypoint, device, number)](#DeviceKit+wayfindFromDevice) ⇒ <code>Array</code> * [.focusToDevice(callback, device, animation)](#DeviceKit+focusToDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.focusToDeviceWithHeading(device)](#DeviceKit+focusToDeviceWithHeading) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.getWaypointFromDevice(device)](#DeviceKit+getWaypointFromDevice) ⇒ <code>jmap.core.Waypoint</code> * [.addComponentOverDevice(device, component)](#DeviceKit+addComponentOverDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.removeComponentFromDevice(device)](#DeviceKit+removeComponentFromDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.showDevice(device, config)](#DeviceKit+showDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.hideDevice(device)](#DeviceKit+hideDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.showAllDevices(config)](#DeviceKit+showAllDevices) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.hideAllDevices()](#DeviceKit+hideAllDevices) ⇒ <code>[DeviceKit](#DeviceKit)</code> * [.pingDevice(device, onComplete)](#DeviceKit+pingDevice) ⇒ <code>[DeviceKit](#DeviceKit)</code> <a name="new_DeviceKit_new"></a> ### new DeviceKit(core, control) Create a DeviceKit. | Param | Type | Description | | --- | --- | --- | | core | <code>JCore</code> | instanciated JCore | | control | <code>JController</code> | instanciated JController | <a name="DeviceKit+getDevices"></a> ### deviceKit.getDevices(callback) ⇒ <code>[DeviceKit](#DeviceKit)</code> Make request to JACS to populate the DeviceCollection of the ActiveVenue **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>function</code> | callback fired when devices are ready, passes error, deviceCollection as arguments | <a name="DeviceKit+wayfindToDevice"></a> ### deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code> Draws a path to the selected device **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind from | | device | <code>[Device](#Device)</code> | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+wayfindFromDevice"></a> ### deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code> Draws a path from the selected device **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | <code>[Device](#Device)</code> | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+focusToDevice"></a> ### deviceKit.focusToDevice(callback, device, animation) ⇒ <code>[DeviceKit](#DeviceKit)</code> Focuses the view center to the position of the device, changes the mapView if needed **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | <code>[Device](#Device)</code> | device model | | animation | <code>jmap.Animation</code> | animation definition | <a name="DeviceKit+focusToDeviceWithHeading"></a> ### deviceKit.focusToDeviceWithHeading(device) ⇒ <code>[DeviceKit](#DeviceKit)</code> Rotates the map to match the device heading **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | <a name="DeviceKit+getWaypointFromDevice"></a> ### deviceKit.getWaypointFromDevice(device) ⇒ <code>jmap.core.Waypoint</code> Returns the waypoint matching the device waypointId if the waypoint exists in a loaded map **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>jmap.core.Waypoint</code> - waypoint | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | <a name="DeviceKit+addComponentOverDevice"></a> ### deviceKit.addComponentOverDevice(device, component) ⇒ <code>[DeviceKit](#DeviceKit)</code> Adds an html component ontop of your devoce, commonly used for 'You are here' indicators **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | | component | <code>DOMElement</code> | any html element wrapped in a div | <a name="DeviceKit+removeComponentFromDevice"></a> ### deviceKit.removeComponentFromDevice(device) ⇒ <code>[DeviceKit](#DeviceKit)</code> Removes any html component added ontop of your device. **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | <a name="DeviceKit+showDevice"></a> ### deviceKit.showDevice(device, config) ⇒ <code>[DeviceKit](#DeviceKit)</code> Display the device on its respecive map **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | | config | <code>[DeviceViewConfig](#DeviceViewConfig)</code> | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideDevice"></a> ### deviceKit.hideDevice(device) ⇒ <code>[DeviceKit](#DeviceKit)</code> Hide the divice **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | <a name="DeviceKit+showAllDevices"></a> ### deviceKit.showAllDevices(config) ⇒ <code>[DeviceKit](#DeviceKit)</code> Display all the devices on thier respecive maps **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | config | <code>[DeviceViewConfig](#DeviceViewConfig)</code> | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideAllDevices"></a> ### deviceKit.hideAllDevices() ⇒ <code>[DeviceKit](#DeviceKit)</code> Hides all divices **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit <a name="DeviceKit+pingDevice"></a> ### deviceKit.pingDevice(device, onComplete) ⇒ <code>[DeviceKit](#DeviceKit)</code> Plays a pulse animation for the decive once, fires an onComplete callback when done **Kind**: instance method of <code>[DeviceKit](#DeviceKit)</code> **Returns**: <code>[DeviceKit](#DeviceKit)</code> - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | <code>[Device](#Device)</code> | device model | | onComplete | <code>function</code> | callback fired once animation is complete | <a name="DeviceViewConfig"></a> ## DeviceViewConfig : <code>Object</code> The configuration object for the creation and update of an asset **Kind**: global typedef **Properties** | Name | Type | Default | Description | | --- | --- | --- | --- | | width | <code>number</code> | <code>20</code> | The width of the icon | | height | <code>number</code> | <code>20</code> | The height of the icon | | url | <code>string</code> | | The URL of the image to be used as the asset's icon | | scaleWithMap | <code>boolean</code> | <code>true</code> | Whether the asset's icon should scale with the map | | iconColor | <code>string</code> | | If no url is provided for the icon, the colour of the default icon | | confidenceMax | <code>number</code> | | The maximum radius of the confidence circle (in pixels) | | confidencePercent | <code>number</code> | | The confidence in the position of the item (between 0 and 1). 0 will hide the confidence circle; 1 will display the full circle | | confidenceColor | <code>string</code> | | The color of the confidence circle in hexadecimal format | | confidenceAlpha | <code>number</code> | | The transparency of the confidence circle (between 0 and 1) | | pulseColor | <code>string</code> | | The color of the pulse circle | | pulseStartAlpha | <code>number</code> | | The starting opacity of the pulse circle (between 0 and 1) | | pulseEndAlpha | <code>number</code> | | The ending opacity of the pulse circle (between 0 and 1) | | pulseDuration | <code>number</code> | | The length of time of the pulse animation (in seconds) | | pulseDelay | <code>number</code> | | The delay between pulse animation (in seconds) | | pulseVisible | <code>boolean</code> | | Whether the pulse should be visible | ## Classes <dl> <dt><a href="#Device">Device</a></dt> <dd></dd> <dt><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code></dt> <dd><p>Class representing a collection of Devices.</p> </dd> <dt><a href="#DeviceKit">DeviceKit</a></dt> <dd><p>Kit for working with Jibestream Devices</p> </dd> </dl> ## Typedefs <dl> <dt><a href="#DeviceViewConfig">DeviceViewConfig</a> : <code>Object</code></dt> <dd><p>The configuration object for the creation and update of an asset</p> </dd> </dl> <a name="Device"></a> ## Device **Kind**: global class * [Device](#Device) * [new Device()](#new_Device_new) * [.heading](#Device+heading) : <code>Number</code> * [.name](#Device+name) : <code>String</code> * [.waypointId](#Device+waypointId) : <code>Number</code> * [.mapId](#Device+mapId) : <code>Number</code> * [._getLocation(model)](#Device+_getLocation) <a name="new_Device_new"></a> ### new Device() Class representing a Device. <a name="Device+heading"></a> ### device.heading : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+name"></a> ### device.name : <code>String</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+waypointId"></a> ### device.waypointId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+mapId"></a> ### device.mapId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+_getLocation"></a> ### device._getLocation(model) Create a Device. **Kind**: instance method of [<code>Device</code>](#Device) | Param | Type | Description | | --- | --- | --- | | model | <code>object</code> | The model object passed back from the /full payload | <a name="DeviceCollection"></a> ## DeviceCollection ⇐ <code>jmap.core.BaseCollection</code> Class representing a collection of Devices. **Kind**: global class **Extends**: <code>jmap.core.BaseCollection</code> * [DeviceCollection](#DeviceCollection) ⇐ <code>jmap.core.BaseCollection</code> * [new DeviceCollection()](#new_DeviceCollection_new) * [.isDevice(item)](#DeviceCollection+isDevice) ⇒ <code>Boolean</code> * [.getByName(name)](#DeviceCollection+getByName) ⇒ <code>Array</code> * [.getByWaypoint(waypoint)](#DeviceCollection+getByWaypoint) ⇒ <code>Array</code> * [.getByMap(map)](#DeviceCollection+getByMap) ⇒ <code>Array</code> <a name="new_DeviceCollection_new"></a> ### new DeviceCollection() Create a collection of Devices. <a name="DeviceCollection+isDevice"></a> ### deviceCollection.isDevice(item) ⇒ <code>Boolean</code> Returns a boolean for weather or not argument is constructed as an Device object **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Boolean</code> - Boolean based on evaluation result | Param | Type | Description | | --- | --- | --- | | item | <code>Object</code> | Item to evaluate | <a name="DeviceCollection+getByName"></a> ### deviceCollection.getByName(name) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | name | <code>String</code> | A device name | <a name="DeviceCollection+getByWaypoint"></a> ### deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | Any waypoint to query with | <a name="DeviceCollection+getByMap"></a> ### deviceCollection.getByMap(map) ⇒ <code>Array</code> Get a specific set of devices belonging to a map **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | map | <code>jmap.core.Map</code> | Any map to query with | <a name="DeviceKit"></a> ## DeviceKit Kit for working with Jibestream Devices **Kind**: global class * [DeviceKit](#DeviceKit) * [new DeviceKit(core, control)](#new_DeviceKit_new) * [.getDevices(callback)](#DeviceKit+getDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.wayfindToDevice(callback, device, number)](#DeviceKit+wayfindToDevice) ⇒ <code>Array</code> * [.wayfindFromDevice(waypoint, device, number)](#DeviceKit+wayfindFromDevice) ⇒ <code>Array</code> * [.focusToDevice(callback, device, animation)](#DeviceKit+focusToDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.focusToDeviceWithHeading(device)](#DeviceKit+focusToDeviceWithHeading) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.getWaypointFromDevice(device)](#DeviceKit+getWaypointFromDevice) ⇒ <code>jmap.core.Waypoint</code> * [.addComponentOverDevice(device, component)](#DeviceKit+addComponentOverDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.removeComponentFromDevice(device)](#DeviceKit+removeComponentFromDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showDevice(device, config)](#DeviceKit+showDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideDevice(device)](#DeviceKit+hideDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showAllDevices(config)](#DeviceKit+showAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideAllDevices()](#DeviceKit+hideAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.pingDevice(device, onComplete)](#DeviceKit+pingDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) <a name="new_DeviceKit_new"></a> ### new DeviceKit(core, control) Create a DeviceKit. | Param | Type | Description | | --- | --- | --- | | core | <code>JCore</code> | instanciated JCore | | control | <code>JController</code> | instanciated JController | <a name="DeviceKit+getDevices"></a> ### deviceKit.getDevices(callback) ⇒ [<code>DeviceKit</code>](#DeviceKit) Make request to JACS to populate the DeviceCollection of the ActiveVenue **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>function</code> | callback fired when devices are ready, passes error, deviceCollection as arguments | <a name="DeviceKit+wayfindToDevice"></a> ### deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code> Draws a path to the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind from | | device | [<code>Device</code>](#Device) | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+wayfindFromDevice"></a> ### deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code> Draws a path from the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | [<code>Device</code>](#Device) | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+focusToDevice"></a> ### deviceKit.focusToDevice(callback, device, animation) ⇒ [<code>DeviceKit</code>](#DeviceKit) Focuses the view center to the position of the device, changes the mapView if needed **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | [<code>Device</code>](#Device) | device model | | animation | <code>jmap.Animation</code> | animation definition | <a name="DeviceKit+focusToDeviceWithHeading"></a> ### deviceKit.focusToDeviceWithHeading(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Rotates the map to match the device heading **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+getWaypointFromDevice"></a> ### deviceKit.getWaypointFromDevice(device) ⇒ <code>jmap.core.Waypoint</code> Returns the waypoint matching the device waypointId if the waypoint exists in a loaded map **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>jmap.core.Waypoint</code> - waypoint | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+addComponentOverDevice"></a> ### deviceKit.addComponentOverDevice(device, component) ⇒ [<code>DeviceKit</code>](#DeviceKit) Adds an html component ontop of your devoce, commonly used for 'You are here' indicators **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | component | <code>DOMElement</code> | any html element wrapped in a div | <a name="DeviceKit+removeComponentFromDevice"></a> ### deviceKit.removeComponentFromDevice(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Removes any html component added ontop of your device. **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+showDevice"></a> ### deviceKit.showDevice(device, config) ⇒ [<code>DeviceKit</code>](#DeviceKit) Display the device on its respecive map **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | config | [<code>DeviceViewConfig</code>](#DeviceViewConfig) | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideDevice"></a> ### deviceKit.hideDevice(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Hide the divice **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+showAllDevices"></a> ### deviceKit.showAllDevices(config) ⇒ [<code>DeviceKit</code>](#DeviceKit) Display all the devices on thier respecive maps **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | config | [<code>DeviceViewConfig</code>](#DeviceViewConfig) | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideAllDevices"></a> ### deviceKit.hideAllDevices() ⇒ [<code>DeviceKit</code>](#DeviceKit) Hides all divices **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit <a name="DeviceKit+pingDevice"></a> ### deviceKit.pingDevice(device, onComplete) ⇒ [<code>DeviceKit</code>](#DeviceKit) Plays a pulse animation for the decive once, fires an onComplete callback when done **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | onComplete | <code>function</code> | callback fired once animation is complete | <a name="DeviceViewConfig"></a> ## DeviceViewConfig : <code>Object</code> The configuration object for the creation and update of an asset **Kind**: global typedef **Properties** | Name | Type | Default | Description | | --- | --- | --- | --- | | width | <code>number</code> | <code>20</code> | The width of the icon | | height | <code>number</code> | <code>20</code> | The height of the icon | | url | <code>string</code> | | The URL of the image to be used as the asset's icon | | scaleWithMap | <code>boolean</code> | <code>true</code> | Whether the asset's icon should scale with the map | | iconColor | <code>string</code> | | If no url is provided for the icon, the colour of the default icon | | confidenceMax | <code>number</code> | | The maximum radius of the confidence circle (in pixels) | | confidencePercent | <code>number</code> | | The confidence in the position of the item (between 0 and 1). 0 will hide the confidence circle; 1 will display the full circle | | confidenceColor | <code>string</code> | | The color of the confidence circle in hexadecimal format | | confidenceAlpha | <code>number</code> | | The transparency of the confidence circle (between 0 and 1) | | pulseColor | <code>string</code> | | The color of the pulse circle | | pulseStartAlpha | <code>number</code> | | The starting opacity of the pulse circle (between 0 and 1) | | pulseEndAlpha | <code>number</code> | | The ending opacity of the pulse circle (between 0 and 1) | | pulseDuration | <code>number</code> | | The length of time of the pulse animation (in seconds) | | pulseDelay | <code>number</code> | | The delay between pulse animation (in seconds) | | pulseVisible | <code>boolean</code> | | Whether the pulse should be visible | ## Classes <dl> <dt><a href="#Device">Device</a></dt> <dd></dd> <dt><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code></dt> <dd><p>Class representing a collection of Devices.</p> </dd> <dt><a href="#DeviceKit">DeviceKit</a></dt> <dd><p>Kit for working with Jibestream Devices</p> </dd> </dl> ## Typedefs <dl> <dt><a href="#DeviceViewConfig">DeviceViewConfig</a> : <code>Object</code></dt> <dd><p>The configuration object for the creation and update of an asset</p> </dd> </dl> <a name="Device"></a> ## Device **Kind**: global class * [Device](#Device) * [new Device()](#new_Device_new) * [.heading](#Device+heading) : <code>Number</code> * [.name](#Device+name) : <code>String</code> * [.waypointId](#Device+waypointId) : <code>Number</code> * [.mapId](#Device+mapId) : <code>Number</code> * [._getLocation(model)](#Device+_getLocation) <a name="new_Device_new"></a> ### new Device() Class representing a Device. <a name="Device+heading"></a> ### device.heading : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+name"></a> ### device.name : <code>String</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+waypointId"></a> ### device.waypointId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+mapId"></a> ### device.mapId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+_getLocation"></a> ### device._getLocation(model) Create a Device. **Kind**: instance method of [<code>Device</code>](#Device) | Param | Type | Description | | --- | --- | --- | | model | <code>object</code> | The model object passed back from the /full payload | <a name="DeviceCollection"></a> ## DeviceCollection ⇐ <code>jmap.core.BaseCollection</code> Class representing a collection of Devices. **Kind**: global class **Extends**: <code>jmap.core.BaseCollection</code> * [DeviceCollection](#DeviceCollection) ⇐ <code>jmap.core.BaseCollection</code> * [new DeviceCollection()](#new_DeviceCollection_new) * [.isDevice(item)](#DeviceCollection+isDevice) ⇒ <code>Boolean</code> * [.getByName(name)](#DeviceCollection+getByName) ⇒ <code>Array</code> * [.getByWaypoint(waypoint)](#DeviceCollection+getByWaypoint) ⇒ <code>Array</code> * [.getByMap(map)](#DeviceCollection+getByMap) ⇒ <code>Array</code> <a name="new_DeviceCollection_new"></a> ### new DeviceCollection() Create a collection of Devices. <a name="DeviceCollection+isDevice"></a> ### deviceCollection.isDevice(item) ⇒ <code>Boolean</code> Returns a boolean for weather or not argument is constructed as an Device object **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Boolean</code> - Boolean based on evaluation result | Param | Type | Description | | --- | --- | --- | | item | <code>Object</code> | Item to evaluate | <a name="DeviceCollection+getByName"></a> ### deviceCollection.getByName(name) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | name | <code>String</code> | A device name | <a name="DeviceCollection+getByWaypoint"></a> ### deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | Any waypoint to query with | <a name="DeviceCollection+getByMap"></a> ### deviceCollection.getByMap(map) ⇒ <code>Array</code> Get a specific set of devices belonging to a map **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | map | <code>jmap.core.Map</code> | Any map to query with | <a name="DeviceKit"></a> ## DeviceKit Kit for working with Jibestream Devices **Kind**: global class * [DeviceKit](#DeviceKit) * [new DeviceKit(core, control)](#new_DeviceKit_new) * [.getDevices(callback)](#DeviceKit+getDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.wayfindToDevice(callback, device, number)](#DeviceKit+wayfindToDevice) ⇒ <code>Array</code> * [.wayfindFromDevice(waypoint, device, number)](#DeviceKit+wayfindFromDevice) ⇒ <code>Array</code> * [.focusToDevice(callback, device, animation)](#DeviceKit+focusToDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.focusToDeviceWithHeading(device)](#DeviceKit+focusToDeviceWithHeading) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.getWaypointFromDevice(device)](#DeviceKit+getWaypointFromDevice) ⇒ <code>jmap.core.Waypoint</code> * [.addComponentOverDevice(device, component)](#DeviceKit+addComponentOverDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.removeComponentFromDevice(device)](#DeviceKit+removeComponentFromDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showDevice(device, config)](#DeviceKit+showDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideDevice(device)](#DeviceKit+hideDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showAllDevices(config)](#DeviceKit+showAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideAllDevices()](#DeviceKit+hideAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.pingDevice(device, onComplete)](#DeviceKit+pingDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) <a name="new_DeviceKit_new"></a> ### new DeviceKit(core, control) Create a DeviceKit. | Param | Type | Description | | --- | --- | --- | | core | <code>JCore</code> | instanciated JCore | | control | <code>JController</code> | instanciated JController | <a name="DeviceKit+getDevices"></a> ### deviceKit.getDevices(callback) ⇒ [<code>DeviceKit</code>](#DeviceKit) Make request to JACS to populate the DeviceCollection of the ActiveVenue **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>function</code> | callback fired when devices are ready, passes error, deviceCollection as arguments | <a name="DeviceKit+wayfindToDevice"></a> ### deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code> Draws a path to the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind from | | device | [<code>Device</code>](#Device) | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+wayfindFromDevice"></a> ### deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code> Draws a path from the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | [<code>Device</code>](#Device) | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+focusToDevice"></a> ### deviceKit.focusToDevice(callback, device, animation) ⇒ [<code>DeviceKit</code>](#DeviceKit) Focuses the view center to the position of the device, changes the mapView if needed **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind to | | device | [<code>Device</code>](#Device) | device model | | animation | <code>jmap.Animation</code> | animation definition | <a name="DeviceKit+focusToDeviceWithHeading"></a> ### deviceKit.focusToDeviceWithHeading(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Rotates the map to match the device heading **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+getWaypointFromDevice"></a> ### deviceKit.getWaypointFromDevice(device) ⇒ <code>jmap.core.Waypoint</code> Returns the waypoint matching the device waypointId if the waypoint exists in a loaded map **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>jmap.core.Waypoint</code> - waypoint | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+addComponentOverDevice"></a> ### deviceKit.addComponentOverDevice(device, component) ⇒ [<code>DeviceKit</code>](#DeviceKit) Adds an html component ontop of your devoce, commonly used for 'You are here' indicators **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | component | <code>DOMElement</code> | any html element wrapped in a div | <a name="DeviceKit+removeComponentFromDevice"></a> ### deviceKit.removeComponentFromDevice(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Removes any html component added ontop of your device. **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+showDevice"></a> ### deviceKit.showDevice(device, config) ⇒ [<code>DeviceKit</code>](#DeviceKit) Display the device on its respecive map **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | config | [<code>DeviceViewConfig</code>](#DeviceViewConfig) | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideDevice"></a> ### deviceKit.hideDevice(device) ⇒ [<code>DeviceKit</code>](#DeviceKit) Hide the divice **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | <a name="DeviceKit+showAllDevices"></a> ### deviceKit.showAllDevices(config) ⇒ [<code>DeviceKit</code>](#DeviceKit) Display all the devices on thier respecive maps **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | config | [<code>DeviceViewConfig</code>](#DeviceViewConfig) | configuration used to generate the appearance of the device. only read the first time a device is shown | <a name="DeviceKit+hideAllDevices"></a> ### deviceKit.hideAllDevices() ⇒ [<code>DeviceKit</code>](#DeviceKit) Hides all divices **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit <a name="DeviceKit+pingDevice"></a> ### deviceKit.pingDevice(device, onComplete) ⇒ [<code>DeviceKit</code>](#DeviceKit) Plays a pulse animation for the decive once, fires an onComplete callback when done **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | device | [<code>Device</code>](#Device) | device model | | onComplete | <code>function</code> | callback fired once animation is complete | <a name="DeviceViewConfig"></a> ## DeviceViewConfig : <code>Object</code> The configuration object for the creation and update of an asset **Kind**: global typedef **Properties** | Name | Type | Default | Description | | --- | --- | --- | --- | | width | <code>number</code> | <code>20</code> | The width of the icon | | height | <code>number</code> | <code>20</code> | The height of the icon | | url | <code>string</code> | | The URL of the image to be used as the asset's icon | | scaleWithMap | <code>boolean</code> | <code>true</code> | Whether the asset's icon should scale with the map | | iconColor | <code>string</code> | | If no url is provided for the icon, the colour of the default icon | | confidenceMax | <code>number</code> | | The maximum radius of the confidence circle (in pixels) | | confidencePercent | <code>number</code> | | The confidence in the position of the item (between 0 and 1). 0 will hide the confidence circle; 1 will display the full circle | | confidenceColor | <code>string</code> | | The color of the confidence circle in hexadecimal format | | confidenceAlpha | <code>number</code> | | The transparency of the confidence circle (between 0 and 1) | | pulseColor | <code>string</code> | | The color of the pulse circle | | pulseStartAlpha | <code>number</code> | | The starting opacity of the pulse circle (between 0 and 1) | | pulseEndAlpha | <code>number</code> | | The ending opacity of the pulse circle (between 0 and 1) | | pulseDuration | <code>number</code> | | The length of time of the pulse animation (in seconds) | | pulseDelay | <code>number</code> | | The delay between pulse animation (in seconds) | | pulseVisible | <code>boolean</code> | | Whether the pulse should be visible | ## Classes <dl> <dt><a href="#Device">Device</a></dt> <dd></dd> <dt><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code></dt> <dd><p>Class representing a collection of Devices.</p> </dd> <dt><a href="#DeviceKit">DeviceKit</a></dt> <dd><p>Kit for working with Jibestream Devices</p> </dd> </dl> ## Typedefs <dl> <dt><a href="#DeviceViewConfig">DeviceViewConfig</a> : <code>Object</code></dt> <dd><p>The configuration object for the creation and update of an asset</p> </dd> </dl> <a name="Device"></a> ## Device **Kind**: global class * [Device](#Device) * [new Device()](#new_Device_new) * [.heading](#Device+heading) : <code>Number</code> * [.name](#Device+name) : <code>String</code> * [.waypointId](#Device+waypointId) : <code>Number</code> * [.mapId](#Device+mapId) : <code>Number</code> * [._getLocation(model)](#Device+_getLocation) <a name="new_Device_new"></a> ### new Device() Class representing a Device. <a name="Device+heading"></a> ### device.heading : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+name"></a> ### device.name : <code>String</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+waypointId"></a> ### device.waypointId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+mapId"></a> ### device.mapId : <code>Number</code> **Kind**: instance property of [<code>Device</code>](#Device) <a name="Device+_getLocation"></a> ### device._getLocation(model) Create a Device. **Kind**: instance method of [<code>Device</code>](#Device) | Param | Type | Description | | --- | --- | --- | | model | <code>object</code> | The model object passed back from the /full payload | <a name="DeviceCollection"></a> ## DeviceCollection ⇐ <code>jmap.core.BaseCollection</code> Class representing a collection of Devices. **Kind**: global class **Extends**: <code>jmap.core.BaseCollection</code> * [DeviceCollection](#DeviceCollection) ⇐ <code>jmap.core.BaseCollection</code> * [new DeviceCollection()](#new_DeviceCollection_new) * [.isDevice(item)](#DeviceCollection+isDevice) ⇒ <code>Boolean</code> * [.getByName(name)](#DeviceCollection+getByName) ⇒ <code>Array</code> * [.getByWaypoint(waypoint)](#DeviceCollection+getByWaypoint) ⇒ <code>Array</code> * [.getByMap(map)](#DeviceCollection+getByMap) ⇒ <code>Array</code> <a name="new_DeviceCollection_new"></a> ### new DeviceCollection() Create a collection of Devices. <a name="DeviceCollection+isDevice"></a> ### deviceCollection.isDevice(item) ⇒ <code>Boolean</code> Returns a boolean for weather or not argument is constructed as an Device object **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Boolean</code> - Boolean based on evaluation result | Param | Type | Description | | --- | --- | --- | | item | <code>Object</code> | Item to evaluate | <a name="DeviceCollection+getByName"></a> ### deviceCollection.getByName(name) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | name | <code>String</code> | A device name | <a name="DeviceCollection+getByWaypoint"></a> ### deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code> Get a specific set of devices belonging to a waypoint **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | waypoint | <code>jmap.core.Waypoint</code> | Any waypoint to query with | <a name="DeviceCollection+getByMap"></a> ### deviceCollection.getByMap(map) ⇒ <code>Array</code> Get a specific set of devices belonging to a map **Kind**: instance method of [<code>DeviceCollection</code>](#DeviceCollection) **Returns**: <code>Array</code> - an array of devices | Param | Type | Description | | --- | --- | --- | | map | <code>jmap.core.Map</code> | Any map to query with | <a name="DeviceKit"></a> ## DeviceKit Kit for working with Jibestream Devices **Kind**: global class * [DeviceKit](#DeviceKit) * [new DeviceKit(core, control)](#new_DeviceKit_new) * [.getDevices(callback)](#DeviceKit+getDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.wayfindToDevice(callback, device, number)](#DeviceKit+wayfindToDevice) ⇒ <code>Array</code> * [.wayfindFromDevice(waypoint, device, number)](#DeviceKit+wayfindFromDevice) ⇒ <code>Array</code> * [.focusToDevice(callback, device, animation)](#DeviceKit+focusToDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.focusToDeviceWithHeading(device)](#DeviceKit+focusToDeviceWithHeading) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.getWaypointFromDevice(device)](#DeviceKit+getWaypointFromDevice) ⇒ <code>jmap.core.Waypoint</code> * [.addComponentOverDevice(device, component)](#DeviceKit+addComponentOverDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.removeComponentFromDevice(device)](#DeviceKit+removeComponentFromDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showDevice(device, config)](#DeviceKit+showDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideDevice(device)](#DeviceKit+hideDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.showAllDevices(config)](#DeviceKit+showAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.hideAllDevices()](#DeviceKit+hideAllDevices) ⇒ [<code>DeviceKit</code>](#DeviceKit) * [.pingDevice(device, onComplete)](#DeviceKit+pingDevice) ⇒ [<code>DeviceKit</code>](#DeviceKit) <a name="new_DeviceKit_new"></a> ### new DeviceKit(core, control) Create a DeviceKit. | Param | Type | Description | | --- | --- | --- | | core | <code>JCore</code> | instanciated JCore | | control | <code>JController</code> | instanciated JController | <a name="DeviceKit+getDevices"></a> ### deviceKit.getDevices(callback) ⇒ [<code>DeviceKit</code>](#DeviceKit) Make request to JACS to populate the DeviceCollection of the ActiveVenue **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: [<code>DeviceKit</code>](#DeviceKit) - DeviceKit | Param | Type | Description | | --- | --- | --- | | callback | <code>function</code> | callback fired when devices are ready, passes error, deviceCollection as arguments | <a name="DeviceKit+wayfindToDevice"></a> ### deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code> Draws a path to the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description | | --- | --- | --- | | callback | <code>jmap.core.Waypoint</code> | waypoint to wayfind from | | device | [<code>Device</code>](#Device) | device model | | number | <code>accessLevel</code> | level of accessibility of the path | <a name="DeviceKit+wayfindFromDevice"></a> ### deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code> Draws a path from the selected device **Kind**: instance method of [<code>DeviceKit</code>](#DeviceKit) **Returns**: <code>Array</code> - List of path points, seperted by floor | Param | Type | Description |