Общее описание СПИК


Общее описание СПИК

Сервис Программной Интеграции и Коммуникации (далее будет использоваться аббревиатура СПИК) - API [1]  для интеграции с другими системами. Позволяет интегрироваться с различными учётными системами: 1С, SAP, Oracle и другими. СПИК предназначен для взаимодействия с внешними системами и построен на концепции сервис-ориентированной архитектуры (SOA).

СПИК является расширением для СКАУТ-Платформы[2] С помощью СПИК можно не только получать данные из системы, а также добавлять и изменять их.

СПИК позволяет:

Взаимодействие СПИК со сторонними системами осуществляется по двум протоколам:

REST[3] –  предназначен для ведения коммуникации через стандартные HTTP запросы.

SOAP[4] –  предназначен для получения описания сервиса (его метаданных[5]  ) на языке WSDL[6]   с последующей генерацией прокси-заглушки[7].  Прокси-заглушки позволяют удаленно вызывать методы сервиса. Таким образом появляется возможность быстро создавать клиентские приложения практически на любом современном языке программирования: C#, Java, 1C и т.д.

Возможности СПИК

Сервис программной интеграции и коммуникации позволяет получать и передавать из СКАУТ-Платформы в стороннюю учётную систему:

Кроме того, СПИК предоставляет возможность заказывать отправку отчётов по объектам мониторинга на адреса электронной почты. При этом не требуется использовать диспетчерский интерфейс СКАУТ-Платформы – СКАУТ-Студио.

Далее перечисленные возможности СПИК описаны подробнее.

Запрос объектов мониторинга

Запрос объектов мониторинга[8]  позволяет получить список транспортных средств, доступных данному пользователю. Алгоритм запроса объектов мониторинга в СПИК:

  1. Пройти авторизацию в СПИК и получить токен авторизации;Пример кода.
  2. Получить количество доступных объектов мониторинга;
  3. Составить запрос для постраничной загрузки объектов. В запросе необходимо указать смещение и количество объектов;
  4. Получить объект мониторинга, вызвав у сервиса соответствующий метод, описанный в документации по СПИК.

Пример кода, реализующего запрос объектов мониторинга доступен по ссылке.

Так же в документации по СПИК доступны описания контрактов данных отдачи объектов мониторинга и контракты данных отдачи групп объектов мониторинга.

К получаемым по объектам мониторинга данным относятся:

Запрос онлайн данных

Чтобы сделать запрос онлайн данных[9] необходимо выполнить следующие действия:

  1. Пройти авторизацию в системе СКАУТ (если не пройдена).Пример кода.
  2. Получить список идентификаторов Объектов мониторинга, по которым необходимо получить онлайн данные.
  3. Сформировать запрос для подписки на получение онлайн данных и указать список идентификаторов объектов мониторинга, по которым требуется получить данные.
  4. Подписаться на онлайн данные, вызвав у сервиса соответствующий метод с параметром, полученным на предыдущем шаге. При успешном выполнении сервис вернёт ответ, в котором будет находиться ключ сессии онлайн данных.
  5. Получить онлайн данные по подписке. Вызвать у сервиса метод, передав в качестве параметра идентификатор сессии онлайн данных, полученной на предыдущем шаге (по полученному идентификатору подписки можно много раз получать онлайн-данные).

Пример кода, реализующего запрос онлайн данных доступен по ссылке.

Так же в документации по СПИК доступны описания контрактов онлайн-данных.

К получаемым по объектам мониторинга данным относятся:

Запрос списка онлайн данных с датчиками

Запрос онлайн данных с датчиками производится аналогично п. 2.2. В ответ на запрос так же будут получены:

К получаемым по объектам мониторинга данным относятся:

Так же в документации по СПИК доступно описание контракта онлайн-данных с датчиками.

И кроме перечисленных данных в ответе на запрос будет содержаться так называемая коллекция датчиков. Для каждого датчика в коллекции будут указаны:

Запрос построения отчета и его отправки на почтовые адреса

