Версия: 6.x
burger close
Класс TelphinProvider
Граф наследования:TelphinProvider:
AbstractProvider

Подробное описание

Коннектор для провайдера телефонии Телфин

Открытые члены

 getTitle ()
 
 getId ()
 
 onEvent (Request $url)
 
 getEventTestObject ()
 
 getActionsByCall (CallHistory $call)
 
 getExtensionIdByUserId ($user_id)
 
 getUserIdByExtensionId ($extension_id)
 
 canApiRequest ()
 
 authorizeRequester (Requester $requester, $force=false)
 
 getAccessToken ($params=[], $force=false)
 
 canCalling ()
 
 isEnableAutoDownloadRecord ()
 
 getRecordDataLocalPath (CallHistory $call)
 
 issetRecordLocal (CallHistory $call)
 
 downloadRecord (CallHistory $call)
 
 getRecordData (CallHistory $call, $find_local=true)
 
 getRecordContentType ()
 
 getClientId ($cache=true)
 
 deleteRecord (CallHistory $call)
 
 doHangup (CallHistory $call)
 
 getExtensionIdByName ($extension_name, $cache=true)
 
 CallPhoneNumber ($number)
 
 isInternalCall (CallHistory $call)
 
 setEventUrl ($telphin_app_id, $telphin_secret_key, $telphin_user_map)
 
- Открытые члены унаследованные от AbstractProvider
 getTitle ()
 
 getId ()
 
 onEvent (Request $url)
 
 setUrlSecret ($secret)
 
 getUrlSecret ()
 
 getEventGateUrl ($event_type=null)
 
 getAllowEventTypes ()
 
 getEventTestObject ()
 
 getActionsByCall (CallHistory $call)
 
 getExtensionIdByUserId ($user_id)
 
 getUserIdByExtensionId ($extension_id)
 
 getConnectSettingsInfo ()
 
 getRequester ()
 
 authorizeRequester (Requester $requester, $force=false)
 
 getAccessToken ($params=[], $force=false)
 
 canApiRequest ()
 
 isEnableAutoDownloadRecord ()
 
 getRecordDataLocalPath (CallHistory $call)
 
 issetRecordLocal (CallHistory $call)
 
 downloadRecord (CallHistory $call)
 
 getRecordData (CallHistory $call, $find_local=true)
 
 getRecordContentType ()
 
 canCalling ()
 
 CallPhoneNumber ($number)
 
 isInternalCall (CallHistory $call)
 
 setError ($error)
 
 getLastError ()
 

Защищенные данные

 $api_hostname = 'https://apiproxy.telphin.ru'
 
 $api_base_url = '/api/ver1.0'
 
 $settings_info_template = '%crm%/telephony/telphin/settings_info.tpl'
 
- Защищенные данные унаследованные от AbstractProvider
 $settings_info_template = ''
 
 $last_error
 

Дополнительные унаследованные члены

- Открытые статические члены унаследованные от AbstractProvider
static getRecordLocalBaseDir ()
 
- Поля данных унаследованные от AbstractProvider
const EVENT_TYPE_DIAL_IN = 'dial-in'
 
const EVENT_TYPE_DIAL_OUT = 'dial-out'
 
const EVENT_TYPE_ANSWER = 'answer'
 
const EVENT_TYPE_HANGOUT = 'hangup'
 
const METHOD_GET = 'GET'
 
const METHOD_POST = 'POST'
 

Методы

authorizeRequester ( Requester  $requester,
  $force = false 
)

Получает авторизационный токен и устанавливает его в Requester

Аргументы
Requester$requester
bool$force
Возвращает
void
CallPhoneNumber (   $number)

Отправляет запрос на исходящий вызов

Аргументы
$number
Возвращает
bool
canApiRequest ( )

Возвращает true, если заполнены все данные для проведения исходящих запросов к API

Возвращает
bool
canCalling ( )

Возвращает true, если телфония поддерживает исходящие звонки

Возвращает
bool
deleteRecord ( CallHistory  $call)

