{"id":6624,"date":"2018-12-13T17:31:15","date_gmt":"2018-12-13T15:31:15","guid":{"rendered":"http:\/\/www.fmsdocumentation.com\/?page_id=6624"},"modified":"2018-12-14T09:13:25","modified_gmt":"2018-12-14T07:13:25","slug":"zasielanie-suradnic-objektu-pre-api","status":"publish","type":"page","link":"https:\/\/www.fmsdocumentation.com\/sk\/api\/zasielanie-suradnic-objektu-pre-api\/","title":{"rendered":"Zasielanie s\u00faradn\u00edc objektu pre API"},"content":{"rendered":"<p>Zasielanie s\u00faradn\u00edc objektov pre API informuje u\u017e\u00edvate\u013ea o zmen\u00e1ch objektu. Toto konkr\u00e9tne API funguje ako pr\u00fad inform\u00e1ci\u00ed. Po odoslan\u00ed po\u017eiadavky API sa najprv zobraz\u00ed posledn\u00e1 zn\u00e1ma s\u00faradnice ka\u017ed\u00e9ho objektu, potom akon\u00e1hle nastane zmena bud\u00fa odosielan\u00e9 nov\u00e9 d\u00e1ta. Pokia\u013e ned\u00f4jde k preru\u0161eniu spojenia, nie je nutn\u00e9 posiela\u0165 nov\u00fa po\u017eiadavku API.<br \/>\n<a href=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/Streaming-API.png\"><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter wp-image-769\" src=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/Streaming-API-234x300.png\" alt=\"\" width=\"300\" height=\"385\" srcset=\"https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/Streaming-API-234x300.png 234w, https:\/\/www.fmsdocumentation.com\/wp-content\/uploads\/2017\/04\/Streaming-API.png 261w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><\/p>\n<p style=\"background-color: #2e67b1; color: #ffffff; padding-left: 10px; padding-right: 10px;\"><p class=\"note\">Pozn\u00e1mka<br \/>\nPotom \u010do API vr\u00e1ti posledn\u00fa zn\u00e1mu s\u00faradnicu a nastane situ\u00e1cia, \u017ee zasielanie s\u00faradn\u00edc bolo z nejak\u00e9ho d\u00f4vodu znovuobnovenie a v medzi\u010dase nie s\u00fa \u017eiadne nov\u00e9 s\u00faradnice, u\u017e\u00edvate\u013e dostane posledn\u00fa zn\u00e1mu s\u00faradnicu, ktor\u00fa u\u017e raz dostal a z\u00e1znam je tak duplicitn\u00e9. Treba to vedie\u0165, preto\u017ee v niektor\u00fdch syst\u00e9moch to m\u00f4\u017ee sp\u00f4sobi\u0165 probl\u00e9my.<\/p><\/p>\n<p>Zasielanie s\u00faradn\u00edc objektu pre API mo\u017eno aktivova\u0165 pre jeden konkr\u00e9tny objekt alebo pre v\u0161etky dostupn\u00e9 objekty u\u017e\u00edvate\u013ea.<\/p>\n<p>Pr\u00edklad po\u017eiadavke pre jeden objekt:<\/p>\n<p style=\"background-color: #000000; color: #bbbdc0; font-family: Lucida Console; padding-left: 10px; padding-right: 10px;\">GET \/object-coordinates-stream?version=1&amp;object_id=&lt;&#8230;&gt;&amp;api_key=&lt;&#8230;&gt;<br \/>\nHOST:api.fm-track.com<br \/>\nContent-Type:text\/event-stream;charset=UTF-8<\/p>\n<p>Pr\u00edklad po\u017eiadavke pre v\u0161etky objekty:<\/p>\n<p style=\"background-color: #000000; color: #bbbdc0; font-family: Lucida Console; padding-left: 10px; padding-right: 10px;\">GET \/object-coordinates-stream?version=1&amp;api_key=&lt;&#8230;&gt;<br \/>\nHOST:api.fm-track.com<br \/>\nContent-Type:text\/event-stream;charset=UTF-8<\/p>\n<p>Aby toto API fungovalo s\u00fa povinn\u00e9 dva parametre:<\/p>\n\n<table id=\"tablepress-110\" class=\"tablepress tablepress-id-110\">\n<thead>\n<tr class=\"row-1\">\n\t<th class=\"column-1\">Parameter<\/th><th class=\"column-2\">Type<\/th><th class=\"column-3\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr class=\"row-2\">\n\t<td class=\"column-1\">version<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">Version of the API, currently only version=1 is available<\/td>\n<\/tr>\n<tr class=\"row-3\">\n\t<td class=\"column-1\">api_key<\/td><td class=\"column-2\">User identification key<\/td><td class=\"column-3\"><\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-110 from cache -->\n<p>Do po\u017eiadavky mo\u017eno v\u010dleni\u0165 iba jeden volite\u013en\u00fd parameter:<\/p>\n\n<table id=\"tablepress-111\" class=\"tablepress tablepress-id-111\">\n<thead>\n<tr class=\"row-1\">\n\t<th class=\"column-1\">Parameter<\/th><th class=\"column-2\">Type<\/th><th class=\"column-3\">Description<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr class=\"row-2\">\n\t<td class=\"column-1\">object_id<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">External object ID<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-111 from cache -->\n<p>Odpove\u010f servera:<\/p>\n<div class=\"codecolorer-container javascript blackboard\" style=\"overflow:auto;white-space:nowrap;width:500px;\"><table cellspacing=\"0\" cellpadding=\"0\"><tbody><tr><td class=\"line-numbers\"><div>1<br \/>2<br \/>3<br \/>4<br \/>5<br \/>6<br \/>7<br \/>8<br \/>9<br \/>10<br \/>11<br \/>12<br \/>13<br \/>14<br \/>15<br \/>16<br \/>17<br \/>18<br \/>19<br \/>20<br \/>21<br \/>22<br \/>23<br \/>24<br \/>25<br \/>26<br \/>27<br \/>28<br \/>29<br \/>30<br \/>31<br \/><\/div><\/td><td><div class=\"javascript codecolorer\">data<span class=\"sy0\">:<\/span><span class=\"br0\">&#123;<\/span><br \/>\n<span class=\"st0\">&quot;object_id&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;abc123&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;datetime&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;2017-04-13T06:58:48.090Z&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;ignition_status&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;UNKNOWN&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;position&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n<span class=\"st0\">&quot;altitude&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;direction&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;latitude&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;longitude&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;hdop&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;satellites_count&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;speed&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;device_inputs&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"br0\">&#123;<\/span><br \/>\n<span class=\"st0\">&quot;digital_input_1&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;digital_input_2&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;digital_input_3&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;digital_input_4&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"kw2\">true<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;power_supply_voltage&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;ibutton&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;xxxxxxxxxx&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;first_driver_id&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;xxxxxxxxxx&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;second_driver_id&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"st0\">&quot;xxxxxxxxxx&quot;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;temperature_sensor_0&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;temperature_sensor_1&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;temperature_sensor_2&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;temperature_sensor_3&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><span class=\"sy0\">,<\/span><br \/>\n<span class=\"st0\">&quot;calculated_inputs&quot;<\/span><span class=\"sy0\">:<\/span><span class=\"br0\">&#123;<\/span><br \/>\n<span class=\"st0\">&quot;mileage&quot;<\/span> <span class=\"sy0\">:<\/span> <span class=\"nu0\">0<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><br \/>\n<span class=\"br0\">&#125;<\/span><\/div><\/td><\/tr><\/tbody><\/table><\/div>\n<p>V\u0161etky zodpovedn\u00ed polia ktor\u00e9 mo\u017eno prija\u0165 s ka\u017ed\u00fdm tapom parametra s\u00fa pop\u00edsan\u00e9 v nasleduj\u00facej tabu\u013eke:<\/p>\n\n<table id=\"tablepress-112\" class=\"tablepress tablepress-id-112\">\n<thead>\n<tr class=\"row-1\">\n\t<th class=\"column-1\">Name<\/th><th class=\"column-2\">Type<\/th><th class=\"column-3\">Description<\/th><th class=\"column-4\">Units<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr class=\"row-2\">\n\t<td class=\"column-1\">object_id<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">Object identifier in our system<\/td><td class=\"column-4\">Text<\/td>\n<\/tr>\n<tr class=\"row-3\">\n\t<td class=\"column-1\">device_inputs<\/td><td class=\"column-2\">Container for parameters received from hardware<\/td><td class=\"column-3\"><\/td><td class=\"column-4\"><\/td>\n<\/tr>\n<tr class=\"row-4\">\n\t<td class=\"column-1\">calculated_inputs<\/td><td class=\"column-2\">Container for parameters calculated in system from other parameters according configuration<\/td><td class=\"column-3\"><\/td><td class=\"column-4\"><\/td>\n<\/tr>\n<tr class=\"row-5\">\n\t<td class=\"column-1\">datetime<\/td><td class=\"column-2\">Date<\/td><td class=\"column-3\">Date and time point of coordinate generated in hardware<br \/>\nFormat: \"yyyy-mm-ddThh:mm:ss.sssZ\"<br \/>\n<\/td><td class=\"column-4\">According ISO8601<\/td>\n<\/tr>\n<tr class=\"row-6\">\n\t<td class=\"column-1\">longitude<\/td><td class=\"column-2\">Float<\/td><td class=\"column-3\">GPS coordinate - longitude value<\/td><td class=\"column-4\">Degrees<\/td>\n<\/tr>\n<tr class=\"row-7\">\n\t<td class=\"column-1\">latitude<\/td><td class=\"column-2\">Float<\/td><td class=\"column-3\">GPS coordinate - latitude value<\/td><td class=\"column-4\">Degrees<\/td>\n<\/tr>\n<tr class=\"row-8\">\n\t<td class=\"column-1\">altitude<\/td><td class=\"column-2\">Integer<\/td><td class=\"column-3\">GPS coordinate - altitude value<\/td><td class=\"column-4\">Number<\/td>\n<\/tr>\n<tr class=\"row-9\">\n\t<td class=\"column-1\">speed<\/td><td class=\"column-2\">Integer<\/td><td class=\"column-3\">Object moving speed<\/td><td class=\"column-4\">km\/h<\/td>\n<\/tr>\n<tr class=\"row-10\">\n\t<td class=\"column-1\">direction<\/td><td class=\"column-2\">Integer<\/td><td class=\"column-3\">Moving direction in degrees<\/td><td class=\"column-4\">0 = north, increasing clock-wise<\/td>\n<\/tr>\n<tr class=\"row-11\">\n\t<td class=\"column-1\">ignition_status<\/td><td class=\"column-2\">Enum<\/td><td class=\"column-3\">Indicating if object has ignition on.<br \/>\n\"ON\" - Ignition on<br \/>\n\"OFF\" - Ignition off<br \/>\n\"UNKNOWN\" - No data about ignition<br \/>\n<\/td><td class=\"column-4\">ON - OFF<\/td>\n<\/tr>\n<tr class=\"row-12\">\n\t<td class=\"column-1\">digital_input_1<\/td><td class=\"column-2\">Boolean<\/td><td class=\"column-3\">Configured object or its equipment status<br \/>\ntrue - status = active<br \/>\nfalse - status = inactive<br \/>\n<\/td><td class=\"column-4\">True - False<\/td>\n<\/tr>\n<tr class=\"row-13\">\n\t<td class=\"column-1\">digital_input_2<\/td><td class=\"column-2\">Boolean<\/td><td class=\"column-3\">Configured object or its equipment status<br \/>\ntrue - status = active<br \/>\nfalse - status = inactive<br \/>\n<\/td><td class=\"column-4\">True - False<\/td>\n<\/tr>\n<tr class=\"row-14\">\n\t<td class=\"column-1\">digital_input_3<\/td><td class=\"column-2\">Boolean<\/td><td class=\"column-3\">Configured object or its equipment status<br \/>\ntrue - status = active<br \/>\nfalse - status = inactive<br \/>\n<\/td><td class=\"column-4\">True - False<\/td>\n<\/tr>\n<tr class=\"row-15\">\n\t<td class=\"column-1\">digital_input_4<\/td><td class=\"column-2\">Boolean<\/td><td class=\"column-3\">Configured object or its equipment status<br \/>\ntrue - status = active<br \/>\nfalse - status = inactive<br \/>\n<\/td><td class=\"column-4\">True - False<\/td>\n<\/tr>\n<tr class=\"row-16\">\n\t<td class=\"column-1\">ibutton<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">iButton or RFID card code of a driver assigned to a vehicle<\/td><td class=\"column-4\">Text<\/td>\n<\/tr>\n<tr class=\"row-17\">\n\t<td class=\"column-1\">first_driver_id<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">TCO code of the first driver<\/td><td class=\"column-4\">Text<\/td>\n<\/tr>\n<tr class=\"row-18\">\n\t<td class=\"column-1\">second_driver_id<\/td><td class=\"column-2\">String<\/td><td class=\"column-3\">TCO code of the second driver<\/td><td class=\"column-4\">Text<\/td>\n<\/tr>\n<tr class=\"row-19\">\n\t<td class=\"column-1\">satellites_count<\/td><td class=\"column-2\">Integer<\/td><td class=\"column-3\">Number of visible GPS or GLONASS satellites(depends on device configuration) while generating record in device<\/td><td class=\"column-4\">Number<\/td>\n<\/tr>\n<tr class=\"row-20\">\n\t<td class=\"column-1\">mileage<\/td><td class=\"column-2\">float<\/td><td class=\"column-3\">Object driven distance (depends on object configuration)<\/td><td class=\"column-4\">km<\/td>\n<\/tr>\n<tr class=\"row-21\">\n\t<td class=\"column-1\">power_supply_voltage<\/td><td class=\"column-2\">Integer<\/td><td class=\"column-3\">Object power supply voltage<\/td><td class=\"column-4\">mV<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<!-- #tablepress-112 from cache -->\n<p>Koncov\u00e9 body API, parametre po\u017eiadaviek a odpovede mo\u017eno sledova\u0165 v &#8220;Swagger&#8221; prostredn\u00edctvom odkazu: <a href=\"https:\/\/api.fm-track.com\/swagger-ui.html\">https:\/\/api.fm-track.com<\/a><\/p>\n<p style=\"background-color: #2e67b1; color: #ffffff; padding-left: 10px; padding-right: 10px;\"><p class=\"note\">Pozn\u00e1mka<br \/>\nJe potrebn\u00e9 si uvedomi\u0165, \u017ee odpove\u010f servera je pr\u00fad d\u00e1t, rovnak\u00fdch d\u00e1t, ktor\u00e9 prich\u00e1dzaj\u00fa od objektov. V\u0161etky prij\u00edman\u00e9 d\u00e1ta s\u00fa poskytovan\u00e9 &#8220;ako s\u00fa&#8221;. To znamen\u00e1, \u017ee jednotka m\u00f4\u017ee periodicky posiela\u0165 s\u00faradnice predch\u00e1dzaj\u00facej poz\u00edcie medzi z\u00e1znamami aktu\u00e1lnej poz\u00edcie. API nekontroluje a neriadi kontinuitu prij\u00edman\u00fdch d\u00e1t.<\/p><\/p>\n<hr \/>\n<p><div class=\"alignleft\"><a href=\"https:\/\/www.fmsdocumentation.com\/sk\/api\/historia-suradnic-objektu-api\/\" title=\"Hist\u00f3ria s\u00faradn\u00edc objektu API\"><span class=\"arrow\">\u2039 &nbsp <\/span> Hist\u00f3ria s\u00faradn\u00edc objektu API <\/a><\/div> <div class=\"alignright\"><a href=\"https:\/\/www.fmsdocumentation.com\/sk\/api\/objekt-api\/\" title=\"Objekt API\">Objekt API <span class=\"arrow\"> &nbsp\u203a <\/span> <\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Zasielanie s\u00faradn\u00edc objektov pre API informuje u\u017e\u00edvate\u013ea o zmen\u00e1ch objektu. Toto konkr\u00e9tne API funguje ako pr\u00fad inform\u00e1ci\u00ed. Po odoslan\u00ed po\u017eiadavky API sa najprv zobraz\u00ed posledn\u00e1 zn\u00e1ma s\u00faradnice ka\u017ed\u00e9ho objektu, potom akon\u00e1hle nastane zmena bud\u00fa odosielan\u00e9 nov\u00e9 d\u00e1ta. Pokia\u013e ned\u00f4jde k preru\u0161eniu spojenia, nie je nutn\u00e9 posiela\u0165 nov\u00fa po\u017eiadavku API. Pozn\u00e1mka Potom \u010do API vr\u00e1ti posledn\u00fa &hellip; <a href=\"https:\/\/www.fmsdocumentation.com\/sk\/api\/zasielanie-suradnic-objektu-pre-api\/\" class=\"more-link\">Pokra\u010dova\u0165 v \u010d\u00edtan\u00ed: <span class=\"screen-reader-text\">Zasielanie s\u00faradn\u00edc objektu pre API<\/span><\/a><\/p>\n","protected":false},"author":5,"featured_media":0,"parent":6618,"menu_order":3,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-6624","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/pages\/6624","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/comments?post=6624"}],"version-history":[{"count":3,"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/pages\/6624\/revisions"}],"predecessor-version":[{"id":6682,"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/pages\/6624\/revisions\/6682"}],"up":[{"embeddable":true,"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/pages\/6618"}],"wp:attachment":[{"href":"https:\/\/www.fmsdocumentation.com\/sk\/wp-json\/wp\/v2\/media?parent=6624"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}