> 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/nl/zakelijke-services/zoom-contact-center/expert-insights/zoom-cx-agent-desktop-deployment-options.md).

# Implementatieopties voor agentdesktop

Geschreven door Justin Steinberg

<figure><img src="https://3901650588-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FctBXUMeBy4rtLMmMkKRG%2Fuploads%2Fgit-blob-293887229ce00b96a3ceaafd7dba2abb0458565f%2Fimage.png?alt=media" alt="A woman smiling, wearing a headset and working at a computer."><figcaption></figcaption></figure>

Zoom CX biedt meerdere implementatieopties voor de agent-desktop om te voldoen aan uw Zakelijke vereisten voor Zoom contactcenter. Veelvoorkomende contactcenterfuncties, zoals Scherm-pop-ups en bellen-logboeken, zijn Beschikbaar voor alle implementatieopties.

Of u nu een eenvoudige Integratie(s) met uw CRM nodig hebt, een aangepaste webapplicatie ingebed in de agent-desktop, of geavanceerde op Evenement-gestuurde Integratie(s) gebaseerde oplossingen met behulp van Flow Evenementen of API-webhooks, Zoom CX biedt de flexibiliteit om aan uw behoeften te voldoen.

Door uw specifieke vereisten te begrijpen en de juiste tools en Integratie(s) te benutten, kunt u een naadloze en efficiënte contactcenterervaring creëren voor uw agenten en Klanten.

## Integratie(s) voorbeelden

Een veelvoorkomende vraag die onze Klanten stellen is, "*Kan Zoom contactcenter integreren met mijn \[voeg hier systeem in]?*" Het antwoord is meestal niet een eenvoudig ja of nee.

Hier zijn enkele Integratie(s)-voorbeelden voor klanten:

* Ik wil dat mijn menselijke agent in een andere applicatie leeft
* Ik wil dat mijn menselijke agenten Schermpop-ups en klik-om-te-bellenmogelijkheden met mijn CRM hebben
* Ik wil dat mijn spraak-IVR een database-opvraag in mijn systeem uitvoert en zelfbedieningsinformatie levert
* Ik moet creditcardbetalingen afhandelen en integreren met mijn banksysteem
* Ik wil dat mijn AI-chatbot specifieke details over mijn bedrijf begrijpt
* Wanneer een agent met een klant praat, wil ik dat het contactcentersysteem automatisch contextuele informatie weergeeft om de agent te helpen

Elk van deze voorbeelden vereist een andere aanpak voor Integratie(s). Het is cruciaal om de zakelijke vereisten te begrijpen om vragen te beantwoorden en het juiste contactcenter voor uw bedrijf te ontwerpen. Welke Functie(s) zijn vereist voor uw Integratie(s)?

Zoom CX biedt vier implementatieopties voor de agentdesktop: Zoom Workplace app, Progressive Web app (PWA), CRM CTI-connectors en ZCC Smart Embed Integratie(s).

## Ondersteunde functies

De onderstaande tabel vermeldt de kanaalondersteuning voor elke implementatieoptie.

| Implementatieopties                   | Ondersteunde Besturingssysteem(en) | Ondersteunde ZCC-kanaal(en)                                                                                                | AI Companion                 | AI Expert Assistent                                                          |
| ------------------------------------- | ---------------------------------- | -------------------------------------------------------------------------------------------------------------------------- | ---------------------------- | ---------------------------------------------------------------------------- |
| Zoom Workplace desktop app            | Windows, Mac                       | <ul><li>Spraak</li><li>Video</li><li>sms</li><li>Web chatbericht</li><li>Sociaal berichtenverkeer</li><li>E-mail</li></ul> | Inbegrepen in alle licenties | Inbegrepen bij licentie van Add-on(s) Elite en AI Expert Assist              |
| CRM CTI-integraties                   | Web                                | <ul><li>Spraak</li><li>Video</li><li>sms</li><li>Web chatbericht</li><li>Sociaal berichtenverkeer</li></ul>                | Op de roadmap                | Op de roadmap. Vereist een licentie voor Elite of AI Expert Assist Add-on(s) |
| Zoom contactcenter Smart Embed (CCSE) | Web                                | <ul><li>Spraak</li><li>Video</li><li>Web chatbericht</li></ul>                                                             | Niet beschikbaar             | Niet beschikbaar                                                             |

## Zoom Workplace app

