~.pbx.kazoo.name.~ Connexion

~.pbx.kazoo.name.~ Connexion #

Le ~.pbx.kazoo.name.~ connection 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 connexion:

Réglage Description
Nom Un nom unique pour pouvoir identifier facilement l'utilisation de la connexion.
API Clé Le API Clé pour permettre ~.Dimensions.~ Pour vous connecter à ~.pbx.kazoo.name.~ et surveiller les communications du client.
ID de compte Le ~.pbx.kazoo.name.~ ID de compte du locataire pour le client.
Crossbar REST API REST API connexion URL.
Blackhole WebSocket API Connexion WebSocket URL
Pays L'emplacement de la connexion du système téléphonique. Il est utilisé pour localiser les numéros de téléphone pour la connexion.

Information Circle info

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

Versions prises en charge #

~.pbx.kazoo.name.~ Sortie ~.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,3 pouces c4/> Pris en charge ACDC pris en charge à partir de Sprint 85
4,2 pouces c6/> Pris en charge Aucun
< 4.x Non pris en charge Aucun

Configuration requise #

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. Appareil 'SIP Les noms d'utilisateur ne peuvent pas être identiques à ceux d'un numéro d'extension (y compris l'ID d'extension/de 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 e-mail valide et unique configurée pour leur 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.~ portal, le nom d'utilisateur de l'utilisateur sur ~.pbx.kazoo.name.~ doit être son adresse e-mail.
Filtrage récapitulatif de l'agent Le statut de l'agent ne peut actuellement pas être filtré par file d'attente. Lors du filtrage du rapport de synthèse de l'agent par file d'attente, tous les agents seront affichés avec leur statut pour la plage de dates correspondante du rapport. Seules les informations d'appel peuvent être filtrées en fonction d'un spécifique si nécessaire. Cela est dû au fait que des informations de file d'attente spécifiques ne sont pas stockées historiquement par rapport aux événements d'état de l'agent.

API Clé #

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

Capture d'écran

ID de compte #

Le ~.pbx.kazoo.name.~ L'ID de compte du locataire est requis pour le client spécifique sur le ~.pbx.kazoo.name.~ plateforme. Cela permet ~.Dimensions.~ d'identifier de manière unique les utilisateurs et les appels de ce client sur le ~.pbx.kazoo.name.~ plateforme. Vous pouvez le trouver dans le ~.pbx.kazoo.name.~ à l'aide de l'application « Control Center ». 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 via une seule connexion à ~.pbx.kazoo.name.~. Cela réduira la charge sur le ~.pbx.kazoo.name.~ instance.

API Connexions #

Pour vous connecter au ~.pbx.kazoo.name.~ plate-forme, ~.Dimensions.~ nécessite l'accès au REST et les API WebSocket. Veuillez saisir les URL de ceux-ci 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'utilisateur et pour faciliter la modélisation du trafic d'appels.

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

Document note

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

Blackhole WebSocket URL #

Le Blackhole La connexion permet de surveiller le trafic d'appels et de suivre les événements de modification des documents pour les objets ~.Dimensions.~ modèles (utilisateurs, appareils, flux d'appels, etc.).

Lors de la configuration des détails de connexion, indiquez le numéro de port du Blackhole connexion.

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

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

Document note

Retirez le « /v2 » de 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 Le #

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

Type de connexion 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 selon les besoins.

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

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

Exemple Blackhole SRV Configuration

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

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

Exemple de configuration WebRTC SRV

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

Document note

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

~.pbx.kazoo.name.~ Exigences et restrictions de la plate-forme #

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 qu'un PBX modèle.

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

Document note

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

Limitation du débit #

~.Dimensions.~ effectue un certain nombre de requêtes et de requêtes au cours de son processus de démarrage initial, lorsqu'il apprend à connaître les ~.pbx.kazoo.name.~ instance. Si le débit limite le ~.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 support sera en contact avec plus d'informations.

Événements WebSocket #

~.Dimensions.~ nécessite que les événements suivants soient activés sur le WebSocket pour permettre la modélisation de tous les appels et le suivi des modifications de programmation :

« données » : {
	« appel » : [	
		"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 » : [ 
		"conference.command. {CONFERENCE_ID}",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.undeaf-member",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.membre-sourd",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.unmute-member",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.mute-member",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.commence-à-parler",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.stop-talking",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.del-membre",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.add-member",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.déverrouiller",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.lock",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.conference-destructer",
		"conference.event. {CONFERENCE_ID}. {CALL_ID}.conference-create",
		"conference.event. {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.objet. {ACTION}"
		][	
		"fax.status.{FAX_ID}",
		"fax.object.{ACTION}"
		],
	« objet » : [
	« object.doc compte_créé »,
	« object.doc_created.callflow »,
	« object.doc_créé.appareil »,
	« object.doc_created.faxbox »,
	« object.doc_created.media »,
	« object.doc_créé.utilisateur »,
	« object.doc_created.vmbox »,
	« object.doc_created.fax »,
	« object.doc_message_de_boîte_de_lettres »,
	« object.doc_créé.enregistrement_d'appel »,
	« compte_object.doc edited »,
	« 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 compte_supprimé »,
	« 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_message_de_la_boîte aux lettres »,
	« object.doc_enregistrement_d.appel »
	][
	"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 Requêtes #

Les Crossbar API requêtes sont utilisées par Dimensions :

Utilisation générale

{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 ACD

Utilisé lors du contrôle de l'état de l'agent à partir 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 Support sur l'Open Source

Utilisé en cas d'exécution de l'option Open source ~.pbx.kazoo.name.~ Utilisation de ACDC et les événements d'agent/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 de plate-forme #

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

Restriction Description
Suivi du flux d'appels Aucune information d'appel ne peut être collectée via le web socket API pour les appels lorsqu'ils sont dans un flux d'appels. Le suivi des appels commencera dès qu'un appel interagira avec un utilisateur/un 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 redirigés vers la messagerie vocale à partir d'un téléphone ne peuvent pas être suivis comme ayant été envoyés à la messagerie vocale et seront plutôt modélisés comme n'ayant pas reçu de réponse. Cela est dû à un manque d'informations fournies par le biais du web socket API afin de modéliser le bon scénario.
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é, il se peut que l'appel ne soit pas modélisé correctement. Cela est dû à une limitation dans FreeSWITCH.
Prise d'appel Si vous exécutez un ~.pbx.kazoo.name.~ version antérieure à la version 5.0, les appels rapides répondus sur un périphérique externe (cellulaire/domicile) génèrent des entrées de journal d'appels invalides.