~.pbx.kazoo.name.~ Connexion

~.pbx.kazoo.name.~ Connexion #

Le ~.pbx.kazoo.name.~ fournit un service de collecte de données pour le ~.pbx.kazoo.name.~ Plateforme UCaaS/CPaaS.

Le tableau ci-dessous présente les paramètres requis lors de la configuration d'un ~.pbx.kazoo.name.~ PBX Lien :

Cadre Descriptif
Nom Un nom unique pour pouvoir identifier facilement l'utilisation de la connexion.
API Clé Le API clé à autoriser ~.Dimensions.~ pour se connecter à ~.pbx.kazoo.name.~ et surveiller les communications du client.
Numéro de compte Le ~.pbx.kazoo.name.~ ID de compte de locataire pour le client.
Crossbar REST API REST API connexion URL.
Blackhole WebSocket API Connexion WebSocket URL
Pays L'emplacement de la connexion au système téléphonique. Il sert à localiser les numéros de téléphone de la connexion.

Information Circle info

Assurez-vous que le bon Types d'événements sont activés sur le Blackhole WebSocket.\

Versions prises en charge #

~.pbx.kazoo.name.~ Communiqué ~.Dimensions.~ Soutien Remarques
5.3 Pris en charge Aucun
5.2 Pris en charge Aucun
5.1 Pris en charge Aucun
5,0 Pris en charge Aucun
4.31 Pris en charge ACDC soutenu par le Sprint 85
4.21 Pris en charge Aucun
< 4.x Non pris en charge Aucun

  1. Les collecteurs de données sont plus lents à démarrer sur les systèmes 4.x en raison de la nécessité de demander des abonnements à des événements individuellement. ↩︎

Exigences de configuration #

Les exigences suivantes s'appliquent à ~.pbx.kazoo.name.~ PBX Connexions :

Article Exigence
Plan de numérotation ~.Dimensions.~ nécessite un plan de numérotation unique pour pouvoir faire la distinction entre les appareils et les utilisateurs. Dispositif 'SIP Les noms d'utilisateur ne peuvent pas être les mêmes que n'importe quel numéro de poste (y compris l'identifiant de poste/présence des utilisateurs, les flux d'appels, etc.)
Utilisateurs Tous ~.pbx.kazoo.name.~ les utilisateurs DOIVENT avoir les éléments suivants pour être surveillés correctement :
  • Une adresse courriel valide et unique configurée pour son compte
  • Un identifiant de présence (utilisé pour afficher le numéro de l'utilisateur sur les rapports)
De plus, afin de pouvoir se connecter au ~.Dimensions.~ portail, le nom d'utilisateur de l'utilisateur sur ~.pbx.kazoo.name.~ doit être son adresse électronique.
Filtrage sommaire des agents Le statut de l'agent n'est actuellement pas filtrable par file d'attente. Lors du filtrage du rapport sommaire de l'agent par file d'attente, tous les agents seront affichés avec leur statut pour la plage de dates correspondante du rapport. Seuls les renseignements sur les appels peuvent être filtrés par rapport à un appel spécifique si nécessaire. Cela est dû au fait que les informations spécifiques de la file d'attente ne sont pas stockées historiquement par rapport aux événements d'état de l'agent.

API Clé #

Ceci API est générée à partir de la clé ~.pbx.kazoo.name.~ à l'aide de l'application « Authentification ». Il permet ~.Dimensions.~ pour vous connecter à votre ~.pbx.kazoo.name.~ installation.

Capture d'écran

Numéro de compte #

Le ~.pbx.kazoo.name.~ L'identifiant du compte du locataire est requis pour le client spécifique sur le ~.pbx.kazoo.name.~ plateforme. Cela permet ~.Dimensions.~ pour identifier de manière unique les utilisateurs et les appels de ce client sur le ~.pbx.kazoo.name.~ plateforme. On peut le trouver dans le ~.pbx.kazoo.name.~ à l'aide de l'application « Centre de contrôle ». Modifiez le nom du compte et il s'affiche.

Capture d'écran

Dans la mesure du possible, un API au niveau le plus élevé doit être utilisée pour permettre ~.Dimensions.~ pour surveiller plusieurs clients grâce à une seule connexion à ~.pbx.kazoo.name.~. Cela réduira la charge sur le ~.pbx.kazoo.name.~ exemple.

API Connexions #

Pour vous connecter au ~.pbx.kazoo.name.~ plateforme, ~.Dimensions.~ nécessite l'accès au REST et les API WebSocket. Veuillez entrer les URL dans les cases prévues à cet effet.

Crossbar REST API URL #

Le Crossbar REST API est utilisé pour interroger des informations sur les utilisateurs, les appareils et les appels configurés sur le compte d'un client. Ces informations sont utilisées pour créer des comptes d'utilisateurs et pour aider à modéliser le trafic d'appels.

« Si vous utilisezui.zswitch.net, puis le Crossbar (REST) esthttps://ui.zswitch.net

Document note

Retirez le « /v2 » à la fin du URL s'il existe.

Blackhole WebSocket URL #

Le Blackhole est utilisé pour surveiller le trafic d'appels et pour suivre les événements de changement de document pour les objets ~.Dimensions.~ modèles (utilisateurs, appareils, flux d'appels, etc.).

