PHP 7.1 ou supérieur et extension json
.
composer require innoscripta/ sipgate
Initialisez la classe sipgate
:
$ sipgate = Orkhanahmadov sipgate sipgate ();
Authentification de base
Vous pouvez transmettre le nom d'utilisateur et le mot de passe d'authentification de base lors de l'initialisation de la classe :
$ sipgate = Orkhanahmadov sipgate sipgate ( ' [email protected] ' , ' secret ' );
Ou vous pouvez définir l'authentification de base avec la méthode setBasicAuthCredentials()
:
$ sipgate = Orkhanahmadov sipgate sipgate ();
$ sipgate -> setBasicAuthCredentials ( ' [email protected] ' , ' secret ' );
Informations sur le compte :
$ sipgate -> account ();
Renvoie un tableau de détails de compte.
Obtenez des utilisateurs :
$ sipgate -> users ();
Renvoie un tableau d'utilisateurs enregistrés sous le compte. Chaque élément du tableau est une instance de Orkhanahmadov sipgate ResourcesUser
et possède les propriétés suivantes :
$ 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
Obtenez les appareils des utilisateurs :
Pour obtenir les appareils de l'utilisateur, utilisez la méthode devices()
et transmettez une instance utilisateur ou un ID utilisateur.
$ sipgate -> devices ( $ user );
// or
$ sipgate -> devices ( ' ABC-123 ' );
Renvoie un tableau d’appareils enregistrés pour un utilisateur donné. Chaque élément du tableau est une instance de Orkhanahmadov sipgate ResourcesDevice
et possède les propriétés suivantes :
$ 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
Appels actifs :
Utilisez la méthode calls()
pour obtenir la liste des appels actuellement établis.
$ sipgate -> calls ();
Renvoie un tableau des appels actuellement établis. Chaque élément du tableau est une instance de Orkhanahmadov sipgate ResourcesCall
et possède les propriétés suivantes :
$ 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
Lancer un nouvel appel :
Utilisez la méthode call()
pour lancer un nouvel appel. La méthode accepte 3 paramètres :
$device
- Accepte l'instance de périphérique ou l'ID de périphérique. Ceci définit l'appareil que vous souhaitez utiliser pour passer un appel.$callee
- Numéro de téléphone que vous souhaitez appeler.$callerId
(facultatif) - Définissez ce paramètre si vous souhaitez afficher un numéro différent à l'autre appelé. Lorsqu'il est ignoré, le numéro $device
sera utilisé. $ sipgate -> call ( $ device , $ callee , $ callerId );
Renvoie l'ID de session de l'appel.
Raccrocher un appel en cours :
Utilisez la méthode hangup()
pour raccrocher un appel en cours. La méthode accepte l'ID d'appel comme paramètre :
$ sipgate -> hangup ( ' ABC-123 ' );
Enregistrer l'appel en cours :
Utilisez la méthode record()
pour enregistrer l’appel en cours. La méthode accepte 3 paramètres :
$callId
- ID d'appel unique.$value
- true
ou false
, définit le début ou l'arrêt de l'enregistrement.$announcement
- true
ou false
, définit si vous souhaitez diffuser une annonce concernant l'appel en cours d'enregistrement. $ sipgate -> record ( $ callId , $ value , $ announcement );
Historique des appels :
Utilisez la méthode history()
pour obtenir l’historique des appels. La méthode accepte un éventail d’options :
connectionIds
- array
, définit la liste des extensionstypes
- array
, définit la liste des types que vous souhaitez recevoir dans l'historique, peut contenir l'une des nombreuses valeurs suivantes : "CALL", "VOICEMAIL", "SMS", "FAX"directions
- array
, définit la liste des directions d'appel que vous souhaitez recevoir dans l'historique, peut contenir l'une des nombreuses valeurs suivantes : "INCOMING", "OUTGOING", "MISSED_INCOMING", "MISSED_OUTGOING"archived
- bool
, définissez true
si vous souhaitez recevoir uniquement les éléments de l'historique archivésstarred
- Définit si vous souhaitez recevoir des éléments d'historique favoris ou non, l'un de ceux-ci : "ÉTOILE", "NON ÉTOILE".from
- Définit la date de début de l'historique. Doit être au format ISO8601to
- Définit la date de fin de l'historique. Doit être au format ISO8601phonenumber
- Définit le numéro de téléphone à rechercher dans l'historiquelimit
- Définit la valeur "par page" pour les éléments de l'historiqueoffset
- Définit la valeur "offset" pour les éléments de l'historique $ sipgate -> history ([ ' from ' => ' 2019-07-10T19:32:18Z ' , ' to ' => ' 2019-07-22T19:32:18Z ' ]);
Renvoie un tableau d’éléments d’historique. Chaque élément du tableau est une instance de Orkhanahmadov sipgate ResourcesHistory
et possède les propriétés suivantes :
$ 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
Veuillez consulter CHANGELOG pour plus d'informations sur ce qui a changé récemment.
Veuillez consulter CONTRIBUER pour plus de détails.
Si vous découvrez des problèmes liés à la sécurité, veuillez envoyer un e-mail à [email protected] au lieu d'utiliser le suivi des problèmes.
La licence MIT (MIT). Veuillez consulter le fichier de licence pour plus d'informations.