1

Несколько вопросов по API

(edited by popowich89 09/05/2018 13:56:09)

Topic: Несколько вопросов по API

Здравствуйте!
  Я разрабатываю интеграцию сервиса с 1С. Многое мне реализовать удалось, но есть некоторые вопросы:
1. Начну с глупого вопроса. Я пользуюсь API Wialon Local. По документации понятно, что есть несколько версий API (1504,1604,1704)  так вопрос в том что я не могу понять а какую версию API я использую ?)  этого нет не в шаблоне адреса http://{host}/wialon/ajax.html?sid=<text>&svc=<svc>&params={<params>}  я не нашел ни одной ф-ии, которая бы дала информацию по веhсии API

2. Вопрос по работе с сообщениями. Мне необходимо загрузить сообщения с исходными данными за интервал времени. Использую messages/load_interval, потом можно юзать messages/get_messages. Очень печально, что в первом методе нет ни какого фильтра, но он якобы есть в методе получения сообщений и даже есть пример "filter":"pos.x,p.pre*,p.param?"

Но я ни как не пойму как он работает. Вот пример одного сообщения, которые мне нужно отобрать :
{"t":1519864159,"f":33,"tp":"ud",
"pos":{"y":55.9145516667,"x":37.4152633333,"z":194,"s":0,"c":67,"sc":18},
"dr":"004F002CF45F","lc":0,
"p":{"hdop":0.61,"avl_driver":"004F002CF45F","Type":"TR","Idx":785,"FSD":"010318","FST":"002331",
"FCD":"010318","FCT":"002919","A":0,"Vtag":0,"Vrdr":0,"Pump":1,"Limit":0,"FV":9.31,"FP":342,"TOT":86113,
"FL0":2338,"FV0":1137,"FT0":-14,"FD0":0,"FL1":26,"FV1":13,"FT1":-14,"FD1":0,"VID":0,"ODO":0}}

Отбирать я должен по параметру "Type":"TR" т.е. Type = TR, в отбрасываемых сообщениях Type = ST
Я не понимаю как это задать в фильтре....

3. Сообщение выше представляет собой факт заправки на АЗС и в нем должна быть карта водителя, как она в нем шифруется ?

Большое спасибо заранее!)

2

Несколько вопросов по API

Re: Несколько вопросов по API

004F002CF45F - ID водителя (возможно номер карты) параметр avl_driver отвечает за передачу ID водителей для привязки. такое же значение в параметре dr.
если 004F002CF45F из 16 системы перевести в десятичную получится 339305362527
Вам наверное стоит указать, что за протокол(устройство) используется, какой объем заправки. Многие значение будут передаваться не непривычном десятеричном виде - имейте это ввиду.
Подозреваю, что где то тут:
"Idx":785,"FSD":"010318","FST":"002331","FCD":"010318","FCT":"002919","A":0,"Vtag":0,"Vrdr":0,"Pump":1,"Limit":0,"FV":9.31,"FP":342,"TOT":86113,"FL0":2338,"FV0":1137,"FT0":-14,"FD0":0,"FL1":26,"FV1":13,"FT1":-14,"FD1":0,"VID":0,"ODO":0
зарыт объем топлива.
Укажите номер карты, объем топлива, конечный и начальный уровень топлива, возможно ID заправки.
Могу предположить что:
FT похоже на температуру (fuel temperature)
по аналогии:
FL - уровень топлива
FV - объем топлива
ТС с двумя баками?

3

Несколько вопросов по API

Re: Несколько вопросов по API

Спасибо за ответ! да с номером карты разобрался, где там зарыт объем заправки, пока ищу. Может где то есть справочник этих параметров ?
Самое печальное, что не могу применить фильтр к методу  messages/get_messages для одного объекта приходит огромное количество сообщений, и что бы вычленить нужных приходится весь этот массив загружать....

4

Несколько вопросов по API

Re: Несколько вопросов по API

Выполнение Команды через API стало давать ответ {"error":7}

Добрый день. Раньше запрос на выполнение команды выдавал "{}" и исполнялся. Вчера стал выдавать ошибку  {"error":7}, запрос не менял.

(Меняю настройки ГалилеоСкай 5 с помощью HTTP команд Wialon hosting, отправленные на оборудование из 1с)

"Content-Type","application/x-www-form-urlencoded"

/wialon/ajax.html?svc=unit/exec_cmd&params={"itemId":17257098,"commandName":"%D0%A2%D1%80%D0%B0%D0%BD%D1%81%D0%BB%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D1%82%D1%8C%20%D1%82%D0%BE%D0%BB%D1%8C%D0%BA%D0%BE%20%D0%B2%20Wialon","linkType":"tcp","param":"SERVERIP2%20%2C6364","timeout":0,"flags":16}&sid=036b8c44dbdbf5de3f1ad1b18d151de5

"/wialon/ajax.html?svc=unit/exec_cmd&params={""itemId"":"+ ObjectIDComand +",""commandName"":""" + КодироватьСтрURL("Транслировать только в Wialon") + """,""linkType"":""tcp"",""param"":""" + КодироватьСтрURL("SERVERIP2 ,6364") + """,""timeout"":0,""flags"":16}&sid=" + Токен

Прошу помочь решить вопрос.

5

Несколько вопросов по API

Re: Несколько вопросов по API

novikov.a
Проверьте права доступа на объект у пользователя, от имени которого выполняете запросы. Возможно пользователя просто лишили их в wialon

6

Несколько вопросов по API

Re: Несколько вопросов по API

Добрый день.  Ситуация такая что в ресурсе 1с интеграция доступно 3 шаблона, 2 собственных и 1 из другого ресурса.  Как понимать ответ запроса чтобы сформировать доступный шаблон другого ресурса, если ID совпадают. Т.е. необходимо будет авторизоваться под другой учеткой и как в этом запросе вывести из какой?

{"searchSpec":{"itemsType":"avl_resource","propName":"sys_name","propValueMask":"*","sortType":"sys_name","propType":"","or_logic":"0"},"dataFlags":8192,"totalItemsCount":5,"indexFrom":0,"indexTo":0,"items":[

          {"rep":{"1":{"id":1,"n":"1с лист","ct":"avl_unit","c":18245},"2":{"id":2,"n":"Новый отчет","ct":"avl_unit","c":4383}},"repmax":0},
          {"rep":{"1":{"id":1,"n":"ПутевойЛист","ct":"avl_unit","c":19261}},"repmax":0},{"rep":{},"repmax":0},{"rep":{},"repmax":0},{"rep":{},"repmax":0}]}

7

Несколько вопросов по API

Re: Несколько вопросов по API

novikov.a wrote:

{"searchSpec":{"itemsType":"avl_resource","propName":"sys_name","propValueMask":"*","sortType":"sys_name","propType":"","or_logic":"0"},"dataFlags":8192,"totalItemsCount":5,"indexFrom":0,"indexTo":0,"items":[

          {"rep":{"1":{"id":1,"n":"1с лист","ct":"avl_unit","c":18245},"2":{"id":2,"n":"Новый отчет","ct":"avl_unit","c":4383}},"repmax":0},

Вы не подали базовый флаг (0x1), из-за чего не пришёл id ресурса.

Попробуйте вместо "dataFlags":8192 подать "dataFlags":8193.

Wialon Hosting Frontend
8

Несколько вопросов по API

Re: Несколько вопросов по API

Спасибо. Помогло.

Отчеты можно формировать из любой учетки если есть доступ по "ID ресурса", "ID отчета".  .т.е.  оказалось, что ID отчета уникально в пределах ресурса.

Спасибо