WebMap - Создание токенов — различия между версиями

Материал из TK
Перейти к: навигация, поиск
 
(не показано 9 промежуточных версий этого же участника)
Строка 9: Строка 9:
 
Все операции выполняются методом POST с заголовком Content-Type = "application/x-www-form-urlencoded" и кодировке UTF-8.
 
Все операции выполняются методом POST с заголовком Content-Type = "application/x-www-form-urlencoded" и кодировке UTF-8.
   
== Создание токена ==
+
Форма создания токена в WebMap:
   
  +
[[Файл:WebMap_MakeTokenForm.png]]
URL: /Account/MakeToken
 
<table class='parms' style='width:100%;'>
 
<tr>
 
<td>id</td>
 
<td>- ID организации, в которой будет выполнятся поиск объектов нижеуказанных UIDов.</td>
 
<td>Обязателен</td>
 
</tr>
 
<tr>
 
<td>iduser</td>
 
<td>- ID пользователя, на которого создается токен (таблица Users в БД)</td>
 
<td>Обязателен</td>
 
</tr>
 
   
  +
== Создание токена ==
<tr>
 
  +
<pre>/Account/MakeToken</pre>
<td>objID</td>
 
<td>- GUID объекта или объектов (ТС), на которой создаются токены. Один или несколько GUIDов (через запятую). Может быть как GUID группы так и отдельных ТС, так и тех и других (таблицы CarGroup и Cars в БД, поле UID)</td>
 
<td>Обязателен</td>
 
</tr>
 
   
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
<tr>
 
  +
|-
<td>objSubgroups</td>
 
  +
| Параметр
<td>- true, если включать в токен все подгруппы указанных в objID групп или false, если включатся только ТС в указанной группе.</td>
 
  +
| Описание
<td>Если отсутствует - принимается как false</td>
 
  +
| Требуется?
</tr>
 
  +
|-
  +
|id
  +
|ID организации, в которой будет выполнятся поиск объектов нижеуказанных UIDов. Может быть как целочисленным идентификатором (таблица Orgs, поле ID), так и GUIDом организации (таблица Orgs, поле UID)
  +
|Обязателен
  +
|-
  +
|iduser
  +
|ID пользователя, на которого создается токен (таблица Users в БД)
  +
|Обязателен
  +
|-
  +
|objID
  +
|GUID объекта или объектов (ТС), на которой создаются токены. Один или несколько GUIDов (через запятую). Может быть как GUID группы так и отдельных ТС, так и тех и других (таблицы CarGroup и Cars в БД, поле UID)
  +
|Обязателен
  +
|-
  +
|objSubgroups
  +
|true, если включать в токен все подгруппы указанных в objID групп или false, если включатся только ТС в указанной группе.
  +
|Если отсутствует - принимается как false
  +
|-
  +
|objTrack
  +
|true, если показывать трек за текущие сутки (по умолчанию) по всем доступным токену ТС или false, если только последнее местоположение
  +
|Если отсутствует - принимается как false
  +
|-
  +
|geoFilterID
  +
|GUID геозон, которые используются для фильтрации. Позволяет ограничить просмотр трека - трек будет отображаться только в указанных геозонах, например если указана большая геозона очерченная вокруг города - трек ТС будет показываться только в городе и не будет показываться вне этой геозоны (таблица GeoObject или GeoObjectGroup, поле UID)
  +
|Не обязателен
  +
|-
  +
|geoFilterSubgroups
  +
|true, если при фильтрации используется все вложенные подгруппы, а geoFilterID - GUID группы
  +
|Если отсутствует - принимается как false
  +
|-
  +
|geoViewID
  +
|GUID геозон или групп геозон, которые будут показываться на карте
  +
|Не обязателен
  +
|-
  +
|geoViewSubgroups
  +
|true, если для отображения используется все вложенные подгруппы, а geoFilterID - GUID группы
  +
|Если отсутствует - принимается как false
  +
|-
  +
|SD
  +
|дата/время начала действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - токен начинает действовать немедленно
  +
|-
  +
|ED
  +
|дата/время окончания действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - токен будет бессрочным
  +
|-
  +
|VSD
  +
|начальные дата/время доступных токену данных по ТС, локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - данные доступны за весь период
  +
|-
  +
|VED
  +
|конечные дата/время доступных токену данных - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - данные доступны за весь период
  +
