Здесь показаны различия между двумя версиями данной страницы.
Both sides previous revision Предыдущая версия Следущая версия | Предыдущая версия | ||
ru:sidebar:remoteapi:apiref:token:login [02/10/2017 15:26] stan [Параметры] |
ru:sidebar:remoteapi:apiref:token:login [04/02/2021 09:10] (текущий) chdi [Логин под токеном] |
||
---|---|---|---|
Строка 2: | Строка 2: | ||
======Логин под токеном====== | ======Логин под токеном====== | ||
Чтобы получить токен, воспользуйтесь формами, указанными в разделе [[../login/login|Новый механизм авторизации]]. | Чтобы получить токен, воспользуйтесь формами, указанными в разделе [[../login/login|Новый механизм авторизации]]. | ||
- | Для работы под токеном используется **token/login**. Сигнатура команды следующая: | + | Для работы под токеном используется **token/login**. Формат команды следующий: |
<code javascript> | <code javascript> | ||
svc=token/login¶ms={"token":<text>, | svc=token/login¶ms={"token":<text>, | ||
- | "operateAs":<text> | + | "operateAs":<text>, |
"fl":<uint>} | "fl":<uint>} | ||
</code> | </code> | ||
+ | :!: После входа создается сессия, в пределах которой могут быть выполнены различные запросы. Если в течении 5 минут сервер не получит ни одного запроса, то он оборвет сессию. Для того, что бы этого не случилось можно каждые 5 минут посылать запрос, например: [[../requests/avl_evts|requests/avl_evts]]. | ||
+ | |||
+ | Пример см здесь [[https://sdk.wialon.com/wiki/ru/sidebar/remoteapi/codesamples/login|Логин через токен]] | ||
=====Параметры===== | =====Параметры===== | ||
^ Название ^ Описание ^ | ^ Название ^ Описание ^ | ||
| token | уникальное имя токена, 72 символа | | | token | уникальное имя токена, 72 символа | | ||
| operateAs | имя дочернего пользователя, под которым будет совершен вход в систему (необязательный параметр) | | | operateAs | имя дочернего пользователя, под которым будет совершен вход в систему (необязательный параметр) | | ||
- | | fl | флаги управления ответом | | + | | fl | флаги управления ответом, опционально | |
Строка 22: | Строка 25: | ||
| 0x8 | 8 | информация по классам items | | | 0x8 | 8 | информация по классам items | | ||
| 0x10 | 16 | информация по доступным биллинг сервисам (features) | | | 0x10 | 16 | информация по доступным биллинг сервисам (features) | | ||
+ | | 0x20 | 32 | пользовательские CustomProperties | | ||
===Как получить имя токена?=== | ===Как получить имя токена?=== | ||
- создать новый токен (команда [[../token/update|token/update]], callmode:create);\\ | - создать новый токен (команда [[../token/update|token/update]], callmode:create);\\ | ||
Строка 30: | Строка 34: | ||
- | + | ===== Возвращаемый результат ===== | |
- | + | <code=javascript> | |
- | =====Возвращаемый результат===== | + | |
- | Ответ такой же, как если бы пользователь залогинился через [[../core/login|core/login]] под учётной записью, создавшей токен. Однако в ответе есть новый объект **token** со всеми свойствами токена в виде экранированного json-а: | + | |
- | <code javascript> | + | |
{ | { | ||
- | ..., /* ответ команды core/login */ | + | "au":<text>, /* имя пользователя */ |
+ | "tm":<uint>, /* текущее время (UTC) */ | ||
+ | "wsdk_version":<text>, /* версия wialon sdk */ | ||
+ | "eid":<text>, /* ID сессии*/ | ||
+ | "gis_sid":<text>, /* ID сессии для сервисов картографии */ | ||
+ | "host":<text>, /* хост */ | ||
+ | "hw_gw_ip":<text>, /* ip для оборудования */ | ||
+ | "pi":<int>, /* интервал пинга */ | ||
+ | "user":{ /* пользователь, от имени которого был осуществлен вход */ | ||
+ | "nm":<text>, /* имя */ | ||
+ | "cls":<uint>, /* ID базового класса "user" */ | ||
+ | "id":<long>, /* ID */ | ||
+ | "prp":{ /* произвольные свойства, например: */ | ||
+ | "dst":<text>, /* летнее время */ | ||
+ | "language":<text>, /* язык (двухбуквенный код) */ | ||
+ | "msakey":<text>, /* ключ доступа к мобильной версии сайта */ | ||
+ | "pcal":<text>, /* иранский календарь */ | ||
+ | "tz":<text>, /* часовой пояс */ | ||
+ | "us_units":<text>, /* единицы измерения США (мили и галлоны) */ | ||
+ | ... | ||
+ | }, | ||
+ | "crt":<uint>, /* ID создателя */ | ||
+ | "bact":<uint>, /* ID учетной записи */ | ||
+ | "fl":<uint>, /* флаги пользователя */ | ||
+ | "hm":<text>, /* маска хоста */ | ||
+ | "uacl":<uint>, /* права пользователя на самого себя */ | ||
+ | "mu": <uint>, /* Система измерения */ | ||
+ | "ct": <uint>, /* Дата создания пользователя */ | ||
+ | "ftp": {<text>}, /* Настройки FTP */ | ||
+ | "ld": <uint>, /* Дата последнего логина */ | ||
+ | "pfl": <uint>, /* Флаги создателя */ | ||
+ | "ap": { /* Параметры двухфакторной авторизации */ | ||
+ | "type":<uint>, /* тип авторизации ( 0 - нет, 1 - email, 2 - SMS ) */ | ||
+ | "phone":<text> /* номер телефона */ | ||
+ | }, | ||
+ | "mapps": {<text>}, /* Список мобильных приложений */ | ||
+ | "mappsmax": <int> /* Ограничения на мобильные приложения, указанные в тарифном плане */ | ||
+ | |||
+ | }, | ||
+ | "classes":{ /* базовые классы доступные текущему пользователю: ключ - название базового класса, значение - ID базового класса */ | ||
+ | "avl_hw":<uint>, /* тип оборудования */ | ||
+ | "avl_resource":<uint>, /* ресурс */ | ||
+ | "avl_retranslator":<uint>, /* ретранслятор */ | ||
+ | "avl_unit":<uint>, /* объект */ | ||
+ | "avl_unit_group":<uint>, /* группа объектов */ | ||
+ | "user":<uint>, /* пользователь */ | ||
+ | "avl_route":<uint> /* маршрут */ | ||
+ | }, | ||
+ | "features":{ | ||
+ | "unlim":<bool>, /* тип тарифного плана: 0 - обычный, 1 - специальный для разработки и тестирования */ | ||
+ | "svcs": { /* хэш-коллекция разрешенных сервисов, если сервис не указан - значит запрещён */ | ||
+ | "<service_name>":<bool>, /* ключ - имя сервиса, значение: 0 - сервис разрешен, но достигнут лимит, 1 - сервис разрешен и им можно пользоваться */ | ||
+ | ... | ||
+ | } | ||
+ | } | ||
+ | ..., /* ответ команды core/login */ | ||
"token":"{\"app\":\"<text>\",\"ct\":<uint>\"at\":<uint>,\"dur\":<uint>,\"fl\":<uint>\"p\":\"<text>\",\"items\":[<long>]}", | "token":"{\"app\":\"<text>\",\"ct\":<uint>\"at\":<uint>,\"dur\":<uint>,\"fl\":<uint>\"p\":\"<text>\",\"items\":[<long>]}", | ||
Строка 43: | Строка 99: | ||
} | } | ||
</code> | </code> | ||
+ | :!: **Уточнение для <service_name>**: за дополнительной информацией по сервисам обращайтесь к [[../account/get_account_data#spisok_servisov | списку сервисов]]. | ||
+ | |||
+ | Флаги пользователя рассмотрены в разделе [[../user/update_user_flags]]. | ||
+ | |||
+ | Настройки FTP рассмотрены в разделе [[../item/update_ftp_property]]. | ||
+ |
|