Klat
  • Klat SDK
  • Android
    • Getting Started
    • Callback
    • User
      • 사용자 생성 / 로그인
      • 사용자 정보 업데이트
      • 사용자 차단 목록 관리
      • 사용자 로그아웃
      • 사용자 삭제
    • Channel
      • 채널 생성 / 삭제
      • 채널 조회
      • 채널 정보 업데이트
      • 채널 목록 조회
      • 채널 사용자 관리
      • 채널 참여 / 나가기
      • 채널 내 메시징
      • 채널 숨기기 / 보이기
      • 채널 Freeze / Unfreeze
      • 채널 주인 변경
      • 채널 푸시알림 설정
      • 채널별 개인 데이터 설정
    • Push Notification
    • Sample Application
    • What's New
  • iOS
    • Getting Started
    • Callback
    • User
      • 사용자 생성 / 로그인
      • 사용자 정보 업데이트
      • 사용자 차단 목록 관리
      • 사용자 로그아웃
      • 사용자 삭제
    • Channel
      • 채널 생성 / 삭제
      • 채널 조회
      • 채널 정보 업데이트
      • 채널 목록 조회
      • 채널 사용자 관리
      • 채널 참여 / 나가기
      • 채널 내 메시징
      • 채널 숨기기 / 보이기
      • 채널 Freeze / Unfreeze
      • 채널 주인 변경
      • 채널 푸시알림 설정
      • 채널별 개인 데이터 설정
    • Push Notification
    • Sample Application
    • What's New
  • Unity
    • Getting Started
    • Callback
    • User
      • 사용자 생성 / 로그인
      • 사용자 정보 업데이트
      • 사용자 차단 목록 관리
      • 사용자 로그아웃
      • 사용자 삭제
    • Channel
      • 채널 생성 / 삭제
      • 채널 조회
      • 채널 정보 업데이트
      • 채널 목록 조회
      • 채널 사용자 관리
      • 채널 참여 / 나가기
      • 채널 내 메시징
      • 채널 숨기기 / 보이기
      • 채널 Freeze / Unfreeze
      • 채널 주인 변경
      • 채널 푸시알림 설정
      • 채널별 개인 데이터 설정
    • Push Notification
    • Sample Application
  • JavaScript
    • Getting Started
    • Realtime Event
    • Pagination
    • User
      • 사용자 생성 / 로그인
      • 사용자 정보 업데이트
      • 사용자 차단 목록 관리
      • 사용자 로그아웃
      • 사용자 삭제
    • Channel
      • 채널 생성 / 삭제
      • 채널 조회
      • 채널 정보 업데이트
      • 채널 목록 조회
      • 채널 사용자 관리
      • 채널 참여 / 나가기
      • 채널 내 메시징
      • 채널 숨기기 / 보이기
      • 채널 Freeze / Unfreeze
      • 채널 주인 변경
      • 채널 푸시알림 설정
      • 채널별 개인 데이터 설정
    • Push Notification (FCM)
    • Sample Application
    • What's New
  • Flutter
    • Getting Started
    • Callback
    • User
      • 사용자 생성 / 로그인
      • 사용자 정보 업데이트
      • 사용자 차단 목록 관리
      • 사용자 로그아웃
      • 사용자 삭제
    • Channel
      • 채널 생성 / 삭제
      • 채널 조회
      • 채널 정보 업데이트
      • 채널 목록 조회
      • 채널 사용자 관리
      • 채널 참여 / 나가기
      • 채널 내 메시징
      • 채널 숨기기 / 보이기
      • 채널 Freeze / Unfreeze
      • 채널 주인 변경
      • 채널 푸시알림 설정
      • 채널별 개인 데이터 설정
    • Push Notification
  • REST API
    • Getting Started
    • API
      • User
        • 사용자 생성
        • 사용자 로그인 (로그인 토큰)
        • 사용자 조회
        • 사용자 정보 업데이트
        • 사용자 활성화 / 비활성화
        • 사용자 푸시 알림 설정
        • 사용자 삭제
        • 사용자 목록 조회
        • 사용자 채널 조회
        • 사용자 차단 목록 관리
      • Channel
        • 채널 생성
        • 채널 조회
        • 채널 정보 업데이트
        • 채널 삭제
        • 채널 목록 조회
        • 채널 사용자 관리
        • 채널 내 메시징
        • 채널 숨기기 / 보이기
        • 채널 Freeze / Unfreeze
        • 채널 주인 변경
        • 채널 알림 설정
      • App
        • 앱 조회
        • 앱 생성
        • 앱 삭제
      • Bot
        • 봇 생성
        • 봇 목록 조회
        • 봇 조회
        • 봇 정보 업데이트
        • 봇 삭제
        • 봇 채널 목록 조회
        • 봇 채널 내 메시징
        • 봇 채널 참여 / 나가기
    • Push Notification
    • Rate Limit
  • MISC
    • Webhooks
    • SDK Rate Limit
    • Error Code
    • FAQ
      • Function
      • Spec
Powered by GitBook
On this page
  • 채널별 개인 데이터 설정
  • 채널별 Private Tag 설정
  1. Android
  2. Channel

채널별 개인 데이터 설정

채널별 개인 데이터 설정

채널별 개인 데이터 정보를 다르게 설정할 수 있습니다.

설정 가능한 정보는 Map 형태의 memberInfo와 privateData, 그리고 검색 가능한 privateTag 요소가 있습니다.

본인에게만 보이는 privateData와는 달리 memberInfo는 타인에게 노출됩니다.

