Implementieren Sie Virtual und Servicemitarbeiter den Chat
Mit Mobile SDK können Sie virtuelle und Chat-Services Servicemitarbeiter für in Ihrer Anwendung Android ganz einfach implementieren.
Sie verwenden die NowChatSDK -API, um den Chatservice zu erstellen. Sobald der Service erstellt wurde, müssen Sie die Chat-Anwenderoberfläche starten.
Im Folgenden finden Sie einen Codeausschnitt, der zeigt, wie Sie den Chatservice erstellen und die Schnittstelle starten.
/**
* Helper class used to handle different Now service instances.
*/
@Singleton
class SdkManager @Inject constructor() {
private var chatService: NowChatService? = null
/**
* Create the NowChatService once in the lifetime of the application, inside the Application class or another manager class
* that will be injected into other classes via dagger/hilt.
* NowChatService should be created after initializing the NowSDK.
*/
suspend fun getNowChatService(): NowChatService? {
if (chatService != null) return chatService
return NowChatSDK.makeChatService(URL("https://instance-name.service-now.com"),
object : NowChatSdkCallbacks {})
.getOrThrow()
.also { this.chatService = it }
}
}
//Activity that will start the NowChat
class MainActivity : AppCompatActivity() {
@Inject
lateinit var sdkManager: SdkManager
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
//Start NowChat using the activity
lifecycleScope.launch {
sdkManager.getNowChatService()?.start(this@MainActivity)
}
}
}
Bevor Sie die -Chatfunktion in Ihrer -Anwendung nutzen können, müssen Sie Virtual Agent in Ihrer ServiceNow -Instanz konfigurieren. Details finden Sie unter Virtual Agent.
Übergabe von Kontextvariablen an Servicemitarbeiter - und Virtual Agent -Chat
Sie können Chat-Kontextvariablen beim Starten einer Chatsitzung übergeben, indem Sie den Parameter contextData in der Funktion NowChatService-start() übergeben. Weitere Informationen zu Chat-Kontextvariablen finden Sie unter Live agent chat context variables.
class MainActivity : AppCompatActivity() {
@Inject
lateinit var sdkManager: SdkManager
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
val contextData = mapOf("sys_id" to "123456789", "table" to "wm_task")
//Start NowChat using the activity
lifecycleScope.launch {
sdkManager.getNowChatService()?.start(this@MainActivity, contextData = contextData)
}
}
}Designieren Sie die Chat-Anwenderoberfläche
Sie können die Farben der Chat-UI Servicemitarbeiter und Virtual Agent anpassen, indem Sie ein Designobjekt im Aufruf von start() übergeben. Eine Liste der Elemente, die Sie anpassen können, finden Sie unter NowChatService – launchIntent(Kontext:Kontext, ThemaFarben:NowChatTheme):Absicht. Standardmäßig verwendet die Chat-UI das Design nowUIColor für alle NowSDK-UI-Elemente. In der Beispielanwendung finden Sie ein Beispiel dafür, wie Sie ein Design auf Ihre Chat-UI anwenden können.