BootConfig

ChannelIO.boot()의 옵션을 설정합니다.

필드타입설명
pluginKey@NonNull String플러그인 키입니다.
memberId@Nullable String등록된 유저를 구분하는 ID입니다. 등록된 유저로 부트하기를 참조합니다.
memberHash@Nullable StringmemberId의 HMAC-SHA256 값입니다. 멤버 해시 활성화하기를 참조합니다. memberHash에 대응하는 memberId도 함께 전달해야 합니다.
profile@Nullable Profile유저의 프로필 정보입니다.
language@Nullable Language설정할 언어입니다. null을 넘기면 기기의 언어로 설정합니다.
unsubscribeEmail@Nullable Boolean이메일 마케팅 구독 설정입니다.
unsubscribeTexting@Nullable Boolean문자 메시지 마케팅 구독 설정입니다.
trackDefaultEvent@NonNull BooleanPageView와 같이 기본적인 이벤트를 전송할지 여부입니다.
hidePopup@NonNull Boolean마케팅 메시지나 인앱 알림과 같은 팝업을 띄울지 여부입니다.
chanelButtonOption@Nullable ChannelButtonOption채널 버튼의 위치와 같은 설정입니다. 커스터마이징을 참조합니다.
bubbleOption@Nullable BubbleOption마케팅 팝업과 인앱 알림의 버블에 대한 설정입니다. 커스터마이징을 참조합니다.
appearance@Nullable AppearanceSDK가 사용할 테마를 설정합니다.

enum Language

채널 SDK가 지원하는 언어입니다.

필드설명
KOREAN한국어입니다.
JAPANESE일본어입니다.
ENGLISH영어입니다.

ChannelButtonIcon

채널톡 버튼 아이콘에 대한 설정입니다.

enum class ChannelButtonIcon {  
  Channel,
  ChatBubbleFilled,
  ChatProgressFilled,
  ChatQuestionFilled,
  ChatLightningFilled,
  ChatBubbleAltFilled,
  SmsFilled,
  CommentFilled,
  SendForwardFilled,
  HelpFilled,
  ChatProgress,
  ChatQuestion,
  ChatBubbleAlt,
  Sms,
  Comment,
  SendForward,
  Communication,
  Headset,
}

ChannelButtonPosition

채널톡 버튼 위치에 대한 설정입니다.

enum class ChannelButtonPosition {
  RIGHT,
  LEFT,
}

ChannelButtonOption

채널톡 버튼에 대한 설정입니다.

<init>

파라미터타입설명
iconChannelButtonIcon채널 버튼의 아이콘을 설정합니다.
positionChannelButtonPosition채널톡 버튼의 위치입니다.
xMarginfloatposition에서의 DP단위 X축 여백입니다.
yMarginfloatposition에서의 DP단위 Y축 여백입니다.
파라미터타입설명
iconChannelButtonIcon채널 버튼의 아이콘을 설정합니다.
파라미터타입설명
positionChannelButtonPosition채널톡 버튼의 위치입니다.
xMarginfloatposition에서의 DP단위 X축 여백입니다.
yMarginfloatposition에서의 DP단위 Y축 여백입니다.

BubbleOption

마케팅 팝업과 인앱 알림의 버블에 대한 설정입니다.

파라미터타입설명
position@NonNull BubblePosition버블이 뜨는 위치입니다.
yMarginfloatposition에서의 Y축 여백입니다.

Profile

유저의 프로필 정보입니다. BootConfig#setProfile(Profile)을 참고합니다.

기본 제공 필드

필드타입SDK 메서드설명
name@Nullable StringProfile#setName(String)유저의 이름입니다.
email@Nullable StringProfile#setEmail(String)유저의 이메일입니다.
mobileNumber@Nullable StringProfile#setMobileNumber(String)유저의 전화번호입니다.
avatarUrl@Nullable StringProfile#setAvatarUrl(String)유저의 아바타 URL입니다.

setProperty

사용자 지정 프로필 정보를 입력합니다.

파라미터타입설명
propertyKey@NonNull String프로필 프로퍼티 키입니다.
propertyValue@Nullable Object프로필 프로퍼티 값입니다.

