이 문서는 채널톡 React Native SDK (이하 SDK)의 콜백에 대해 설명합니다.

onShowMessenger

메신저 화면을 여는 이벤트에 대한 콜백을 등록합니다. 아래의 경우에 호출됩니다.

  • showMessenger 를 호출한 경우
  • openChat 을 호출한 경우
  • 유저가 채널 버튼를 눌러 메신저를 연 경우
ChannelIO.onShowMessenger(() => { });

onHideMessenger

메신저 화면을 닫는 이벤트에 대한 딜리게이트 메소드입니다. 아래의 경우에 호출됩니다.

  • hideMessenger 를 호출한 경우
  • sleep 을 호출한 경우
  • shutdown 을 호출한 경우
  • 유저가 명시적으로 메신저 화면을 닫는 경우
ChannelIO.onHideMessenger(() => { });

onChatCreated

새 유저챗이 생성되는 이벤트에 대한 딜리게이트 메소드 입니다. 아래의 경우에 호출됩니다.

  • 유저의 명시적인 새 채팅 생성
  • chatId = undefined 인 openChat
ChannelIO.onChatCreated((chatId) => { });

onBadgeChanged Deprecated

❗️

onBadgeChanged(unread: Int, alert: Int)를 사용해 주세요.

유저의 뱃지 개수 변경에 대한 딜리게이트 메소드입니다. 뱃지 갯수가 변경되거나, 부트하는 경우에 호출됩니다.

ChannelIO.onBadgeChanged((count) => { });

onBadgeChanged

유저의 읽지 않은 알림 갯수에 대한 딜리게이트 메소드입니다. 알림 갯수가 변경되거나, 부트하는 경우에 호출됩니다.

ChannelIO.onBadgeChanged((unread, alert) => { });

onFollowUpChanged

유저에 의해 팔로업 정보가 수정되는 경우에 호출됩니다.

ChannelIO.updateUser 에 의해서는 호출되지 않습니다. object 안의 값은 nullable입니다.

ChannelIO.onFollowUpChanged((data) => { });

onUrlClicked

유저가 채팅 안에서 링크를 누르거나, 링크 버튼을 누르는 경우에 호출됩니다. 해당 함수가 true를 반환하는 경우, SDK에서 수행하는 URL 리다이렉트는 동작하지 않습니다.

let handleUrl = true;

ChannelIO.onUrlClicked((url, next) => {
    if (!handleUrl) {
        // Use this function if you want to open web view
        next();
    }
});

onPopupDataReceived

인앱 메시지 팝업이 불리는 경우에 대한 알림입니다.
매니저로부터 메시지가 도착하거나, 마케팅 메시지가 도착하는 경우에 호출됩니다.
이 함수의 파라미터 event에 대한 자세한 정보는 PopupData 문서를 참고합니다.

ChannelIO.onPopupDataReceived((popupData) => { });

onPushNotificationClicked

시스템 푸시 알림이 클릭되었을 때 호출됩니다. next 함수를 호출해서 기본 동작을 실행할 수 있습니다.
onPushNotificationClicked는 안드로이드에서만 작동합니다. iOS에서 호출하는 경우 무시됩니다.

ChannelIO.onPushNotificationClicked((chatId, next) => { });