Параметры
interface Login
{
/**
* Логин оператора
*/
login: string
/***
* Пароль оператора
*/
password: string
/**
* Номер телефона оператора
*/
number: string
/**
* Имя профиля настроек сервера
*/
profile: string
/**
* Домен, может быть не указан, если задан в настройках профиля
*/
domain?: string
}
PY
Ответ
interface AuthResponse
{
/**
* Токен авторизации
*/
token: string
/**
* Признак, является ли оператор супервизором
*/
supervisor: boolean
/**
* Дополнительные возможности оператора
*/
capabilities: UserCapabilities
/**
* Время, после которого пользователь будет разлогинен, если он не выполняет никаких действий
*/
autoLogoutTimeout: number|null
}
UserCapabilities {
/**
* Признак, что пользователь видит информацию о вызовах в очереди
*/
operatorGetInQueueCalls: boolean
}
PY
Коды ответов:
200 — в случае успеха;
401 — Текстовые сообщения:
- Requested number is occupied — если номер уже занят другим оператором
- Requested number is not exist — если номер не существует
- Invalid login or password — некорректно указан логин или пароль
- System error. Abonent manager is unavailable — системная ошибка
- Service is not activated for this phone number — услуга Агент КЦ не активирована для выбранного номера
- timeout — при несуществующем домене
- domain not exists — при несуществующем домене
- Gateway timeout — при недоступности сервера
Пример:
Запрос:
http://192.168.116.130:8091
{
"action": "login",
"requestId": 16,
"payload": {
"login": "1",
"password": "1111",
"profile": "default",
"number": "2004",
"domain": "arko",
"role": "operator"
}
}
PY
Код ответа:
200
Ответ:
{
"action": "login",
"requestId": 16,
"payload": {
"token": "6601c8d19059c9b20787ec7e95f2d9d6:986d6fd21c3af83df479947f879e476ec4bb180e69c8307230828cfa5eb91b0978d419763917579a54d5f89dcb2f0936",
"capabilities": {
"operatorGetInQueueCalls": true
},
"autoLogoutTimeout": 5,
"agentId": "1",
"supervisor": false
},
"status": 200
}
PY
Сразу после login ecss-cc-ui-api открывает websocket для получения данных от сервера и передачи команд от пользователя.