NowChatOptions - Android

  • 릴리스 버전: Xanadu
  • 업데이트 날짜 2024년 08월 01일
  • 읽기5분
  • NowChatOptions 클래스를 사용하면 채팅 창을 닫기 전에 프롬프트를 표시하고, 채팅을 사용하는 동안 기능을 사용하지 않도록 설정하고, 채팅 서비스가 시작될 때 새 채팅 대화를 강제 실행하는 등의 채팅 세션에 대한 옵션을 구성할 수 있습니다.

    NowChatOptions - NowChatOptions(closePrompt: ClosePrompt?, disabledFeatures: List<Feature>?, forceNewConversation: 부울?)

    현재 채팅 세션에 대한 옵션을 구성합니다. 이 방법을 사용하면 채팅 창을 닫기 전에 프롬프트를 표시하고, 채팅을 사용하는 동안 기능을 비활성화하고, 채팅 서비스가 시작될 때 새 채팅 대화를 강제 적용할 수 있습니다.

    표 1. 매개변수
    이름 유형 설명
    close프롬프트 ClosePrompt 객체 연결된 채팅 창을 닫기 전에 표시할 프롬프트입니다.

    닫기 프롬프트를 표시하지 않으려면 null을 전달합니다.

    disabledFeatures 목록<NowChatOptions.Feature> 현재 채팅 세션 내에서 비활성화할 채팅 기능 목록입니다.
    유효한 값:
    • START_NEW_CONVERSATION: 채팅 창에 나타나는 새 대화 시작 버튼을 숨기거나 비활성화합니다.

    사용 가능한 채팅 기능은 NowChatOptions.Feature 열거형 클래스에 정의되어 있습니다.

    기능을 비활성화하지 않으려면 null을 전달합니다.

    forceNew대화 부울 채팅 세션이 시작될 때 새 채팅 대화를 강제 적용할지 여부를 나타내는 플래그입니다. 현재 대화가 모두 종결됩니다.
    유효한 값은 다음과 같습니다.
    • true: 새 채팅 대화를 시작합니다. 새 채팅 창이 열립니다.
    • false: 새 채팅 대화를 시작하지 않습니다. 이전 채팅 대화의 내용을 로드합니다.

    기본값: false

    표 2. 반환
    유형 설명
    chatOptions 메서드에 NowChatService - start(activity: Activity, themeColors: NowChatTheme = object : NowChatTheme{}, contextData: map<String, Any> = mapOf(), chatOptions: NowChatOptions? = null) 전달할 수 있는 chatOptions 개체를 반환합니다.

    다음 코드 예제에서는 이 메서드를 호출하는 방법을 보여 줍니다.

    suspend fun launchChat() { 
      val chatService = getNowChatService() 
      val chatTheme = object : NowChatTheme { 
        override val brand: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLUE) 
     
        override val textPrimary: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLACK) 
     
        // Override remaining theme colors 
     
      } 
      val contextData = mapOf("sys_id" to "123456789", "table" to "wm_task") 
     
      val chatOptions = NowChatOptions( 
        NowChatOptions.ClosePrompt( 
          header = null, 
          message = "Are you sure you want to leave?", 
          acceptButtonTitle = "Yes", 
          declineButtonTitle = "No" 
        ), 
        disabledFeatures = listOf(NowChatOptions.Feature.START_NEW_CONVERSATION), 
        forceNewConversation= true 
      )
     
       chatService?.start(activity, chatTheme, contextData, chatOptions) 
    } 

    NowChatOptions - ClosePrompt(헤더: 문자열, 메시지: 문자열, acceptButtonTitle: 문자열, declineButtonTitle: 문자열)

    전달된 매개 변수를 기반으로 ClosePrompt 개체를 만들고 반환합니다. 그런 다음 이 객체를 NowChatOptions() 메서드에 전달하여 채팅 세션 내에서 프롬프트 닫기 옵션을 구성합니다.

    표 3. 매개변수
    이름 유형 설명
    헤더 문자열 프롬프트 헤더에 표시할 텍스트입니다.

    프롬프트 헤더를 표시하지 않으려면 null을 전달합니다.

    메시지 문자열 프롬프트의 메인 텍스트로 표시할 텍스트입니다.
    acceptButtonTitle (영문) 문자열 채팅 창을 닫기 위한 프롬프트의 기본 버튼에 표시할 텍스트입니다.
    declineButtonTitle (영문) 문자열 프롬프트를 해제하는 프롬프트의 보조 버튼에 표시할 텍스트입니다.

    보조 단추를 표시하지 않으려면 null을 전달합니다.

    다음 코드 예제에서는 이 메서드를 호출하는 방법을 보여 줍니다.

    suspend fun launchChat() { 
      val chatService = getNowChatService() 
      val chatTheme = object : NowChatTheme { 
        override val brand: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLUE) 
     
        override val textPrimary: NowUIAdaptiveColor 
        get() = NowUIAdaptiveColor(Color.BLACK) 
     
        // Override remaining theme colors 
     
      } 
      val contextData = mapOf("sys_id" to "123456789", "table" to "wm_task") 
     
      val chatOptions = NowChatOptions( 
        NowChatOptions.ClosePrompt( 
          header = null, 
          message = "Are you sure you want to leave?", 
          acceptButtonTitle = "Yes", 
          declineButtonTitle = "No" 
        ), 
        disabledFeatures = listOf(NowChatOptions.Feature.START_NEW_CONVERSATION), 
        forceNewConversation= true 
      )
     
       chatService?.start(activity, chatTheme, contextData, chatOptions) 
    }