CRM 속성
CRM 속성은 핵클 서버에만 안전하게 저장되며 SDK를 통해 값을 직접 조회할 수는 없습니다.
CRM 속성은 별도로 관리되며,
resetUser()
를 호출하거나updateUserProperties
에서clearAll
을 호출해도 삭제되거나 초기화되지 않습니다.사용자가 회원 탈퇴 등을 한 경우, 반드시 별도로 제공되는 함수를 호출하여 정보를 삭제해야 합니다.
전화번호 수집
Java/Kotlin SDK에서는 전화번호 수집 기능을 제공하지 않습니다.
HTTP API의 사용자 휴대폰 번호 속성 업데이트와 사용자 휴대폰 번호 속성 삭제를 참고해주세요.
CRM 마케팅 메시지 수신 동의
CRM 마케팅 메시지 수신 동의 기능은 Java SDK 2.29.0
버전 이상에서만 사용할 수 있습니다.
수신 동의 상태에 대한 자세한 내용은 CRM 메시지 수신 동의 관리 문서를 참고해주세요.
수신 동의 속성
메시지 목적 별로 수신 동의/거부를 할 수 있습니다.
HackleSubscriptionOperations.Builder
를 사용해 원하는 속성의 동의 상태를 설정한 후, updatePushSubscriptions()
같은 메서드로 최종 업데이트를 진행합니다.
메시지 채널 별로 동의 상태를 업데이트할 수 있습니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
광고성 메시지
광고성 메시지 수신 동의 속성을 설정합니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
정보성 메시지
정보성 메시지 수신 동의 속성을 설정합니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
HackleSubscriptionStatus
HackleSubscriptionStatus | 설명 | 비고 |
---|---|---|
UNKNOWN | 수신 동의/거부를 하지 않음 | defualt |
SUBSCRIPTION | 명시적으로 수신 동의 | |
UNSUBSCRIPTION | 명시적으로 수신 거부 |
푸시 수신 동의 상태 업데이트
사용자의 푸시 메시지 수신 동의 상태를 업데이트 합니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updatePushSubscriptions(subscriptions, user)
카카오 메시지 수신 동의 상태 업데이트
사용자의 카카오 메시지 수신 동의 상태를 업데이트 합니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updateKakaoSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updateKakaoSubscriptions(subscriptions, user)
문자 메시지 수신 동의 상태 업데이트
사용자의 문자 메시지 수신 동의 상태를 업데이트 합니다.
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
User user = User.builder(userId)
.build();
HackleSubscriptionOperations subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updateSmsSubscriptions(subscriptions, user)
import io.hackle.sdk.common.subscription.HackleSubscriptionOperations
import io.hackle.sdk.common.subscription.HackleSubscriptionStatus
val user = User.builder(userId)
.build();
val subscriptions = HackleSubscriptionOperations.builder()
.marketing(HackleSubscriptionStatus.SUBSCRIBED)
.information(HackleSubscriptionStatus.SUBSCRIBED)
.build()
hackle.app.updateSmsSubscriptions(subscriptions, user)
Updated about 9 hours ago