memberInfo와 privateData의 경우, 최대 5개의 Key-value 형식의 데이터를 넣을 수 있습니다.

  • key, value 둘 다 문자열이어야 합니다.

  • key값의 최대 길이는 128자이고 value값의 최대 길이는 1024자입니다.

// 채널의 멤버 정보 업데이트
TalkPlus.updateChannelMemberInfo(tpChannel, 
    data, 
    new TalkPlus.CallbackListener<TPMember>() {
        @Override
        public void onSuccess(TPMember tpMember) {
            // get memberInfo
            // tpMember.getMemberInfo();
        }
        @Override
        public void onFailure(int errorCode, Exception exception) {
        }
    }
);

// Private Data 업데이트
TalkPlus.updateChannelPrivateData(tpChannel, 
    data, 
    new TalkPlus.CallbackListener<TPChannel>() {
        @Override
        public void onSuccess(TPChannel tpChannel) {
        }
        @Override
        public void onFailure(int errorCode, Exception exception) {
        }
    }
);

// Private Data 가져오기
tpChannel.getPrivateData();

// Private Tag 업데이트 (검색 목적)
TalkPlus.updateChannelPrivateTag(tpChannel, 
    privateTag, 
    new TalkPlus.CallbackListener<TPChannel>() {
        @Override
        public void onSuccess(TPChannel tpChannel) {    
        }
        @Override
        public void onFailure(int errorCode, Exception exception) {
        }
    }
);

// Private Tag 가져오기
tpChannel.getPrivateTag();
// 채널의 멤버 정보 업데이트
TalkPlus.updateChannelMemberInfo(tpChannel, 
    data, 
    object : TalkPlus.CallbackListener<TPMember>() {
        override fun onSuccess(tpMember: TPMember) {
            // get memberInfo
            // tpMember.getMemberInfo();
        }
        override fun onFailure(errorCode: Int, exception: Exception) { }
    })

// Private Data 업데이트
TalkPlus.updateChannelPrivateData(tpChannel, 
    data, 
    object : TalkPlus.CallbackListener<TPChannel>() {
        override fun onSuccess(tpChannel: TPChannel) { }
        override fun onFailure(errorCode: Int, exception: Exception) { }
    })

// Private Data 가져오기
tpChannel.privateData

// Private Tag 업데이트 (검색 목적)
TalkPlus.updateChannelPrivateTag(tpChannel, 
    privateTag, 
    object : TalkPlus.CallbackListener<TPChannel>() {
        override fun onSuccess(tpChannel: TPChannel) { }
        override fun onFailure(errorCode: Int, exception: Exception) { }
    })

// Private Tag 가져오기
tpChannel.privateTag

채널별 Private Tag 설정

채널 검색을 용이하게 하기 위해 각 채널에 private Tag 값을 설정할 수 있습니다.

private Tag 데이터는 사용자 개인에게만 노출되는 태그로써 개인적인 채널 필터링 용도로만 사용 가능합니다. (예: 본인이 찜한 채널 목록 등)

  • TPChannelQueryParams 클래스는 TalkPlus Android SDK v0.5.6 이상에서 지원됩니다.

// 채널에 Private Tag 설정
TalkPlus.updateChannelPrivateTag(tpChannel, 
    privateTag, 
    new TalkPlus.CallbackListener<TPChannel>() {
        @Override
        public void onSuccess(TPChannel tpChannel) {    
        }
        @Override
        public void onFailure(int errorCode, Exception exception) {
        }
    }
);

// Private Tag에 매칭되는 채널 목록 가져오기
TPChannelQueryParams tpChannelQueryParams =
    new TPChannelQueryParams.Builder()
    	.setLastChannel(lastChannel)
    	.setChannelName(channelName)
	.setPrivateTag(privateTag)
	.setSubCategory(subCategory)
	.setMemberIds(memberIds)
	.setCategory(category)
	.setFrozenType(TPChannelQueryParams.TPChannelFrozenType.NONE)
	.build();
	
    TalkPlus.searchChannels(tpChannelQueryParams, new TalkPlus.TPCallbackListener<List<TPChannel>, Boolean>() {
	@Override
	public void onSuccess(List<TPChannel> tpChannels, Boolean hasNext) {
	
	}
			
	@Override
	public void onFailure(int errorCode, Exception exception) {
			
	}
    });

// 채널에 Private Tag 설정
TalkPlus.updateChannelPrivateTag(tpChannel, 
    privateTag, 
    object : TalkPlus.CallbackListener<TPChannel>() {
        override fun onSuccess(tpChannel: TPChannel) { }
        override fun onFailure(errorCode: Int, exception: Exception) { }
    })

// Private Tag에 매칭되는 채널 목록 가져오기
val tpChannelQueryParams: TPChannelQueryParams =
    TPChannelQueryParams.Builder()
    	.setLastChannel(lastChannel)
    	.setChannelName(channelName)
	.setPrivateTag(privateTag)
	.setSubCategory(subCategory)
	.setMemberIds(memberIds)
	.setCategory(category)
	.setFrozenType(TPChannelQueryParams.TPChannelFrozenType.NONE)
	.build()
	
    TalkPlus.searchChannels(tpChannelQueryParams, object : TalkPlus.TPCallbackListener<List<TPChannel>, Boolean>() {
	override fun onSuccess(tpChannels: List<TPChannel>, hasNext: Boolean) { }	
	override fun onFailure(errorCode: Int, exception: Exception) { }
    })
Previous채널 푸시알림 설정NextPush Notification

Last updated 11 months ago