Bagikan melalui


setContextProvider

Multisaluran untuk Customer Service menawarkan serangkaian kemampuan yang memperluas kekuatan Dynamics 365 Customer Service Enterprise untuk memungkinkan organisasi terhubung dan berinteraksi secara instan dengan pelanggan mereka di seluruh saluran olahpesan digital. Lisensi tambahan diperlukan untuk mengakses Multisaluran untuk Customer Service. Untuk informasi selengkapnya, lihat Ikhtisar harga Dynamics 365 Customer Service dan halaman Paket harga Dynamics 365 Customer Service.

Menetapkan penyedia konteks untuk saluran obrolan langsung. Fungsi penyedia konteks, saat dipanggil, mengembalikan konteks yang akan digunakan untuk menginisialisasi sesi obrolan.

Penting

  • Metode setContextProvider hanya didukung untuk obrolan yang tidak diautentikasi. Untuk obrolan yang diautentikasi, Anda harus menggunakan JSON Web Token (JWT). Informasi selengkapnya: Mengirim token autentikasi
  • Anda hanya dapat meneruskan 100 variabel konteks kustom selama setiap sesi chat.
  • Metode SDK obrolan langsung harus dipanggil setelah peristiwa lcw:ready diangkat. Anda dapat mendengarkan peristiwa ini dengan menambahkan pemroses peristiwa Anda sendiri pada objek jendela.
  • Anda tidak perlu menggunakan metode ini setContextProvider jika Anda menggunakan startChat API SDK untuk meneruskan konteks dan menginisialisasi sesi obrolan.

Syntax

Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(contextProvider);

Parameter-parameternya

Pengaturan Tipe Description
konteksPenyedia Function Fungsi yang ketika dipanggil, mengembalikan konteks kustom

Mengembalikan nilai

None

Example

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){
        // Set the custom context provider
        // Throws error if contextProvider is not a function
        Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(function contextProvider(){
                   //Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string               
	               return {
                             'contextKey1': {'value': 'contextValue1', 'isDisplayable': true},
                             'contextKey2': {'value': 12.34, 'isDisplayable': false},
                             'contextKey3': {'value': true}
                   };
        });
});

Dalam kode sampel sebelumnya, atribut berisi value nilai variabel konteks.

Atribut isDisplayable , jika diatur ke true, akan menampilkan item yang diteruskan di tab ketiga pada Kontrol Ringkasan Percakapan untuk percakapan.

Nota

Jika tidak ada variabel konteks yang dibuat di bawah aliran kerja langsung dengan nama logis yang cocok, maka variabel dibuat saat runtime dengan jenis String. Informasi selengkapnya: Variabel konteks

Menampilkan kunci konteks.

Lulus layanan mandiri pelanggan sebagai konteks

Anda dapat meneruskan layanan mandiri pelanggan sebagai konteks di awal percakapan dengan pelanggan tersebut. Metode ini setContextProvider meneruskan tindakan pelanggan terbaru sebagai bagian dari konteks dengan jenis layanan mandiri, untuk percakapan baru antara pelanggan dan agen. Catatan perjalanan pengunjung dibuat untuk setiap tindakan layanan mandiri.

Berikut adalah contoh kode yang menunjukkan cara menggunakan metode tersebut setContextProvider .

window.addEventListener("lcw:ready", function handleLivechatReadyEvent(){

Microsoft.Omnichannel.LiveChatWidget.SDK.setContextProvider(function contextProvider(){
    return {
            'SelfService': { 'value' : 
                '[ {"msdyn_displaytitle":"Page visited", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350000}, \
                   {"msdyn_displaytitle":"Phrase searched", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350001}, \
                   {"msdyn_displaytitle":"Knowledge article viewed", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350002}, \
                   {"msdyn_displaytitle":"Custom action performed", "msdyn_starttime":"yyyy-mm-ddThh:mm:ssZ","msdyn_type":192350003} \
                 ]'
             }, // Additional context can be added as shown below
                //Here it is assumed that the corresponding work stream would have context variables with logical name of 'contextKey1', 'contextKey2', 'contextKey3'. If no context variable exists with a matching logical name, items are created assuming Type:string
                'contextKey1': {'value': 'contextValue1', 'isDisplayable': true},
                'contextKey2': {'value': 12.34, 'isDisplayable': false},
                'contextKey3': {'value': true}
         };
    });
});

Untuk contoh skrip untuk melacak tindakan layanan mandiri yang dapat disertakan dalam Portal Layanan Mandiri, lihat Kode sampel Layanan Mandiri.

Kode kesalahan

Kesalahan berikut dapat terjadi untuk metode ini.

Kode kesalahan Pesan kesalahan
1 Eksekusi metode penyedia konteks gagal

Referensi API JavaScript untuk SDK live chat
Menampilkan konteks kustom