仮想と ライブエージェント チャットの実装
これにより Mobile SDK 、iOSアプリケーション内に仮想 ライブエージェント サービスとチャットサービスを簡単に実装できます。
チャットユーザーインターフェイスを作成するには、 NowChatService API を使用します。UI を作成したら、チャット セッションを開始してから、チャット サービスを開始する必要があります。他の Mobile SDK フィーチャ サービスと同様に、 NowChatService API は、 startChat() メソッドを含む一部のメソッドに対して 2 つの実装を提供します。1 つの実装は Combine パブリッシャを返し、もう 1 つの実装は返される結果を使用して完了ハンドラーを呼び出します。
チャット UI とセッションを初期化して開始する方法を示すサンプル アプリケーションのスニペットを次に示します。
// Create the chat UI
func makeChatScreen() -> UIViewController? {
guard let chatService = chatService else { return nil }
let result = chatService.makeChatUI(theme: CarrascoChatTheme(baseTheme: CarrascoTheme()))
switch result {
case .success(let chatViewController):
return chatViewController
case .failure(let error):
debugPrint("Chat screen creation failed with error: \(error)")
return nil
}
}
// Start the chat session
func startChat() {
guard let chatService = chatService else {
debugPrint("Chat service is invalid")
viewState = makeViewState()
return
}
chatService.startChat { [weak self] result in
if case .failure(let error) = result {
debugPrint("Chat session initialization failed with error: \(error)")
self?.resetChat()
}
}
}
// Initialize the chat service
private func initializeChatService() {
NowChat.makeChatService(instanceUrl: instanceUrl, delegate: self) { [weak self] result in
guard let self = self else { return }
switch result {
case .success(let service):
self.chatService = service
case .failure(let error):
debugPrint("Creating the chat service failed with error: \(error)")
}
self.viewState = self.makeViewState()
}
}アプリケーション内でチャット機能を活用するには、その前にインスタンス内でServiceNow設定仮想エージェントする必要があります。詳細については、「Virtual Agent」を参照してください。
チャットユーザーインターフェイスのテーマ
makeChatUI() 呼び出しでテーマオブジェクトを渡すことで、チャット UI の色ライブエージェント仮想エージェントをカスタマイズできます。カスタマイズできるすべての要素のリストについては、を参照してください NowChatColoring プロトコル - iOS。デフォルトでは、チャット UI はすべての NowSDK UI 要素にテーマを使用します NowUIColor 。チャット UI にテーマを適用する方法のサンプルコードスニペットについては、「」を参照してください NowChatThemeable プロトコル - iOS 。