Integruokite "Twilio Flex" su Dynamics 365 Pokalbių analizė (peržiūros versija)
[Šis straipsnis yra negalutinio leidimo dokumentacija ir gali keistis.]
Ši integracija leidžia jūsų pardavėjams skambinti ir priimti "Twilio Flex" skambučius iš Dynamics 365 ir gauti transkripcijas realiuoju laiku skambučio metu ir dirbtinio intelekto sugeneruotus Skambučių įžvalgos po skambučio.
Svarbu
- Tai yra peržiūros versijos funkcija.
- Peržiūros versijos funkcijos nėra skirtos naudoti gamybai ir gali būti apribotas jų funkcionalumas. Šioms funkcijoms taikomos papildomos naudojimo sąlygos ir jos pasiekiamos prieš oficialų išleidimą, kad klientai galėtų gauti išankstinę prieigą ir pateikti atsiliepimų.
Būtinosios sąlygos
"Twilio" paskyra
"Twilio Flex" paskyra – daugiau informacijos apie tai, kaip susikurti "Flex" paskyrą, rasite čia susieti
" Microsoft Dynamics 365 Sales" aplinka su "Sales Premium" arba "Sales Enterprise" licencija ir sistemos administratoriaus teisėmis
Pokalbių analizė įdiegti ir nustatyti – Sužinoti daugiau, sužinok daugiau
Įdiegta „Dynamics 365“ kanalų integravimo sistema 1.0. Sužinoti daugiau, sužinok daugiau
Nustatyta vietinė mazgo JS aplinka
"Create-flex-plugin " programa
1 veiksmas: sukonfigūruokite "Twilio Flex" kaip kanalo teikėją
Tiesą „Dynamics 365“ kanalų integravimo sistema, sukurkite "Twilio Flex" kanalo teikėją. Žiūrėkite toliau pateiktą ekrano kopiją kaip pavyzdį:
Įveskite šias reikšmes::
Kanalo URL:https://flex.twilio.com/agent-desktop
Įgalinti siunčiamą ryšį: Taip
API versija: 1.0
Kanalo tvarka: 1
Patikimas domenas:https://flex.twilio.com/
Pasirinkite vieningoji sąsaja kanalo programos: Pardavimo telkinys (arba bet kurią kitą programą, kurios integravimą norėtumėte įgalinti)
Pasirinkite kanalo saugos vaidmenis: Pridėkite vaidmenis, kurie būtų naudojami naudojant "Twilio Flex". Pavyzdžiui, pardavėjas, pardavimų vadybininkas ir taip on.To įdeda "Twilio Flex" kaip "iframe" Dynamics 365, įtraukite Dynamics 365 organizacijos URL į leidžiamų URL sąrašą. Daugiau informacijos rasite šiame straipsnyje.
2 veiksmas: įdiekite SIPREC jungtį ir nukreipkite skambučius į Dynamics 365
Įdiekite SIPREC jungties priedą.
Atidarykite "Twilio" administravimo centro nustatymus ir sukonfigūruokite jį taip, kad laikmena būtų perjungiama į įrašymo įrenginį Dynamics 365 kaip parodyta šioje ekrano kopijoje:
Svarbu atkreipti dėmesį į šiuos laukus:
Unikalus pavadinimas: nurodykite pavadinimą ir užsirašykite jį. Turėsite jį naudoti atlikdami kitus veiksmus
Seanso įrašymo serveris: Nurodykite Dynamics 365 medijos įrašymo serverio URL. Palaikomų įrašymo priemonių ir regionų sąrašą rasite Įrašymo priemonės galiniai punktai ir regionai, kuriuos palaiko.
Jei norite perkelti laikmeną į artimiausią įrašymo įrenginį, naudokite šį URL: sip:SRS@media.recording.dynamics.com:5061; secure=true
Kredencialų laukai gali likti tušti. Autentifikavimas atliekamas naudojant TLS sąrankos tarp "Twilio" ir "Dynamics" sertifikatą.
3 veiksmas: sukonfigūruokite skambučių srautą, kad medija būtų Dynamics 365
Eikite į konsolės skyrių "Studio Flows" ir pasirinkite "Voice IVR flow".
Dešinėje pusėje, grafinės sąsajos elementas bibliotekos skiltyje Balsas , pridėkite Šakių srautą grafinės sąsajos elementas:
Dabar sukonfigūruokite grafinės sąsajos elementas srautą šakute naudodami anksčiau apibrėžtą SIPREC jungtį:
Įveskite toliau nurodytas reikšmes:
- Srauto veiksmas: Pradžia
- Srauto tipas: Siprec
- Jungties pavadinimas: pavadinimas, kurį suteikėte SIPREC jungčiai. Mūsų pavyzdyje tai yra SipRec1.
- Takeliai: Abu takeliai
-
Srauto parametrai:
Vaidmuo: gaunamas (mūsų pavyzdyje įrašysime gaunamus skambučius)
CallerDisplayName: {{trigger.call.From}}
CalleeDisplayName: {{trigger.call.To}}
Skirtuke Perėjimai sukonfigūruokite, kad Šakutės srautas būtų prieš siunčiant skambutį agentui:
Įrašykite srautą ir publikuokite.
4 veiksmas: sukonfigūruokite "Twilio" telefono numerį
Turite nukreipti "Twilio" telefono numerį į naujai sukurtą "Studio Flow".
Pasirinkite jums priklausantį numerį arba įsigykite naują numerį iš "Twilio" telefono numerių konsolės.
Atidarykite telefono numerį jį pasirinkdami, tada slinkite žemyn iki puslapio skilties Balsas .
Pasirinkite srautą, kurį anksčiau apibrėžėte laukuose Skambutis , kaip parodyta toliau pateiktoje ekrano kopijoje:
5 veiksmas: sukonfigūruokite integravimo Dynamics 365
Nustatykime "Twilio" kaip skambučių teikėją ir sukonfigūruokime įrašymo strategiją, kad apibrėžtume, kas gali įrašyti skambučius, ir kitą informaciją, naudojamą pokalbių įžvalgoms.
Programoje Pardavimo telkinys eikite į sritį Keisti ir pasirinkite Pardavimo įžvalgų parametrai.
Pasirinkite Pokalbių analizė.
Pasirinkite "Twilio " skiltyje Skambučių teikėjai ir nurodykite "Twilio" paskyros SID.
Įrašykite pakeitimus.
Konfigūruokite įrašymo strategiją naudodami "Twilio" skambučių teikėją.
Pasirinkite Kurti įrašymo strategiją ir ją konfigūruoti. Sužinokite daugiau.
Pasirinkite Kurti , tada publikuokite parametrus.
6 veiksmas: paruoškite "Flex" papildinį, kad integruotumėte patirtį realiuoju laiku
"Flex" yra "React" projektas, o tinkinimai, kuriuos atliekate vartotojo sąsajoje, sukuriami kaip papildinio komponentai.
Mazgo aplinkos paruošimas ir tuščio "Flex" papildinio nustatymas nepatenka į šios dokumentacijos taikymo sritį. Žiūrėkite "Twilio" dokumentaciją , kad gautumėte nuoseklią mokymo programą, kaip sukurti pirmąjį "Flex" papildinį.
Sukurkite naują papildinį, kuris yra paruoštas pridėti "Dynamics" tinkinimo kodą.
Šiuo metu jūsų papildinio JS failas atrodys taip:
Pridėkite "Microsoft CIF Client" biblioteką prie papildinio. Paleidžiant "Flex", kliento biblioteka turi būti įkelta asinchroniškai, todėl pridėkite šį kodą prie "Flex init" funkcijos.
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);
}
}
Paskelbkite papildinį.
Dabar turime "Flex" papildinį, kuris yra paruoštas mums išbandyti!
7 žingsnis: Išbandykite Dynamics 365 Pokalbių analizė ir "Flex" integraciją
Prisijunkite prie Pardavimo telkinys programos, pasirinkite skambučio piktogramą. Dešinėje srityje pamatysite įterptą "Twilio Flex".
Įsitikinkite, kad nustatėte būseną Galima "Twilio", ir paskambinkite "Twilio" telefono numeriu, kurį nustatėte atlikdami 4 veiksmą: konfigūruokite "Twilio" telefono numerį.
Kai atsiliepsite į skambutį ir pradėsite įrašymą, eikite į skirtuką Nuorašas , kad peržiūrėtumėte transkripciją realiuoju laiku, tada peržiūrėkite Skambučių įžvalgos skambučio suvestinė puslapyje pasibaigus skambučiui.