Aracılığıyla paylaş


Mobil uygulamalar için canlı sohbet pencere öğelerini özelleştirme

Mesajlaşmayı yerel mobil uygulamanıza entegre etmek için iki seçeneğiniz vardır:

  • iOS ve Android için yerel mobil yazılım geliştirme kitlerini (SDK'lar) kullanın
  • Web widget'ını bir WebView içinde kullanma

Üstün özellik desteği ve performans sundukları için yerel mobil SDK'ları kullanmanızı önemle tavsiye ederiz.

Dynamics 365 Contact Center mobil SDK'ları ile tümleştirme

Mobil SDK'lar ve belgeleri GitHub'da barındırılır:

SDK'lar şunları içerir:

  • Başlamanıza yardımcı olacak örnek bir uygulama
  • Yapılandırılabilir, kullanıma hazır bir mesajlaşma arayüzü
  • İstenirse, ısmarlama bir mesajlaşma kullanıcı arayüzünü entegre etmek için eksiksiz bir mesajlaşma yaşam döngüsü işlevleri seti
  • Azure Notification Hub ile anında iletme bildirimleri desteği

Mesajlaşma SDK'ları ile kimliği doğrulanmış, kalıcı sohbet kullanmanızı öneririz. Bu, mobil kullanım kalıpları için en iyi müşteri deneyimini sağlar.

Uyarı

Kullanıma hazır arabirim, yönetim merkezi yerine uygulamanızdaki kod aracılığıyla görsel olarak stilize edilir.

Gömülü kod kullanarak canlı sohbet widget'ını oluşturun

Mobil Mesajlaşma SDK'ları gereksinimlerinizi veya zaman çizelgelerinizi karşılamıyorsa mobil uygulamanıza bir web widget'ı yerleştirebilirsiniz. Ancak, bir sohbet widget'ı kodu gömmenin düşük performans, sınırlı mobil kullanılabilirlik ve kullanılamayan özellikler gibi birçok sınırlaması vardır.

A WebView , yerel bir uygulamanın web içeriğini görüntülemesini sağlayan yerleşik bir tarayıcıdır. WebView Mobil cihazlarda sohbet widget'ının web sürümünün oluşturulmasını etkinleştirmek için mobil işletim sisteminizin dil bileşenini kullanın. WebView özelliği hem Android hem de iOS'ta sunulur.

Aşağıdaki örnek kod, sohbet widget'ını bir mobil uygulamada işler.

var html: String = """
        <html>
            <head>
                <meta http-equiv="no-cache">
                <meta http-equiv="Expires" content="-1">
                <meta http-equiv="Cache-Control" content="no-cache">
                <script 
                    type="text/javascript"
                    src = "Use src from widget code snippet"
                    id = Microsoft_Omnichannel_LCWidget
                    data-app-id = "Use data-app-Id from widget code snippet"
                    data-org-id = "Use data-org-Id from widget code snippet"
                    data-org-url = "Use data-org-url from widget code snippet"
                    data-render-mobile = "true"
                    data-hide-chat-button = "true"
                    data-color-override = "desired color code eg. #008577">
                </script>
            </head>
            <body>
            </body>
        </html>
    """.trimIndent()
    var baseUrl: String = "Get baseUrl from data-org-url eg. https://oc-cdn-ocprod.azureedge.net"
    chatWebView.loadDataWithBaseURL(baseUrl,html, "text/html", null, baseUrl)

Sohbet widget'ı, durumunu yönetmek için yerel depolamayı kullanır. Sohbet widget'ının Android'de yerel depolamaya erişmesi için yerel kodda bir izin yapılandırmanız gerekir.

chatWebView = findViewById(R.id.webview)
webSettings = webView.getSettings();
webSettings.setDomStorageEnabled(true);

Canlı sohbet widget'ı istemci SDK'sı tarafından sağlanan birkaç API ve olayın yanı sıra ve data-hide-chat-buttongibi data-render-mobile veri etiketlerini kullanarak sohbet widget'ının mobil web deneyimi için işlenmesini optimize edebilirsiniz. Daha fazla bilgi: Veri etiketlerini kullanarak sohbet widget'ını özelleştirme

Bir sohbet oturumu açmak için, yeni sohbet düğmesi seçildiğinde startChat yöntemini çağırabilirsiniz.

chatWebView.evaluateJavascript(
    "Microsoft.Omnichannel.LiveChatWidget.SDK.closeChat();",
    null
)

Mobil cihazlarda canlı sohbet widget'ının oluşturulmasını optimize etmek için veri etiketini kullanabilirsiniz data-render-mobile . Örneğin, sohbet widget'ının başlığını gizler. Başlıkla birlikte Kapat (X) düğmesi de kaybolur. Sohbeti kapatmak için mobil uygulamada bir "sohbeti sonlandır" düğmesi oluşturmanız ve tıklama olayında closeChat yöntemini çağırmanız gerekir.

chatWebView.evaluateJavascript(
    "Microsoft.Omnichannel.LiveChatWidget.SDK.closeChat();", null)

Yukarıdaki kod, mobil uygulama kullanıcısının sohbeti sonlandırdığı senaryoyu kapsar. Ancak, bir aracının konuşmayı sonlandırdığı başka bir senaryoda, aşağıdaki kodda gösterildiği gibi lcw:threadUpdate olayını dinleyebilir ve konuşmayı istemci tarafından sonlandırmak için closeChat yöntemini çağırabilirsiniz.

chatWebView.evaluateJavascript(
    "window.addEventListener(\"lcw:threadUpdate\", function(){Microsoft.Omnichannel.LiveChatWidget.SDK.closeChat();})", null)

Sohbet kapatıldığında, canlı sohbet widget'ı lcw:closeChat etkinliğini tetikler. Bu etkinliği dinleyebilir ve gerekirse sohbet sonrası adımları gerçekleştirebilirsiniz.

Uyarı

Sese ve videoya yükseltme ve sohbet dökümünü indirme gibi canlı sohbet widget'ı özellikleri web görünümü aracılığıyla desteklenmez.

Canlı sohbet SDK başvurusu
Özel canlı sohbet widget'ları geliştirin
Sohbete başla
closeChat
lcw:chatAlındı
lcw:chatQueued
Veri etiketlerini kullanarak canlı sohbet widget'larını özelleştirin