Lors de la configuration des détails de la connexion, veuillez inclure le numéro de port pour le Blackhole connexion.

Si vous utilisezapi.zswitch.net, puis le Blackhole (WebSocket) estwss://api.zswitch.net:5443

Si vous utilisez un DNS Le numéro de port ne doit pas être fourni.

Document note

Retirez le « /v2 » à la fin du URL s'il existe.

ACDC Soutien

Si vous utilisez une version de ~.pbx.kazoo.name.~ qui soutient ACDC au lieu de Qubicle, File d'attente & Les événements de l'agent peuvent être surveillés si le socket EDR est activé. Le même URL configuré pour Blackhole sera utilisé pour se connecter à la prise EDR.

DNS VRS #

~.Dimensions.~ Soutiens DNS Les enregistrements SRV pour les deux Crossbar et Blackhole connexions. lors de la configuration de vos enregistrements SRV, les préfixes énumérés ci-dessous doivent être utilisés pour chacun des différents types de connexion :

Type de raccordement DNS Préfixe SVR
Crossbar REST API _crossbar._TCP
Blackhole WebSocket _blackhole._TCP
WebRTC _webrtc._TCP

Exemple Crossbar Configuration SRV L'exemple ci-dessous montre deux enregistrements SRV pour un Crossbar connexion. d'autres peuvent être configurés au besoin.

Dans le ~.Dimensions.~ PBX Modèle, le Crossbar serait configuré pourhttps://zone1.example.com .

\_crossbar.\_tcp.zone01.example.com.	1 IN SRV 10 100 8443 apps001-ca.example.com.
\_crossbar.\_tcp.zone01.example.com.	1 IN SRV 100 10 8443 apps001-fl.example.com.

Exemple Blackhole Configuration du VRS

Dans le ~.Dimensions.~ PBX Modèle, le Blackhole serait configuré pourwss://zone1.example.com .

\_blackhole.\_tcp.zone01.example.com.	1 IN SRV 10 100 2096 apps001-ca.example.com.
\_blackhole.\_tcp.zone01.example.com.	1 IN SRV 100 10 2096 apps001-fl.example.com.

Exemple de configuration du SRV WebRTC

\_webrtc.\_tcp.zone01.example.com.	1 IN SRV 10 100 5065 apps001-ca.example.com.
\_webrtc.\_tcp.zone01.example.com.	1 PO SRV 100 10 5065 apps001-fl.example.com.

Document note

Si vous utilisez l'une des options ~.UcClient.~ les téléphones logiciels (ordinateurs de bureau, mobiles ou CRM), un paramètre de proxy sortant supplémentaire doit être configuré sur votre compte de revendeur. Veuillez contacter ~.Dimensions.~ soutien pour avoir cette configuration.

~.pbx.kazoo.name.~ Exigences et restrictions de la plateforme #

Sous-comptes #

~.Dimensions.~ peut être configuré pour provisionner et surveiller automatiquement les sous-comptes d'un client, jusqu'à 1 niveau inférieur. Pour utiliser cette fonctionnalité, la connexion d'un client doit être configurée manuellement sans un PBX modèle.

Pour plus d'informations, veuillez consulter le Systèmes téléphoniques .

Document note

La surveillance des sous-comptes n'est disponible que sur les comptes des clients et ne doit pas être utilisée sur les comptes des revendeurs.

Limitation du débit #

~.Dimensions.~ effectue un certain nombre de requêtes et de demandes lors de son processus de démarrage initial lorsqu'il apprend à connaître le ~.pbx.kazoo.name.~ exemple. Si les limites tarifaires du ~.pbx.kazoo.name.~ ont été définies trop bas, il est possible que ce démarrage initial échoue. Si cela se produit, un membre de ~.Dimensions.~ Le soutien communiquera avec plus d'informations.