setProperties

프로필 정보를 설정합니다.

파라미터타입설명
properties@NonNull HashMap<String, Object>프로퍼티 값입니다.

User

필드타입설명
id@NonNull String채널톡이 유저를 구분하기 위한 ID입니다. memberId와 달리 등록된 유저와 익명 유저 모두 non-null 값을 가지고 있습니다.
memberId@Nullable String멤버 유저를 구분하기 위한 ID입니다. 익명 유저는 null입니다.
name@Nullable String유저의 이름입니다.
avatarUrl@Nullable String유저의 아바타 URL입니다.
profile@Nullable Map<String, Object>유저의 프로필 정보입니다.
alertint유저가 읽지 않은 중요 알림 개수입니다. 채널 버튼에서 숫자로 알림이 표현됩니다.
unreadint유저가 읽지 않은 모든 알림 수입니다. alert 메시지의 수를 포함합니다. 채널 버튼에서 빨간 점으로 알림이 표현됩니다.
tags@Nullable List유저 태그입니다.
language@Nullable String유저의 언어입니다.
unsubscribeTextingboolean유저가 문자 메시지 마케팅 수신을 허용했는지 여부입니다.
unsubcribeEmailboolean유저가 이메일 마케팅 수신을 허용했는지 여부입니다.

PopupData

인앱 팝업에 대한 정보입니다.

필드타입설명
chatId@NonNull String팝업의 대상이 되는 채팅방의 ID입니다.
avatarUrl@Nullable String팝업의 아바타 URL입니다.
name@NonNull String팝업에서 표시할 이름입니다.
message@NonNull String팝업에서 표시할 메시지입니다.

UserData.Builder

새로운 User 객체를 생성합니다. ChannelIO.updateUser(UserData, UserUpdateCallback)를 통해 유저 정보를 업데이트 할 때 사용합니다.

setLanguage

유저의 언어를 설정합니다.

매개변수타입설명
language@NonNull Language설정하고 싶은 유저의 언어입니다.

setTags

유저의 태그를 설정합니다.

매개변수타입설명
tags@Nullable List설정하고 싶은 유저의 태그 목록입니다.

setProfileMap

유저의 프로필 정보를 설정합니다.

매개변수타입설명
profileMap@Nullable Map<String, Object>설정하고 싶은 유저의 프로필 정보입니다.

setProfileOnceMap

유저의 프로필 정보가 존재하지 않을 때만 프로필 정도를 설정합니다.

매개변수타입설명
profileOnceMap@Nullable Map<String, Object>설정하고 싶은 유저의 프로필 정보입니다.

setUnsubcribeEmail

유저의 이메일 마케팅 정보 수신 여부를 설정합니다.

매개변수타입설명
unsubscribeEmail@NonNull Boolean유저가 이메일을 통해 마케팅 정보를 수신하게 하고 싶은지에 대한 여부입니다.

setUnsubscribeTexting

유저의 문자 메시지 마케팅 정보 수신 여부를 설정합니다.

매개변수타입설명
unsubscribeTexting@NonNull Boolean유저가 문자 메시지를 통해 마케팅 정보를 수신하게 하고 싶은지에 대한 여부입니다.

BootStatus

ChannelIO.boot()의 결과입니다.

필드설명
SUCCESSChannelIO.boot()가 성공했습니다.
NOT_INITIALIZEDChannelIO.initialize()가 호출되지 않았습니다.
NETWORK_TIMEOUT네트워크 문제로 ChannelIO.boot()가 실패했습니다.
NOT_AVAILABLE_VERSION지원하지 않는 버전입니다. SDK를 업데이트 해야 합니다.
SERVICE_UNDER_CONSTRUCTION채널톡 서버가 점검 중입니다.
REQUIRE_PAYMENT채널이 차단되었거나 유료 결제가 필요한 경우입니다.
ACCESS_DENIED서버에서 4xx 오류가 왔습니다.
UNKNOWN알 수 없는 오류입니다.

enum Appearance

SDK의 테마입니다.

필드설명
LIGHT밝은 테마입니다.
DARK어두운 테마입니다.
SYSTEM시스템 테마를 따라갑니다.