Удаляет запись телефонного разговора

Аргументы
CallHistory$call
Возвращает
bool
doHangup ( CallHistory  $call)

Отклоняет звонок

Аргументы
CallHistory$call
Возвращает
array|bool
downloadRecord ( CallHistory  $call)

Производит попытку загрузки записи на локальный диск

Аргументы
CallHistory$call
Возвращает
bool
getAccessToken (   $params = [],
  $force = false 
)

Возвращает последний полученный AccessToken, если он еще не протух. Если force=true, то происходит принудительное переполучение токена

Аргументы
array$paramsПараметры для авторизации
bool$forceЕсли true, то исключает получение токена из кэша
Возвращает
string | bool(false)
getActionsByCall ( CallHistory  $call)

Возвращает массив действий для различных статусов звонка

Аргументы
CallHistory$call
Возвращает
array
getClientId (   $cache = true)

Возвращает Client_id для текущего пользователя

Аргументы
bool$cache
Возвращает
integer|bool(false)
Исключения
\RS\Exception
getEventTestObject ( )

Возвращает объект, который описывает тесты для данного провайдера.

Возвращает
AbstractProviderTest
getExtensionIdByName (   $extension_name,
  $cache = true 
)

Получает ID добавочного по имени добавочного

Аргументы
$extension_name
bool$cache
Возвращает
integer | bool(false)
Исключения
\RS\Exception
getExtensionIdByUserId (   $user_id)

Возвращает добавочный номер для администратора user_id, если таковой задан. Иначе - false

Аргументы
integer$user_id
Возвращает
integer|bool(false)
getId ( )

Возвращает внутренний строковый идентификатор провайдера связи

Возвращает
string
getRecordContentType ( )

Возвращает Mime тип аудиозаписи

Возвращает
string
getRecordData ( CallHistory  $call,
  $find_local = true 
)

Возвращает содержимое файла записи телефонного разговора

Аргументы
CallHistory$call
bool$find_local
Возвращает
bool
getRecordDataLocalPath ( CallHistory  $call)

Возвращает путь записи на локальном диске обязательно внутри папки /storage/records/PROVIDER_ID/. Или false - в случае, если провайдер не поддерживает работу с записями

Аргументы
CallHistory$call
Возвращает
string|bool(false)
getTitle ( )

Возвращает название провайдера телефонии

Возвращает
string
getUserIdByExtensionId (   $extension_id)

Возвращает ID пользователя по добавочному номеру, если таковой задан. Иначе - false

Аргументы
$extension_id
Возвращает
integer | bool(false)
isEnableAutoDownloadRecord ( )

Возвращает true, если включена автоматическая загрузка записей разговоров после отбоя

Возвращает
bool
Исключения
\RS\Exception
isInternalCall ( CallHistory  $call)

Возвращает true, если удается определить, что это внутренний вызов между сотрудниками телефонии. Такие вызовы должны игнорироваться и не регистрироваться в административной панели

Аргументы
CallHistory$callЗдесь будет объект звонка, который еще не присутствует в базе (ID = null)
Возвращает
mixed
issetRecordLocal ( CallHistory  $call)

Возвращает true, если запись разговора присутствует локально

Аргументы
CallHistory$call
Возвращает
bool
onEvent ( Request  $url)

Обрабатывает входящий запрос с событием от сервиса телефонии

Аргументы
Request$url
Возвращает
CallEvent Возвращает унифицированный объект события для RS
setEventUrl (   $telphin_app_id,
  $telphin_secret_key,
  $telphin_user_map 
)

Устанавливает EventUrl всем пользователям добавочного

Аргументы
string$telphin_app_idAppID приложения
string$telphin_secret_keyAppSecret приложения
array$telphin_user_mapСопоставление добавочных и администраторов
Возвращает
array | bool(false)

Поля

$api_base_url = '/api/ver1.0'
protected
$api_hostname = 'https://apiproxy.telphin.ru'
protected
$settings_info_template = '%crm%/telephony/telphin/settings_info.tpl'
protected