카카오톡 채널 관계 알림 콜백 데이터 문의

채널 관계 알림 콜백 테스트로 아래와 같이 테스트를 진행하였습니다.

  • 싱크가입 O - 친구삭제
  • 싱크가입 O - 친구추가
  • 싱크가입 X - 친구삭제
  • 싱크가입 X - 친구추가

위와 같은 테스트 진행하였을 때 아래와 같이 request 데이터가 들어 왔습니다.
한 계정으로 테스트 진행하였습니다

아래 데이터를 보면 싱크가입 여부와 상관 없이 open_id, app_user_id 가 type만 다르고 id의 값이 동일하게 들어오고 있습니다.

문의 사항은 테스트 데이터와 다르게 open_idapp_user_id 가 다를 경우가 발생 할 수 있나요?
아니면 id는 동일하지만 type만 다른지 궁금합니다.

[
        // 싱크O - 친구삭제
    {
        "plus_friend_public_id":"_test",
        "plus_friend_uuid":"@테스트",
        "event":"blocked",
        "id":"2119966561",
        "id_type":"app_user_id",
        "channel_public_id":"_test",
        "channel_uuid":"@테스트",
        "timestamp":1666941739000,
        "updated_at":"2022-10-28T07:22:19Z"
    },

        // 싱크O - 친구추가
    {
        "plus_friend_public_id":"_test",
        "plus_friend_uuid":"@테스트",
        "event":"added",
        "id":"2119966561",
        "id_type":"app_user_id",
        "channel_public_id":"_test",
        "channel_uuid":"@테스트",
        "timestamp":1666941907000,
        "updated_at":"2022-10-28T07:25:07Z"
    },

        // 싱크X - 친구삭제
    {
        "plus_friend_public_id":"_test",
        "plus_friend_uuid":"@테스트",
        "event":"blocked",
        "id":"2119966561",
        "id_type":"open_id",
        "channel_public_id":"_test",
        "channel_uuid":"@테스트",
        "timestamp":1666942565000,
        "updated_at":"2022-10-28T07:36:05Z"
    },

        // 싱크X - 친구추가
    {
        "plus_friend_public_id":"_test",
        "plus_friend_uuid":"@테스트",
        "event":"added",
        "id":"2119966561",
        "id_type":"open_id",
        "channel_public_id":"_test",
        "channel_uuid":"@테스트",
        "timestamp":1666942579000,
        "updated_at":"2022-10-28T07:36:19Z"
    }
]

"카카오톡 채널 추가 상태 및 내역" 항목에 동의 하지 않았다면 id_type이 open_id로 전달되고

앱에 unlink한 사용자가 카카오톡에서 채널 차단/추가를 하면 open_id로 콜백이 수신됩니다.

디벨로퍼스앱에 카카오 로그인하여 연결한적이 한번도 없는 사용자가 채널 추가하면, open_id만 생성되어 이를 앱유저ID라하기에는 무리가 있어서 유저 식별을 위한 식별자라 판단하시면됩니다.

디벨로퍼스앱에 연결하지 않고 id만 발급 받은 케이스도 있으므로 이용자가 그대로 디벨로퍼스앱에 연결한다면 동일한 값이지만 계정 통합/변경/탈퇴후재가입 등 계정에 변동 사항이 있는경우 동일 유저라도 다른 값이 전달되게됩니다.

참고 부탁드려요~

계정 통합/변경/탈퇴후재가입 등의 행위가 없다면
id_type 은 "카카오톡 채널 추가 상태 및 내역" 항목에 동의 여부에 따라 open_id or app_user_id 로 오고
id의 값은 유저 식별자로 고유 키 값으로 오는 걸까요?

네, 테스트 해보신것과 같이 계정에 변경 없다는 전제로 동일한 것 확인하셨을텐데요.

디벨로퍼스앱에 한번도 연결된적 없다면 id값 하나만 생성된거라 유저 식별자라 안내하지는 않고 있습니다.
(이 경우는 사용자 정보조회도 할 수 없으므로…)

참고용으로 사용 부탁드려요.