仮想と ライブエージェント チャットの実装

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む3読むのに数分
  • これにより 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