# Betrokkenheidsgegevens integreren

### Overzicht

Zoom contactcenter genereert waardevolle betrokkenheidsgegevens tijdens elke klantinteractie, waaronder gespreksopnamen, transcripties, aantekeningen van de agent en afhandelingen. Lees verder om te leren hoe je betrokkenheidsgegevens kunt opslaan in externe systemen (bijvoorbeeld CRM en andere registratiesystemen) om een uniform klantbeeld te creëren, effectieve coaching van agents Inschakelen of te voldoen aan nalevingsvereisten bij het gebruik van Zoom contactcenter.

We zetten de verschillende Integratie(s) uiteen om je te helpen Kies de beste aanpak op basis van hoe je agents met meer efficiëntie kunnen werken.

De beste methode hangt vooral af van één belangrijke factor: **de applicatie waarin de agents hun interacties afhandelen**. De twee opties die we bespreken zijn:

1. Agents die de kant-en-klare ZCC CRM CTI Connector binnen de CRM gebruiken.
2. Agents die werken in de Zoom Workplace app, wat een aangepaste oplossing met ZCC-API's en webhooks vereist.

***

### Kant-en-klare CRM CTI Connector-Integratie(s)

Dit is de meest rechttoe rechtaan methode. Als je agents een ZCC CRM CTI Connector gebruiken, kunnen de meeste betrokkenheidsgegevens automatisch worden gesynchroniseerd tussen het Zoom Platform en de juiste CRM.

#### <mark style="color:blauw;">Hoe het werkt</mark>

De CTI Connector sluit de ZCC-agentinterface rechtstreeks in de CRM in. Wanneer een interactie eindigt, worden gegevens zoals opnames, transcripties, notities en afhandelingsresultaten automatisch opgeslagen in Zoom en gekoppeld aan de relevante opnemen (bijvoorbeeld een ticket of contactpersoon) in uw CRM.

#### <mark style="color:blauw;">Vereisten voor installatie</mark>

Functionaliteit die synchronisatie van gegevens tussen Zoom en de CRM mogelijk maakt, is standaard beschikbaar, maar vereist activering binnen het ZCC beheerportal.

Voltooi de volgende stappen:

{% stepper %}
{% step %}
**Inschakelen in ZCC beheerportal**

Log in op het Zoom beheerportal als beheerder en ga naar contactcenterbeheer > Integraties > Applicaties.

Zoek de relevante CRM-Integratie(s) en Inschakelen de juiste Instellingen om opslag van gegevens in uw CRM toe te staan.
{% endstep %}

{% step %}
**CRM-machtigingen**

