채널톡 안드로이드 SDK(이하 SDK)는 사용자에게 채팅 상담을 할 수 있는 UI를 제공하고 그에 필요한 정보를 관리합니다. SDK가 제공하는 기본적인 동작 외에 더 많은 기능을 제공하고 싶거나 동작을 변경하고 싶다면 ChannelPluginListener
를 이용할 수 있습니다.
ChannelIO.setListener(object : ChannelPluginListener() {
// ...
})
onShowMessenger
메신저가 표시되었을 때 호출됩니다. 유저가 채널톡 버튼을 누르거나 ChannelIO.showMessenger()
등을 호출해 메신저가 표시될 경우 호출될 수 있습니다.
onHideMessenger
메신저가 숨겨졌을 때 호출됩니다. 유저가 메신저 닫기 버튼을 누르거나 ChannelIO.hideMessenger()
, ChannelIO.sleep()
, ChannelIO.shutdown()
등을 호출해 메신저가 닫힐 경우 호출됩니다.
onChatCreated
채팅방이 생성되었을 때 호출됩니다. 유저가 직접 채팅방을 생성하거나 chatId=null
로 ChannelIO.openChat()
등을 통해 채팅방을 생성했을 때 호출됩니다.
onBadgeChanged(int count) (Deprecated)
뱃지 개수가 변경되었을 때 호출됩니다. 뱃지는 유저가 읽지 않은 채널톡 알림으로, 기본적으로 채널톡 버튼의 우측 상단에 있는 빨간 점 안에 표시됩니다.
onBadgeChanged(int unread, int alert)
뱃지 개수가 변경되었을 때 호출됩니다. 뱃지는 유저가 읽지 않은 채널톡 알림 개수에 대한 값입니다. 알림 개수가 변경되거나, 부트하는 경우에 호출됩니다. unread
와 alert
에 관한 정보는 User의 unread
, alert
필드를 참고합니다.
onFollowUpChanged
유저가 직접 팔로업 연락처를 수정했을 때 호출됩니다. 다음과 같은 상황에서 호출됩니다:
- 설정(우측 상단 톱니바퀴) > 내 연락처 정보 > 수정
- 상담 초기의 팔로업 폼
onUrlClicked
유저가 채널톡 SDK가 표시한 링크 혹은 링크 버튼을 클릭했을 때 호출됩니다. 유저가 URL을 클릭하는 경우 기본적으로 해당 URL로 이동하지만 이 동작을 변경하고 싶은 경우 true
를 반환할 수 있습니다.
true
가 반환된다면 링크 처리를 SDK의 기본 동작으로 처리하는 대신 리스너가 적절한 동작을 취하는 것으로 간주합니다.
onPopupDataReceived
인앱 푸시를 받았을 때 호출됩니다. 다음과 같은 상황에서 호출됩니다:
- 매니저가 답장을 함
- 마케팅 메시지가 도착함
onPushNotificationClicked
시스템 푸시를 클릭했을 때 호출됩니다. 기본적으로는 시스템 푸시를 클릭했을 때 앱의 기본 액티비티를 엽니다. 다른 동작을 원하는 경우 true
를 반환해서 기본 동작을 막을 수 있습니다.
true
가 반환된다면 링크 처리를 SDK의 기본 동작으로 처리하는 대신 리스너가 적절한 동작을 취하는 것으로 간주합니다.