1

Базовые

connect( options )

Подключение к серверу Oktell.

Начиная с версий 1.3 для oktell.js и от 29.01.2013 для Oktell поддерживается механизм сессий для автоматической авторизации без ввода пароля по id сессии, сохраненному в cookie браузера. Для входа без ввода пароля после загрузки страницы необходимо вызвать метод connect без указания password. В случае отсутствия сессии в куках вызовется коллбэк с ошибкой 1212 или 1213. В этом случае следует повторно вызвать метод connect указав password. Для сохранения сессии необходимо указать параметр expires.

disconnect( silent )

Отключение от сервера Oktell.

on connect

Успешное соединение с сервером.

on connecting

Начало соединения с сервером. Сразу после вызова метода connect.

on connectError

Ошибка соединения с сервером в методе connect. Коды ошибок такие же, как для callback-функции метода connect.

on disconnect

Соединение с сервером закрыто. В callback-функцию передается объект с описанием причины разрыва соединения.

exec( method, params, callback )

Выполнение нативного метода WebSocket протокола Oktell или хранимой процедуры сервера Oktell. Хранимые процедуры должна быть прописаны (разрешены) в конфигурационном файле websock.config сервера.

getNumbers()

Возвращает список внутренних номеров сервера Oktell (номерной план).

getUsers()

Возвращает список пользователей — объект, ключами являются идентификаторы пользователей.

uploadFile( options, callback, beforeRequest )

Обертка для метода upload cерверного HTTP интерфейса. Открывает диалоговое окно для выбора файла, затем загружает файл на сервер Oktell. Использует DOM.

setUserAvatar( path, callback )

Установка пути для пользовательского изображения.

loadUserAvatar( callback )

Загрузка пути до пользовательского изображения.

getLog()

Возвращает лог в виде строки с полным JSON для вебсокет сообщений. Только при включенном логировании (параметр debugMode метода connect)

version

Строковое значение версии библиотеки.

webphoneIsActive()

Возвращает текущее состояние веб-телефона (oktell-voice.js). True — подключен, false — отключен

formatPhone(phone)

Возвращает отформатированный номер телефона.

config(obj)

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

changePassword(newPass, oldPass, callback)

Изменение пароля пользователя.

7

Работа с событиями

on( eventNames, callback, context )

Подписка на события.

off( eventNames, callback )

Отписка от событий. Если callback не функция, то отписка для всех callback-функция события или событий eventNames. Если не передан eventNames, то отписка всего от всех событий.

onNativeEvent( event, callback )

Подписка на события сервера Oktell.

offNativeEvent( event, callback )

Отписка от событий сервера Oktell. Если не указан callback, то отписываем все callback-функции. Если не указан eventName, то отписываемся от всех событий сервера Oktell.

onCustomEvent( event, callback )

Подписка на пользовательские события. Пользовательское событие — событие передаваемое через сервер Oktell указанным пользователям либо всем.

offCustomEvent( event, callback )

Отписка от пользовательских событий. Если не указан callback, то отписываем все callback-функции. Если не указан event, то отписываемся от всех пользовательских событий.

triggerCustomEvent( event, recipientsArr, data, sendBack )

Вызов пользовательского события. Пользовательское событие — событие передаваемое через сервер Oktell указанным пользователям либо всем.

2

Управление звонками

call( number, callback )

Совершение звонка. Если используется библиотека oktell-voice.js, то звонок осуществляется посредством этой библиотеки. Иначе, в зависимости от параметра sequence, последовательность дозвона может быть двух видов: сначала до указанного номера, затем до пользователя, либо сначала до пользователя, затем до указанного номера (по умолчанию). Если звонок осуществляется во время разговора, то текущий звонок ставится на удержание.

answer(callback)

Ответ на входящий вызов. При использовании WebRTC телефона (oktell-voice.js) позволяет ответить на входящий вызов. При использовании IP телефона или софтфона — позволяет ответить на вызов при активированной функции интерком вызовов.

conference( numbers, callback )

Создание конференции либо приглашение в текущую. Если номер не передан и пользователь находится в разговоре, то текущий звонок преобразуется в конференцию.

intercom( number, callback )

Совершение звонка в режиме интеркома. Интерком-вызов имеет отличие от обычного, если функция поддерживается конечным устройством. В противном случае вызов будет происходить в обычном режиме. При интерком-вызове телефонное устройство снимает трубку автоматически сразу же после поступления звонка.

transfer( number, callback )

Перевод текущего звонка на указанный номер. Если на удержании есть звонок, то после выполнения метода произойдет переключение на звонок, находящийся на удержании.

toggle( callback )

