Integrace Twilio Flex s analytickými nástroji pro konverzace Dynamics 365 (Preview)
[Tento článek představuje předběžnou dokumentaci a může se změnit.]
Tato integrace umožňuje vašim prodejcům uskutečňovat a přijímat hovory Twilio Flex v Dynamics 365 a získávat během hovoru přepisy v reálném čase a po hovoru přehledy generované AI.
Důležité
- Toto je funkce Preview.
- Funkce Preview nejsou určené pro normální používání a mohou mít omezené fungování. Tyto funkce podléhají doplňujícím podmínkám použití a jsou poskytnuty před oficiálním vydáním, aby si je zákazníci mohli co nejdříve vyzkoušet a napsat nám své názory.
Předpoklady
Účet Twilio
Účet Twilio Flex – viz tento odkaz, kde najdete další informace o nastavení účtu Flex
Prostředí Microsoft Dynamics 365 Sales s licencí Sales Premium nebo Sales Enterprise spolu s oprávněními správce systému
Nainstalovaná a nastavená služba Analytické nástroje pro konverzace – Další informace
Nainstalovaná integrační architektura kanálu Dynamics 365 1.0. Další informace
Nastavení místního prostředí Node JS
Aplikace create-flex-plugin
Krok 1: Nakonfigurujte Twilio Flex jako zprostředkovatele kanálu
V integrační architektuře kanálů Dynamics 365 vytvořte zprostředkovatele kanálu pro Twilio Flex. Viz screenshot níže jako příklad:
Zadejte následující hodnoty::
Adresa URL kanálu:https://flex.twilio.com/agent-desktop
Povolit odchozí komunikaci: Ano
Verze rozhraní API: 1.0
Pořadí kanálu: 1
Důvěryhodná doména:https://flex.twilio.com/
Vyberte aplikace sjednoceného rozhraní pro kanál: Centrum prodeje (nebo jakoukoli jinou aplikaci, pro kterou chcete povolit integraci)
Vyberte role zabezpečení pro kanál: Přidejte role, které budou používat Twilio Flex. Například prodejce, vedoucí prodeje apod. Pro vložení účtu Twilio Flex jako prvek iframe do Dynamics 365 přidejte adresu URL organizace Dynamics 365 do seznamu povolených adres URL. Další informace naleznete v tomto článku.
Krok 2: Nainstalujte konektor SIPREC a směrujte hovory do Dynamics 365
Nainstalujte doplněk Konektor SIPREC.
Otevřete nastavení centra pro správu Twilio a nakonfigurujte jej tak, aby se média rozvětvovala do záznamníku Dynamics 365, jak je znázorněno na následujícím screenshotu:
Je důležité všimnout si následujících polí:
Jedinečný název: Zadejte název a poznamenejte si jej. Tento název budete potřebovat v dalších krocích.
Server záznamu relace: Zadejte adresu URL serveru pro záznam médií Dynamics 365. Seznam podporovaných záznamníků a oblastí najdete v části Podporované koncové body a oblasti záznamníku.
Pokud byste chtěli média rozvětvit na nejbližší záznamník, použijte následující URL: sip:SRS@media.recording.dynamics.com:5061;secure=true
Pole pověření mohou zůstat prázdná. Ověření se provádí pomocí certifikátu v nastavení TLS mezi Twilio a Dynamics.
Krok 3: Nakonfigurujte tok hovorů pro rozvětvení médií do Dynamics 365
Přejděte na sekci Studio Flows v konzoli a vyberte tok Voice IVR.
Na pravé straně v sekci Hlas v knihovně pomůcek přidejte pomůcku Fork Stream:
Nyní nakonfigurujte pomůcku pro rozvětvení toku pomocí konektoru SIPREC, který jste definovali dříve:
Zadejte následující hodnoty:
- Akce toku: Start
- Typ toku: Siprec
- Název konektoru: Název, který jste dali konektoru SIPREC. V našem příkladu je to SipRec1.
- Stopy: Obě stopy
-
Parametry toku:
Role: příchozí (v našem příkladu budeme zaznamenávat příchozí hovory)
CallerDisplayName: {{trigger.call.From}}
CalleeDisplayName: {{trigger.call.To}}
Na kartě Přechody nakonfigurujte pomůcku Fork Stream, aby byla před odesláním hovoru agentovi:
Uložte a publikujte tok.
Krok 4: Nakonfigurujte telefonní číslo Twilio
Na nově vytvořenou pomůcku Studio Flow musíte nasměrovat telefonní číslo Twilio.
Vyberte číslo, které vlastníte – nebo si kupte nové číslo – z konzole Twilio Phone Numbers.
Otevřete telefonní číslo jeho výběrem a poté na stránce přejděte dolů na sekci Hlas.
Vyberte tok, který jste definovali dříve v polích Hovor přichází do, jak je znázorněno na následujícím screenshotu:
Krok 5: Nakonfigurujte Dynamics 365 pro integraci
Pojďme nastavit Twilio jako zprostředkovatele hovorů a nakonfigurovat zásady nahrávání, které definují, kdo může nahrávat hovory, a další informace používané pro přehledy konverzací.
V aplikaci Centrum prodeje přejděte do oblasti Změna a vyberte Nastavení Sales Insights.
Vyberte Analytické nástroje pro konverzace.
Vyberte Twilio v sekci Zprostředkovatelé hovorů a zadejte SID účtu Twilio.
Uložte změny.
Nakonfigurujte zásady nahrávání pomocí zprostředkovatele hovorů Twilio.
Vyberte Vytvořit zásadu nahrávání a nakonfigurujte zásadu. Další informace.
Vyberte Vytvořit a poté publikujte nastavení.
Krok 6: Připravte modul plug-in Flex pro integraci prostředí v reálném čase
Flex je projekt společnosti React a úpravy, které provedete v uživatelském rozhraní, jsou vytvořeny jako komponenty modulu plug-in.
Příprava prostředí Node a nastavení prázdného modulu plug-in Flex jsou mimo rozsah této dokumentace. Nahlédněte do dokumentace k řešení Twilio, kde najdete podrobný návod, jak vytvořit svůj první modul plug-in Flex.
Vytvořte nový modul plug-in, který je připraven k přidání kódu s vlastním nastavením Dynamics.
V tomto okamžiku váš soubor JS modulu plug-in vypadá takto:
Přidejte knihovnu Microsoft CIF Client do svého modulu plug-in. Klientská knihovna musí být při spuštění Flex načtena asynchronně, takže do funkce Flex init přidejte následující kód.
import React from 'react';
import \* as Flex from '@twilio/flex-ui';
import { FlexPlugin } from '@twilio/flex-plugin';
import reducers, { namespace } from './states';
const PLUGIN\_NAME = 'SamplePlugin';
export interface CallStartedEvent {
callId: string;
startTime: Date;
isIncomingCall: boolean;
contactNumber: string;
contactName: string;
}
export interface CallEndedEvent {
callId: string;
callDurationInSeconds: number;
callTerminationReason: string; // \['success', 'error'\]
callEndTime: Date;
isCallStarted: boolean;
}
export default class SamplePlugin extends FlexPlugin {
constructor() {
super(PLUGIN\_NAME);
}
/\*\*
\* This code is run when your plugin is being started
\* Use this to modify any UI components or attach to the actions framework
\*
\* @param flex { typeof Flex }
\* @param manager { Flex.Manager }
\*/
async init(flex: typeof Flex, manager: Flex.Manager): Promise<void> {
this.registerReducers(manager);
this.loadCIF();
flex.Actions.addListener('afterAcceptTask', (payload) => {
const callStartedEvent : CallStartedEvent = {
callId: payload.task.\_task.attributes.call\_sid,
startTime: new Date(),
isIncomingCall: true,
contactName: payload.task.\_task.attributes.caller,
contactNumber: payload.task.\_task.attributes.caller
};
// @ts-ignore
Microsoft.CIFramework.raiseEvent('WIDGET\_CALL\_STARTED', callStartedEvent);
});
flex.Actions.addListener('afterCompleteTask', (payload) => {
// @ts-ignore
Microsoft.CIFramework.raiseEvent('WIDGET\_CALL\_ENDED', {
callId: payload.task.\_task.attributes.call\_sid,
callTerminationReason: 'success',
callEndTime: new Date(),
isCallStarted: true
});
const callEndedEvent : CallEndedEvent = {
callId: payload.task.\_task.attributes.call\_sid,
callEndTime: new Date(),
callTerminationReason: 'success',
isCallStarted: true
};
// @ts-ignore
Microsoft.CIFramework.raiseEvent('WIDGET\_CALL\_ENDED', callEndedEvent);
});
const options: Flex.ContentFragmentProps = { sortOrder: -1 };
flex.AgentDesktopView.Panel1.Content.add(<div key="SamplePlugin-component" >Hello Partner!</div>, options);
}
loadCIF = () => {
const script = document.createElement("script");
script.src = \`${window.location.ancestorOrigins\[0\]}/webresources/Widget/msdyn\_ciLibrary.js\`;
script.setAttribute('data-crmurl', window.location.ancestorOrigins\[0\]);
script.setAttribute('data-cifid', 'CIFMainLibrary');
document.body.appendChild(script);
}
/\*\*
\* Registers the plugin reducers
\*
\* @param manager { Flex.Manager }
\*/
private registerReducers(manager: Flex.Manager) {
if (!manager.store.addReducer) {
// eslint-disable-next-line
console.error(\`You need FlexUI > 1.9.0 to use built-in redux; you are currently on ${Flex.VERSION}\`);
return;
}
manager.store.addReducer(namespace, reducers);
}
}
Publikujte modul plug-in.
Nyní máme modul plug-in Flex, který je připraven k testování!
Krok 7: Otestujte integraci analytických nástrojů pro konverzace Dynamics 365 a číselníku Flex
Přihlaste se do aplikace Centrum prodeje, vyberte ikonu Hovor. V pravém podokně uvidíte vložený číselník Twilio Flex.
Ujistěte se, že jste v Twilio nastavili svůj stav jako Dostupný a zavolejte na telefonní číslo Twilio, které jste nastavili v Kroku 4: Nakonfigurujte telefonní číslo Twilio.
Jakmile hovor přijmete a začnete nahrávat, přejděte na kartu Přepis a zobrazte přepis v reálném čase a poté si prohlédněte přehledy hovorů na stránce Souhrn hovorů po skončení hovoru.