Événements WebSocket #

~.Dimensions.~ exige que les événements suivants soient activés sur le WebSocket pour permettre de modéliser tous les appels et de suivre les modifications de programmation :

« données » : {
	« call » : [	
		« Appelez. CHANNEL_CREATE. {CALL_ID}",
        « Appelez. CHANNEL_ANSWER. {CALL_ID}",
        « Appelez. CHANNEL_DESTROY. {CALL_ID}",
		« Appelez. CHANNEL_HOLD. {CALL_ID}",
		« Appelez. CHANNEL_UNHOLD. {CALL_ID}",
		« Appelez. CHANNEL_BRIDGE. {CALL_ID}",
		« Appelez. PARK_PARKED. {CALL_ID}",
		« Appelez. PARK_RETRIEVED. {CALL_ID}",
		« Appelez. PARK_ABANDONED. {CALL_ID}"
		][	
		"call.CHANNEL_CREATE.{CALL_ID}",
        "call.CHANNEL_ANSWER.{CALL_ID}",
        "call.CHANNEL_DESTROY.{CALL_ID}",
		"call.CHANNEL_HOLD.{CALL_ID}",
		"call.CHANNEL_UNHOLD.{CALL_ID}",
		"call.CHANNEL_BRIDGE.{CALL_ID}",
		"call.PARK_PARKED.{CALL_ID}",
		"call.PARK_RETRIEVED.{CALL_ID}",
		"call.PARK_ABANDONED.{CALL_ID}"
		],
	« conférence » : [ 
		« conférence.commande. {CONFERENCE_ID}",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.nondeaf-member",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.membre-sourd",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.unmute-member",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.muet-membre",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.commencer-parler",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.arrêter de parler",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.del-membre",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.ajouter-membre",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.déverrouiller",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.lock",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.conference-destroy",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.conference-create",
		« conférence.événement. {CONFERENCE_ID}. {CALL_ID}.\*"
		][ 
		"conference.command.{CONFERENCE_ID}",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.undeaf-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.deaf-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.unmute-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.mute-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.start-talking",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.stop-talking",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.del-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.add-member",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.unlock",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.lock",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.conference-destroy",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.conference-create",
		"conference.event.{CONFERENCE_ID}.{CALL_ID}.*"
		],
	« fax » : [	
		« fax.status. {FAX_ID}",
		« fax.object. {ACTION} »
		][	
		"fax.status.{FAX_ID}",
		"fax.object.{ACTION}"
		],
	« objet » : [
	« object.doc_created.account »,
	« object.doc_created.callflow »,
	« object.doc_created.device »,
	« object.doc_created.faxbox »,
	« object.doc_created.media »,
	« object.doc_created.user »,
	« object.doc_created.vmbox »,
	« object.doc_created.fax »,
	« object.doc_created.mailbox_message »,
	« object.doc_created.call_recording »,
	« object.doc_edited.account »,
	« object.doc_edited.callflow »,
	« object.doc_edited.device »,
	« object.doc_edited.faxbox »,
	« object.doc_edited.media »,
	« object.doc_edited.user »,
	« object.doc_edited.vmbox »,
	« object.doc_edited.fax »,
	« object.doc_edited.mailbox_message »,
	« object.doc_edited.call_recording »,
	« object.doc_deleted.account »,
	« object.doc_deleted.callflow »,
	« object.doc_deleted.device »,
	« object.doc_deleted.faxbox »,
	« object.doc_deleted.media »,
	« object.doc_deleted.user »,
	« object.doc_deleted.vmbox »,
	« object.doc_deleted.fax »,
	« object.doc_deleted.mailbox_message »,
	« object.doc_deleted.call_recording »
	][
	"object.doc_created.account",
	"object.doc_created.callflow",
	"object.doc_created.device",
	"object.doc_created.faxbox",
	"object.doc_created.media",
	"object.doc_created.user",
	"object.doc_created.vmbox",
	"object.doc_created.fax",
	"object.doc_created.mailbox_message",
	"object.doc_created.call_recording",
	"object.doc_edited.account",
	"object.doc_edited.callflow",
	"object.doc_edited.device",
	"object.doc_edited.faxbox",
	"object.doc_edited.media",
	"object.doc_edited.user",
	"object.doc_edited.vmbox",
	"object.doc_edited.fax",
	"object.doc_edited.mailbox_message",
	"object.doc_edited.call_recording",
	"object.doc_deleted.account",
	"object.doc_deleted.callflow",
	"object.doc_deleted.device",
	"object.doc_deleted.faxbox",
	"object.doc_deleted.media",
	"object.doc_deleted.user",
	"object.doc_deleted.vmbox",
	"object.doc_deleted.fax",
	"object.doc_deleted.mailbox_message",
	"object.doc_deleted.call_recording"
	]
}