Ons Standaard Agent-bureaublad is de standaard interface die is ingebouwd in de Zoom Workplace app, dezelfde applicatie die u gewend bent te gebruiken om deel te nemen aan Zoom Meetings of Zoom Phone-oproepen te plaatsen. Agents met de Zoom contactcenter-licentie hebben toegang tot het contactcenter-Tabblad (hieronder weergegeven), waar zij hun Zoom contactcenter-interacties afhandelen.

{% hint style="info" %}
**Opmerking**

Voor meer informatie over het configureren van contactcenterinformatie, zie [Zoom-ondersteuning](https://support.zoom.com/hc/en/article?id=zm_kb\&sysparm_article=KB0058394).
{% endhint %}

<figure><img src="https://media.zoom.com/images/assets/wpapp.png/Zz0wM2E5YWZhNjU0YzYxMWVmYmYzOGVlMmZlM2E4NDQ4Yg==" alt="Contact Center tab in Zoom Workplace application"><figcaption></figcaption></figure>

### **Browser Scherm-pop-ups**

U kunt de [URL openen](https://support.zoom.com/hc/en/article?id=zm_kb\&sysparm_article=KB0058616\&ampDeviceId=178f00fc-724f-4a48-8bc8-2e79500f8f07\&ampSessionId=1745602375311) Functie(s) in de app om een dynamische web-URL samen te stellen op basis van variabele gegevens, die vervolgens opduikt in de systeem Browser op de Computer van de agent. De URL Schermpop kan Standaard variabelen bevatten, zoals het telefoonnummer van de beller, maar kan ook aangepaste gegevens bevatten die door de Flow/IVR zijn verzameld, zoals zaak- of ticketnummers.

<figure><img src="https://media.zoom.com/images/assets/Browser-screen-popup.png/Zz1jMGQ0Y2I0MjU0YzYxMWVmYTdkNzQyMjc2NTZiOWM0Mg==" alt="Custom URL screen pops"><figcaption></figcaption></figure>

### **Zoom Apps**

U kunt het Zoom App Framework gebruiken om webapplicaties te integreren in het agentdesktop van Zoom contactcenter. Zoom Apps worden aan agenten aan de rechterkant van een interactie weergegeven, op basis van de administratieve configuratie voor elke wachtrij. Hiermee kan elke wachtrij bepalen welke Zoom Apps aan de agent worden weergegeven.

Het Zoom App Framework ondersteunt zowel openbare apps, zoals de PCI Pal-app hieronder, als privé-apps. Privé-apps zijn doorgaans gericht op intern gebruik en zijn alleen Beschikbaar voor het Zoom-account waarvoor de app is gemaakt. Als u over de middelen beschikt om uw eigen web-app (HTML, CSS of JavaScript) te bouwen, kunt u deze naadloos integreren in de Zoom Workplace-app.

<figure><img src="https://media.zoom.com/images/assets/Zoom+Apps.png/Zz1iNGJhMGExZTU0YzgxMWVmYTEzMTM2ZTI5YjBmM2E2Mw==" alt="Zoom App Framework with PCI Pal"><figcaption></figcaption></figure>

De Zoom Apps JavaScript SDK ondersteunt zowel gebeurtenissen als API's, zodat uw app interactie-updates kan ontvangen en op gegevens kan peilen.

{% hint style="info" %}
Zie voor meer informatie de [Zoom Apps op de Zoom Developer-locatie](https://developers.zoom.us/docs/contact-center/apps/?optimizely_user_id=efe7866fa2ae9ac46f7e6b8bb8e98da9\&ampDeviceId=178f00fc-724f-4a48-8bc8-2e79500f8f07\&ampSessionId=1745602375311).
{% endhint %}

## Progressieve webapp (PWA)

De webclient is Beschikbaar voor Klanten die de voorkeur geven aan het aanmelden van hun agenten bij Zoom contactcenter via een web Browser, zoals Chrome. De Functie(s)-sets zijn vergelijkbaar met die welke Beschikbaar zijn in de Zoom Workplace-app.

{% hint style="info" %}
**Opmerking**

Zie voor meer informatie Over de Progressive Web App de [Zoom-blog](https://www.zoom.com/en/blog/how-to-use-zoom-on-a-chromebook/).
{% endhint %}

<div data-full-width="false"><figure><img src="https://media.zoom.com/images/assets/Progressive+Web+App/Zz1iY2E0YmJhZTU0ZDAxMWVmYWZiMzdlNGQxM2VlNzY4ZA==" alt="Browser-based Zoom Contact Center"><figcaption></figcaption></figure></div>

## CRM CTI-connectoren

Als je er de voorkeur aan geeft dat je agents ingebed binnen je CRM werken, kun je de ZCC CRM CTI-connectors gebruiken, die de volgende CRM's ondersteunen:

* Salesforce
* Zendesk
* ServiceNow
* HubSpot
* Microsoft Dynamics 365

Als je een van deze Integratie(s) gebruikt, handelen agents interacties af binnen het CRM met behulp van de ingebedde Zoom contactcenter-Integratie(s). De Schermpop en functies voor bellenregistratie zijn standaard inbegrepen.

{% hint style="info" %}
**Opmerking**

Voor meer informatie Over CRM CTI-connectors, zie [Zoom-ondersteuning](https://support.zoom.com/hc/en/article?id=zm_kb\&sysparm_article=KB0078354).
{% endhint %}

<figure><img src="https://media.zoom.com/images/assets/CRM-Int.png/Zz04YzczZTEzNDU0ZDExMWVmYjk1MmEyZTlmMWU2MmE2YQ==" alt="Zoom Contact Center within SalesForce"><figcaption></figcaption></figure>

De Standaardwerking voor de Integratie(s) is om een schermpop weer te geven op basis van de beller-ID (spraak/sms-kanalen) of E-mail (webchatbericht-/videokanalen), maar je kunt Configureer om een schermpop weer te geven op basis van aanvullende gegevens die in de Flow zijn verzameld, zoals een case- of ticketnummer. Laten we naar die configuratie kijken.

{% hint style="info" %}
**Opmerking**

De opties die op het Scherm voor kanaalconfiguratie worden weergegeven, variëren afhankelijk van het CRM en het gebruikte ZCC-kanaal.
{% endhint %}

<figure><img src="https://media.zoom.com/images/assets/voice-channel.png/Zz1kMDVlNjhkODU0ZDExMWVmODg5N2IyNTcwYTNhNmUzYw==" alt="Voice Channel Configuration screen"><figcaption></figcaption></figure>

## Zoom contactcenter Smart Embed (CCSE) Integratie(s)

Zoom CCSE is een flexibele oplossing waarmee ontwikkelaars de Agent snel kunnen insluiten in hun eigen webapplicatie met behulp van HTML iFrame-configuraties. Je webontwikkelteam voegt extra JavaScriptcode toe aan je web-app om de gebeurtenissen voor bellen, rinkelen en verbinding gemaakt te ontvangen, die kunnen worden gebruikt om Schermpop-ups en/of bellenregistratie binnen je webapplicatie te activeren.

<figure><img src="https://media.zoom.com/images/assets/ZCC+Smart+Embed+Integration.png/Zz0xNjkwNjhhNDU0ZDQxMWVmOTRmZjJlODViYTAxOGVmNA==" alt="Phone screen"><figcaption></figcaption></figure>

{% hint style="info" %}
**Opmerking**

Voor meer over Smart Embed, bekijk de [ontwikkelaarsdocumentatie](https://developers.zoom.us/docs/contact-center/smart-embed/?optimizely_user_id=efe7866fa2ae9ac46f7e6b8bb8e98da9\&ampDeviceId=178f00fc-724f-4a48-8bc8-2e79500f8f07\&ampSessionId=1745602375311).
{% endhint %}

## Partner Oplossingen

Als u op zoek bent naar een agentoplossing die hierboven niet wordt behandeld, zijn aanvullende Integratie(s) beschikbaar en worden deze geleverd door Zoom Innovative Oplossingen Vendor (ISV)-Partners. Het ISV-partnerprogramma omvat Oplossingen voor bankieren, kredietverenigingen, verzekeringen, Gezondheidszorg en meer.

{% hint style="info" %}
**Opmerking**

Zie voor meer informatie [Zoom ISV Partners voor contactcenter](https://partner.zoom.us/solutions/?filter-types=ISV\&filter-products=Contact+Center).
{% endhint %}

Meer geavanceerde Integratie(s) voor het agentdesktop kunnen gebruikmaken van Zoom CX Flow-evenementen of Zoom App Marketplace API-evenementen (webhooks/WebSockets). Met deze opties zal het Zoom CX Platform HTTPS-verzoeken verzenden naar externe API-eindpunten op basis van Zoom contactcenter-evenementen.

Afhankelijk van uw Integratie(s)-vereisten kunt u ervoor kiezen om Flow-evenementen, API-evenementen of beide te gebruiken.

U kunt een Integratie(s) ontwerpen om een Schermpop-up te tonen of oproepen te loggen bij ontvangst van deze Evenementen. Zowel de Flow Evenementen als de Zoom App Marketplace-evenementen zijn Beschikbaar voor alle bovenstaande agentimplementatieopties.

| Type Evenement                                                           | Ondersteunde interacties | Payloadtype     |
| ------------------------------------------------------------------------ | ------------------------ | --------------- |
| [ZCX Flow Evenement-scripts](#flow-event-script)                         | Alleen Inkomend          | Aangepaste JSON |
| [Zoom App Marketplace API-evenementen](#zoom-app-marketplace-api-events) | Inkomend en Uitgaand     | Vaste JSON      |

Flow Evenement-scripts worden geactiveerd wanneer specifieke acties plaatsvinden binnen Zoom contactcenter. Wanneer dat evenement wordt geactiveerd, wordt de bijbehorende code van het evenementscript uitgevoerd binnen de context van de interactie, wat betekent dat het script toegang heeft tot de variabelen van de interactie.

## Flow Evenement-scripts

Laten we eens kijken naar twee veelvoorkomende Flow Evenement-scripts.

| Evenementnaam                                                     | Evenement-trigger                                                      |
| ----------------------------------------------------------------- | ---------------------------------------------------------------------- |
| [Engagement geaccepteerd](#engagement-accepted-event-script-code) | Wanneer een agent het bellen aanneemt.                                 |
| [Beschikking opgeslagen](#disposition-saved-event-script-code)    | De agent heeft een beschikking opgeslagen en de engagement afgesloten. |

{% hint style="info" %}
**Opmerking**

Een volledige lijst van evenement-scripts is Beschikbaar in de [ondersteuningsartikel](https://support.zoom.com/hc/en/article?id=zm_kb\&sysparm_article=KB0059146\&ampDeviceId=178f00fc-724f-4a48-8bc8-2e79500f8f07\&ampSessionId=1745602375311).
{% endhint %}

Laten we een voorbeeld bekijken van hoe u de bovenstaande evenementen zou kunnen gebruiken om HTTP-verzoeken naar een extern systeem te verzenden. Wanneer het externe systeem deze evenementen ontvangt, kunnen de gegevens worden gebruikt voor logging, Scherm-pop-ups of andere gebruiksscenario's. De exacte mogelijkheden die worden geboden, worden bepaald door de mogelijkheden van het externe systeem.

### **Voorbeeldconfiguratie**

In de Flow beginnen we met het configureren van de evenement-scripts op de Start-widget. In de onderstaande afbeelding ziet u dat de Start-widget de twee evenement-scripts geconfigureerd heeft.

<figure><img src="https://media.zoom.com/images/assets/agent-manage/Zz1hN2QxZDBjMDU1NzcxMWVmYmIyYmUyNzgyODUwNDI1OQ==" alt="Event Script Flow example"><figcaption></figcaption></figure>

Om de code voor het evenement-script te maken, Toevoegen een nieuw evenement-script aan de Start-widget en schrijf vervolgens de code rechtstreeks in de flow-editor, zoals hieronder weergegeven.

<figure><img src="https://media.zoom.com/images/assets/asset-management.png/Zz1hN2JhYzVlYzU1NzcxMWVmYjE3ZTM2ZTI5YjBmM2E2Mw==" alt="Code sample in Flow editor"><figcaption></figcaption></figure>

Zowel het evenement Engagement Accepted als het evenement Beschikking Saved gebruiken vergelijkbare code. Het zijn allebei JavaScript-codeblokken die de ingebouwde HTTP-functie gebruiken om een Uitgaand HTTPS POST-verzoek te genereren.

### Scriptcode voor het evenement Engagement Accepted

In dit codevoorbeeld nemen we de engagement-ID, het telefoonnummer van de beller, de E-mail van de agent en de naam van de wachtrij op. De code wordt uitgevoerd wanneer de agent het engagement beantwoordt en begint te praten met de consument.

Dit is een voorbeeld van wat waarschijnlijk de minimale hoeveelheid informatie is die nodig is om een Scherm-pop-up te genereren of om te beginnen met het loggen van het nieuwe bellen. Het is vermeldenswaard dat als uw ZCC Flow-configuratie gegevens over de beller verzamelt in de Flow/IVR, het net zo eenvoudig is om extra variabelen toe te voegen aan de `request_body` variabele om aanvullende gegevens in dit HTTP-verzoek op te nemen.

{% code overflow="wrap" %}

```javascript
async function main() {
    try {
        let request_body = {
            engagementId: var_get()["global_system.Engagement.engagementId"],
            caller_number: var_get()["global_system.Engagement.ANI"],
            agent_E-mail: var_get()["global_system.Agent.E-mail"],
            queue_name: var_get()["global_system.Engagement.queue"]
        };

        const result = await req.post('https://api.example.com/acceptedbellen', request_body);
        let jsonResponseBody = result.data;

        log.debug("Axios jsonResponseBody=" + JSON.stringify(jsonResponseBody));
    } catch (error) {
        log.debug("Ontvangen HTTP-fout " + error);
    }
}
```

{% endcode %}

### Scriptcode voor het Beschikking-opgeslagen Evenement

Voor het Beschikking-opgeslagen Evenement gebruiken we opnieuw de code uit het vorige voorbeeld, met toevoeging van de `beschikking` variabele. Deze code wordt uitgevoerd wanneer de agent de beschikking voor het bellen selecteert, wat gebeurt als de laatste actie die door de agent in de engagement wordt uitgevoerd. Door deze aanvraag te verzenden, kan het externe systeem bijhouden dat de agent de beschikking van de engagement heeft voltooid.

Net als het Engagement Accepted Evenement kunnen extra variabelen worden opgenomen, afhankelijk van uw use case.

{% code overflow="wrap" %}

```javascript
async function main() {
    try {
        let request_body = {
            engagementId: var_get()["global_system.Engagement.engagementId"],
            caller_number: var_get()["global_system.Engagement.ANI"],
            agent_E-mail: var_get()["global_system.Agent.E-mail"],
            queue_name: var_get()["global_system.Engagement.queue"],
            beschikking_name: var_get()["global_system.Engagement.beschikking"]
        };

        const result = await req.post('https://api.example.com/beschikkingbellen', request_body);
        let jsonResponseBody = result.data;

        log.debug("Axios jsonResponseBody=" + JSON.stringify(jsonResponseBody));
    } catch (error) {
        log.debug("Ontvangen HTTP-fout " + error);
    }
}
```

{% endcode %}

Afhankelijk van uw oplossing kunt u merken dat de Flow-evenementscripts voldoende zijn, of dat u enkele van de Zoom App Marketplace API-Evenementen nodig hebt om alle vereiste use cases van uw Integratie(s) te dekken.

Bijvoorbeeld kunt u de twee bovenstaande flow-evenementen aanvullen door u te abonneren op Zoom App Marketplace API-Evenementen voor In de wacht-, hervatten-, Dempen- en Dempen opheffen-evenementen. Deze aanvullende Evenementen zouden uw applicatie inzicht geven in de frequentie waarmee agents bellen In de wacht zetten of Dempen.

Zowel de bovenstaande flow-evenementscripts als de webhook/WebSocket-Evenementen van Zoom App Marketplace zijn Beschikbaar voor uw oplossing.

## Zoom App Marketplace API-Evenementen

Net als andere Zoom-producten zijn API-webhook/WebSocket-Evenementen van Zoom CX Beschikbaar binnen de Zoom App Marketplace.

Evenementen zijn Beschikbaar om agentactiviteiten te volgen, zoals inloggen/uitloggen, queue opt in/out en status Wijzigen-evenementen. Engagement-evenementen kunnen engagements door het systeem volgen, inclusief Evenementen zoals engagement gestart, engagement beantwoord, engagement gedempt/dempen opheffen, DTMF verzonden, overdracht gestart, beëindigd, notitie toegevoegd, beschikking toegevoegd. Door engagement-evenementen te volgen, krijgt u inzicht in gedetailleerde gegevens op engagementniveau.

Zie het [Zoom Developer-locatie](https://developers.zoom.us/docs/api/rest/reference/contact-center/methods/?optimizely_user_id=efe7866fa2ae9ac46f7e6b8bb8e98da9#overview) voor meer informatie over de contactcenter-API's.


---

# 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://library.zoom.com/technical-library/nl/zakelijke-services/zoom-contact-center/expert-insights/zoom-cx-agent-desktop-deployment-options.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
