Zasielanie súradníc objektov pre API informuje užívateľa o zmenách objektu. Toto konkrétne API funguje ako prúd informácií. Po odoslaní požiadavky API sa najprv zobrazí posledná známa súradnice každého objektu, potom akonáhle nastane zmena budú odosielané nové dáta. Pokiaľ nedôjde k prerušeniu spojenia, nie je nutné posielať novú požiadavku API.
Poznámka
Potom čo API vráti poslednú známu súradnicu a nastane situácia, že zasielanie súradníc bolo z nejakého dôvodu znovuobnovenie a v medzičase nie sú žiadne nové súradnice, užívateľ dostane poslednú známu súradnicu, ktorú už raz dostal a záznam je tak duplicitné. Treba to vedieť, pretože v niektorých systémoch to môže spôsobiť problémy.
Zasielanie súradníc objektu pre API možno aktivovať pre jeden konkrétny objekt alebo pre všetky dostupné objekty užívateľa.
Príklad požiadavke pre jeden objekt:
GET /object-coordinates-stream?version=1&object_id=<…>&api_key=<…>
HOST:api.fm-track.com
Content-Type:text/event-stream;charset=UTF-8
Príklad požiadavke pre všetky objekty:
GET /object-coordinates-stream?version=1&api_key=<…>
HOST:api.fm-track.com
Content-Type:text/event-stream;charset=UTF-8
Aby toto API fungovalo sú povinné dva parametre:
Parameter | Type | Description |
---|---|---|
version | String | Version of the API, currently only version=1 is available |
api_key | User identification key |
Do požiadavky možno včleniť iba jeden voliteľný parameter:
Parameter | Type | Description |
---|---|---|
object_id | String | External object ID |
Odpoveď servera:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | data:{ "object_id" : "abc123", "datetime" : "2017-04-13T06:58:48.090Z", "ignition_status" : "UNKNOWN", "position" : { "altitude" : 0, "direction" : 0, "latitude" : 0, "longitude" : 0, "hdop" : 0, "satellites_count" : 0, "speed" : 0 }, "device_inputs" : { "digital_input_1" : true, "digital_input_2" : true, "digital_input_3" : true, "digital_input_4" : true, "power_supply_voltage" : 0, "ibutton" : "xxxxxxxxxx", "first_driver_id" : "xxxxxxxxxx", "second_driver_id" : "xxxxxxxxxx", "temperature_sensor_0" : 0, "temperature_sensor_1" : 0, "temperature_sensor_2" : 0, "temperature_sensor_3" : 0 }, "calculated_inputs":{ "mileage" : 0 } } |
Všetky zodpovední polia ktoré možno prijať s každým tapom parametra sú popísané v nasledujúcej tabuľke:
Name | Type | Description | Units |
---|---|---|---|
object_id | String | Object identifier in our system | Text |
device_inputs | Container for parameters received from hardware | ||
calculated_inputs | Container for parameters calculated in system from other parameters according configuration | ||
datetime | Date | Date and time point of coordinate generated in hardware Format: "yyyy-mm-ddThh:mm:ss.sssZ" | According ISO8601 |
longitude | Float | GPS coordinate - longitude value | Degrees |
latitude | Float | GPS coordinate - latitude value | Degrees |
altitude | Integer | GPS coordinate - altitude value | Number |
speed | Integer | Object moving speed | km/h |
direction | Integer | Moving direction in degrees | 0 = north, increasing clock-wise |
ignition_status | Enum | Indicating if object has ignition on. "ON" - Ignition on "OFF" - Ignition off "UNKNOWN" - No data about ignition | ON - OFF |
digital_input_1 | Boolean | Configured object or its equipment status true - status = active false - status = inactive | True - False |
digital_input_2 | Boolean | Configured object or its equipment status true - status = active false - status = inactive | True - False |
digital_input_3 | Boolean | Configured object or its equipment status true - status = active false - status = inactive | True - False |
digital_input_4 | Boolean | Configured object or its equipment status true - status = active false - status = inactive | True - False |
ibutton | String | iButton or RFID card code of a driver assigned to a vehicle | Text |
first_driver_id | String | TCO code of the first driver | Text |
second_driver_id | String | TCO code of the second driver | Text |
satellites_count | Integer | Number of visible GPS or GLONASS satellites(depends on device configuration) while generating record in device | Number |
mileage | float | Object driven distance (depends on object configuration) | km |
power_supply_voltage | Integer | Object power supply voltage | mV |
Koncové body API, parametre požiadaviek a odpovede možno sledovať v “Swagger” prostredníctvom odkazu: https://api.fm-track.com
Poznámka
Je potrebné si uvedomiť, že odpoveď servera je prúd dát, rovnakých dát, ktoré prichádzajú od objektov. Všetky prijímané dáta sú poskytované “ako sú”. To znamená, že jednotka môže periodicky posielať súradnice predchádzajúcej pozície medzi záznamami aktuálnej pozície. API nekontroluje a neriadi kontinuitu prijímaných dát.