# NSM - Fleet Monitor - User Guide # - [Overview](#overview) - [View Layouts](#viewlayouts) - [Operations](#operations) - [Units](#operations-unit) - [Update](#operations-unit) - [Location request (AVL Poll)](#operations-unit) - [Pinpoint (relocate)](#operations-unit) - [AVL Poll (solicit unit location)](#operations-unit) - [Messaging](#operations-unit) - [Highlighting](#operations-unit) - [Status](#status) - [Duress Alerting](#duress-alerting) - [Recommend closest units](#unit-recommend) - [Events](#operations-event) - [Create event](#operations-event) - [Update](#operations-event) - [Close/Disposition/Removing events](#operations-event) - [Multi location events](#operations-event) - [Location search (Geocoding)](#operations-event) - [Location pinpoint (Reverse Geocoding)](#operations-event) - [Assignment of events](#operations-event) - [Assignment updates](#operations-event) - [Recommend closest units](#operations-event) - [Messaging](#operations-messaging) - [Configuration Parameters](#config) - [Log Triggers](#logtriggers) - [SyncObject Info](#syncobject) - [Importing](#importing) - [Monitoring](/doc-module-dispatcher-monitoring) <div id="overview"></div> ## Overview ## <center> <img src="/content/images/doc-module-fleet2.png"/> </center> NSM Fleet Monitor provides a real time snap shot of active devices and active events on a supported network. In addition, NSM fleet monitor provides: - Smart Searching - Search devices or dispatches using a matching string value. For example, 'SPH' will return all active units with SPH in their callsign. - Link search of devices to dispatches or vice versa so that selecting a dispatch automatically selects the associated units. - Fast Filtering & Sorting - Filter or sort the device and event list by common filtering criteria. - High Speed Tiled Spatial Mapping - Uses a locally cached high speed tiled mapping interface where tiles are only downloaded when required and zooming through layers occurs smoothly. - Alarms - The fleet unit properties and event properties may be configured to raise alarms directly to the interface to warn monitoring personnel of important changes, such as 'a new high priority events has been added' or 'unit has entered the emergency/duress status'. <div id="viewlayouts"></div> ## View Layouts ## The fleet module supports 2 view layouts as follows. Both layouts are visual only - functionality between each view should be identical. 1. 'Default View'. The standard single window 'monitor' view, best for monitoring workstations with single monitors. 1. 'Dispatcher View' spanning multiple monitors. Best for dispatch operations with multiple monitors. <img src="/content/images/doc-module-fleet-views.png"/> The view mode may be selected at any time via the menu option: Fleet -> Views -> (configured view) <div id="operations"></div> ## Operations ## <div id="operations-unit"></div> ### Units ### To perform an operation on any unit in the fleet monitor, select it. The device shall highlight and the last known location shall be shown on the map. The unit list may be templated so that different units may display differently in the list to other units (for example Radios vs Mobile Data Terminals). To identify different match patterns, see the 'Unit Template' settings in configuration. The unit list is presented as follows with configurable filters, sorts, search criteria and templates for items in the unit list. Full details on searching and sorting is available [here](/doc-search.sshtml). In addition, the data model representing the unit list is replayable depending on your configuration. If replay is available, you may read more on how to re-run the visual data on demand by reading [here](doc-replay.sshtml). <img src="/content/images/doc-module-fleet-unit-definition-list.png"/> All remaining operations on units require the configuration parameter 'Show Unit Details' enabled in configuration. If this is enabled, the following view shall appear left of the unit list. The remainder of this section discusses the options in this view. <img src="/content/images/doc-module-fleet-unit-definition-detail.png"/> ### Update ### <img src="/content/images/doc-module-fleet-unit-definition-detail-update.png"/> You may update any of the following properties on a selected unit: * Car ID (or device ID) * Version * Callsign * Status * Department (or Agency) * Location (see pinpoint below) > Note: The names displayed here for these properties are default only and may be set to any other name in the configuration profile. It is also possible to set miscellaneous fields on units for the purpose of tagging devices with common properties (for example, equipment in unit or radio IDs in unit). Whilst this may be achieved, it is only available to server side updates, although this may change in future versions. To update unit properties first select the device, modify the required attribute in the unit detail dialog and then select the 'Update' (tick) icon. The update shall display immediately across all NSM clients in the service domain. ### Location request (AVL Poll) ### <img src="/content/images/doc-module-fleet-unit-definition-detail-poll.png"/> <img src="/content/images/doc-module-fleet-unit-definition-detail-spinner.png"/> Location request is the process of requesting from the device its current location at any point in time. This is useful where it is deemed a reported location is incorrect or old, or to determine whether the unit is responding on the mobile network. AVL (automatic vehicle location) poll is possible where the connected device provides a location request API. To AVL poll a unit the client initiates a request to the device and considers the response received when the location is updated for the device. Whilst the request is pending, or until the next location update is received for the device, a spinner indicator appears in the unit details dialog. ### Pinpoint (relocate) ### <img src="/content/images/doc-module-fleet-unit-definition-detail-pinpoint.png"/> Pinpointing a unit is the process of manually setting the location of the unit from the client interface. Pinpointing is used where either no AVL data is available or the unit location is incorrect and should be moved. To pinpoint a unit first select it, depress the pinpoint toggle button, then select the point on the map to place the unit. The relocation shall display immediately across all NSM clients in the service domain. ### Messaging ### <img src="/content/images/doc-module-fleet-unit-definition-detail-message.png"/> Unit messaging is possible where the connected device provides a messaging API. By default, the messaging system supports 2 way acknowledged messaging where users can determine whether a message has been sent, received and read. Similarly the operator is notified on arrival of a message from a remote device and may read it together with message history. <img src="/content/images/doc-module-fleet-unit-definition-detail-message-detail.png"/> To send a message to a unit, select it from the unit list, select the 'new message' button, type a subject and message body and select the 'Send' button (tick). The message history shall update to show the message in transit and shall update based on received acknowledgements from the network. Any message in the message history may be selected to view its content. > There are several configuration parameters with messaging that determine delivery and message properties (e.g. size). See the configuration section for more information. The following icons denote the messaging history delivery status: | Icon | Delivery Status | |------|--------| |<img src="/content/images/messaging-sent.png"/>|Message Sent| |<img src="/content/images/messaging-received.png"/>|Message Received| |<img src="/content/images/messaging-read.png"/>|Message Read| |<img src="/content/images/messaging-failed.png"/>|Message Failed| The following icons denote the messaging history sender: | Icon | Sender | |------|--------| |<img src="/content/images/messaging-sender-nsm.png"/>|From backoffice (NSM)| |<img src="/content/images/messaging-sender-unit.png"/>|From unit| ### Highlighting ### <img src="/content/images/doc-module-fleet-unit-definition-highlighting.png"/> If highlighting configuration is enabled, a match may be applied that colors items in the list red. To set this match pattern, see configuration option 'Unit Monitor - Highlight Match Pattern'. This function is used often to easilly identify units that are of interest at a point in time of an investigation. <div id="status"></div> ### Status ### <img src="/content/images/doc-module-fleet-unit-definition.png"/> A radio may modify its displayed 'unit status' as shown in the above figure by triggering a status event on the network, where this status may defined in configuration for the network. When a status is changed the user interface shall: - Update the status of the unit to the friendly status name in the unit monitor - Optionally reflect the status of the unit as an icon on the map. For details on how to configure the network unit status codes in the server configuration, see [Connecting Networks](/doc-integration-networks-connections.sshtml) <div id="duress-alerting"></div> ### Duress Alerting ### <img src="/content/images/doc-module-fleet-unit-definition-duress.png"/> The duress alerting popup will be displayed when a unit enters the 'Emergency Status', where this status text may be defined in configuration for the network. When the duress popup is rendered, the User Interface shall: - Zoom to the unit location - Lock center to the unit position - Begin automatic reverse geocoding of the unit address - Show buttons on the UI to focus the unit or any other units in the same status For details on how to configure the network emergency/duress status codes in the server configuration, see [Connecting Networks](/doc-integration-networks-connections.sshtml) #### Configuration #### To modify the configuration used in duress alerting, look at the following configuration options in Settings -> Preferences -> Fleet: | Option | Description | |------|--------| |Emergency/Duress - Popup Message Format|The text to display in the popup. This may include properties from the unit itself| |Emergency/Duress - Focus When Triggered|Should the UI focus the unit when triggered| |Emergency/Duress - Focus When Triggered|Should the UI focus the unit when triggered| |Emergency/Duress - Match Pattern|The status (Digested) to match on to identify the duress condition| |Emergency/Duress - Sound|The system sound to play when the duress triggers (or updates)| |Emergency/Duress - Sound File|A (.wav) sound file that will be played repeatedly whilst the popup is active| |Emergency/Duress - Background colour|An override to the default transparent background colour of this popup, expressed either as a named colour or HTML format (e.g. 'Red' or '#440000')| #### Clearing a Duress ### A duress is identified by the DigestedStatus as defined in the above configuration (typically EMERGENCY by default). The only way to clear a duress is to set the unit into a different status. The simply way to achieve this is by selecting the unit, and changing its status as described in section [Update](#operations-unit). Depending on the configuration, there may not be an alternative status to select in the update status drop down list. In this case, a new status should be added via the Settings->Preferences->Fleet interface under the heading 'status codes'. For systems using status updates via ATIA (e.g. P25 or Dimetra), these support status change and emergency knockdown via the radio itself. To enable this either configure a radio button as a status code or configure the server side 'Emergency Knockdown' status, which shall set the new status when either of these events occur. Alternatively an API call can cancel a duress via an external system. <div id="unit-recommend"></div> #### Recommend Closest Units #### You may recommend the closest units to a location that has been searched on and selected (such that the location search red circle pinpoint is on the screen) by enabling the 'Recommend' filter on the list of filters in the fleet view. <img src="/content/images/doc-module-fleet-locationsearch-recommend.png"/> <div id="operations-event"></div> ## Events ## The NSM event manager is designed to be both a view of all events on the system plus the originator and manager of its own events. For instance, where there may be multiple dispatch systems (or CADs) on a given mobile network, NSM intends to collate all the events into a single common format and collate these into a single list, where these are shown alongside events created within NSM itself. As with the unit list, events may be templated such that different types of events (based on a simple match pattern) are shown differently to other events in the list. This may be used to differentiate events between dispatch systems, or agencies, or any other event property. The event list is presented as follows with configurable filters, sorts, search criteria and templates for items in the list. Full details on searching and sorting is available [here](/doc-search.sshtml). In addition, the data model representing the list is replayable depending on your configuration. If replay is available, you may read more on how to re-run the visual data on demand by reading [here](doc-replay.sshtml). <img src="/content/images/doc-module-fleet-event-list.png"/> All remaining operations on events require the configuration parameter 'Show Event Details' enabled in configuration. If this is enabled, the following view shall appear right of the event list: <img src="/content/images/doc-module-fleet-event-detail.png"/> ### Create event ### <img src="/content/images/doc-module-fleet-event-create.png"/> To create an event, select the 'Create New Event' button at the top of the event list. The event details view shall, including the option to create the event at the bottom of the view. Depending on configuration, fields may default to given values, options within drop downs may vary and required fields may change for an event before it may be created. An event is always created first before it may be assigned to a unit, this operation cannot happen at the same time. Once the event creation criteria has been met, select the 'Create' button at the bottom of the view. The event shall be created, an event code assigned and the newly created event automatically reselected in the view. Care should be taken to ensure a 'SOURCE' field is included within the default event message (see configuration) to ensure the event will be easily identified as being from the NSM system. Newly created events will always show with the 'Pending assignment' highlight if this is configured within the event template. The generation of new event IDs is controlled by the server and may be adjusted by the systems administrator. ### Update ### <img src="/content/images/doc-module-fleet-unit-definition-detail-update.png"/> Updating events is a simple process of selecting an event (where the event is editable according to its SOURCE field value), updating the properties in the event and then selecting the 'Update' button. ### Close/Disposition/Removing events ### <img src="/content/images/doc-module-fleet-event-disposition.png"/> Events may not be closed and removed from the event list until a disposition code is provided, there the list of available disposition code is configured. To close an event, select it, select a disposition or closure code, then select the 'EVENT COMPLETED' button. ### Multi location events ### Events may contain may location points. Each location point may be assigned a name, a longitude and latitude, plus any other standard location property (eg. Map reference or Cross Street). The event detail view displays a mini numeric pad to the right of the event locaton editor to allow navigation of each location point within the event. By default, location points other than the primary point (location 0) are represented with a default name 'WAYPOINT x', where x corresponds to the index of the location. Multi location events shall be displayed with points on the map represented as symbols, where the points shall include the location name and the points joined to form a convex hull representation of a polygon. The polygon shall be represented on the map as a semi transparent shape where the shape is only visible when the event is selected. <img src="/content/images/doc-module-fleet-event-multilocation.png"/> Multi location events are suitable for geofenced unit assignments, where assignment occurs automatically when units enter the polygon. ### Location search (Geocoding) ### NSM supports reverse geocoding via one of the following 2 sources: * (Public) Google Location API (requires a Google Key) * (Private) Nominatim Location API To enable location search, the 'Enabled Location Search' option must be set in configuration. To perform location searches, simply type into the location search box or the event location street address box. Candidate verified street addresses (geocodes) shall show in the location search list. Select a location to display it on the map together with the full event address. Parameters controlling location search are controlled via configuration. These settings influence result sets returned so should be carefully selected to match the environment. <img src="/content/images/doc-module-fleet-event-location-search.png"/> > Note location search is performed both server side and client side. Server side location search is performed when a non geocoded address is received from a new event. In this case NSM may attempt to automatically geocode the event. ### Location pinpoint (Reverse Geocoding) ### <img src="/content/images/doc-module-fleet-unit-definition-detail-pinpoint.png"/> Location pinpointing is the process of manually setting an event location by clicking a point on the map. This is useful where the location is large and a refinement may be required to identify the exact location of an event (e.g. large stadiums etc). To pinpoint an event location select the event, select the pinpoint button and then click a point on the map. ### Assignment of events ### <img src="/content/images/doc-module-fleet-event-assign.png"/> Assignment of events is the process of allocating an event to one or more units. NSM supports the following event assignment methods: * Manual - where an operator manually assigns an event to a unit * Scheduled - where an event is assigned to a given unit at a specified time in the future * Geofenced - when an event is assigned to a given unit when it enters an area (as identified by its locations) By default, all events will be assigned with a status of 'DISPATCHED'. ### Assignment updates ### <img src="/content/images/doc-module-fleet-event-assign-update.png"/> You can update an event assignment by modifying the status the unit is on on the event. Available status codes are set in configuration by department/agency. ### Recommend closest units ### <img src="/content/images/doc-module-fleet-event-assign-recommend.png"/> Any event may use the recommend closest unit feature, where units in the unit list are sorted according to their vacinity to the event so that closest units appear at the top of the unit list. Closest unit calculation is direct distance, not street distance. <div id="operations-messaging"></div> ## Messaging ## <div id="config"></div> ## Configuration Parameters ## The following configuration parameters are available in this module: |Name|Description|Type|Restart Required?| |----|-----------|----|-----------------| |Log Ticker Match Pattern|A regular expression pattern to match on the string representation of this log (non case-sensitive). Leave this blank to disable.|String|false| |OSM Tile Web Proxy|(not specified)|Uri|true| |OSM Tile Web Proxy Bypass|(not specified)|Boolean|true| |Enable Audible Alerts|Use an audible alerts when a new log event is added to the view|Boolean|false| |Audible Alerts to Speech|Read the log event using windows speech instead of playing a tone.|Boolean|false| |Display Unit Monitor|Show the unit list|Boolean|false| |Unit Monitor Width|(not specified)|Double|false| |Unit Monitor - Highlight Match Pattern|A regular expression to use to determine whether to highlight an item in the list. Set to null or empty to turn off this function.|String|false| |Emergency/Duress - Popup Message Format|Format of the text to display in the popup message shown when a unit enters the Emergency state as defined in the 'EmergencyMatchString' property.|String|false| |Emergency/Duress - Focus When Triggered|Should the unit that triggers the emergency state be focused (selected on the list and map jumps to view this unit)|Boolean|false| |Emergency/Duress - Match Pattern|A status (Digested Status) to be used to match the emergency state. Set to null if emergency states should be ignored.|String|false| |Display Unit Details|Show the unit details panel when a unit is selected to allow operations to be performed on the unit|Boolean|false| |Is AVL Poll Enabled|Show the button to enable location requests to be sent to units|Boolean|false| |Is PinPoint Unit Enabled|Show the toggle button to enable users to manually relocate units by selecting a location on the map|Boolean|false| |Label Version Attribute|The label to show against the version unit property when a unit is selected. If this field should not be shown, leave this field blank.|String|false| |Label Car ID Attribute|The label to show against the car identifier unit property when a unit is selected. If this field should not be shown, leave this field blank.|String|false| |Label Callign Attribute|The label to show against the callsign unit property when a unit is selected. If this field should not be shown, leave this field blank.|String|false| |Label Status Attribute|The label to show against the status unit property when a unit is selected. If this field should not be shown, leave this field blank.|String|false| |Label Other Attributes|The collection (dictionary) of other labels keyed by field name from the logon message to include in the dialog|Dictionary|true| |Clear Version Button Label|The label to show on the clear version button when a unit is selected. If this button should not be shown, leave this field blank.|String|false| |Status Codes|The list of allowed status codes a unit may be changed to when selected.|StringList|false| |Department Codes|The list of allowed department names a unit may be changed to when selected.|StringList|false| |List Template Pattern - Mobile Data Terminal|A Regular expression to run against the string representation of a unit to match this template (non case-sensitive). For example 'DepartmentName:POLICE' or 'CarId:\d\d\d'|String|false| |List Template Pattern - Radio Dimetra|A Regular expression to run against the string representation of a unit to match this template (non case-sensitive). For example 'DepartmentName:POLICE' or 'CarId:\d\d\d'|String|false| |List Template Pattern - Radio Astro P25|A Regular expression to run against the string representation of a unit to match this template (non case-sensitive). For example 'DepartmentName:POLICE' or 'CarId:\d\d\d'|String|false| |List Template Pattern - Fixed Terminal|A Regular expression to run against the string representation of a unit to match this template (non case-sensitive). For example 'DepartmentName:POLICE' or 'CarId:\d\d\d'|String|false| |Enable Unit Messaging|Enable messages to be sent to units (note: this setting requires a network bridging adapter to be present on the server)|Boolean|false| |Unit Messaging Width|The width of the message box list|Double|false| |Unit Messaging Height|The width of the message box list|Double|false| |Maximum Message Body Length|The maximum number of characters that may be sent in a message body|Int32|false| |Maximum Message Subject Length|The maximum number of characters that may be sent in a message subject|Int32|false| |Set Message From|The value to use in the from field for all messages from this NSM client. Leave this field empty to use the logged on NSM Client identity (typically the windows user logon).|String|false| |Display Event Monitor|Show the event list|Boolean|false| |Event Monitor Width|(not specified)|Double|false| |Display Event Details|Show the event detail panel when an event is selected|Boolean|false| |Enable Event Creation|Can events be created from this terminal? Consider modifying the 'NewEvemtMessage' property when this is enabled.|Boolean|false| |Create Event Default Message|The base message to use when constructing a new event (requires 'EnableCreateEvents' to be enabled)|String|false| |Agencies|The list of allowed agencies that may be set on an event|StringList|false| |Forms|The list of allowed forms that may be set on an event|StringList|false| |Priorities|The list of allowed priorities that may be set on an event|StringList|false| |Event Codes|The list of event codes that may be set on an event. Note these are filtered by agency|EventCodeModelList|false| |Event Dispositions|The list of disposition codes that may be set on an event. Note these will be filtered by agency|EventCodeModelList|false| |Event Unit Status Codes|The list of Status messages (in piped message format) that may be set on unit for an event. Note these will be filtered by agency|EventCodeModelList|false| |Event Details Minimum Width|Minimum width of the event detail panel|Int32|false| |Event Details Maximum Width|Maximum width of the event detail panel|Int32|false| |Font Size - Edit Text Boxes|The font size to use for all other edit controls in the event detail panel|Int32|false| |Font Size - Remarks|The font size to use for remarks|Int32|false| |Max Locations Allowed on Event|The maximum number of locations points an event may contain|Int32|false| |Time Zone Id|The timezone the server is timestamping events.|String|false| |Enable Fleet Replay|(not specified)|Boolean|false| |Enable Fleet Replay - Log To File|(not specified)|Boolean|false| |Enable Fleet Replay - Log To File Path|(not specified)|String|false| |Enable Dispatch Replay|(not specified)|Boolean|false| |Display Location Search|Enable the geocoding of locations represented as text to co-ordinates (verified addresses)|Boolean|false| |Geocoding - Component Filter|Componenents included in the lookup. For more information see the Google Location API at:'https://developers.google.com/places/'|String|false| |Geocoding - Maximum Location Result Count|Maximum number of results to return|Int32|false| |Geocoding - Maximum Place Result Count|Maximum number of places (Common Place Names) to return in the results. A Common Plaxe Name is a well known location, such as 'Soth Port Train Station' or 'The MCG'|Int32|false| |Geocoding - Ignored Place Types|Types of places to ignore. For more information see the Google Location API at:'https://developers.google.com/places/'|StringList|false| |Geocoding - Google API Key|The API key to use for lookups via Google Location API.|String|false| |Geocoding - Bounding Box - South West Latitude|(not specified)|Double|true| |Geocoding - Bounding Box - South West Longitude|(not specified)|Double|true| |Geocoding - Bounding Box - North East Latitude|(not specified)|Double|true| |Geocoding - Bounding Box - North East Longitude|(not specified)|Double|true| (generated 2016-01-15) <div id="logtriggers"></div> ## Log Triggers ## The following log triggers may be generated by the depending on configuration. |Description | |----------------------------------------------------------|| |Emergency Signaled Unit:(Unit ID)|The logged on unit with the given unit ID has triggered a duress alert.| |Error Message Sent to Unit:(Unit ID)|The specified unit has been sent a session related error message. This message resulted in an inbound message not being processed by the message switch.| |Speed Warning Unit:(Unit ID) Exceeding:(Limit)kmph|A unit is travelled at a speed exceeding the configured speed warning limit. This limit is configured to 160kmph by default.| |New Priority:(Priority) Code:(Code) Event:(EventID)|A new �high� priority event has been dispatched to a unit.| <a name="#syncobject"> ## Sync Object Info ## </a> The following object info may be used to better help understand more complex search criteria, using the REST API, or interpreting export details. ### UnitDefinition(s) ### <img src="/content/images/doc-module-fleet-unit-definition.png"/> #### Properties #### <table class="tg"> <tr> <th class="tg-031e">Property</th> <th class="tg-031e">Type</th> <th class="tg-031e">Details</th> </tr> <tr> <td class="tg-031e">Callsign</td> <td class="tg-031e">String</td> <td class="tg-031e">The callsign (or UNIT ID) of the unit. If blank or empty, device is considered logged off, else it is considered logged on.</td> </tr> <tr> <td class="tg-031e">IpAddress</td> <td class="tg-031e">String</td> <td class="tg-031e">The address of he unit. If monitored system is IP based, this will be the hex representation of the IP Address (e.g. 0A0A0101 is 10.10.1.1). If a Motorola radio system, this will be the radio ID.</td> </tr> <tr> <td class="tg-031e">CadId</td> <td class="tg-031e">String</td> <td class="tg-031e">The unique ID assigned to the device that is not used to address the terminal.</td> </tr> <tr> <td class="tg-031e">DepartmentName</td> <td class="tg-031e">String</td> <td class="tg-031e">The department or primary group the device belongs to.</td> </tr> <tr> <td class="tg-031e">Version</td> <td class="tg-031e">String</td> <td class="tg-031e">The version of the software in the unit.</td> </tr> <tr> <td class="tg-031e">LastStatus</td> <td class="tg-031e">String</td> <td class="tg-031e">The last unit only status of the device. Note also, the property 'DigestedStatus' is used to describe the current status of the unit where 1 or more events are assigned to a unit. Assigned event status will override the unit status.</td> </tr> <tr> <td class="tg-031e">DigestedStatus</td> <td class="tg-031e">String</td> <td class="tg-031e">The last unit or event status of the device. If events assigned, this is the last status change in the AssignedEvents, else this is the LastStatus value.</td> </tr> <tr> <td class="tg-031e">CoordinateDefinition</td> <td class="tg-031e">CoordinateDefinition</td> <td class="tg-031e">Details about the device Location, Speed and Heading as provided in the ETSI LIP specification</td> </tr> <tr> <td class="tg-031e">AssignedEvents</td> <td class="tg-031e">AssignedEvent</td> <td class="tg-031e">Details fo events assigned to the unit</td> </tr> </table> #### String Format #### IpAddress:{0} CarId:{1} Callsign:{2} DepartmentName:{3} Version:{4} LastStatus:{5} DigestedStatus:{6} LogonMessage:{7} CoordinateDefinition:{8} ### CoordinateDefinition ### #### Properties #### <table class="tg"> <tr> <th class="tg-031e">Property</th> <th class="tg-031e">Type</th> <th class="tg-031e">Details</th> </tr> <tr> <td class="tg-031e">Longitude</td> <td class="tg-031e">double</td> <td class="tg-031e">Longitude in WGS84.</td> </tr> <tr> <td class="tg-031e">Latitude</td> <td class="tg-031e">double</td> <td class="tg-031e">Latitude in WGS84.</td> </tr> <tr> <td class="tg-031e">Heading</td> <td class="tg-031e">UInt16</td> <td class="tg-031e">The heading in degrees from true north.</td> </tr> <tr> <td class="tg-031e">Speed</td> <td class="tg-031e">UInt16</td> <td class="tg-031e">The speed in KMPH</td> </tr> <tr> <td class="tg-031e">UserDefinedData</td> <td class="tg-031e">Byte</td> <td class="tg-031e">Arbitrary data on the location point information. This is typically used to store carrier information and GPS source.</td> </tr> </table> #### String Format #### Longitude:{0} Latitude:{1} Heading:{2} Speed:{3} UserDefinedData:{4} ### AssignedEvent(s) ### #### Properties #### <table class="tg"> <tr> <th class="tg-031e">Property</th> <th class="tg-031e">Type</th> <th class="tg-031e">Details</th> </tr> <tr> <td class="tg-031e">LastUpdateTime</td> <td class="tg-031e">DateTime</td> <td class="tg-031e">Timestamp this assigned event was modified.</td> </tr> <tr> <td class="tg-031e">StatusMessage</td> <td class="tg-031e">String</td> <td class="tg-031e">A string representation of the last status message (often a USTA format)</td> </tr> <tr> <td class="tg-031e">AssignedEventID</td> <td class="tg-031e">String</td> <td class="tg-031e">The ID of the event</td> </tr> </table> #### String Format #### AssignedEventID:{0} StatusMessage:{1} LastUpdateTime:{2} ### Event(s) ### <img src="/content/images/doc-module-fleet-event.png"/> #### Properties #### <table class="tg"> <tr> <th class="tg-031e">Property</th> <th class="tg-031e">Type</th> <th class="tg-031e">Details</th> </tr> <tr> <td class="tg-031e">EventID</td> <td class="tg-031e">String</td> <td class="tg-031e">The unique ID of the event</td> </tr> <tr> <td class="tg-031e">LastUpdateTime</td> <td class="tg-031e">DateTime</td> <td class="tg-031e">The timestamp this event was last updated</td> </tr> <tr> <td class="tg-031e">EventMessage</td> <td class="tg-031e">String</td> <td class="tg-031e">A string representation of the event message (typically a DISD message)</td> </tr> <tr> <td class="tg-031e">AssignedUnits</td> <td class="tg-031e">AssignedUnit</td> <td class="tg-031e">Collection of AssignedUnits on the event</td> </tr> </table> #### String Format #### EventID:{0} LastUpdateTime:{1} EventMessage:{2} AssignedUnits:{3} ### AssignedUnit(s) ### #### Properties #### <table class="tg"> <tr> <th class="tg-031e">Property</th> <th class="tg-031e">Type</th> <th class="tg-031e">Details</th> </tr> <tr> <td class="tg-031e">AssignedUnitID</td> <td class="tg-031e">String</td> <td class="tg-031e">The unique ID of the unit (from UnitDefinitions)</td> </tr> <tr> <td class="tg-031e">LastUpdateTime</td> <td class="tg-031e">DateTime</td> <td class="tg-031e">The timestamp this assigned unit was last updated</td> </tr> <tr> <td class="tg-031e">StatusMessage</td> <td class="tg-031e">String</td> <td class="tg-031e">A string representation of the status message (typically a USTA message)</td> </tr> <tr> <td class="tg-031e">AssignedUnits</td> <td class="tg-031e">AssignedUnit</td> <td class="tg-031e">Collection of AssignedUnits on the event</td> </tr> </table> #### String Format #### AssignedUnitID:{0} StatusMessage:{1} LastUpdateTime:{2} <div id="syncobject"></div> ## Importing ## To import unit definition data from a CSV file, use the following column format: | Index | Property | |------|--------| |0|IpAddress| |1|CarId| |2|Callsign| |3|DepartmentName| |4|VersionSoftware| |5|LastStatus| |6|DigestedStatus| |7|LogonMessageString| To import event data from a CSV file, use the following column format: | Index | Property | |------|--------| |0|EventID| |1|LastUpdateTime| |2|EventMessage|