|
|
ru:local:remoteapi1504:codesamples:messages [13/03/2015 10:38] |
ru:local:remoteapi1504:codesamples:messages [13/03/2015 10:38] (текущий) |
| {{indexmenu_n>9}} |
| ====== Сообщения ====== |
| Чтобы загрузить, а затем работать с сообщениями в сессии есть встроенный объект -- загрузчик сообщений. В него можно загружать сообщения используя команду [[../apiref/messages/load_last|messages/load_last]] или [[../apiref/messages/load_interval|messages/load_interval]] и дальше работать с ними, если требуется загрузить другие сообщения, то предварительно нужно очистить загрузчик при помощи команды [[../apiref/messages/unload|messages/unload]]. |
| |
| //:!: Внимание!// Для запуска данного примера на Wialon Kit во всех запросах следует заменить **<nowiki>https://hst-api.wialon.com</nowiki>** на **<nowiki>https://kit-api.wialon.com</nowiki>**, а для входа в систему использовать логин и пароль своей учетной записи или логин и пароль демо-пользователя: //**kitdemo kitdemo**//. |
| |
| ===== Загрузка сообщений ===== |
| Загрузим сообщения с данными о местоположении объекта за интервал с 01.04.2013 по 20.04.2013 при помощи запроса [[../apiref/messages/load_interval|messages/load_interval]] и получим первые 3 из них. Для того, чтобы запросить только сообщения с местоположением, следует использовать маску 0xFF01 (0xFF00 - определяет тип сообщения, 0x0001 - определяет наличие информации о местоположении для сообщений с данными). Так же необходимо использовать флаг 0x0001, который получается из суммы флагов: 0x0000 - сообщения с данными, 0x0001 - сообщения с местоположением. |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=messages/load_interval& |
| params={ |
| "itemId":34868, |
| "timeFrom":1364760000, |
| "timeTo":1366487999, |
| "flags":0x0001, |
| "flagsMask":0xFF01, |
| "loadCount":3 |
| }&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| { |
| "count": 9172, |
| "messages": [{ |
| "t": 1364760081, |
| "f": 3, |
| "tp": "ud", |
| "pos": { |
| "y": 53.8396544, |
| "x": 27.5608672, |
| "z": 213, |
| "s": 0, |
| "c": 51, |
| "sc": 9 |
| }, |
| "i": 0, |
| "p": { |
| "param22": 3, |
| "adc1": 12.606, |
| "pwr_ext": 12.598, |
| "param199": 0, |
| "param241": 25701, |
| "battery_charge": 0 |
| } |
| }, { |
| "t": 1364760381, |
| "f": 3, |
| "tp": "ud", |
| "pos": { |
| "y": 53.8396544, |
| "x": 27.5609312, |
| "z": 213, |
| "s": 0, |
| "c": 73, |
| "sc": 9 |
| }, |
| "i": 0, |
| "p": { |
| "param22": 3, |
| "adc1": 12.545, |
| "pwr_ext": 12.547, |
| "param199": 0, |
| "param241": 25701, |
| "battery_charge": 0 |
| } |
| }, { |
| "t": 1364760682, |
| "f": 3, |
| "tp": "ud", |
| "pos": { |
| "y": 53.8396736, |
| "x": 27.5609664, |
| "z": 215, |
| "s": 0, |
| "c": 64, |
| "sc": 9 |
| }, |
| "i": 0, |
| "p": { |
| "param22": 3, |
| "adc1": 12.6, |
| "pwr_ext": 12.569, |
| "param199": 0, |
| "param241": 25701, |
| "battery_charge": 0 |
| } |
| }] |
| } |
| </code> |
| |
| После того как сообщения загружены, можно выбрать их произвольное количество для дальнейшей обработки. Например, выберем девятое сообщение из загруженного интервала при помощи запроса [[../apiref/messages/get_messages|messages/get_messages]]: |
| |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=messages/get_messages& |
| params={ |
| "indexFrom":8, |
| "indexTo":9 |
| }&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| [{ |
| "t": 1364762485, |
| "f": 3, |
| "tp": "ud", |
| "pos": { |
| "y": 53.8396992, |
| "x": 27.5609216, |
| "z": 223, |
| "s": 0, |
| "c": 45, |
| "sc": 7 |
| }, |
| "i": 0, |
| "p": { |
| "param22": 3, |
| "adc1": 12.584, |
| "pwr_ext": 12.569, |
| "param199": 0, |
| "param241": 25701, |
| "battery_charge": 0 |
| } |
| }] |
| </code> |
| |
| |
| ===== Удаление сообщений ===== |
| Теперь попробуем удалить первое сообщение при помощи запроса [[../apiref/messages/delete_message|messages/delete_message]]: |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=messages/delete_message& |
| params={ |
| "msgIndex":0 |
| }&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| { |
| "error": 7 |
| } |
| </code> |
| |
| Пользователь wialon_test не может удалять сообщения. При удачном выполнении этот запрос возвращает пустой объект: |
| <code javascript> |
| {} |
| </code> |
| |
| ===== Очистка загрузчика сообщений ===== |
| |
| Если возникла необходимость загрузить сообщения за другой интервал, то перед выполнением запроса нужно [[../apiref/messages/unload|очистить загрузчик сообщений]]: |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=messages/unload¶ms={}&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| {} |
| </code> |
| |
| Если попытаться выполнить запрос сообщений из пустого загрузчика сообщений, то вернется код ошибки: |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=messages/get_messages& |
| params={ |
| "indexFrom":0, |
| "indexTo":1 |
| }&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| {"error":4} |
| </code> |
| |
| ===== Построение слоя треков ===== |
| |
| Так же Wialon дает возможность не просто загрузить сообщения, но и построить трек по этим сообщениям. Для этого нужно загрузить сообщения в специальный графический слой. Слой треков можно использовать так же как и загрузчик сообщений, единственное отличие между ними - это графическая составляющая. |
| |
| Создадим слой треков по сообщениям, полученным с 01.01.2013 по 20.01.2013 при помощи запроса [[../apiref/render/create_messages_layer|render/create_messages_layer]]: |
| |
| <code> |
| https://hst-api.wialon.com/wialon/ajax.html?svc=render/create_messages_layer& |
| params={ |
| "layerName":"messages", |
| "itemId":34868, |
| "timeFrom":1357938000, |
| "timeTo":1358715599, |
| "tripDetector":1, |
| "trackColor":cc713cff, |
| "trackWidth":5, |
| "arrows":1, |
| "points":0, |
| "pointColor":0, |
| "annotations":0 |
| }&sid=<your_sid> |
| </code> |
| |
| Результат выполнения: |
| <code javascript> |
| { |
| "name": "messages", |
| "bounds": [53.8326976, 27.2796096, 53.9644416, 27.6123168], |
| "units": [{ |
| "id": 34868, |
| "msgs": { |
| "count": 5951, |
| "first": { |
| "time": 1356984476, |
| "lat": 53.9077377319, |
| "lon": 27.5011463165 |
| }, |
| "last": { |
| "time": 1358538957, |
| "lat": 53.8397254944, |
| "lon": 27.5608959198 |
| } |
| }, |
| "mileage": 699169.703025, |
| "max_speed": 118 |
| }] |
| } |
| </code> |
| |
| Загруженные сообщения можно просмотреть или удалить, так же можно получить тайлы графического слоя при помощи запроса [[../apiref/requests/avl_render|avl_render]]: |
| <code> |
| https://hst-api.wialon.com/avl_render/590_329_7/<your_sid>.png |
| </code> |
| |
| Результат выполнения: |
| |
| {{/remote_ex/messages.png?nolink}} |