채널톡 안드로이드 SDK(이하 SDK)는 사용자에게 채팅 상담을 할 수 있는 UI를 제공하고 그에 필요한 정보를 관리합니다. SDK가 제공하는 기본적인 동작 외에 더 많은 기능을 제공하고 싶거나 동작을 변경하고 싶다면 ChannelPluginListener를 이용할 수 있습니다.

ChannelIO.setListener(object : ChannelPluginListener() {
	// ...
})

onShowMessenger

메신저가 표시되었을 때 호출됩니다. 유저가 채널톡 버튼을 누르거나 ChannelIO.showMessenger() 등을 호출해 메신저가 표시될 경우 호출될 수 있습니다.

onHideMessenger

메신저가 숨겨졌을 때 호출됩니다. 유저가 메신저 닫기 버튼을 누르거나 ChannelIO.hideMessenger(), ChannelIO.sleep(), ChannelIO.shutdown() 등을 호출해 메신저가 닫힐 경우 호출됩니다.

onChatCreated

채팅방이 생성되었을 때 호출됩니다. 유저가 직접 채팅방을 생성하거나 chatId=nullChannelIO.openChat() 등을 통해 채팅방을 생성했을 때 호출됩니다.

onBadgeChanged(int count) (Deprecated)

뱃지 개수가 변경되었을 때 호출됩니다. 뱃지는 유저가 읽지 않은 채널톡 알림으로, 기본적으로 채널톡 버튼의 우측 상단에 있는 빨간 점 안에 표시됩니다.

onBadgeChanged(int unread, int alert)

뱃지 개수가 변경되었을 때 호출됩니다. 뱃지는 유저가 읽지 않은 채널톡 알림 개수에 대한 값입니다. 알림 개수가 변경되거나, 부트하는 경우에 호출됩니다. unreadalert에 관한 정보는 Userunread, alert 필드를 참고합니다.

onFollowUpChanged

유저가 직접 팔로업 연락처를 수정했을 때 호출됩니다. 다음과 같은 상황에서 호출됩니다:

  • 설정(우측 상단 톱니바퀴) > 내 연락처 정보 > 수정
  • 상담 초기의 팔로업 폼

onUrlClicked

유저가 채널톡 SDK가 표시한 링크 혹은 링크 버튼을 클릭했을 때 호출됩니다. 유저가 URL을 클릭하는 경우 기본적으로 해당 URL로 이동하지만 이 동작을 변경하고 싶은 경우 true를 반환할 수 있습니다.

true가 반환된다면 링크 처리를 SDK의 기본 동작으로 처리하는 대신 리스너가 적절한 동작을 취하는 것으로 간주합니다.

onPopupDataReceived

인앱 푸시를 받았을 때 호출됩니다. 다음과 같은 상황에서 호출됩니다:

  • 매니저가 답장을 함
  • 마케팅 메시지가 도착함

onPushNotificationClicked

시스템 푸시를 클릭했을 때 호출됩니다. 기본적으로는 시스템 푸시를 클릭했을 때 앱의 기본 액티비티를 엽니다. 다른 동작을 원하는 경우 true를 반환해서 기본 동작을 막을 수 있습니다.

true가 반환된다면 링크 처리를 SDK의 기본 동작으로 처리하는 대신 리스너가 적절한 동작을 취하는 것으로 간주합니다.