Это первая редакция статьи: Апрель 2020
Wialon это продукт команды Gurtam.
Получение тестового доступа в систему Wialon
Есть возможность получить тестовый доступ в систему Wialon. Тогда у Вас в руках окажется заведомо рабочая система, с настройками по-умолчанию и тестовыми данными. Я заполнил анкету тут, затем со мной связался менеджер и дал тестовый доступ на месяц.
Создание токена для выполнения запросов API
Мне не удалось автоматизировать создание токена средствами 1С, хотя, теоретически, это должно должно работать. Возможно, это проблема текущей версии платформы 1С. Если в новых версиях проблем не будет, я дополню статью.
Для формирования токена нужно в браузере перейти по адресу страницы авторизации, ввести имя пользователя и пароль и авторизоваться. Сформированный токен появится в адресной строке браузера после перехода на страницу успешной авторизации.
Для решения задачи я обошелся всего двумя параметрами при авторизации. Параметры передаются методом GET, то есть текстом в адресе.
У меня получился такой адрес для запроса: https://wialontest.com/login.html/login.html?access_type=-1&duration=0
Первый параметр устанавливает неограниченные полномочия, а второй неограниченный срок действия для токена.
Открываем сессию
Имея в своем распоряжении действующий токен, мы можем открывать сессию работы с сервисом.
Открыть сессию - это значит получить идентификатор сессии, который потом нужно будет использовать во всех запросах.
Все запросы к сервису выполняются методом POST, а это значит, что нужно корректно правильно сформировать тело (текст) запроса.
Тело текста запроса выглядит как набор параметров GET-запроса, при этом один из параметров оформлен в виде JSON. Для запроса логина при помощи токена получаем следующий текст:
svc=token/login¶ms={"token":"<Токен>"}
Текст для других запросов формируется точно также. В прилагаемой обработке можно посмотреть, как текст JSON можно легко формировать из структуры.
Создание шаблона отчета в Wialon
Отчеты в системе Wialon настраиваются. Называется это шаблонами. Состав данных, получаемых из отчета набирается из готовых элементов, компонуя которые получаем нужный нам шаблон отчета. Мы добавляем новый шаблон, в котором будет пробег. Для этого переходим в раздел "Отчеты", нажимаем кнопку "Создать" (Создать новый шаблон), задаём имя шаблона и его тип "Объект". Имя шаблона для нас важно, именно по этому имени мы будем искать шаблон отчета при запросе через API. Тип "Объект" означает, что параметром отчета будет именно "Объект", т.е. автомобиль. Далее настраивается содержимое отчета, которое может быть графиком, таблицей или набором статистики. Выбираем "Статистика" и видим большой список показателей из которых может состоять наш отчет. Ищем там показатели, связанные с пробегом.
Поправка к универсальному времени
Это ещё один момент, который не очевиден из документации. В обработке есть функция ЮниксДата(). Она преобразует обычную дату в специальный тип, целое число обозначающее дату. И при этом преобразовании используется параметр поправки к универсальному времени. Этот параметр формируется средствами БСП и его можно взять оттуда так, как я это сделал в своей обработке.
На все вопросы обязательно отвечу в комментариях! Прошу не стесняться.
Если тема окажется востребованной, дополню статью более подробными описаниями.
Обработка тестировалась на платформе: 8.3.16.1224. Не привязана ни к каким версиям конфигураций.