|}
   
  +
Пример:
<tr>
 
<td>objTrack</td>
 
<td>- true, если показывать трек за текущие сутки (по умолчанию) по всем доступным токену ТС или false, если только последнее местоположение</td>
 
<td>Если отсутствует - принимается как false</td>
 
</tr>
 
   
<tr>
+
<pre>
  +
id=49&iduser=2&objID=25f86189-adc9-445d-940c-abf860874622&objSubgroups=true&objTrack=falseSD=20160806-0000&ED=20160901-0700
<td>geoFilterID</td>
 
  +
</pre>
<td>- GUID геозон, которые используются для фильтрации. Позволяет ограничить просмотр трека - трек будет отображаться только в указанных геозонах, например если указана большая геозона очерченная вокруг города - трек ТС будет показываться только в городе и не будет показываться вне этой геозоны (таблица GeoObject или GeoObjectGroup, поле UID)</td>
 
<td>Не обязателен</td>
 
</tr>
 
   
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
<tr>
 
  +
|Результат (JSON)
<td>geoFilterSubgroups</td>
 
  +
|
<td>- true, если при фильтрации используется все вложенные подгруппы, а geoFilterID - GUID группы</td>
 
  +
|-
<td>Если отсутствует - принимается как false</td>
 
  +
|Успех
</tr>
 
  +
|{"ok":true,"data":"/Strict/Token/6aa9913c-4543-4d25-bb0f-e36d5082a89e", "id":"6aa9913c-4543-4d25-bb0f-e36d5082a89e"}
  +
|-
  +
|Ошибка
  +
|{"ok":false,"msg":"Отказано в доступе"}
  +
|}
   
  +
== Изменение параметров токена ==
<tr>
 
<td>geoViewID</td>
 
<td>- GUID геозон или групп геозон, которые будут показываться на карте</td>
 
<td>Не обязателен</td>
 
</tr>
 
   
  +
<pre>/Account/ModifyToken</pre>
<tr>
 
<td>geoViewSubgroups</td>
 
<td>- true, если для отображения используется все вложенные подгруппы, а geoFilterID - GUID группы</td>
 
<td>Если отсутствует - принимается как false</td>
 
</tr>
 
   
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
<tr>
 
  +
|-
<td>SD</td>
 
  +
| Параметр
<td>- дата/время начала действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM</td>
 
  +
| Описание
<td>Не обязательный параметр, если отсутствует - токен начинает действовать немедленно</td>
 
  +
| Требуется?
</tr>
 
  +
|-
<tr>
 
  +
|id
<td>ED</td>
 
  +
|ID токена (GUID)
<td>- дата/время окончания действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM</td>
 
  +
|Обязателен
<td>Не обязательный параметр, если отсутствует - токен будет бессрочным</td>
 
  +
|-
</tr>
 
  +
|objID
<tr>
 
  +
|GUID объекта или объектов (ТС), на которой создаются токены. Один или несколько GUIDов (через запятую). Может быть как GUID группы так и отдельных ТС, так и тех и других (таблицы CarGroup и Cars в БД, поле UID)
<td>VSD</td>
 
  +
|Не обязателен
<td>- начальные дата/время доступных токену данных по ТС, локальное время пользователя. Формат YYYYMMDD-HHMM</td>
 
  +
|-
<td>Не обязательный параметр, если отсутствует - данные доступны за весь период</td>
 
  +
|objSubgroups
</tr>
 
  +
|true, если включать в токен все подгруппы указанных в objID групп или false, если включатся только ТС в указанной группе.
<tr>
 
  +
|Если отсутствует - принимается как false
<td>VED</td>
 
  +
|-
<td>- конечные дата/время доступных токену данных - локальное время пользователя. Формат YYYYMMDD-HHMM</td>
 
  +
|objTrack
<td>Не обязательный параметр, если отсутствует - данные доступны за весь период</td>
 
  +
|true, если показывать трек за текущие сутки (по умолчанию) по всем доступным токену ТС или false, если только последнее местоположение
</tr>
 
  +
|Если отсутствует - принимается как false
</table>
 
  +
|-
  +
|geoFilterID
  +
