Логин под токеном

Чтобы получить токен, воспользуйтесь формами, указанными в разделе Новый механизм авторизации. Для работы под токеном используется token/login. Формат команды следующий:

svc=token/login&params={"token":<text>,
                        "operateAs":<text>,
                        "fl":<uint>}

:!: После входа создается сессия, в пределах которой могут быть выполнены различные запросы. Если в течении 5 минут сервер не получит ни одного запроса, то он оборвет сессию. Для того, что бы этого не случилось можно каждые 5 минут посылать запрос, например: requests/avl_evts.

Пример см здесь Логин через токен

Параметры

Название Описание
token уникальное имя токена, 72 символа
operateAs имя дочернего пользователя, под которым будет совершен вход в систему (необязательный параметр)
fl флаги управления ответом, опционально
Флаг HEX Флаг DEC Описание
0x1 1 базовая информация
0x2 2 информация по пользователю
0x4 4 информация по токену
0x8 8 информация по классам items
0x10 16 информация по доступным биллинг сервисам (features)
0x20 32 пользовательские CustomProperties

Как получить имя токена?

- создать новый токен (команда token/update, callmode:create);
- выполнить команду token/list (если токены уже созданы).

Нельзя залогиниться под токеном, который ещё не активирован (параметр at в свойствах токена).

Возвращаемый результат

{
	"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>]}",	
								/* все настройки токена в экранированном json-е */
	...		/* ответ команды core/login */
}

:!: Уточнение для <service_name>: за дополнительной информацией по сервисам обращайтесь к списку сервисов.

Флаги пользователя рассмотрены в разделе Установить флаги настроек пользователя.

Настройки FTP рассмотрены в разделе Настройки FTP.

Follow us on Facebook Gurtam Wialon Twitter Gurtam Wialon info@gurtam.com   |   Copyright © 2002-2024 Gurtam