Dynamics 365 konuşma yönetim bilgileri ile Twilio Flex çeviricilerini tümleştirme (önizleme)
[Bu makale, yayın öncesi belgelerine dahildir ve değiştirilebilir.]
Bu tümleştirme, Dynamics 365'ten Twilio Flex çağrıları yapıp bunları almasına olanak sağlar ve çağrıdan sonra AI tarafından oluşturulan çağrı ve arama ayrıntıları sırasında gerçek zamanlı bilgileri alabilirler.
Önemli
- Bu, bir önizleme özelliğidir.
- Önizleme özellikleri, üretimde kullanıma yönelik değildir ve sınırlı işlevselliğe sahip olabilir. Bu özellikler, ek kullanım koşullarına tabidir ve müşterilerin önceden erişmesi ve geri bildirim sağlaması amacıyla resmi sürümden önce kullanıma sunulur.
Önkoşullar
Twilio hesabı
Twilio Flex hesabı: Esnek hesap ayarlama hakkında daha fazla bilgi için bu bağlantıya bakın
Sistem yöneticisi ayrıcalıklarıyla birlikte, Sales Premium veya Sales Enterprise lisansına sahip bir Microsoft Dynamics 365 Sales ortamı
Konuşma Yönetim Bilgileri yükleme ve kurulumu - Daha fazla bilgi edinin
Dynamics 365 Kanal Tümleştirme Çerçevesi 1.0 uygulaması kuruldu. Daha fazla bilgi edinin
Yerel Node JS ortamı ayarlandı
create-flex-plugin uygulaması
1. Adım: Twilio Flex'i kanal sağlayıcısı olarak yapılandırma
Dynamics 365 Kanal Tümleştirme Çerçevesi'nde, Twilio Flex için bir kanal sağlayıcısı oluşturun. Örnek olarak aşağıdaki ekran görüntüsüne bakın:
Aşağıdaki değerleri girin::
Kanal URL'si:https://flex.twilio.com/agent-desktop
Giden İletişimi Etkinleştir: Evet
API Sürümü: 1.0
Kanal sırası: 1
Güvenilen Etki Alanı:https://flex.twilio.com/
Kanal için Birleşik Arabirim Uygulamaları seçin: Satış Merkezi (veya tümleştirmenin etkinleştirilmesini istediğiniz başka bir uygulama)
Kanal için güvenlik rollerini seçin: Twilio Flex kullanacak olan rolleri ekleyin. Örneğin, satış temsilcisi, satış yöneticisi ve daha fazlası. Dynamics 365'e bir iFrame olarak Twilio Flex'i eklemek için, Dynamics 365 kuruluş URL'sini İzin Verilen URL'ler listesine ekleyin. Daha fazla bilgi için bu makaleye bakın.
2. Adım: SIPREC bağlayıcısını kurun ve Dynamics 365'e yapılan çağrıları yönlendirin
SIPREC bağlayıcı eklentisini kurun.
Twilio yönetim merkezi ayarlarını açın ve aşağıdaki ekran görüntüsünde gösterildiği gibi medyayı Dynamics 365 kaydedicisinde ayırmaya göre yapılandırın:
Aşağıdaki alanlara dikkat edin:
Benzersiz ad: Ad belirtin ve not alın. Bunu sonraki adımlarda kullanacaksınız
Oturum Kayıt Sunucusu: Dynamics 365 medya kayıt sunucusu URL'sini belirtin. Desteklenen kaydedici ve bölgelerin listesi için bkz. Kaydedici uç noktaları ve bölgeleri.
Medyayı en yakın kaydediciye eklemek istiyorsanız şu URL'yI kullanın: sip:SRS@media.recording.dynamics.com:5061;secure=true
Kimlik bilgileri alanları boş kalabilir. Kimlik doğrulaması, Twilio ve Dynamics arasındaki TLS kurulumunda bulunan sertifikayla yapılır.
3. Adım: Medyayı Dynamics 365'te ayırmak için çağrı akışı yapılandırma
Konsoldaki Stüdyo Akışları bölümüne gidin ve ses IVR akışını seçin.
Sağ tarafta, arabirim öğesi altındaki Ses bölümü kütüphanesinin altına Akışı Ayır arabirim öğesini ekleyin:
Şimdi, daha önce tanımladığınız SIPREC bağlayıcıyı kullanarak akışı ayırmak için arabirim öğesini yapılandırın:
Aşağıdaki değerleri girin:
- Akış Eylemi: Başla
- Akış Türü: Siprec
- Bağlayıcı Adı: SIPREC bağlayıcısına verdiğiniz ad. Bizim örneğimizde, SipRec1.
- İzler: Her iki İzleme
-
Akış parametreleri:
Rol: gelen (Örneğimizde gelen çağrıları kaydedebiliriz)
CallerDisplayName: {{trigger.call.From}}
CalleeDisplayName: {{trigger.call.To}}
Geçişler sekmesinde, arama aracısına gönderilmeden önce Akış Ayırma'yı yapılandırın:
Akışı kaydedin ve yayımlayın.
4. Adım: Twilio telefon numarası yapılandırma
Yeni oluşturulan stüdyo akışına bir Twilio telefon numarası yönlendirmeniz gerekir.
Twilio telefon numaraları konsolundan size ait bir numara seçin veya yeni bir numara satın alın.
Numarayı seçerek telefon numarasını açın ve sayfadaki Ses bölümüne kaydırın.
Gelen Arama'da daha önce tanımladığınız akışı, aşağıdaki ekran görüntüsünde gösterilen alanlarda seçin:
5. Adım: Tümleştirme için Dynamics 365'i yapılandırma
Twilio'yu bir çağrı sağlayıcısı olarak ayarlayıp, kimlerin aramaları kaydedebileceğini tanımlamak ve konuşma bilgileri için kullanılan diğer bilgiler için bir kayıt ilkesi yapılandıralım.
Satış Merkezi uygulamasında, Değiştir alanına gidin ve Sales Insights ayarları'nı seçin.
Konuşma Yönetim Bilgileri'ni seçin.
Arama sağlayıcıları bölümünde Twilio'yu seçin ve Twilio firma ID'sini belirtin.
Değişiklikleri kaydedin.
Twilio çağrı sağlayıcısını kullanarak bir kayıt ilkesi yapılandırın.
Kayıt ilkesi oluştur seçeneğini belirleyin ve ilkeyi yapılandırın. Daha fazla bilgi.
Oluştur'u seçin ve ardından ayarları yayımlayın.
6. Adım: Gerçek zamanlı deneyimi tümleştirmek için Flex eklentisi hazırlayın
Flex, kullanıcı arabiriminde yapacağınız bir React projesi ve özelleştirmelerdir, eklenti bileşenleri olarak oluşturulur.
Bir Düğüm ortamı hazırlamak ve boş bir Flex eklentisi ayarlamak bu belgenin kapsamı dışındadır. İlk Flex eklentisini oluşturma konusunda adım adım öğretici için Twilio belgelerine bakın.
Dynamics için çzelleştirme kodunuzu eklemeye hazır yeni bir eklenti oluşturun.
Bu noktada, eklenti JS dosyanız aşağıdaki gibi görünmelidir:
Microsoft CIF İstemci kitaplığını eklentinize ekleyin. Flex başlatıldığında istemci kitaplığının zaman uyumsuz olarak yüklenmesi gerekir; bu nedenle, Flex init işlevine aşağıdaki kodu ekleyin.
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);
}
}
Eklentiyi yayınlayın.
Artık sınamaya hazır bir Flex eklentimiz var.
7. Adım: Dynamics 365 konuşma yönetim bilgileri ve Flex entegrasyonunu test etme
Satış Merkezi uygulamasında oturumu açın, Çağrı simgesini seçin. Sağ bölmeye Twilio Flex eklendiğini görürsünüz.
Durumunuzu Twilio'da Uygun olarak ayarladığınızdan emin olun ve 4. Adım: Twilio telefon numarası yapılandırma'da ayarladığınız Twilio Telefon Numarası'na bir yapın.
Çağrıyı yanıtladıktan ve kaydı başlattıktan sonra, arama sonrasında gerçek zamanlı dökümü ve çağrı içgörülerini görüntülemek için Arama Özeti sayfasından Döküm sekmesine gidin.