> For the complete documentation index, see [llms.txt](https://library.zoom.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://library.zoom.com/technical-library/fr/affaires-services/zoom-contact-center/expert-insights/integrate-engagement-data.md).

# Intégrer les données d'engagement

### Aperçu

Zoom centre de contact génère de précieuses données d’engagement lors de chaque interaction client, y compris les enregistrements d’appels, les transcriptions, les notes des agents et les dispositions. Continuez votre lecture pour découvrir comment stocker les données d’engagement dans des systèmes externes (par exemple, CRM et autres systèmes de référence) afin de créer une vue client unifiée, d’Activer un coaching efficace des agents ou de répondre aux exigences de conformité lors de l’utilisation de Zoom centre de contact.

Nous allons détailler les différentes méthodes d’Intégrations pour vous aider à choisir la meilleure approche en fonction de la façon dont vos agents peuvent travailler avec une efficacité accrue.

La meilleure méthode dépend principalement d’un facteur clé : **l’application dans laquelle les agents gèrent leurs interactions**. Les deux options que nous aborderons sont :

1. Les agents utilisant le Connecteur CTI CRM ZCC prêt à l’emploi dans le CRM.
2. Les agents travaillant dans l’application Zoom Workplace, ce qui nécessite une solution personnalisée avec les API ZCC et les webhooks.

***

### Intégrations du Connecteur CTI CRM prête à l’emploi

C’est la méthode la plus simple. Si vos agents utilisent un Connecteur CTI CRM ZCC, la plupart des données d’engagement peuvent être synchronisées automatiquement entre la plateforme Zoom et le CRM approprié.

#### <mark style="color:bleu;">Fonctionnement</mark>

Le Connecteur CTI intègre l’interface agent ZCC directement dans le CRM. Lorsqu’un engagement se termine, des données telles que les enregistrements, les transcriptions, les notes et les dispositions sont automatiquement enregistrées dans Zoom et liées à l’enregistrement correspondant (par exemple, un ticket ou un contact) dans votre CRM.

#### <mark style="color:bleu;">Exigences de configuration</mark>

La fonctionnalité qui autorise la synchronisation des données entre Zoom et le CRM est fournie « prête à l’emploi », mais nécessite une activation dans le portail administrateur ZCC.

Effectuez les étapes suivantes :

{% stepper %}
{% step %}
**Activer dans le portail administrateur ZCC**

Connectez-vous au portail administrateur Zoom en tant qu’administrateur et accédez à Gestion du centre de contact > Intégrations > Applications.

Recherchez l’intégration CRM concernée et activez les Paramètres appropriés pour Autoriser le stockage des données dans votre CRM.
{% endstep %}

{% step %}
**Autorisations CRM**

Consultez et suivez les [guides de configuration des Intégrations CRM](https://support.zoom.com/) pour vérifier que l’utilisateur de votre intégration CRM dispose des autorisations d’écriture nécessaires pour tous les objets concernés.
{% endstep %}
{% endstepper %}

#### <mark style="color:bleu;">Plateformes CRM prises en charge</mark>

Cette fonctionnalité est accessible via le Connecteur CTI CRM ZCC lorsque les agents utilisent les CRM suivants :

* Salesforce
* Zendesk
* ServiceNow
* Microsoft Dynamics
* HubSpot

Avec les connecteurs CTI CRM, aucune configuration spéciale n’est requise, et l’intégration enregistrera les données d’engagement dans le CRM par défaut.

***

### Intégrations personnalisées via les API

Si vos agents utilisent l’application native Zoom Workplace ou ZCC Smart Embed, vous aurez besoin d’une solution personnalisée pour transférer les données d’engagement. La principale façon d’y parvenir consiste à utiliser les API du Zoom centre de contact.

Il existe deux principales approches pour accéder aux données d’engagement via l’API :

* **Interrogation périodique :** Interrogez périodiquement l’API Zoom pour voir si de nouvelles données d’engagement sont disponibles.
* **Webhooks :** Recevez une notification en temps réel de Zoom dès qu’une transcription est prête.

Il existe également une troisième approche, **Intégrations Flow Events**, qui fonctionne pour certains types de données.

#### <mark style="color:bleu;">Interrogation des API du Zoom centre de contact</mark>

Pour télécharger les données d’engagement, vous devez interroger les points de terminaison d’API ZCC appropriés. Il est important de noter que différents types de données proviennent de différentes API, donc vous devrez probablement créer une logique d’interrogation pour chaque point de terminaison pertinent.

De nombreuses API liées aux engagements dans Reports V2 (analyse des données CX) prennent désormais en charge le filtrage par heure de fin avec `end_time_from` et `end_time_to`. Privilégiez ces paramètres lorsqu’ils sont disponibles afin que vos tâches d’interrogation récupèrent les engagements en fonction du moment où ils se sont réellement terminés. Cela permet de réduire les enregistrements manqués, car les données complètes d’engagement (y compris les données du rapport V2) sont finalisées à la fin de l’engagement.

| Pour obtenir ces données...                                             | Sondage de cette API...                                                                                                                                                                                                                                                                                                                                                              | Utilisation de ce champ... | Remarques :                                                                                      |
| ----------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------- | ------------------------------------------------------------------------------------------------ |
| <p>Fichier multimédia d'enregistrement</p><p>(Canal vocal et vidéo)</p> | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/get/contact_center/recordings">Lister les enregistrements</a> ou</p><p>Lister les enregistrements d'engagement</p>                                                                                                                                                                                    | `download_url`             | Nécessite que l'enregistrement d'appel soit activé pour la file d'attente.                       |
| <p>Transcription de l'enregistrement</p><p>(Canal vocal et vidéo)</p>   | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/GET/contact_center/recordings">Lister les enregistrements</a> ou</p><p>Lister les enregistrements d'engagement</p>                                                                                                                                                                                    | `transcription_url`        | Nécessite l'enregistrement d'appel avec la transcription activée.                                |
| <p>Transcription</p><p>(Canal de messagerie)</p>                        | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtenir un engagement</a> ou</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lister les données historiques du journal des engagements</a></p> | `transcription_url`        | La transcription est activée par défaut pour les canaux de messagerie.                           |
| <p>Dispositions</p><p>(Tous les canaux)</p>                             | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtenir un engagement</a> ou</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lister les données historiques du journal des engagements</a></p> | `dispositions`             | Un tableau d'objets de disposition.                                                              |
| <p>Notes</p><p>(Tous les canaux)</p>                                    | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Obtenir un engagement</a> ou</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lister les données historiques du journal des engagements</a></p> | `notes`                    | Un tableau d'objets de notes.                                                                    |
| <p>Fichier média de messagerie vocale</p><p><br><br></p>                | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Lister les messages de la boîte de réception d'un compte</a> <strong>ou</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Lister les messages d'une boîte de réception</a></p> | `download_url`             | Pour les messages de messagerie vocale laissés dans une boîte de réception du centre de contact. |
| Transcription de la messagerie vocale                                   | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Lister les messages de la boîte de réception d'un compte</a> <strong>ou</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Lister les messages d'une boîte de réception</a></p> | `transcription_url`        | Nécessite que la transcription soit activée pour la boîte de réception.                          |

{% hint style="danger" %}
**Avertissement**

Les URL de téléchargement (`download_url`, `transcription_url`, `playback_url`, et ainsi de suite) fournis par ces API Zoom sont **pas** ne sont pas des liens publics. Ils sont conçus pour un accès programmatique et nécessitent une authentification API (par exemple, un jeton d'accès dans l'en-tête Authorization) pour télécharger le fichier associé.

Cela signifie :

* Vous ne pouvez pas enregistrer ces URL directement dans un CRM pour qu'un utilisateur clique dessus. Un utilisateur cliquant sur le lien dans son navigateur ne sera pas authentifié, et le téléchargement échouera.
* La bonne méthode consiste à ce que votre service backend utilise l'URL pour récupérer le fichier. Votre service peut ensuite stocker le fichier dans votre propre système (comme Amazon S3, Azure Blob Storage ou le stockage de fichiers de votre CRM) et fournir à vos utilisateurs un lien sécurisé à partir de là.
  {% endhint %}

{% hint style="warning" %}
**Attention**

**Retards de traitement - Enregistrements audio et vidéo :**

Ces données ne sont pas immédiatement Disponible dès qu’un appel se termine. L’audio doit d’abord être traité et téléversé, ce qui peut prendre plusieurs minutes pour les appels longs. Pour vous assurer de ne manquer aucun enregistrement, définissez le `query_date_type` paramètre à `recording_end_time` lors de l’interrogation de l’API List recordings. Cela récupère les données en fonction du moment où le traitement s’est terminé, et non de celui où l’appel s’est terminé.

Pour les tâches de rapprochement centrées sur l’engagement de Reports V2 (CX analyse des données), utilisez des fenêtres temporelles chevauchantes avec `end_time_from` et `end_time_to` afin de fournir une marge de sécurité pour le traitement retardé et les problèmes de livraison transitoires.
{% endhint %}

Pour plus d’informations sur les API Zoom du centre de contact, voir [API du centre de contact](https://developers.zoom.us/docs/api/contact-center/) documentation.

#### <mark style="color:bleu;">Utilisez les webhooks pour des événements en temps réel</mark>

Pour une approche plus immédiate, pilotée par l'événement, vous pouvez vous abonner aux webhooks ZCC. Cette méthode est la plus efficace pour les Intégrations en quasi temps réel.

**Fonctionnement**

1. Abonnez-vous aux événements appropriés dans Zoom App Marketplace.
2. Lorsqu’un événement se produit, Zoom envoie une notification à votre URL webhook (ou à votre connexion WebSocket).
3. La charge utile de l’événement contient les données dont vous avez besoin, soit directement, soit sous la forme d’une URL/d’un ID pour un appel API de suivi.

**Événements webhook courants pour les données d'engagement**

* **Données de fin d’engagement prêtes :** contact\_center.cx\_engagement\_end\_data\_ready (indique que les données du rapporter de fin d'engagement V2 sont prêtes à être récupérées)
* **Enregistrement vocal/vidéo :** contact\_center.recording\_completed (fournit une `download_url`)
* **Transcription voix/vidéo :** contact\_center.recording\_transcription\_completed (fournit une `transcription_url`)
* **Transcription de messagerie :** contact\_center.engagement\_messagerie\_transcription\_completed (fournit une `transcription_url`)
* **Remarques :** contact\_center.engagement\_note\_added (fournit une `note` champ avec les données de la note)
* **Disposition:** contact\_center.engagement\_disposition\_added (fournit une `disposition_name` champ avec les données de disposition)

**Modèle recommandé : déclenchez la récupération lorsque les données d'engagement sont prêtes**

Lorsque vous recevez `contact_center.cx_engagement_end_data_ready`, considérez-le comme le signal que les données du rapporter V2 de fin d'engagement sont complètes pour cet engagement. À ce moment-là, faites un appel à l'API des données de journal Historical Engagement et à toute autre API pertinente pour collecter l'ensemble final de données. Dans cet événement, utilisez `engagement_id` comme clé de recherche, puis récupérez les artefacts d'engagement complets depuis vos points de terminaison requis.

{% hint style="warning" %}
**Attention**

* **Soyez conscient de plusieurs événements :** Le `note_ajoutée` et `disposition_ajoutée` les événements peuvent se déclencher plusieurs fois pour un seul engagement (par exemple, si un agent enregistre plusieurs notes ou qu’un appel est transféré). La logique de votre application doit être capable de gérer cela.
* **Prévoir de la redondance :** La livraison des événements n’est pas toujours garantie à 100 % (par exemple, votre point de terminaison ou votre connexion WebSocket peut être temporairement hors service).
* **Stratégie de secours :** Nous recommandons d’exécuter un script de rapprochement à l’aide d’API de sondage avec `end_time_from` et `end_time_to` des fenêtres pour détecter les événements manqués et combler les écarts de données.
  {% endhint %}

Pour plus d’informations sur les événements webhook/WebSocket du centre de contact Zoom, consultez [Webhooks du centre de contact](https://developers.zoom.us/docs/api/contact-center/events/) documentation.

#### <mark style="color:bleu;">Intégrations des événements du flux</mark>

Pour certains types de données, vous pouvez envoyer des données directement vers un système externe depuis l’éditeur de flux ZCC à l’aide d’un script d’événement JavaScript.

**Données prises en charge et limitations :**

* **Disposition:** Peut être accessible sur tous les types de canal d’engagement entrant à l’aide de la `global_system.Engagement.disposition` variable.
* **Transcription :** Accessible uniquement pour les engagements de messagerie entrants (par exemple, chat Web) à l’aide de la `global_system.Engagement.transcription` variable.
* **Flux multiples :** Lorsque vous travaillez avec plusieurs Flows dans votre configuration, en particulier lorsqu’un Flow utilise le `RouteTo` widget pour se connecter à un autre Flow, il est essentiel de s’assurer que des scripts d’événement et des déclencheurs identiques sont correctement configurés dans tous les Flows.

Cette méthode est la plus puissante dans un Flow de messagerie, où vous pouvez combiner la transcription et la disposition dans un seul événement.

**Étapes de configuration**

Suivez ces étapes pour configurez votre Flow :

{% stepper %}
{% step %}
**Ajout d’un script d’événement**

Dans votre Flow ZCC (par exemple, un Flow de chat Web), cliquez sur le widget Start.

Localisez les scripts d’événement et faites un ajout d’un script d’événement pour des événements, tels que Engagement Closed et/ou Disposition Saved.

<div align="left"><figure><img src="/files/ce519254612baa1a4434c2e255ea146f343a9cc1" alt="Flow screen showing a welcome message and events."><figcaption></figcaption></figure></div>
{% endstep %}

{% step %}
**Ajout de votre JavaScript personnalisé**

L'exemple ci-dessous récupère à la fois la disposition et la transcription, puis les envoie ensemble à une API externe.

```javascript
async function main () { 
  try {
    // Obtenir l'objet disposition à partir de sa variable
    const disposition_data = RVA_get()['global_system.Engagement.disposition'];
    
    // Obtenir l'objet de transcription complet
    const transcription_data = await req.get(var_get()['global_system.Engagement.transcription']);

    // Préparez une charge utile contenant toutes les données que vous souhaitez envoyer
    const payload_to_send = {
      disposition: disposition_data.data.result,
      transcription: transcription_data.data.result.transcription
    };

    // Définir la destination de vos données
    const external_api_url = '<remplacez-par-votre-point de terminaison d'API>';
    
    // Envoyer les données combinées à votre système externe
  	const response = await req.post(external_api_url, payload_to_send);
    
    // Consigner la réponse du système externe pour le dépannage
    log.debug("Réponse de l'API externe : " + JSON.stringify(response.data));
    
  } catch (error) {
    log.debug("Une erreur s'est produite dans le script de l'événement de transcription : " + error);
  }
}
```

{% endstep %}
{% endstepper %}

***

### Résumé et recommandations

Choisissez la méthode d'Intégrations qui correspond le mieux à votre flux de travail d'agent et à vos ressources techniques.

| Si vos agents utilisent...                                      | Alors votre meilleure option est...                                        | Points clés à considérer :                                                                                                                                                                                                                                                                       |
| --------------------------------------------------------------- | -------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Le Connecteur ZCC CTI dans un CRM pris en charge                | Les Intégrations intégrées                                                 | <ul><li>La voie la plus simple</li><li>Aucun code requis</li><li>La fonctionnalité Synchroniser des données d'engagement est intégrée</li></ul>                                                                                                                                                  |
| L'application Zoom Workplace ou Smart Embed                     | API Webhooks plus rapprochement par interrogation filtrée à l’heure de fin | <ul><li>Utilisez <code>contact\_center.cx\_engagement\_end\_data\_ready</code> comme déclencheur de récupération</li><li>Puis rapprochez avec <code>end\_time\_from</code>/<code>end\_time\_to</code> fenêtres</li><li>Améliore l’efficacité tout en réduisant les engagements manqués</li></ul> |
| Un flux de messagerie entrant (et besoin d’envoyer des données) | Scripts d’événement du flux                                                | <ul><li>De niche, mais puissant</li><li>Nécessite JavaScript</li><li>Fonctionne le mieux pour l'envoi de transcriptions de messagerie et de dispositions</li></ul>                                                                                                                               |

En comprenant ces différentes voies, vous pouvez créer une Intégrations robuste et fiable qui vous offre une vue complète de vos interactions clients. Combiner la récupération déclenchée par événement avec une réconciliation filtrée par heure de fin vous aide à réduire les appels API inutiles tout en améliorant l'exhaustivité.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://library.zoom.com/technical-library/fr/affaires-services/zoom-contact-center/expert-insights/integrate-engagement-data.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
