> 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/sv/business-services/zoom-contact-center/expert-insights/integrate-engagement-data.md).

# Integrera engagemangsdata

### Översikt

Zoom kontaktcenter genererar värdefull engagemangsdata under varje kundinteraktion, inklusive samtalsinspelningar, avskrifter, agentanteckningar och dispositioner. Fortsätt läsa för att lära dig hur du lagrar engagemangsdata i externa system (till exempel CRM och andra källsystem) för att skapa en enhetlig kundvy, aktivera effektiv agentcoachning eller uppfylla efterlevnadskrav när du använder Zoom kontaktcenter.

Vi går igenom de olika integreringsmetoderna för att hjälpa dig välja det bästa tillvägagångssättet utifrån hur dina agenter kan arbeta mer effektivt.

Den bästa metoden beror främst på en nyckelfaktor: **applikationen där agenterna hanterar sina interaktioner**. De två alternativen vi ska diskutera är:

1. Agenter som använder det färdiga ZCC CRM CTI-anslutningsprogrammet i CRM:et.
2. Agenter som arbetar i Zoom Workplace appen, vilket kräver en anpassad lösning med ZCC API:er och webhooks.

***

### Integrering av det färdiga CRM CTI-anslutningsprogrammet

Detta är den mest okomplicerade metoden. Om dina agenter använder ett ZCC CRM CTI-anslutningsprogram kan de flesta engagemangsdata synkroniseras automatiskt mellan Zoom-plattformen och lämpligt CRM.

#### <mark style="color:blå;">Så fungerar det</mark>

CTI-anslutningsprogrammet bäddar in ZCC-agentgränssnittet direkt i CRM:et. När en interaktion avslutas sparas data som inspelningar, avskrifter, anteckningar och dispositioner automatiskt i Zoom och länkas till den relevanta posten (till exempel ett ärende eller en kontakt) i ditt CRM.

#### <mark style="color:blå;">Konfigurationskrav</mark>

Funktionalitet som möjliggör synkronisering av data mellan Zoom och CRM finns som standard, men kräver aktivering i ZCC adminportal.

Slutför följande steg:

{% stepper %}
{% step %}
**Aktivera i ZCC adminportal**

Logga in på Zoom adminportal som administratör och navigera till Kontaktcenterhantering > Integreringar > Applikationer.

Hitta den relevanta CRM-integreringen och aktivera lämpliga inställningar för att tillåta lagring av data i ditt CRM.
{% endstep %}

{% step %}
**CRM-behörigheter**