Crossbar API Demandes #

Ce qui suit Crossbar API Les demandes sont utilisées par Dimensions :

Usage général

{CROSSBAR}/v2/api_auth,httpMethod=PUT
{CROSSBAR}/v2/websockets,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/api_key,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/descendants?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID}/quickcall/{DESTINATION},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/users/{USERID}/presence,httpMethod=POST
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices/{DEVICEID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/devices/{DEVICEID}/quickcall/{DESTINATION},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows? {filtres de chaîne de requête},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/callflows/{CALLFLOWID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/groups?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/groups/{GROUPID}?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/conferences?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/conferences/{CONFERENCEID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/vmboxes?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/metaflows,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/storage,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels/{CHANNELID},httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/channels/{CHANNELID},httpMethod=PUT
{CROSSBAR}/v2/accounts/{ACCOUNTID}/resources,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_queues?paginate=false,httpMethod=GET
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_queues/{QUEUEID},httpMethod=GET

~.UcClient.~ Contrôle de l'ACD

Utilisé pour contrôler l'état de l'agent de ~.UcClient.~ et Tableau de bord.

{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/status,httpMethod=POST,content={"data » :{"recipient_ids » :[" {RECIPIENTID1} »,"{RECIPIENTID2}"]["{RECIPIENTID1}","{RECIPIENTID2}"]}}
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/{USERID},httpMethod=POST
{CROSSBAR}/v2/accounts/{ACCOUNTID}/qubicle_recipients/{USERID}/status,httpMethod=POST

Contrôle du profil de présence

Utilisé lorsque les profils de présence sont activés sur le ~.UcClient.~.

{CROSSBAR}/v2/accounts/{accountId}/users/{userId},httpMethod=PATCH
{CROSSBAR}/v2/accounts/{accountId}/callflows/{callFlowId},httpMethod=POST
{CROSSBAR}/v2/accounts/{accountId}/callflows/groups/{groupId},httpMethod=POST
{CROSSBAR}/v2/accounts/{accountId}/callflows/groups/{groupId},httpMethod=POST

ACDC Soutien à l'Open Source

Utilisé si vous utilisez Open source ~.pbx.kazoo.name.~ l'utilisation de ACDC et les événements d'agent ou de file d'attente EDR.

{crossbar}/v2/accounts/{accountId}/queues,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/queues/{queueId},httpMethod=GET
{crossbar}/v2/accounts/{accountId}/queues/{queueId}/stats_summary,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/agents/{recipientId}/status,httpMethod=GET
{crossbar}/v2/accounts/{accountId}/agents/{userId}/status,httpMethod=POST

Restrictions sur les quais #

Les restrictions énumérées ci-dessous s'appliquent à la dernière version de ~.pbx.kazoo.name.~ appuyé.

Restriction Descriptif
Suivi du flux d'appels Aucune information sur les appels ne peut être recueillie via la prise Web API pour les appels pendant qu'ils sont dans un flux d'appels. Le suivi des appels commencera une fois qu'un appel interagira avec un utilisateur/appareil ou la file d'attente du centre d'appels. Dans un flux d'appels, les appels seront traités comme étant à l'état « File d'attente ».
Suivi de la messagerie vocale Les appels qui sont déviés vers la messagerie vocale à partir d'un téléphone ne peuvent pas être suivis comme étant allés à la messagerie vocale et seront plutôt modélisés comme n'ayant pas reçu de réponse. Cela est dû à l'insuffisance de l'information fournie par l'intermédiaire de la prise Web API afin que le scénario correct soit modélisé.
Suivi des transferts annoncé En raison de la façon dont les événements d'appel sont générés, nous recommandons que tous les téléphones soient configurés pour le transfert à l'aveugle. Si les téléphones ne sont pas configurés pour le transfert à l'aveugle et qu'un transfert assisté est raccroché avant d'être connecté, l'appel peut ne pas être modélisé correctement. Cela est dû à une limitation de FreeSWITCH.
Appel rapide Si vous exécutez un ~.pbx.kazoo.name.~ version antérieure à la version 5.0, les appels rapides répondus sur un appareil externe (cellulaire/domicile) génèrent des entrées de journal d'appels non valides.