@jibestream-dev/jmap-device-kit
Version:
Kit for the Jibestream SDK to utilize Devices plotted in the CMS
1,455 lines (1,371 loc) • 466 kB
HTML
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Jibestream Device Kit Documentation</title>
<meta name="description" content="Documentation for JMap Device Kit" />
<meta name="keywords" content="jmap device kit" />
<meta name="keyword" content="jmap device kit" />
<meta property="og:title" content="Jibestream Device Kit Documentation"/>
<meta property="og:type" content="website"/>
<meta property="og:image" content=""/>
<meta property="og:url" content=""/>
<script src="scripts/prettify/prettify.js"></script>
<script src="scripts/prettify/lang-css.js"></script>
<script src="scripts/jquery.min.js"></script>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
<link type="text/css" rel="stylesheet" href="styles/prettify-tomorrow.css">
<link type="text/css" rel="stylesheet" href="styles/bootstrap.min.css">
<link type="text/css" rel="stylesheet" href="styles/jaguar.css">
<script>
var config = {"monospaceLinks":false,"cleverLinks":false,"applicationName":"Jibestream Device Kit Documentation","disqus":"","googleAnalytics":"","openGraph":{"title":"Jibestream Device Kit Documentation","type":"website","image":"","site_name":"","url":""},"meta":{"title":"Jibestream Device Kit Documentation","description":"Documentation for JMap Device Kit","keyword":"jmap device kit"},"linenums":true,"default":{}};
</script>
</head>
<body>
<div id="wrap" class="clearfix">
<div class="navigation">
<h3 class="applicationName"><a href="index.html">Jibestream Device Kit Documentation</a></h3>
<div class="search">
<input id="search" type="text" class="form-control input-sm" placeholder="Search Documentations">
</div>
<ul class="list">
<li class="item" data-name="Device">
<span class="title">
<a href="Device.html">Device</a>
</span>
<ul class="members itemMembers">
<span class="subtitle">Members</span>
<li data-name="Device#heading"><a href="Device.html#heading">heading</a></li>
<li data-name="Device#mapId"><a href="Device.html#mapId">mapId</a></li>
<li data-name="Device#name"><a href="Device.html#name">name</a></li>
<li data-name="Device#waypointId"><a href="Device.html#waypointId">waypointId</a></li>
</ul>
<ul class="typedefs itemMembers">
</ul>
<ul class="methods itemMembers">
<span class="subtitle">Methods</span>
<li data-name="Device#_getLocation"><a href="Device.html#_getLocation">_getLocation</a></li>
</ul>
<ul class="events itemMembers">
</ul>
</li>
<li class="item" data-name="DeviceCollection">
<span class="title">
<a href="DeviceCollection.html">DeviceCollection</a>
</span>
<ul class="members itemMembers">
</ul>
<ul class="typedefs itemMembers">
</ul>
<ul class="methods itemMembers">
<span class="subtitle">Methods</span>
<li data-name="DeviceCollection#getByMap"><a href="DeviceCollection.html#getByMap">getByMap</a></li>
<li data-name="DeviceCollection#getByName"><a href="DeviceCollection.html#getByName">getByName</a></li>
<li data-name="DeviceCollection#getByWaypoint"><a href="DeviceCollection.html#getByWaypoint">getByWaypoint</a></li>
<li data-name="DeviceCollection#isDevice"><a href="DeviceCollection.html#isDevice">isDevice</a></li>
</ul>
<ul class="events itemMembers">
</ul>
</li>
<li class="item" data-name="DeviceKit">
<span class="title">
<a href="DeviceKit.html">DeviceKit</a>
</span>
<ul class="members itemMembers">
</ul>
<ul class="typedefs itemMembers">
</ul>
<ul class="methods itemMembers">
<span class="subtitle">Methods</span>
<li data-name="DeviceKit#addComponentOverDevice"><a href="DeviceKit.html#addComponentOverDevice">addComponentOverDevice</a></li>
<li data-name="DeviceKit#focusToDevice"><a href="DeviceKit.html#focusToDevice">focusToDevice</a></li>
<li data-name="DeviceKit#focusToDeviceWithHeading"><a href="DeviceKit.html#focusToDeviceWithHeading">focusToDeviceWithHeading</a></li>
<li data-name="DeviceKit#getDevices"><a href="DeviceKit.html#getDevices">getDevices</a></li>
<li data-name="DeviceKit#getWaypointFromDevice"><a href="DeviceKit.html#getWaypointFromDevice">getWaypointFromDevice</a></li>
<li data-name="DeviceKit#hideAllDevices"><a href="DeviceKit.html#hideAllDevices">hideAllDevices</a></li>
<li data-name="DeviceKit#hideDevice"><a href="DeviceKit.html#hideDevice">hideDevice</a></li>
<li data-name="DeviceKit#pingDevice"><a href="DeviceKit.html#pingDevice">pingDevice</a></li>
<li data-name="DeviceKit#removeComponentFromDevice"><a href="DeviceKit.html#removeComponentFromDevice">removeComponentFromDevice</a></li>
<li data-name="DeviceKit#showAllDevices"><a href="DeviceKit.html#showAllDevices">showAllDevices</a></li>
<li data-name="DeviceKit#showDevice"><a href="DeviceKit.html#showDevice">showDevice</a></li>
<li data-name="DeviceKit#wayfindFromDevice"><a href="DeviceKit.html#wayfindFromDevice">wayfindFromDevice</a></li>
<li data-name="DeviceKit#wayfindToDevice"><a href="DeviceKit.html#wayfindToDevice">wayfindToDevice</a></li>
</ul>
<ul class="events itemMembers">
</ul>
</li>
</ul>
</div>
<div class="main">
<h1 class="page-title" data-filename="index.html">Index</h1>
<h3> </h3>
<section>
<article class="readme"><h1>DeviceKit</h1><p>Jibestream plugin for using Devices</p>
<h3>Documentation</h3><h2>Classes</h2><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>
<h2>Typedefs</h2><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>
<p><a name="Device"></a></p>
<h2>Device</h2><p><strong>Kind</strong>: global class </p>
<ul>
<li><a href="#Device">Device</a><ul>
<li><a href="#new_Device_new">new Device()</a></li>
<li><a href="#Device+heading">.heading</a> : <code>Number</code></li>
<li><a href="#Device+name">.name</a> : <code>String</code></li>
<li><a href="#Device+waypointId">.waypointId</a> : <code>Number</code></li>
<li><a href="#Device+mapId">.mapId</a> : <code>Number</code></li>
<li><a href="#Device+_getLocation">._getLocation(model)</a></li>
</ul>
</li>
</ul>
<p><a name="new_Device_new"></a></p>
<h3>new Device()</h3><p>Class representing a Device.</p>
<p><a name="Device+heading"></a></p>
<h3>device.heading : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <code><a href="#Device">Device</a></code><br><a name="Device+name"></a></p>
<h3>device.name : <code>String</code></h3><p><strong>Kind</strong>: instance property of <code><a href="#Device">Device</a></code><br><a name="Device+waypointId"></a></p>
<h3>device.waypointId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <code><a href="#Device">Device</a></code><br><a name="Device+mapId"></a></p>
<h3>device.mapId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <code><a href="#Device">Device</a></code><br><a name="Device+_getLocation"></a></p>
<h3>device._getLocation(model)</h3><p>Create a Device.</p>
<p><strong>Kind</strong>: instance method of <code><a href="#Device">Device</a></code> </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>model</td>
<td><code>object</code></td>
<td>The model object passed back from the /full payload</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection"></a></p>
<h2>DeviceCollection ⇐ <code>jmap.core.BaseCollection</code></h2><p>Class representing a collection of Devices.</p>
<p><strong>Kind</strong>: global class<br><strong>Extends</strong>: <code>jmap.core.BaseCollection</code> </p>
<ul>
<li><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code><ul>
<li><a href="#new_DeviceCollection_new">new DeviceCollection()</a></li>
<li><a href="#DeviceCollection+isDevice">.isDevice(item)</a> ⇒ <code>Boolean</code></li>
<li><a href="#DeviceCollection+getByName">.getByName(name)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByWaypoint">.getByWaypoint(waypoint)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByMap">.getByMap(map)</a> ⇒ <code>Array</code></li>
</ul>
</li>
</ul>
<p><a name="new_DeviceCollection_new"></a></p>
<h3>new DeviceCollection()</h3><p>Create a collection of Devices.</p>
<p><a name="DeviceCollection+isDevice"></a></p>
<h3>deviceCollection.isDevice(item) ⇒ <code>Boolean</code></h3><p>Returns a boolean for weather or not argument is constructed as an Device object</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceCollection">DeviceCollection</a></code><br><strong>Returns</strong>: <code>Boolean</code> - Boolean based on evaluation result </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>item</td>
<td><code>Object</code></td>
<td>Item to evaluate</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByName"></a></p>
<h3>deviceCollection.getByName(name) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceCollection">DeviceCollection</a></code><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>name</td>
<td><code>String</code></td>
<td>A device name</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByWaypoint"></a></p>
<h3>deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceCollection">DeviceCollection</a></code><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>waypoint</td>
<td><code>jmap.core.Waypoint</code></td>
<td>Any waypoint to query with</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByMap"></a></p>
<h3>deviceCollection.getByMap(map) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a map</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceCollection">DeviceCollection</a></code><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>map</td>
<td><code>jmap.core.Map</code></td>
<td>Any map to query with</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit"></a></p>
<h2>DeviceKit</h2><p>Kit for working with Jibestream Devices</p>
<p><strong>Kind</strong>: global class </p>
<ul>
<li><a href="#DeviceKit">DeviceKit</a><ul>
<li><a href="#new_DeviceKit_new">new DeviceKit(core, control)</a></li>
<li><a href="#DeviceKit+getDevices">.getDevices(callback)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+wayfindToDevice">.wayfindToDevice(callback, device, number)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceKit+wayfindFromDevice">.wayfindFromDevice(waypoint, device, number)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceKit+focusToDevice">.focusToDevice(callback, device, animation)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+focusToDeviceWithHeading">.focusToDeviceWithHeading(device)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+getWaypointFromDevice">.getWaypointFromDevice(device)</a> ⇒ <code>jmap.core.Waypoint</code></li>
<li><a href="#DeviceKit+addComponentOverDevice">.addComponentOverDevice(device, component)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+removeComponentFromDevice">.removeComponentFromDevice(device)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+showDevice">.showDevice(device, config)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+hideDevice">.hideDevice(device)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+showAllDevices">.showAllDevices(config)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+hideAllDevices">.hideAllDevices()</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
<li><a href="#DeviceKit+pingDevice">.pingDevice(device, onComplete)</a> ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></li>
</ul>
</li>
</ul>
<p><a name="new_DeviceKit_new"></a></p>
<h3>new DeviceKit(core, control)</h3><p>Create a DeviceKit.</p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>core</td>
<td><code>JCore</code></td>
<td>instanciated JCore</td>
</tr>
<tr>
<td>control</td>
<td><code>JController</code></td>
<td>instanciated JController</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+getDevices"></a></p>
<h3>deviceKit.getDevices(callback) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Make request to JACS to populate the DeviceCollection of the ActiveVenue</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>function</code></td>
<td>callback fired when devices are ready, passes error, deviceCollection as arguments</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+wayfindToDevice"></a></p>
<h3>deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code></h3><p>Draws a path to the selected device</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code>Array</code> - List of path points, seperted by floor </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind from</td>
</tr>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>number</td>
<td><code>accessLevel</code></td>
<td>level of accessibility of the path</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+wayfindFromDevice"></a></p>
<h3>deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code></h3><p>Draws a path from the selected device</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code>Array</code> - List of path points, seperted by floor </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>waypoint</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind to</td>
</tr>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>number</td>
<td><code>accessLevel</code></td>
<td>level of accessibility of the path</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+focusToDevice"></a></p>
<h3>deviceKit.focusToDevice(callback, device, animation) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Focuses the view center to the position of the device, changes the mapView if needed</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind to</td>
</tr>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>animation</td>
<td><code>jmap.Animation</code></td>
<td>animation definition</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+focusToDeviceWithHeading"></a></p>
<h3>deviceKit.focusToDeviceWithHeading(device) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Rotates the map to match the device heading</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+getWaypointFromDevice"></a></p>
<h3>deviceKit.getWaypointFromDevice(device) ⇒ <code>jmap.core.Waypoint</code></h3><p>Returns the waypoint matching the device waypointId if the waypoint exists in a loaded map</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code>jmap.core.Waypoint</code> - waypoint </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+addComponentOverDevice"></a></p>
<h3>deviceKit.addComponentOverDevice(device, component) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Adds an html component ontop of your devoce, commonly used for 'You are here' indicators</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>component</td>
<td><code>DOMElement</code></td>
<td>any html element wrapped in a div</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+removeComponentFromDevice"></a></p>
<h3>deviceKit.removeComponentFromDevice(device) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Removes any html component added ontop of your device.</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+showDevice"></a></p>
<h3>deviceKit.showDevice(device, config) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Display the device on its respecive map</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>config</td>
<td><code><a href="#DeviceViewConfig">DeviceViewConfig</a></code></td>
<td>configuration used to generate the appearance of the device. only read the first time a device is shown</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+hideDevice"></a></p>
<h3>deviceKit.hideDevice(device) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Hide the divice</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+showAllDevices"></a></p>
<h3>deviceKit.showAllDevices(config) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Display all the devices on thier respecive maps</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>config</td>
<td><code><a href="#DeviceViewConfig">DeviceViewConfig</a></code></td>
<td>configuration used to generate the appearance of the device. only read the first time a device is shown</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+hideAllDevices"></a></p>
<h3>deviceKit.hideAllDevices() ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Hides all divices</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit<br><a name="DeviceKit+pingDevice"></a></p>
<h3>deviceKit.pingDevice(device, onComplete) ⇒ <code><a href="#DeviceKit">DeviceKit</a></code></h3><p>Plays a pulse animation for the decive once, fires an onComplete callback when done</p>
<p><strong>Kind</strong>: instance method of <code><a href="#DeviceKit">DeviceKit</a></code><br><strong>Returns</strong>: <code><a href="#DeviceKit">DeviceKit</a></code> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><code><a href="#Device">Device</a></code></td>
<td>device model</td>
</tr>
<tr>
<td>onComplete</td>
<td><code>function</code></td>
<td>callback fired once animation is complete</td>
</tr>
</tbody>
</table>
<p><a name="DeviceViewConfig"></a></p>
<h2>DeviceViewConfig : <code>Object</code></h2><p>The configuration object for the creation and update of an asset</p>
<p><strong>Kind</strong>: global typedef<br><strong>Properties</strong></p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>width</td>
<td><code>number</code></td>
<td><code>20</code></td>
<td>The width of the icon</td>
</tr>
<tr>
<td>height</td>
<td><code>number</code></td>
<td><code>20</code></td>
<td>The height of the icon</td>
</tr>
<tr>
<td>url</td>
<td><code>string</code></td>
<td></td>
<td>The URL of the image to be used as the asset's icon</td>
</tr>
<tr>
<td>scaleWithMap</td>
<td><code>boolean</code></td>
<td><code>true</code></td>
<td>Whether the asset's icon should scale with the map</td>
</tr>
<tr>
<td>iconColor</td>
<td><code>string</code></td>
<td></td>
<td>If no url is provided for the icon, the colour of the default icon</td>
</tr>
<tr>
<td>confidenceMax</td>
<td><code>number</code></td>
<td></td>
<td>The maximum radius of the confidence circle (in pixels)</td>
</tr>
<tr>
<td>confidencePercent</td>
<td><code>number</code></td>
<td></td>
<td>The confidence in the position of the item (between 0 and 1). 0 will hide the confidence circle; 1 will display the full circle</td>
</tr>
<tr>
<td>confidenceColor</td>
<td><code>string</code></td>
<td></td>
<td>The color of the confidence circle in hexadecimal format</td>
</tr>
<tr>
<td>confidenceAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The transparency of the confidence circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseColor</td>
<td><code>string</code></td>
<td></td>
<td>The color of the pulse circle</td>
</tr>
<tr>
<td>pulseStartAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The starting opacity of the pulse circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseEndAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The ending opacity of the pulse circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseDuration</td>
<td><code>number</code></td>
<td></td>
<td>The length of time of the pulse animation (in seconds)</td>
</tr>
<tr>
<td>pulseDelay</td>
<td><code>number</code></td>
<td></td>
<td>The delay between pulse animation (in seconds)</td>
</tr>
<tr>
<td>pulseVisible</td>
<td><code>boolean</code></td>
<td></td>
<td>Whether the pulse should be visible</td>
</tr>
</tbody>
</table>
<h2>Classes</h2><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>
<h2>Typedefs</h2><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>
<p><a name="Device"></a></p>
<h2>Device</h2><p><strong>Kind</strong>: global class </p>
<ul>
<li><a href="#Device">Device</a><ul>
<li><a href="#new_Device_new">new Device()</a></li>
<li><a href="#Device+heading">.heading</a> : <code>Number</code></li>
<li><a href="#Device+name">.name</a> : <code>String</code></li>
<li><a href="#Device+waypointId">.waypointId</a> : <code>Number</code></li>
<li><a href="#Device+mapId">.mapId</a> : <code>Number</code></li>
<li><a href="#Device+_getLocation">._getLocation(model)</a></li>
</ul>
</li>
</ul>
<p><a name="new_Device_new"></a></p>
<h3>new Device()</h3><p>Class representing a Device.</p>
<p><a name="Device+heading"></a></p>
<h3>device.heading : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+name"></a></p>
<h3>device.name : <code>String</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+waypointId"></a></p>
<h3>device.waypointId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+mapId"></a></p>
<h3>device.mapId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+_getLocation"></a></p>
<h3>device._getLocation(model)</h3><p>Create a Device.</p>
<p><strong>Kind</strong>: instance method of <a href="#Device"><code>Device</code></a> </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>model</td>
<td><code>object</code></td>
<td>The model object passed back from the /full payload</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection"></a></p>
<h2>DeviceCollection ⇐ <code>jmap.core.BaseCollection</code></h2><p>Class representing a collection of Devices.</p>
<p><strong>Kind</strong>: global class<br><strong>Extends</strong>: <code>jmap.core.BaseCollection</code> </p>
<ul>
<li><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code><ul>
<li><a href="#new_DeviceCollection_new">new DeviceCollection()</a></li>
<li><a href="#DeviceCollection+isDevice">.isDevice(item)</a> ⇒ <code>Boolean</code></li>
<li><a href="#DeviceCollection+getByName">.getByName(name)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByWaypoint">.getByWaypoint(waypoint)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByMap">.getByMap(map)</a> ⇒ <code>Array</code></li>
</ul>
</li>
</ul>
<p><a name="new_DeviceCollection_new"></a></p>
<h3>new DeviceCollection()</h3><p>Create a collection of Devices.</p>
<p><a name="DeviceCollection+isDevice"></a></p>
<h3>deviceCollection.isDevice(item) ⇒ <code>Boolean</code></h3><p>Returns a boolean for weather or not argument is constructed as an Device object</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Boolean</code> - Boolean based on evaluation result </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>item</td>
<td><code>Object</code></td>
<td>Item to evaluate</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByName"></a></p>
<h3>deviceCollection.getByName(name) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>name</td>
<td><code>String</code></td>
<td>A device name</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByWaypoint"></a></p>
<h3>deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>waypoint</td>
<td><code>jmap.core.Waypoint</code></td>
<td>Any waypoint to query with</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByMap"></a></p>
<h3>deviceCollection.getByMap(map) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a map</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>map</td>
<td><code>jmap.core.Map</code></td>
<td>Any map to query with</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit"></a></p>
<h2>DeviceKit</h2><p>Kit for working with Jibestream Devices</p>
<p><strong>Kind</strong>: global class </p>
<ul>
<li><a href="#DeviceKit">DeviceKit</a><ul>
<li><a href="#new_DeviceKit_new">new DeviceKit(core, control)</a></li>
<li><a href="#DeviceKit+getDevices">.getDevices(callback)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+wayfindToDevice">.wayfindToDevice(callback, device, number)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceKit+wayfindFromDevice">.wayfindFromDevice(waypoint, device, number)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceKit+focusToDevice">.focusToDevice(callback, device, animation)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+focusToDeviceWithHeading">.focusToDeviceWithHeading(device)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+getWaypointFromDevice">.getWaypointFromDevice(device)</a> ⇒ <code>jmap.core.Waypoint</code></li>
<li><a href="#DeviceKit+addComponentOverDevice">.addComponentOverDevice(device, component)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+removeComponentFromDevice">.removeComponentFromDevice(device)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+showDevice">.showDevice(device, config)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+hideDevice">.hideDevice(device)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+showAllDevices">.showAllDevices(config)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+hideAllDevices">.hideAllDevices()</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
<li><a href="#DeviceKit+pingDevice">.pingDevice(device, onComplete)</a> ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></li>
</ul>
</li>
</ul>
<p><a name="new_DeviceKit_new"></a></p>
<h3>new DeviceKit(core, control)</h3><p>Create a DeviceKit.</p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>core</td>
<td><code>JCore</code></td>
<td>instanciated JCore</td>
</tr>
<tr>
<td>control</td>
<td><code>JController</code></td>
<td>instanciated JController</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+getDevices"></a></p>
<h3>deviceKit.getDevices(callback) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Make request to JACS to populate the DeviceCollection of the ActiveVenue</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>function</code></td>
<td>callback fired when devices are ready, passes error, deviceCollection as arguments</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+wayfindToDevice"></a></p>
<h3>deviceKit.wayfindToDevice(callback, device, number) ⇒ <code>Array</code></h3><p>Draws a path to the selected device</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <code>Array</code> - List of path points, seperted by floor </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind from</td>
</tr>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>number</td>
<td><code>accessLevel</code></td>
<td>level of accessibility of the path</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+wayfindFromDevice"></a></p>
<h3>deviceKit.wayfindFromDevice(waypoint, device, number) ⇒ <code>Array</code></h3><p>Draws a path from the selected device</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <code>Array</code> - List of path points, seperted by floor </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>waypoint</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind to</td>
</tr>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>number</td>
<td><code>accessLevel</code></td>
<td>level of accessibility of the path</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+focusToDevice"></a></p>
<h3>deviceKit.focusToDevice(callback, device, animation) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Focuses the view center to the position of the device, changes the mapView if needed</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>callback</td>
<td><code>jmap.core.Waypoint</code></td>
<td>waypoint to wayfind to</td>
</tr>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>animation</td>
<td><code>jmap.Animation</code></td>
<td>animation definition</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+focusToDeviceWithHeading"></a></p>
<h3>deviceKit.focusToDeviceWithHeading(device) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Rotates the map to match the device heading</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+getWaypointFromDevice"></a></p>
<h3>deviceKit.getWaypointFromDevice(device) ⇒ <code>jmap.core.Waypoint</code></h3><p>Returns the waypoint matching the device waypointId if the waypoint exists in a loaded map</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <code>jmap.core.Waypoint</code> - waypoint </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+addComponentOverDevice"></a></p>
<h3>deviceKit.addComponentOverDevice(device, component) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Adds an html component ontop of your devoce, commonly used for 'You are here' indicators</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>component</td>
<td><code>DOMElement</code></td>
<td>any html element wrapped in a div</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+removeComponentFromDevice"></a></p>
<h3>deviceKit.removeComponentFromDevice(device) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Removes any html component added ontop of your device.</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+showDevice"></a></p>
<h3>deviceKit.showDevice(device, config) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Display the device on its respecive map</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>config</td>
<td><a href="#DeviceViewConfig"><code>DeviceViewConfig</code></a></td>
<td>configuration used to generate the appearance of the device. only read the first time a device is shown</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+hideDevice"></a></p>
<h3>deviceKit.hideDevice(device) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Hide the divice</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+showAllDevices"></a></p>
<h3>deviceKit.showAllDevices(config) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Display all the devices on thier respecive maps</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>config</td>
<td><a href="#DeviceViewConfig"><code>DeviceViewConfig</code></a></td>
<td>configuration used to generate the appearance of the device. only read the first time a device is shown</td>
</tr>
</tbody>
</table>
<p><a name="DeviceKit+hideAllDevices"></a></p>
<h3>deviceKit.hideAllDevices() ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Hides all divices</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit<br><a name="DeviceKit+pingDevice"></a></p>
<h3>deviceKit.pingDevice(device, onComplete) ⇒ <a href="#DeviceKit"><code>DeviceKit</code></a></h3><p>Plays a pulse animation for the decive once, fires an onComplete callback when done</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceKit"><code>DeviceKit</code></a><br><strong>Returns</strong>: <a href="#DeviceKit"><code>DeviceKit</code></a> - DeviceKit </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>device</td>
<td><a href="#Device"><code>Device</code></a></td>
<td>device model</td>
</tr>
<tr>
<td>onComplete</td>
<td><code>function</code></td>
<td>callback fired once animation is complete</td>
</tr>
</tbody>
</table>
<p><a name="DeviceViewConfig"></a></p>
<h2>DeviceViewConfig : <code>Object</code></h2><p>The configuration object for the creation and update of an asset</p>
<p><strong>Kind</strong>: global typedef<br><strong>Properties</strong></p>
<table>
<thead>
<tr>
<th>Name</th>
<th>Type</th>
<th>Default</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>width</td>
<td><code>number</code></td>
<td><code>20</code></td>
<td>The width of the icon</td>
</tr>
<tr>
<td>height</td>
<td><code>number</code></td>
<td><code>20</code></td>
<td>The height of the icon</td>
</tr>
<tr>
<td>url</td>
<td><code>string</code></td>
<td></td>
<td>The URL of the image to be used as the asset's icon</td>
</tr>
<tr>
<td>scaleWithMap</td>
<td><code>boolean</code></td>
<td><code>true</code></td>
<td>Whether the asset's icon should scale with the map</td>
</tr>
<tr>
<td>iconColor</td>
<td><code>string</code></td>
<td></td>
<td>If no url is provided for the icon, the colour of the default icon</td>
</tr>
<tr>
<td>confidenceMax</td>
<td><code>number</code></td>
<td></td>
<td>The maximum radius of the confidence circle (in pixels)</td>
</tr>
<tr>
<td>confidencePercent</td>
<td><code>number</code></td>
<td></td>
<td>The confidence in the position of the item (between 0 and 1). 0 will hide the confidence circle; 1 will display the full circle</td>
</tr>
<tr>
<td>confidenceColor</td>
<td><code>string</code></td>
<td></td>
<td>The color of the confidence circle in hexadecimal format</td>
</tr>
<tr>
<td>confidenceAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The transparency of the confidence circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseColor</td>
<td><code>string</code></td>
<td></td>
<td>The color of the pulse circle</td>
</tr>
<tr>
<td>pulseStartAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The starting opacity of the pulse circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseEndAlpha</td>
<td><code>number</code></td>
<td></td>
<td>The ending opacity of the pulse circle (between 0 and 1)</td>
</tr>
<tr>
<td>pulseDuration</td>
<td><code>number</code></td>
<td></td>
<td>The length of time of the pulse animation (in seconds)</td>
</tr>
<tr>
<td>pulseDelay</td>
<td><code>number</code></td>
<td></td>
<td>The delay between pulse animation (in seconds)</td>
</tr>
<tr>
<td>pulseVisible</td>
<td><code>boolean</code></td>
<td></td>
<td>Whether the pulse should be visible</td>
</tr>
</tbody>
</table>
<h2>Classes</h2><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>
<h2>Typedefs</h2><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>
<p><a name="Device"></a></p>
<h2>Device</h2><p><strong>Kind</strong>: global class </p>
<ul>
<li><a href="#Device">Device</a><ul>
<li><a href="#new_Device_new">new Device()</a></li>
<li><a href="#Device+heading">.heading</a> : <code>Number</code></li>
<li><a href="#Device+name">.name</a> : <code>String</code></li>
<li><a href="#Device+waypointId">.waypointId</a> : <code>Number</code></li>
<li><a href="#Device+mapId">.mapId</a> : <code>Number</code></li>
<li><a href="#Device+_getLocation">._getLocation(model)</a></li>
</ul>
</li>
</ul>
<p><a name="new_Device_new"></a></p>
<h3>new Device()</h3><p>Class representing a Device.</p>
<p><a name="Device+heading"></a></p>
<h3>device.heading : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+name"></a></p>
<h3>device.name : <code>String</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+waypointId"></a></p>
<h3>device.waypointId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+mapId"></a></p>
<h3>device.mapId : <code>Number</code></h3><p><strong>Kind</strong>: instance property of <a href="#Device"><code>Device</code></a><br><a name="Device+_getLocation"></a></p>
<h3>device._getLocation(model)</h3><p>Create a Device.</p>
<p><strong>Kind</strong>: instance method of <a href="#Device"><code>Device</code></a> </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>model</td>
<td><code>object</code></td>
<td>The model object passed back from the /full payload</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection"></a></p>
<h2>DeviceCollection ⇐ <code>jmap.core.BaseCollection</code></h2><p>Class representing a collection of Devices.</p>
<p><strong>Kind</strong>: global class<br><strong>Extends</strong>: <code>jmap.core.BaseCollection</code> </p>
<ul>
<li><a href="#DeviceCollection">DeviceCollection</a> ⇐ <code>jmap.core.BaseCollection</code><ul>
<li><a href="#new_DeviceCollection_new">new DeviceCollection()</a></li>
<li><a href="#DeviceCollection+isDevice">.isDevice(item)</a> ⇒ <code>Boolean</code></li>
<li><a href="#DeviceCollection+getByName">.getByName(name)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByWaypoint">.getByWaypoint(waypoint)</a> ⇒ <code>Array</code></li>
<li><a href="#DeviceCollection+getByMap">.getByMap(map)</a> ⇒ <code>Array</code></li>
</ul>
</li>
</ul>
<p><a name="new_DeviceCollection_new"></a></p>
<h3>new DeviceCollection()</h3><p>Create a collection of Devices.</p>
<p><a name="DeviceCollection+isDevice"></a></p>
<h3>deviceCollection.isDevice(item) ⇒ <code>Boolean</code></h3><p>Returns a boolean for weather or not argument is constructed as an Device object</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Boolean</code> - Boolean based on evaluation result </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>item</td>
<td><code>Object</code></td>
<td>Item to evaluate</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByName"></a></p>
<h3>deviceCollection.getByName(name) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>name</td>
<td><code>String</code></td>
<td>A device name</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByWaypoint"></a></p>
<h3>deviceCollection.getByWaypoint(waypoint) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a waypoint</p>
<p><strong>Kind</strong>: instance method of <a href="#DeviceCollection"><code>DeviceCollection</code></a><br><strong>Returns</strong>: <code>Array</code> - an array of devices </p>
<table>
<thead>
<tr>
<th>Param</th>
<th>Type</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
<td>waypoint</td>
<td><code>jmap.core.Waypoint</code></td>
<td>Any waypoint to query with</td>
</tr>
</tbody>
</table>
<p><a name="DeviceCollection+getByMap"></a></p>
<h3>deviceCollection.getByMap(map) ⇒ <code>Array</code></h3><p>Get a specific set of devices belonging to a map</p>
<p><st