PHP 7.1 или выше и расширение json .
composer require innoscripta/ sipgate Инициализировать класс sipgate :
$ sipgate = Orkhanahmadov sipgate sipgate ();Базовая аутентификация
Вы можете передать имя пользователя и пароль базовой аутентификации при инициализации класса:
$ sipgate = Orkhanahmadov sipgate sipgate ( ' [email protected] ' , ' secret ' ); Или вы можете установить базовую аутентификацию с помощью метода setBasicAuthCredentials() :
$ sipgate = Orkhanahmadov sipgate sipgate ();
$ sipgate -> setBasicAuthCredentials ( ' [email protected] ' , ' secret ' );Информация об аккаунте:
$ sipgate -> account ();Возвращает массив данных учетной записи.
Получить пользователей:
$ sipgate -> users (); Возвращает массив пользователей, зарегистрированных под учетной записью. Каждый элемент массива является экземпляром Orkhanahmadov sipgate ResourcesUser и имеет следующие свойства:
$ user -> id ; // string
$ user -> firstname ; // string
$ user -> lastname ; // string
$ user -> email ; // string
$ user -> defaultDevice ; // string
$ user -> busyOnBusy ; // bool
$ user -> addressId ; // string
$ user -> directDialIds ; // array
$ user -> admin ; // boolПолучить пользовательские устройства:
Чтобы получить устройства пользователя, используйте метод devices() и передайте экземпляр пользователя или идентификатор пользователя.
$ sipgate -> devices ( $ user );
// or
$ sipgate -> devices ( ' ABC-123 ' ); Возвращает массив устройств, зарегистрированных для данного пользователя. Каждый элемент массива является экземпляром Orkhanahmadov sipgate ResourcesDevice и имеет следующие свойства:
$ device -> id ; // string
$ device -> alias ; // string
$ device -> type ; // string
$ device -> online ; // bool
$ device -> dnd ; // bool
$ device -> activePhonelines ; // array
$ device -> activeGroups ; // array
$ device -> credentials ; // array
$ device -> registered ; // array
$ device -> emergencyAddressId ; // string
$ device -> addressUrl ; // stringАктивные звонки:
Используйте метод calls() , чтобы получить список текущих вызовов.
$ sipgate -> calls (); Возвращает массив текущих вызовов. Каждый элемент массива является экземпляром Orkhanahmadov sipgate ResourcesCall и имеет следующие свойства:
$ call -> id ; // string
$ call -> firstname ; // string
$ call -> lastname ; // string
$ call -> email ; // string
$ call -> defaultDevice ; // string
$ call -> busyOnBusy ; // bool
$ call -> addressId ; // string
$ call -> directDialIds ; // array
$ call -> admin ; // boolИнициировать новый звонок:
Используйте метод call() чтобы инициировать новый вызов. Метод принимает 3 параметра:
$device — принимает экземпляр устройства или идентификатор устройства. Это определяет, какое устройство вы хотите использовать для совершения вызова.$callee — номер телефона, на который вы хотите позвонить.$callerId (необязательно) — установите этот параметр, если вы хотите показывать другому вызываемому номер другой номер. При пропуске будет использоваться номер $device . $ sipgate -> call ( $ device , $ callee , $ callerId );Возвращает идентификатор сеанса вызова.
Завершение текущего вызова:
Используйте метод hangup() для завершения текущего вызова. Метод принимает идентификатор вызова в качестве параметра:
$ sipgate -> hangup ( ' ABC-123 ' );Запись текущего разговора:
Используйте метод record() для записи текущего вызова. Метод принимает 3 параметра:
$callId — уникальный идентификатор вызова.$value — true или false , определяет начало или остановку записи.$announcement — true или false , определяет, хотите ли вы воспроизвести объявление о записи звонка. $ sipgate -> record ( $ callId , $ value , $ announcement );История звонков:
Используйте метод history() для получения истории вызовов. Метод принимает массив опций:
connectionIds — array , определяет список расширений.types — array , определяет список типов, которые вы хотите получать в истории, может содержать одно из многих следующих значений: «ЗВОНОК», «ГОЛОСОВАЯ ПОЧТА», «SMS», «ФАКС».directions - array , определяет список направлений вызовов, которые вы хотите получать в истории, может содержать одно из многих следующих значений: «INCOMING», «OUTGOING», «MISSED_INCOMING», «MISSED_OUTGOING»archived — bool , установите true , если вы хотите получать только заархивированные элементы истории.starred — определяет, хотите ли вы получать помеченные или не помеченные элементы истории, один из следующих: «ЗВЕЗДОЧНЫЙ», «НЕЗВЕЗДОЧНЫЙ»from - Определяет дату начала истории. Должно быть в формате ISO8601.to — определяет дату окончания истории. Должно быть в формате ISO8601.phonenumber — определяет номер телефона для поиска в истории.limit — определяет значение «на страницу» для элементов истории.offset — определяет значение «смещения» для элементов истории. $ sipgate -> history ([ ' from ' => ' 2019-07-10T19:32:18Z ' , ' to ' => ' 2019-07-22T19:32:18Z ' ]); Возвращает массив элементов истории. Каждый элемент массива является экземпляром Orkhanahmadov sipgate ResourcesHistory и имеет следующие свойства:
$ history -> id ; // string
$ history -> source ; // string
$ history -> target ; // string
$ history -> sourceAlias ; // string
$ history -> targetAlias ; // string
$ history -> type ; // string
$ history -> created ; // string
$ history -> lastModified ; // string
$ history -> direction ; // string
$ history -> incoming ; // bool
$ history -> status ; // string
$ history -> connectionIds ; // array
$ history -> read ; // bool
$ history -> archived ; // bool
$ history -> note ; // string
$ history -> endpoints ; // array
$ history -> starred ; // bool
$ history -> labels ; // array
$ history -> callId ; // string
$ history -> recordingUrl ; // string
$ history -> recordings ; // array
$ history -> duration ; // int
$ history -> responder ; // string
$ history -> responderAlias ; // string composer test Пожалуйста, посетите CHANGELOG для получения дополнительной информации о том, что изменилось за последнее время.
Пожалуйста, смотрите ВКЛАД для получения подробной информации.
Если вы обнаружите какие-либо проблемы, связанные с безопасностью, отправьте электронное письмо по адресу [email protected] вместо использования системы отслеживания проблем.
Лицензия MIT (MIT). Дополнительную информацию см. в файле лицензии.