|GUID геозон, которые используются для фильтрации. Позволяет ограничить просмотр трека - трек будет отображаться только в указанных геозонах, например если указана большая геозона очерченная вокруг города - трек ТС будет показываться только в городе и не будет показываться вне этой геозоны (таблица GeoObject или GeoObjectGroup, поле UID)
  +
|Не обязателен
  +
|-
  +
|geoFilterSubgroups
  +
|true, если при фильтрации используется все вложенные подгруппы, а geoFilterID - GUID группы
  +
|Если отсутствует - принимается как false
  +
|-
  +
|geoViewID
  +
|GUID геозон или групп геозон, которые будут показываться на карте
  +
|Не обязателен
  +
|-
  +
|geoViewSubgroups
  +
|true, если для отображения используется все вложенные подгруппы, а geoFilterID - GUID группы
  +
|Если отсутствует - принимается как false
  +
|-
  +
|SD
  +
|дата/время начала действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - токен начинает действовать немедленно
  +
|-
  +
|ED
  +
|дата/время окончания действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - токен будет бессрочным
  +
|-
  +
|VSD
  +
|начальные дата/время доступных токену данных по ТС, локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - данные доступны за весь период
  +
|-
  +
|VED
  +
|конечные дата/время доступных токену данных - локальное время пользователя. Формат YYYYMMDD-HHMM
  +
|Не обязательный параметр, если отсутствует - данные доступны за весь период
  +
|}
   
 
Пример:
 
Пример:
   
  +
<pre>
  +
id=6aa9913c-4543-4d25-bb0f-e36d5082a89e&objID=25f86189-adc9-445d-940c-abf860874622&objSubgroups=true&objTrack=falseSD=20160806-0000&ED=20160901-0700
  +
</pre>
   
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
 
  +
|Результат (JSON)
== Изменение параметров токена ==
 
  +
|
  +
|-
  +
|Успех
  +
|{"ok":true,"data":"/Strict/Token/6aa9913c-4543-4d25-bb0f-e36d5082a89e", "id":"6aa9913c-4543-4d25-bb0f-e36d5082a89e"}
  +
|-
  +
|Ошибка
  +
|{"ok":false,"msg":"Отказано в доступе"}
  +
|}
   
 
== Удаление токена ==
 
== Удаление токена ==
  +
  +
<pre>/Account/DeleteToken</pre>
  +
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
  +
|-
  +
| Параметр
  +
| Описание
  +
| Требуется?
  +
|-
  +
|id
  +
|ID токена
  +
|Обязателен
  +
|}
  +
  +
Пример:
  +
  +
<pre>id=6aa9913c-4543-4d25-bb0f-e36d5082a89e</pre>
  +
  +
{|border="1" cellspacing="0" cellpadding="5" style="width: 100%;"
  +
|Результат (JSON)
  +
|
  +
|-
  +
|Успех
  +
|{"ok":true}
  +
|-
  +
|Ошибка
  +
|{"ok":false,"msg":"Отказано в доступе"}
  +
|}

Текущая версия на 19:46, 6 августа 2016

Через создание токенов можно предоставлять конечным пользователям уникальную ссылку для отслеживания транспортных средств в ограниченный период времени (например для слежения за грузами или доставкой).

Поддерживается следующие операции с токенами:

  • Создание токена
  • Изменение параметров токена (период действия, список доступных ТС, включение/отключение режима трека, ...)
  • Удаление токена

Перед созданием токена необходима Аутентификация. Все операции выполняются методом POST с заголовком Content-Type = "application/x-www-form-urlencoded" и кодировке UTF-8.

Форма создания токена в WebMap:

WebMap MakeTokenForm.png

Создание токена