Bekijk en volg de [CRM Integratie(s) installatiegidsen](https://support.zoom.com/) om te verifiëren dat uw CRM Integratie(s) gebruiker over de nodige schrijfrechten beschikt voor alle relevante objecten.
{% endstep %}
{% endstepper %}

#### <mark style="color:blauw;">Ondersteunde CRM-platforms</mark>

Deze functionaliteit is toegankelijk via de ZCC CRM CTI Connector wanneer agenten de volgende CRM's gebruiken:

* Salesforce
* Zendesk
* ServiceNow
* Microsoft Dynamics
* HubSpot

Met de CRM CTI Connectoren is geen speciale configuratie vereist, en de Integratie(s) slaat Standaard de engagementgegevens op in het CRM.

***

### Aangepaste Integratie(s) via API's

Als uw agenten de native Zoom Workplace app of ZCC Smart Embed gebruiken, hebt u een aangepaste oplossing nodig om engagementgegevens over te zetten. De primaire manier om dit te doen is met de Zoom contactcenter-API's.

Er zijn twee hoofdbenaderingen om toegang te krijgen tot engagementgegevens via de API:

* **Polling:** Vraag periodiek de Zoom API op om te zien of nieuwe engagementgegevens Beschikbaar zijn.
* **Webhooks:** Ontvang een realtime Melding van Zoom zodra een transcript klaar is.

Er is ook een derde aanpak, **Flow Events Integratie(s)**, die werkt voor bepaalde gegevenstypen.

#### <mark style="color:blauw;">De Zoom contactcenter API's peilen</mark>

Om engagementgegevens te downloaden, moet u de juiste ZCC API-Eindpunten opvragen. Het is belangrijk op te merken dat verschillende typen gegevens uit verschillende API's komen, dus u zult waarschijnlijk peillogica moeten bouwen voor elk relevant Eindpunt.

| Om deze gegevens te verkrijgen...                          | Peiling van deze API...                                                                                                                                                                                                                                                                                                                                                           | Met dit veld...  | Opmerkingen:                                                       |
| ---------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------- | ------------------------------------------------------------------ |
| <p>Opnamemediebestand</p><p>(Voice- en Videokanaal)</p>    | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/GET/contact_center/recordings">Opnamen weergeven</a> of</p><p>Lijst wachtrij-gespreksopnames</p>                                                                                                                                                                                                   | `download_url`   | Vereist dat gespreksopname is ingeschakeld voor de wachtrij.       |
| <p>Transcript van opname</p><p>(Voice- en Videokanaal)</p> | [Lijst engagements](https://developers.zoom.us/docs/api/contact-center/#tag/engagements/GET/contact_center/engagements)                                                                                                                                                                                                                                                           | `transcript_url` | Vereist gespreksopname met transcriptie ingeschakeld.              |
| <p>Transcript</p><p>(Berichtenverkeer-kanaal)</p>          | [Lijst engagements](https://developers.zoom.us/docs/api/contact-center/#tag/engagements/GET/contact_center/engagements)                                                                                                                                                                                                                                                           | `transcript_url` | Transcript is Standaard ingeschakeld voor berichtenverkeerkanalen. |
| <p>Beschikkingen</p><p>(Alle kanalen)</p>                  | [Lijst engagements](https://developers.zoom.us/docs/api/contact-center/#tag/engagements/GET/contact_center/engagements)                                                                                                                                                                                                                                                           | `beschikkingen`  | Een array van beschikking-objecten.                                |
| <p>Notities</p><p>(Alle kanalen)</p>                       | [Lijst engagements](https://developers.zoom.us/docs/api/contact-center/#tag/engagements/GET/contact_center/engagements)                                                                                                                                                                                                                                                           | `notities`       | Een array van notitie-objecten.                                    |
| <p>Voicemail-mediabestand</p><p><br><br></p>               | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Maak een lijst van de inboxberichten van een account</a> <strong>of</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Maak een lijst van de berichten van een inbox</a></p> | `download_url`   | Voor voicemails die zijn achtergelaten in een contactcenter-inbox. |
| Voicemail transcript                                       | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Maak een lijst van de inboxberichten van een account</a> <strong>of</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Maak een lijst van de berichten van een inbox</a></p> | `transcript_url` | Vereist dat transcriptie is ingeschakeld voor de inbox.            |

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

De download-URL's (`download_url`, `transcript_url`, `playback_url`, enzovoort) die door deze Zoom API's worden aangeboden, zijn **niet** openbare links. Ze zijn ontworpen voor programmatische toegang en vereisen API-authenticatie (bijvoorbeeld een access token in de Authorization-header) om het bijbehorende bestand te downloaden.

Dit betekent:

* Je kunt deze URL's niet rechtstreeks in een CRM opslaan zodat een gebruiker erop kan klikken. Als een gebruiker op de link in zijn Browser klikt, wordt hij niet geauthenticeerd en zal de download mislukken.
* De juiste methode is dat je backendservice de URL gebruikt om het bestand op te halen. Je service kan het bestand vervolgens opslaan in je eigen systeem (zoals Amazon S3, Azure Blob Storage of de bestandsopslag van je CRM) en vanaf daar een beveiligde link aan je gebruikers aanbieden.
  {% endhint %}

{% hint style="warning" %}
**Let op**

**Verwerkingsvertragingen - spraak- en video-opnames:**

Deze gegevens zijn niet direct beschikbaar wanneer een bellen eindigt. De audio moet eerst worden verwerkt en geüpload, wat voor lange bellen enkele minuten kan duren. Om ervoor te zorgen dat je geen opnames mist, stel de `query_date_type` parameter in op `recording_end_time` bij het pollen van de List recordings API. Hiermee worden gegevens opgehaald op basis van wanneer de verwerking is voltooid, niet wanneer het bellen eindigde.
{% endhint %}

Voor meer informatie over Zoom contactcenter-API's, zie [contactcenter-API's](https://developers.zoom.us/docs/api/contact-center/) documentatie.

#### <mark style="color:blauw;">Gebruik webhooks voor realtime gebeurtenissen</mark>

Voor een directere, Evenement-gestuurde aanpak kunt u zich abonneren op ZCC-webhooks. Dit is de meest efficiënte methode voor Integratie(s) in bijna realtime.

**Hoe het werkt**

1. Abonneer je op de juiste gebeurtenissen in de Zoom App Marketplace.
2. Wanneer een Evenement optreedt, stuurt Zoom een Melding naar je webhook-URL (of naar je WebSocket-verbinding).
3. De Evenement-payload bevat de gegevens die je nodig hebt, rechtstreeks of als een URL/ID voor een vervolg-API-bellen.

**Veelvoorkomende webhook-gebeurtenissen voor betrokkenheidsgegevens**

* **Spraak-/video-opname:** contactpersoon\_center.recording\_completed (biedt een `download_url`)
* **Voice-/videotranscript:** contactpersoon\_center.recording\_transcript\_completed (biedt een `transcript_url`)
* **Berichtenverkeertranscript:** contactpersoon\_center.engagement\_berichtenverkeer\_transcript\_completed (biedt een `transcript_url`)
* **Opmerkingen:** contactpersoon\_center.engagement\_beschikking\_added (biedt een `notitie` veld met de notitiegegevens)
* **Beschikking:** contactpersoon\_center.engagement\_beschikking\_added (biedt een `beschikking_name` veld met de beschikkingsgegevens)

{% hint style="warning" %}
**Let op**

* **Let op meerdere gebeurtenissen:** De `notitie_toegevoegd` en `beschikking_toegevoegd` gebeurtenissen kunnen meerdere keren optreden voor één enkele interactie (bijvoorbeeld als een agent meerdere notities opslaat of een bellen wordt doorverbonden). Je applicatielogica moet dit kunnen verwerken.
* **Bouw redundantie in:** De levering van gebeurtenissen is niet altijd 100% gegarandeerd (bijvoorbeeld, je Eindpunt- of websocketverbinding kan tijdelijk niet beschikbaar zijn).
* **Back-upstrategie:** We raden aan om 's nachts een reconciliatiescript uit te voeren met polling-API's om gemiste gebeurtenissen op te vangen.
  {% endhint %}

Zie voor meer informatie over Zoom contactcenter webhook-/websocketgebeurtenissen [contactcenter-webhooks](https://developers.zoom.us/docs/api/contact-center/events/) documentatie.

#### <mark style="color:blauw;">Flow Evenementen Integratie(s)</mark>

Voor bepaalde gegevenstypen kunt u gegevens rechtstreeks vanuit de ZCC Flow-editor naar een extern systeem pushen met behulp van een JavaScript Evenement-script.

**Ondersteunde gegevens en beperkingen:**

* **Beschikking:** Kan worden benaderd op alle Inkomend engagement kanaaltypen met behulp van de `global_system.Engagement.beschikking` variabele.
* **transcript:** Alleen toegankelijk voor Inkomend berichtenverkeer-engagements (bijvoorbeeld Web chatbericht) met behulp van de `global_system.Engagement.transcript` variabele.
* **Meerdere flows:** Wanneer u met meerdere Flows in uw configuratie werkt, vooral wanneer één Flow de `RouteTo` widget om verbinding te maken met een andere Flow, is het essentieel om ervoor te zorgen dat identieke Evenement Scripts en triggers correct zijn geconfigureerd in alle Flows.

Deze methode is het krachtigst in een berichtenverkeer Flow, waar u zowel het transcript als de beschikking in één Evenement kunt combineren.

**Configuratiestappen**

Volg deze stappen om uw flow te Configureer:

{% stepper %}
{% step %}
**Toevoegen een Evenement-script**

Klik in uw ZCC Flow (bijvoorbeeld een Web chatbericht-flow) op de Start-widget.

Zoek Evenement-scripts en Toevoegen een Evenement-script voor evenementen, zoals Engagement Closed en/of beschikking opgeslagen.

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

{% step %}
**Toevoegen uw aangepaste JavaScript**

Het onderstaande voorbeeld haalt zowel de beschikking als het transcript op en stuurt ze vervolgens samen naar een externe API.

```javascript
async function main () { 
  try {
    // Haal het beschikking-object op uit de variabele
    const beschikking_data = var_get()['global_system.Engagement.beschikking'];
    
    // Haal het volledige transcript-object op
    const transcript_data = await req.get(var_get()['global_system.Engagement.transcript']);

    // Bereid een payload voor met alle gegevens die u wilt verzenden
    const payload_to_send = {
      beschikking: beschikking_data.data.result,
      transcript: transcript_data.data.result.transcript
    };

    // Definieer de bestemming voor je gegevens
    const external_api_url = '<vervang-door-je-API-Eindpunt>';
    
    // Stuur de gecombineerde gegevens naar je externe systeem
  	const response = await req.post(external_api_url, payload_to_send);
    
    // Registreer de reactie van het externe systeem voor probleemoplossing
    log.debug("Externe API-reactie: " + JSON.stringify(response.data));
    
  } catch (error) {
    log.debug("Er is een fout opgetreden in het transcript Evenement-script: " + error);
  }
}
```

{% endstep %}
{% endstepper %}

***

### Samenvatting en aanbevelingen

Kies de Integratie(s)-methode die het beste aansluit bij uw agentworkflow en technische middelen.

| Als uw agenten...                                                      | Dan is uw beste optie...                                     | Belangrijke overwegingen:                                                                                                                                           |
| ---------------------------------------------------------------------- | ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| De ZCC CTI Connector in een ondersteunde CRM                           | De ingebouwde integratie                                     | <ul><li>Makkelijkste route</li><li>Geen code vereist</li><li>Synchroniseren van engagementgegevens is ingebouwd</li></ul>                                           |
| De Zoom Workplace app of Smart Embed                                   | API-webhooks met een nachtelijke pollingtaak voor afstemming | <ul><li>Meest robuuste maatwerkoplossing</li><li>Biedt gegevens in bijna realtime met een betrouwbaar back-upproces</li></ul>                                       |
| Een Inkomend berichtenverkeer-flow (en behoefte om gegevens te pushen) | Flow Evenement-scripts                                       | <ul><li>Niche, maar krachtig</li><li>Vereist JavaScript</li><li>Werkt het beste voor het verzenden van berichtenverkeer-transcripten en afhandelingscodes</li></ul> |

Door deze verschillende paden te begrijpen, kunt u een robuuste en betrouwbare Integratie(s) bouwen die u een volledig overzicht geeft van uw klantinteracties.


---

# Agent Instructions: 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:

```
GET https://library.zoom.com/technical-library/nl/zakelijke-diensten/zoom-contact-center/expert-insights/integrate-engagement-data.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