В СПИК предусмотрена возможность заказа отчетов на почту. Отчет может быть заказан, если пользователю доступен хотя бы один шаблон отчета. Шаблон отчета содержит настройки отчета, необходимые для его построения и отображения.

Для того, чтобы заказать отчет на почту, необходимо выполнить следующие действия:

  1. Пройти авторизацию в системе СКАУТ (если не пройдена).Пример кода.
  2. Запросить доступные пользователю отчеты и их шаблоны (путем вызова специального метода сервиса СПИК).
  3. Составить запрос на построение отчета, указав необходимые параметры.
  4. Отправить запрос на построение в СПИК (необходимо вызвать метод сервиса, передав в параметр запрос на построение, созданный согласно предыдущему пункту).

Пример кода, реализующего запрос построения отчета и его отправки на почтовые адреса доступен по ссылке.

Так же в документации по СПИК доступны описания контрактов отчётов.

В качестве параметров запроса следует указать следующие данные:

Запрос статистик

  1. Для того, чтобы запросить заказать отчет на почту, необходимо выполнить следующие действия:
  2. Пройти авторизацию в системе СКАУТ (если не пройдена).Пример кода.
  3. Сформировать запрос на открытие сессии построения статистики.
  4. Вызвать метод заглушки с параметром типа. Метод вернёт объект ответа на запрос, но, поскольку на начальном этапе в сессии нет ни одного запроса на построение статистики, в ответе будет только открытая сессия.
  5. Следует добавить один или более запросов на построение статистики к сессии. Для этого необходимо вызвать метод в сервисе по построению конкретного вида статистик, передав ему параметры построения статистики, необходимые для ее построения. При успешном выполнении метода добавления к сессии построения статистик добавится информация о том, что будет необходимо строить данный тип статистик. В СПИК существует ограничение, заключающееся в том, что в одной сессии не может быть несколько запросов на построение одного и того же типа конкретной статистики. После того, как все запросы на построение статистик добавлены, необходимо запустить построение этих статистик, вызвав метод сервиса, принимающий в качестве параметра сессию СПИК.
  6. После ожидания получения статистик произойдёт забор статистик. После запуска построения статистики можно начинать получение построенных результатов порциями. Построение статистики на сервере обычно занимает некоторое время, поэтому, если статистика еще не построена, при вызове метода получения статистики сервер вернет ответ без построенной статистики, указав при этом статус операции «Processing». Если же статистика построена, то вызов данного метода вернет описание статистики со статусом «Ok» и построенную порцию статистики. Операцию забора порций статистик следует произвести для всех статистик, которые были заказаны в предыдущем пункте.
  7. Далее отправляется запрос следующей порции построения статистики. Так как статистики строятся не сразу за весь период запроса, а с разбиением по дням, то после забора статистики следует дать серверу команду приступить к построению новой порции, если текущая порция не являлась последней.
  8. Для завершения построения статистик, необходимо закрыть сессию, вызвав соответствующий метод, принимающий в качестве параметра сессию СПИК.

На рисунке 1 в виде блок-схемы показано как происходит описанный выше процесс.

блоксхема.PNG

Рисунок 1 – Получение статистик в СПИК

Пример кода, реализующего запрос статистик доступен по ссылке.

Так же в документации по СПИК доступны описания контрактов статистик данных.

СПИК позволяет получать широкий спектр статистик из СКАУТ-Платформы, среди которых:

Статистика по одному датчику

В рамках этой статистики можно получать точки статистики по дискретному датчику и точки статистики по аналоговому датчику. Эти точки содержат в себе данные о моменте времени получения значения и значение показателя датчика в этот момент времени.

Статистики по одному датчику можно получать целым набором датчиков.

Описание сервиса статистик по дискретным датчикам доступно по ссылке.

Статистика по расходу топлива

В этой статистике получаются:

Описание сервиса статистик по расходу топлива доступно по ссылке

 

Статистика по датчику расхода топлива

Статистика по датчику расхода топлива может быть либо включена в статистику по расходу топлива, описанную выше, либо может получаться независимо. В рамках этой статистики получаются следующие данные:

Статистика по заправкам и сливам топлива

Данная статистика позволяет получать следующие данные:

Описание сервиса статистик по заправкам и сливам топлива доступно по ссылке.

 

Статистика по топливному событию

В рамках статистики по топливному событию можно получать:

Статистика по режимам работы двигателя

Статистика по режимам работы двигателя позволяет получать данные о:

Описание сервиса статистик по режимам работы двигателя доступно по ссылке.

 

Статистика по периоду работы двигателя

В рамках статистики по отдельному периоду СПИК позволяет получать информацию о:

Статистика данных по навигации прошедших предварительную проверку

Эта статистика позволяет получать данные о:

Точки навигации передаются набором. Каждый из элементов набора содержит следующие данные:

Описание сервиса статистик по валидации навигационных даных доступно по ссылке.

 

Статистика по фильтрации навигационных данных

Статистика по фильтрации навигационных данных позволяет получать отфильтрованные точки навигации. Полученные точки содержат данные, которые описаны в предыдущем пункте.

При отправке запроса на получение статистики по фильтрации навигационных данных в СПИК следует передать Запрос построения статистики по фильтрации навигационных данных, который должен содержать:

Параметры фильтрации точек;

Параметры фильтрации отрезков пути;

Описание сервиса статистик по фильтрации навигационных данных доступно по ссылке.

 

Статистика трека с пробегом по каждому периоду

В рамках этой статистики СПИК позволяет получать:

Описание сервиса статистик по треку по каждому периоду доступно по ссылке.

 


[1] API (интерфейс программирования приложений, интерфейс прикладного программирования) (англ. application programming interface, API [эй-пи-ай]) — набор готовых классов, процедур, функций, структур и констант, предоставляемых приложением (библиотекой, сервисом) для использования во внешних программных продуктах. Используется программистами при написании всевозможных приложений. Вернуться к тексту.

[2] СКАУТ-Платформа – это комплексный продукт, состоящий из оборудования и программного обеспечения, предназначенный для сокращения затрат и повышения эффективности работы корпоративных автопарков. Решение СКАУТ обеспечивает определение местоположения и контроль транспорта при помощи систем GPS/ГЛОНАСС и дополнительных датчиков, передачу этих данных через GPRS-канал и сеть Интернет, а также хранение, обработку и последующий анализ информации в специализированных программных решениях. Разработчиком, производителем и интегратором этого комплексного решения является группа компаний СКАУТ. Вернуться к тексту.

[3] REST – стиль построения архитектуры распределенного приложения. Вернуться к тексту.

[4] SOAP (от Simple Object Access Protocol — простой протокол доступа к объектам, вплоть до спецификации 1.2) — протокол обмена структурированными сообщениями в распределённой вычислительной среде. Вернуться к тексту.

[5]  Метаданные – данные о данных. Описание формата передаваемых данных в какой-либо системе. Вернуться к тексту.

[6]  WSDL (web service definition language) – язык описания веб-сервисов и доступа к ним, основанный на языке XML. Вернуться к тексту.

[7] Прокси-заглушка – класс для доступа к удаленному сервису. Генерируется системой после получения метаданных о сервисе, либо создается вручную. Вернуться к тексту.

[8] Объект мониторинга – это транспортное средство, специальная техника или другой движущийся, или стационарный объект, за которым ведется наблюдение при помощи ГЛОНАСС/GPS технологий спутникового мониторинга с целью получения реальных показателей эффективности его работы. Вернуться к тексту.

[9] Онлайн данные – оперативная информация об объекте мониторинга. В режиме реального времени СКАУТ-Платформа позволяет отслеживать местоположение транспортного средства, его скорость и направление движения. Вернуться к тексту.



Номер материала: 1527
Отправлено: Thu, Sep 20, 2018
Последнее обновление: Thu, Dec 29, 2022
Отправлено: Анисимов Максим Михайлович [m.anisimov@scout-gps.ru]

Online URL: https://kb.scout-gps.ru/article/Общее-описание-СПИК-1527.html