Granska och följ [guider för CRM-integreringar](https://support.zoom.com/) för att verifiera att användaren för din CRM-integrering har nödvändiga skrivbehörigheter för alla relevanta objekt.
{% endstep %}
{% endstepper %}

#### <mark style="color:blå;">Stödda CRM-plattformar</mark>

Den här funktionen är tillgänglig via ZCC CRM CTI-anslutningsprogrammet när agenter använder följande CRM-system:

* Salesforce
* Zendesk
* ServiceNow
* Microsoft Dynamics
* HubSpot

Med CRM CTI-anslutningsprogrammen krävs ingen särskild konfiguration, och integreringen sparar engagemangsdata i CRM:et som standard.

***

### Anpassad integrering via API:er

Om dina agenter använder den inbyggda Zoom Workplace appen eller ZCC Smart Embed behöver du en anpassad lösning för att överföra engagemangsdata. Det primära sättet att göra detta är med Zoom kontaktcenter API:er.

Det finns två huvudmetoder för att komma åt engagemangsdata via API:et:

* **Omröstning:** Fråga regelbundet Zoom API:et för att se om ny engagemangsdata är tillgänglig.
* **Webhooks:** Ta emot en avisering i realtid från Zoom så snart en avskrift är klar.

Det finns också ett tredje tillvägagångssätt, **Flow Events-integrering**som fungerar för vissa datatyper.

#### <mark style="color:blå;">Omröstning av Zoom kontaktcenter-API:erna</mark>

För att ladda ner engagemangsdata måste du fråga de lämpliga ZCC API-ändpunkterna. Det är viktigt att notera att olika typer av data kommer från olika API:er, så du behöver sannolikt bygga avfrågningslogik för varje relevant ändpunkt.

Många engagemangsrelaterade API:er i Reports V2 (CX analyser) stöder nu filtrering efter sluttid med `end_time_from` och `end_time_to`. Föredra dessa parametrar när de är tillgängliga så att dina avfrågningsjobb hämtar interaktioner baserat på när de faktiskt har avslutats. Detta hjälper till att minska missade poster eftersom all engagemangsdata (inklusive data i rapport V2) finaliseras när interaktionen avslutas.

| Så här får du denna data...                                 | Omröstning för detta API...                                                                                                                                                                                                                                                                                                                                            | Användning av detta fält... | Anteckningar:                                                     |
| ----------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------- | ----------------------------------------------------------------- |
| <p>Mediafil för inspelning</p><p>(Röst- och videokanal)</p> | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/get/contact_center/recordings">Lista inspelningar</a> eller</p><p>Lista engagemangsinspelningar</p>                                                                                                                                                                                     | `download_url`              | Kräver att samtalsinspelning är aktiverad för kön.                |
| <p>Avskrift av inspelning</p><p>(Röst- och videokanal)</p>  | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/recordings/GET/contact_center/recordings">Lista inspelningar</a> eller</p><p>Lista engagemangsinspelningar</p>                                                                                                                                                                                     | `avskrift_url`              | Kräver att samtalsinspelning med transkription är aktiverad.      |
| <p>Avskrift</p><p>(Meddelandekanal)</p>                     | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Hämta ett engagemang</a> eller</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lista historiska data för engagemangslogg</a></p> | `avskrift_url`              | Avskrift är aktiverad som standard för meddelandekanaler.         |
| <p>Dispositioner</p><p>(Alla kanaler)</p>                   | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Hämta ett engagemang</a> eller</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lista historiska data för engagemangslogg</a></p> | `dispositioner`             | En array med dispositionsobjekt.                                  |
| <p>Anteckningar</p><p>(Alla kanaler)</p>                    | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/engagements/get/contact_center/engagements/{engagementId}">Hämta ett engagemang</a> eller</p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/reports-v2-cx-analytics/get/contact_center/analytics/log/historical/engagement">Lista historiska data för engagemangslogg</a></p> | `anteckningar`              | En array med anteckningsobjekt.                                   |
| <p>Mediefil för röstbrevlåda</p><p><br><br></p>             | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Lista ett kontos inkorgsmeddelanden</a> <strong>eller</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Lista en inkorgs meddelanden</a></p>                     | `download_url`              | För röstbrevlådemeddelanden som lämnats i en kontaktcenterinkorg. |
| Avskrift av röstbrevlåda                                    | <p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/messages">Lista ett kontos inkorgsmeddelanden</a> <strong>eller</strong></p><p><a href="https://developers.zoom.us/docs/api/contact-center/#tag/inboxes/GET/contact_center/inboxes/{inboxId}/messages">Lista en inkorgs meddelanden</a></p>                     | `avskrift_url`              | Kräver att transkription är aktiverad för inkorgen.               |

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

Nedladdnings-URL:erna (`download_url`, `avskrift_url`, `playback_url`, och så vidare) som tillhandahålls av dessa Zoom API:er är **inte** offentliga länkar. De är avsedda för programmatisk åtkomst och kräver API-autentisering (till exempel en åtkomsttoken i Authorization-rubriken) för att ladda ned den associerade filen.

Detta innebär:

* Du kan inte spara dessa URL:er direkt i ett CRM för att en användare ska klicka på dem. En användare som klickar på länken i sin webbläsare kommer inte att vara autentiserad, och nedladdningen kommer att misslyckas.
* Det korrekta sättet är att din backendtjänst använder URL:en för att hämta filen. Din tjänst kan sedan lagra filen i ditt eget system (till exempel Amazon S3, Azure Blob Storage eller CRM-systemets fillagring) och tillhandahålla en säker länk till dina användare därifrån.
  {% endhint %}

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

**Fördröjningar i bearbetningen - röst- och videoinspelningar:**

Den här informationen är inte tillgänglig i samma ögonblick som ett samtal avslutas. Ljudet måste först bearbetas och laddas upp, vilket kan ta flera minuter för långa samtal. För att säkerställa att du inte missar inspelningar, ställ in `query_date_type` parametern till `recording_end_time` när du anropar List recordings API. Detta hämtar data baserat på när bearbetningen slutfördes, inte när samtalet avslutades.

För avstämningsjobb med fokus på engagemang i Reports V2 (CX-analyser), använd överlappande tidsfönster med `end_time_from` och `end_time_to` för att ge en säkerhetsmarginal för fördröjd bearbetning och tillfälliga leveransproblem.
{% endhint %}

För mer information om Zoom kontaktcenter-API:er, se [Kontaktcenter-API:er](https://developers.zoom.us/docs/api/contact-center/) dokumentation.

#### <mark style="color:blå;">Använd webhooks för evenemang i realtid</mark>

För ett mer omedelbart, händelsestyrt tillvägagångssätt kan du prenumerera på ZCC-webhookar. Detta är den mest effektiva metoden för integreringar i nästan realtid.

**Så fungerar det**

1. Prenumerera på de lämpliga evenemangen i Zoom App Marketplace.
2. När ett evenemang inträffar skickar Zoom en avisering till din webhook-URL (eller till din Websocket-anslutning).
3. Evenemangets payload innehåller de data du behöver, antingen direkt eller som en URL/ID för ett uppföljande API-samtal.

**Vanliga webhook-evenemang för engagemangsdata**

* **Data för avslutat engagemang är redo:** kontakt\_center.cx\_engagement\_end\_data\_ready (signalerar att data för rapporten om avslutat engagemang v2 är redo att hämtas)
* **Röst-/videoinspelning:** kontakt\_center.recording\_completed (tillhandahåller en `download_url`)
* **Röst-/videoavskrift:** kontakt\_center.recording\_avskrift\_completed (tillhandahåller en `avskrift_url`)
* **Avskrift av meddelanden:** kontakt\_center.engagement\_meddelanden\_avskrift\_completed (tillhandahåller en `avskrift_url`)
* **Anteckningar:** kontakt\_center.engagement\_note\_added (tillhandahåller en `anteckning` fält med anteckningsdata)
* **Disposition:** kontakt\_center.engagement\_disposition\_added (tillhandahåller en `disposition_name` fält med dispositiondata)

**Rekommenderat mönster: Utlös hämtning när engagemangsdata är redo**

När du tar emot `kontakt_center.cx_engagement_end_data_ready`, behandla det som din signal om att data för rapporten för engagemangsavslut V2 är komplett för det engagemanget. Vid den tidpunkten, gör ett samtal till Historical Engagement log data API och alla andra relevanta API:er för att samla in den slutliga datamängden. I detta evenemang, använd `engagement_id` som din söknyckel och hämta sedan de fullständiga artefakterna för engagemanget från dina nödvändiga slutpunkter.

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

* **Var medveten om flera evenemang:** Den `anteckning_tillagd` och `disposition_tillagd` Evenemang kan utlösas flera gånger för ett enda engagemang (till exempel om en agent sparar flera anteckningar eller om ett samtal vidarekopplas). Din applikationslogik måste kunna hantera detta.
* **Bygg in redundans:** Leverans av evenemang är inte alltid garanterad till 100 % (till exempel kan din ändpunkt eller websocket-anslutning vara tillfälligt nere).
* **Reservstrategi:** Vi rekommenderar att du kör ett avstämningsskript med hjälp av polling-API:er med `end_time_from` och `end_time_to` fönster för att fånga upp missade evenemang och täppa till datagap.
  {% endhint %}

För mer information om Zoom kontaktcenter-webhook/websocket-evenemang, se [Kontaktcenter-webhooks](https://developers.zoom.us/docs/api/contact-center/events/) dokumentation.

#### <mark style="color:blå;">Flow-evenemang integreringar</mark>

För vissa datatyper kan du skicka data direkt till ett externt system från ZCC Flow-redigeraren med hjälp av ett JavaScript-evenemangsskript.

**Data som stöds och begränsningar:**

* **Disposition:** Kan nås på alla inkommande typer av engagemangskanal med hjälp av `global_system.Engagement.disposition` variabeln.
* **Avskrift:** Endast tillgänglig för inkommande meddelanden-engagemang (till exempel Web chatt) med hjälp av `global_system.Engagement.avskrift` variabeln.
* **Flera flöden:** När du arbetar med flera flöden i din konfiguration, särskilt när ett flöde använder `RouteTo` widgeten för att ansluta till ett annat flöde är det viktigt att se till att identiska evenemangsmanus och utlösare är korrekt konfigurerade i alla flöden.

Denna metod är mest kraftfull i ett meddelandeflöde, där du kan kombinera både avskriften och disposition i ett enda evenemang.

**Konfigurationssteg**

Följ dessa steg för att konfigurera ditt flöde:

{% stepper %}
{% step %}
**Lägg till ett evenemangsmanus**

I ditt ZCC Flow (till exempel ett webbchattflöde), klicka på Start-widgeten.

Hitta evenemangsmanus och lägg till ett evenemangsmanus för evenemang, till exempel Engagement Closed och/eller Disposition Saved.

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

{% step %}
**Lägg till din anpassade JavaScript-kod**

Exemplet nedan hämtar både disposition och avskrift, och skickar dem sedan tillsammans till ett externt API.

```javascript
async function main () { 
  try {
    // Hämta disposition-objektet från dess variabel
    const disposition_data = var_get()['global_system.Engagement.disposition'];
    
    // Hämta hela avskrift-objektet
    const avskrift_data = await req.get(var_get()['global_system.Engagement.avskrift']);

    // Förbered en nyttolast med all data du vill skicka
    const payload_to_send = {
      disposition: disposition_data.data.result,
      avskrift: avskrift_data.data.result.avskrift
    };

    // Definiera ändpunkten för dina data
    const external_api_url = '<ersätt-med-din-api-ändpunkt>';
    
    // Skicka den kombinerade datan till ditt externa system
  	const response = await req.post(external_api_url, payload_to_send);
    
    // Logga svaret från det externa systemet för felsökning
    log.debug("Svar från externt API: " + JSON.stringify(response.data));
    
  } catch (error) {
    log.debug("Ett fel inträffade i evenemangsmanuset för avskrift: " + error);
  }
}
```

{% endstep %}
{% endstepper %}

***

### Sammanfattning och rekommendationer

Välj den metod för integreringar som bäst passar ditt agents arbetsflöde och dina tekniska resurser.

| Om dina agenter använder...                                   | Då är ditt bästa alternativ...                                 | Viktiga överväganden:                                                                                                                                                                                                                                                                     |
| ------------------------------------------------------------- | -------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ZCC CTI-anslutningsprogrammet i ett CRM som stöds             | Den inbyggda funktionen för integreringar                      | <ul><li>Enklaste vägen</li><li>Ingen kod krävs</li><li>Den inbyggda funktionen för att synkronisera engagemangsdata</li></ul>                                                                                                                                                             |
| Zoom Workplace-appen eller Smart Embed                        | API-webhooks plus avstämning med filtrerad polling vid sluttid | <ul><li>Använd <code>kontakt\_center.cx\_engagement\_end\_data\_ready</code> som din utlösare för hämtning</li><li>Sedan stäm av med <code>end\_time\_from</code>/<code>end\_time\_to</code> fönster</li><li>Förbättrar effektiviteten samtidigt som missade engagemang minskar</li></ul> |
| Ett inkommande meddelandeflöde (och behov av att skicka data) | Flödets evenemangsmanus                                        | <ul><li>Nischat, men kraftfullt</li><li>Kräver JavaScript</li><li>Fungerar bäst för att skicka transkript för meddelanden och dispositioner</li></ul>                                                                                                                                     |

Genom att förstå dessa olika vägar kan du bygga robusta och tillförlitliga integreringar som ger dig en komplett bild av dina kundinteraktioner. Att kombinera evenemangsutlöst hämtning med avstämning filtrerad efter sluttid hjälper dig att minska onödiga API-anrop samtidigt som du förbättrar fullständigheten.


---

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

```
GET https://library.zoom.com/technical-library/sv/business-services/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.