/Account/MakeToken
Параметр Описание Требуется?
id ID организации, в которой будет выполнятся поиск объектов нижеуказанных UIDов. Может быть как целочисленным идентификатором (таблица Orgs, поле ID), так и GUIDом организации (таблица Orgs, поле UID) Обязателен
iduser ID пользователя, на которого создается токен (таблица Users в БД) Обязателен
objID GUID объекта или объектов (ТС), на которой создаются токены. Один или несколько GUIDов (через запятую). Может быть как GUID группы так и отдельных ТС, так и тех и других (таблицы CarGroup и Cars в БД, поле UID) Обязателен
objSubgroups true, если включать в токен все подгруппы указанных в objID групп или false, если включатся только ТС в указанной группе. Если отсутствует - принимается как false
objTrack true, если показывать трек за текущие сутки (по умолчанию) по всем доступным токену ТС или false, если только последнее местоположение Если отсутствует - принимается как false
geoFilterID GUID геозон, которые используются для фильтрации. Позволяет ограничить просмотр трека - трек будет отображаться только в указанных геозонах, например если указана большая геозона очерченная вокруг города - трек ТС будет показываться только в городе и не будет показываться вне этой геозоны (таблица GeoObject или GeoObjectGroup, поле UID) Не обязателен
geoFilterSubgroups true, если при фильтрации используется все вложенные подгруппы, а geoFilterID - GUID группы Если отсутствует - принимается как false
geoViewID GUID геозон или групп геозон, которые будут показываться на карте Не обязателен
geoViewSubgroups true, если для отображения используется все вложенные подгруппы, а geoFilterID - GUID группы Если отсутствует - принимается как false
SD дата/время начала действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - токен начинает действовать немедленно
ED дата/время окончания действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - токен будет бессрочным
VSD начальные дата/время доступных токену данных по ТС, локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - данные доступны за весь период
VED конечные дата/время доступных токену данных - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - данные доступны за весь период

Пример:

id=49&iduser=2&objID=25f86189-adc9-445d-940c-abf860874622&objSubgroups=true&objTrack=falseSD=20160806-0000&ED=20160901-0700
Результат (JSON)
Успех {"ok":true,"data":"/Strict/Token/6aa9913c-4543-4d25-bb0f-e36d5082a89e", "id":"6aa9913c-4543-4d25-bb0f-e36d5082a89e"}
Ошибка {"ok":false,"msg":"Отказано в доступе"}

Изменение параметров токена

/Account/ModifyToken
Параметр Описание Требуется?
id ID токена (GUID) Обязателен
objID GUID объекта или объектов (ТС), на которой создаются токены. Один или несколько GUIDов (через запятую). Может быть как GUID группы так и отдельных ТС, так и тех и других (таблицы CarGroup и Cars в БД, поле UID) Не обязателен
objSubgroups true, если включать в токен все подгруппы указанных в objID групп или false, если включатся только ТС в указанной группе. Если отсутствует - принимается как false
objTrack true, если показывать трек за текущие сутки (по умолчанию) по всем доступным токену ТС или false, если только последнее местоположение Если отсутствует - принимается как false
geoFilterID GUID геозон, которые используются для фильтрации. Позволяет ограничить просмотр трека - трек будет отображаться только в указанных геозонах, например если указана большая геозона очерченная вокруг города - трек ТС будет показываться только в городе и не будет показываться вне этой геозоны (таблица GeoObject или GeoObjectGroup, поле UID) Не обязателен
geoFilterSubgroups true, если при фильтрации используется все вложенные подгруппы, а geoFilterID - GUID группы Если отсутствует - принимается как false
geoViewID GUID геозон или групп геозон, которые будут показываться на карте Не обязателен
geoViewSubgroups true, если для отображения используется все вложенные подгруппы, а geoFilterID - GUID группы Если отсутствует - принимается как false
SD дата/время начала действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - токен начинает действовать немедленно
ED дата/время окончания действия токена - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - токен будет бессрочным
VSD начальные дата/время доступных токену данных по ТС, локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - данные доступны за весь период
VED конечные дата/время доступных токену данных - локальное время пользователя. Формат YYYYMMDD-HHMM Не обязательный параметр, если отсутствует - данные доступны за весь период

Пример:

id=6aa9913c-4543-4d25-bb0f-e36d5082a89e&objID=25f86189-adc9-445d-940c-abf860874622&objSubgroups=true&objTrack=falseSD=20160806-0000&ED=20160901-0700
Результат (JSON)
Успех {"ok":true,"data":"/Strict/Token/6aa9913c-4543-4d25-bb0f-e36d5082a89e", "id":"6aa9913c-4543-4d25-bb0f-e36d5082a89e"}
Ошибка {"ok":false,"msg":"Отказано в доступе"}

Удаление токена

/Account/DeleteToken
Параметр Описание Требуется?
id ID токена Обязателен

Пример:

id=6aa9913c-4543-4d25-bb0f-e36d5082a89e
Результат (JSON)
Успех {"ok":true}
Ошибка {"ok":false,"msg":"Отказано в доступе"}