Webhooks #
Les webhooks post-appel fournissent des informations sur chaque appel effectué sur le système. Ces informations peuvent être utilisées pour mettre à jour des systèmes externes ou démarrer des automatisations de flux de travail, à l'aide de produits tels qu'Azure Logic Apps ou Zapier.
Exemples de cas d'utilisation :
- Ajouter un événement d'historique d'appels par rapport à un CRM enregistrer
- Ajouter les détails de lecture de l'enregistrement d'appel à un CRM enregistrer
- Des ventes record en CRM
- Suivre les réclamations des clients dans un système externe
info
Plusieurs Webhooks peuvent être configurés (en fonction de la licence) pour fournir des informations post-appel à différents systèmes externes selon les besoins.
Configuration d'un webhook #
Conditions de filtrage #
Par défaut, un webhook se déclenche pour toutes les sessions d'appel, sauf si un filtre est appliqué. Des filtres peuvent être ajoutés pour la plupart des propriétés d'appel afin de permettre au webhook d'être limité à se déclencher uniquement sur les appels 'Externe' par exemple, ou les appels qui correspondent à un numéro 'DID' spécifique.
Ajoutez des options de filtrage si nécessaire. Lorsque plusieurs champs de filtre sont ajoutés, ils sont combinés à l'aide d'un ' ET' opérateur.
info
Pour plus d'informations sur le filtrage, reportez-vous à la section ici
Action #
Paramètre | Options | Description |
---|---|---|
URL | https:// | Fournir un HTTPS URL que la gâchette appellera lorsqu'elle sera tirée. |
Méthode de la requête | GET, POST, PUT | Choisissez la méthode de requête requise pour le webhook. |
Format de la requête | JSON, données de formulaire | Choisissez le format de requête requis pour le webhook si POST ou PUT sont sélectionnées comme méthode de demande. |
Données utiles supplémentaires | Paire clé/valeur | Si nécessaire, des informations statiques supplémentaires peuvent être ajoutées à la charge utile du webhook. Entrez des données supplémentaires sous forme de paires clé/valeur, si nécessaire. |
Tentatives de nouvelle tentative | 0 - 10 | Par défaut 1. Entrez le nombre de fois que le webhook doit réessayer si le |
warning
La configuration du déclencheur de webhook est mise en cache pour améliorer les performances. Tout nouveau déclencheur ou modification apportée à des déclencheurs existants peut prendre jusqu'à 10 minutes avant d'entrer en vigueur.
info
Le délai d'expiration d'une demande de webhook est de 10 secondes. Le temps entre les nouvelles tentatives est égal à la Nombre de tentatives x 2 secondes
Données de charge utile
Le tableau ci-dessous présente les données fournies dans la charge utile du déclencheur.
Paramètre | Description |
---|---|
triggerID | ID unique du déclencheur pour lequel la demande de webhook est déclenchée. |
id | L'identifiant de l'entité qui change (ID utilisateur ou ID locataire). |
tenantId | ID de locataire du client auquel l'événement est associé. |
Cdr | Charge utile des données d'appel |
données personnalisées | S'il est configuré contre le déclencheur, toutes les informations supplémentaires de la paire clé/valeur de la charge utile seront transmises ici. |
CDR Données
Paramètre | Description |
---|---|
id | ID de session pour le CDR enregistrer. |
dType | CDR type d'enregistrement - « CloudSessionCdr » |
sVer | CDR Version - 1 |
pbxId | ~.Dimensions.~ ID de la plate-forme de communication le CDR provient de (par exemple ~.pbx.kazoo.name.~) |
pbxNom | Nom configuré de la plate-forme de communication |
tz | Identifiant TZ pour les heures d'appel. |
commencer | Heure de début de la session d'appel. |
répondre | L'heure à laquelle les appels ont été répondus pour la première fois. |
fin | Heure de fin de la session d'appel. |
durée | Durée de l'appel en secondes. |
bague | Temps de sonnerie de l'appel en secondes. |
parler | Temps de conversation de l'appel en secondes. |
tenir | Temps d'attente de l'appel en secondes. |
parc | Temps de stationnement de l'appel en secondes. |
perdu | Indication de l'abandon de l'appel - 1/0 |
lostinPark | Indication indiquant si l'appel a été abandonné alors qu'il était stationné - 1/0 |
Aban | Indication indiquant s'il s'agissait d'un appel à sonnerie courte ou non - 1/0 |
ans | Indication de l'existence d'un appel annuel - 1/0 |
court | Indication indiquant si l'appel a été appelé comme ayant une courte durée - 1/0 |
cause | Effacez la cause de l'appel. |
Dir | Appelez la direction. 0 - Inconnu, 1 - Interne, 2 - Entrant, 3 - Sortant, 4 - Les deux |
type | Type d'appel. 0 - Inconnu, 1 - Interne, 2 - Externe |
t2t | Indication indiquant s'il s'agissait d'un appel de ligne de circuit à ligne de circuit - 1/0 |
cliNum | Numéro d'identification de l'appelant (CLI) dans E.164 format. |
cliName | Nom de l'appelant |
cliLoc | Emplacement de l'interface de ligne de commande |
cliArea | Indicatif régional CLI |
cliState | État de l'interface de ligne de commande (États-Unis uniquement) |
cliCtry | Pays CLI |
ddiNum | Numéro DID en E.164 format. |
ddiName | Nom DID |
fRngDevNum | Numéro de l'appareil de première rangée. |
fRngDevName | Nom de l'appareil du premier rang. |
lRngDevNum | Numéro de l'appareil du dernier rang. |
lRngDevName | Nom de l'appareil du dernier rang. |
ansDevNum | Numéro du répondeur. |
ansDevName | Nom du répondeur. |
lAnsDevNum | Numéro du dernier répondeur. |
lAnsDevName | Nom du dernier répondeur. |
fRngUsrNum | Numéro d'utilisateur du premier rang. |
fRngUsrName | Nom d'utilisateur du premier rang. |
lRngUsrNum | Numéro d'utilisateur du dernier rang. |
lRngUsrName | Nom d'utilisateur du dernier rang. |
ansUsrNum | Numéro d'utilisateur de réponse. |
ansUsrName | Nom d'utilisateur de réponse. |
lAnsUsrNum | Numéro du dernier utilisateur répondant. |
lAnsUsrName | Nom d'utilisateur du dernier répondant. |
fRngAgtNum | Numéro d'agent de première rangée. |
fRngAgtName | Nom de l'agent de première rang. |
lRngAgtNum | Numéro d'agent du dernier rang. |
lRngAgtName | Nom de l'agent du dernier rang. |
ansAgtNum | Numéro du répondeur. |
ansAgtName | Nom de l'agent répondeur. |
lAnsAgtNum | Numéro du dernier répondeur. |
lAnsAgtName | Nom du dernier répondeur. |
rteID | Numéro de préfixe. Tout numéro ajouté à l'interface de ligne de commande en tant que préfixe lors de l'acheminement via la plate-forme de communication. |
rteName | Nom du préfixe. Toute chaîne ajoutée au nom de l'appelant en tant que préfixe lors de l'acheminement via la plate-forme de communication. |
fRngGroupName | Nom du groupe First Rang. |
lRngGroupName | Nom du groupe du dernier rang. |
ansGroupName | Nom du groupe de réponse. |
hasRec | Indication de l'enregistrement de l'appel - 1/0 |
taux | Indication de la notation de l'appel - 1/0 |
rateCost | Le coût du tarif (double). |
rateBand | Nom de la bande pour le taux. |
rateName | Le nom du tarif appliqué. |
enregistrementIdés | Tableau de chaînes d'Id pour tous les enregistrements associés à cette session d'appel. |
annuairematchs | Élément du répertoire de contacts Tableau de tous les contacts correspondant à l'appel. |
étiquettes | Tableau contenant une paire clé/valeur de toutes les balises appliquées à l'appel. |
CDR Élément de l'annuaire des contacts
Clé | Description | Type |
---|---|---|
titre | Titre de la personne-ressource (M, Mme, Docteur, etc.) | corde |
Nomcomplet | Nom complet du contact. Il est utilisé dans les rapports et ~.UcClient.~ clients pour aider les utilisateurs à identifier les appelants. | corde |
nom de l'entreprise | Le nom de l'entreprise pour laquelle le contact travaille. | corde |
jobTitle | La position de contact avec l'entreprise. | corde |
Téléphone1 vers téléphone4 | Une adresse e-mail de contact pour le contact. | E.164 |
Messagerie électronique | Jusqu'à 4 champs de numéro de téléphone de contact différents | corde |
crmId | Un identifiant unique pour l'enregistrement de contact d'un CRM système | corde |
Champ1 à Champ 10 | 10 champs pour transporter des données personnalisées pour l'enregistrement du contact | corde |
tip
Le triggerId peut être trouvé en modifiant un déclencheur configuré dans le portail client et en copiant le GUID à partir de la fin du URL. par exemple https://myreports.com/en-GB/webhooks/00000000-0000-0000-0000-000000000000
Exemple JSON charge utile
Exemple JSON Format de charge utile pour PUT/POST Requêtes:
{
« triggerId » : « 00000000-0000-0000-0000-00000000000 »,
« id » : « 00000000-0000-0000-0000-000000-0000000000 »,
« tenantId » : « 00000000-0000-0000-0000-00000000000 »,
« cdr » : {
« id » : « 00000000-0000-0000-0000-000000-0000000000 »,
« dType » : « CloudSessionCdr »,
« sVer » : 1,
« pbxId » : « 00000000-0000-0000-0000-00000000000 »,
« pbxName » : « BenDV1 - Dev - Ben »,
« tz » : « Europe/Londres »,
« start » : « 2024-05-29T09:37:35+01:00 »,
« end » : « 2024-05-29T09:37:45+01:00 »,
« dur » : 10,
« anneau » : 10,
« perdu » : 1,
« cause » : « NORMAL_ DÉFRICHAGE",
« réal » : 2,
« type » : 2,
« cliNum » : « \\u002B44700000000 »,
« cliLoc » : « Royaume-Uni »,
« cliCtry » : « GB »,
« ddiNum » : « \\u002B441610000000 »,
« fRngDevNum » : « utilisateur_ **\*\***",
« fRngDevName » : « (T42S)Utilisateur test »,
« lRngDevNum » : « user\_**\*\***",
« lRgDevName » : « (T42S)Utilisateur test »,
« fRngUsrNum » : « 302 »,
« fRngUsrName » : « Utilisateur test »,
« lRngUsrNum » : « 302 »,
« lRngUsrName » : « Utilisateur test »,
« fRngAgtNum » : « 302 »,
« fRngAgtName » : « Utilisateur test »,
« lRngAgtNum » : « 302 »,
« lRngAgtName » : « Utilisateur test »,
« hasRec » : 1,
« recordingIds » : [" 00000000-0000-0000-0000-00000000000"]["00000000-0000-0000-0000-000000000000"],
« directoryMatches » : [ {
« dirName » : « Mon global »,
« dirId » : « 00000000-0000-0000-0000-00000000000 »,
« dirType » : « DirectoryContactMatch »,
« contactId » : « 00000000-0000-0000-0000-00000000000 »,
« champs » : {
« fullName » : « Exemple de contact »,
« companyName » : « Société »,
« jobTitle » : « Titre du poste »,
« email » : « Adresse e-mail »,
« field1 » : « field1 »,
« field2 » : « field2 »,
« field3 » : « field3 »,
« field4 » : « field4 »,
« field5 » : « field5 »,
« field6 » : « field6 »,
« field7 » : « field7 »,
« field8 » : « field8 »,
« field9 » : « field9 »,
« field10 » : « 301 »
}][{
"dirName": "My Global",
"dirId": "00000000-0000-0000-0000-000000000000",
"dirType": "DirectoryContactMatch",
"contactId": "00000000-0000-0000-0000-000000000000",
"fields": {
"fullName": "Example Contact",
"companyName": "Company",
"jobTitle": "Job Title",
"email": "Email Address",
"field1": "field1",
"field2": "field2",
"field3": "field3",
"field4": "field4",
"field5": "field5",
"field6": "field6",
"field7": "field7",
"field8": "field8",
"field9": "field9",
"field10": "301"
}],
« tags » : {
« Support » : « étape1 »
}
},
« customData » : {
« hook » : « après l'appel »
}
}