Параметры

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 для получения данных от сервера и передачи команд от пользователя.