Переключение на звонок, который находится в ожидании. Текущий звонок перейдет в ожидание.

ghostListen( target, callback )

Подключение к разговору указанного пользователя для прослушивания, либо изменение режима текущего подключения на режим прослушивания.

ghostHelp( target, callback )

Подключение к разговору указанного пользователя для помощи (вас слышит только target), либо изменение режима текущего подключения на режим помощи.

ghostConference( target, callback )

Подключение к разговору указанного пользователя в режиме конференции (вас слышат все), либо изменение режима текущего подключения на режим конференции.

endCall( numbers )

Если вызван без параметров: текущий вызов прекращается, удержание сбрасывается. Если вызван с параметром: — если передан собственный номер либо номер текущего абонента при простом звонке, то текущий вызов прекращается. При наличии абонента на удержании, сервер Октелл делает вызов пользователя и соединяет с удержанным абонентом. — если передан номер участника текущей конференции, то, при наличии прав, этот участник выводится из конференции Завершение разговора с текущим абонентом, либо завершение дозвона, либо выход из конференции. Если передан параметр number, то исключение этого номера из конференции.

dtmf(code)

Отправка dtmf. Только вместе в oktell-voice.js

3

Состояние телефона

getState()

Возвращает текущее состояние телефона (строка).

on stateChange

Вызывается при изменении состояния телефона. В callback-функцию передается два строковых параметра — новое и прошлое состояние. Вызывается до телефонных событий.

on Phone Events

События телефона. В callback-функцию передается массив объектов abonent.

getAbonents()

Получение списка абонентов текущего разговора (массив объектов).

on abonentsChange

Вызывается при измении списка текущих абонентов.

isAbonent( target )

Проверяет, является ли номер или пользователь абонентом текущего вызова.

getPhoneActions( target )

Возвращает массив с возможными действиями для номера или пользователя.

getTalkLength( formatted )

Получение длительности текущего разговора в секундах либо в формате mm:ss, либо HH:mm:ss в случае разговора длительностью более часа (примеры: 00:09, 08:48, 1:16:24)

on talkTimer

Вызывается в начале разговора, в течении разговора раз в секунду, в конце разговора. В callback-функцию передается два параметра — длительность разговора в секундах; длительность в формате mm:ss, либо HH:mm:ss в случае разговора длительностью более часа (примеры: 00:09, 08:48, 1:16:24)

getQueue( callback )

Загрузка очереди ожидания с сервера. В callback-функцию передается массив объектов abonent

on queueChange

Вызывается при изменении очереди ожидания. В callback-функцию передается массив объектов abonent

on queueAbonentEnter

Вызывается при добавлении абонента в очереди ожидания. В callback-функцию передается объект abonent

on queueAbonentLeave

Вызывается при удалении абонента из очереди ожидания. В callback-функцию передается объект abonent

4

Удержание

toggle( callback )

Переключение на звонок, который находится в ожидании. Текущий звонок перейдет в ожидание.

getHoldInfo()

Возвращает информацию по абоненту или конференции на удержании.

on holdStateChange

Вызывается при изменении состояния удержания. В callback-функцию предается информация по удержанию ( getHoldInfo ).

on holdAbonentEnter

Абонент добавлен в холд. В callback-функцию передается объект abonent с информацией по абоненту.

on holdAbonentLeave

Абонент вышел из холда. В callback-функцию передается объект abonent с информацией по абоненту.

5

Конференции

conference( numbers, callback )

Создание конференции либо приглашение в текущую. Если номер не передан и пользователь находится в разговоре, то текущий звонок преобразуется в конференцию.

conferenceId()

Возвращает идентификатор текущей конференции или false.

on conferenceAbonentEnter

В конференцию вошел новый участник. В callback-функцию передается объект abonent с информацией о новом участнике.

on conferenceAbonentLeave

Из конференции вышел участник. В callback-функцию передается объект abonent с информацией о вышедшем участнике.

6

Статус пользователя

getMyInfo()

Возвращает информацию о пользователе, подключении и сервере.

getStatus()

Получение текущего статуса пользователя.

setStatus( status, silent, message )

Установка статуса пользователя. Статусы различаются для оператора call-центра и для обычного пользователя.

on statusChange

Смена статуса пользователя. В callback-функцию передаются два параметра, новый статус пользователя и старый статус.

setRedirectNumber( number, callback )

Установка номера переадресации. Переадресацию можно активировать установив соответствующий статус методом setStatus.

getBreakReasons()

Возвращает список причин перерыва для операторов коллцентра.

inCallCenter()

Возвращает состояние пользователя по модулю call-центра, true — в call-центре, false — не в call-центре.