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
  • 1. 채널 생성
  • 2. 채널 삭제
  1. Unity
  2. Channel

채널 생성 / 삭제

1. 채널 생성

대화를 위한 채널을 생성합니다.

  • targetId의 경우 TPUser 객체에서 getUserId함수를 통하여 얻어올 수 있습니다.

  • data의 경우, 최대 5개의 key-value pair를 입력할 수 있습니다. key의 최대 size는 128자 이고 최대 value size는 1024자입니다.

  • 채널 타입의 경우 private, public, invitationOnly, broadcast, super_broadcast, super_private, super_public 타입을 지원합니다.

  • type 필드는 필수 입니다.

  • invitationOnly 타입의 경우 invitationCode도 추가적으로 필수 필드입니다.

  • hideMessagesBeforeJoin 파라미터를 true로 설정하면 채널의 새로운 참여자는 참여 시점 이전의 메시지를 볼 수 없습니다.

Type

정의값

Join 가능 여부

FCM 지원

PRIVATE

private

불가

지원

PUBLIC

public

가능

지원

INVITATION ONLY

invitationOnly

가능, Invitation Code 필요

지원

BROADCAST

broadcast

가능

지원

SUPER_BROADCAST

super_broadcast

가능

미지원

SUPER_PRIVATE

super_private

불가

미지원

SUPER_PUBLIC

super_public

가능

미지원

  • PRIVATE 타입의 경우 채널 id와 참여 사용자(targetIds)가 동일한 경우 reuseChannel 파라미터를 true로 설정하여 기존 생성된 채널을 재사용할 수 있습니다. 이는 1:1 대화를 구현하는데 유용하게 사용할 수 있습니다.

  • PUBLIC 타입 채널에 ban당하지 않은 사용자는 누구나 가입할 수 있습니다.

  • INVITATION_ONLY 타입의 경우 invitationCode를 제공해야 채널 가입이 가능합니다.

  • BROADCAST, SUPER_BROADCAST 타입의 경우:

    • 채널 owner가 메시지 발송 시 채널 멤버 모두에게 메시지가 발송됩니다.

    • 채널 owner가 아닌 채널 멤버가 메시지 발송 시 채널 owner에게만 메시지가 전달됩니다.

  • SUPER_BROADCAST, SUPER_PRIVATE, SUPER_PUBLIC 타입의 경우,

    • 최대 멤버 제한수를 100명 이상으로 설정할 수 있습니다.

    • 최대 멤버 제한수를 -1로 설정하면 멤버를 무제한으로 추가할 수 있습니다.

    • members와 bannedUsers 필드에 사용자 정보가 채워져서 내려오는 일반 채널과 달리:

      • members, bannedUsers, mutedUsers 필드는 빈 상태로 내려옵니다.

    • unreadCount, FCM Push Notification, invitationCode, lastReadAt 이 지원되지 않습니다.

var createParams = new TPChannelCreateParams(
   TPChannelCreateType.TPChannelPrivate
);

newChannelParams.targetIds = new List<string> { "test1", "test2" };
newChannelParams.reuseChannel = true;
newChannelParams.hideMessagesBeforeJoin = false;
newChannelParams.maxMemberCount = 20;
newChannelParams.channelName = "<CHANNEL_NAME>";
newChannelParams.invitationCode = "<INVITATION_CODE>";
newChannelParams.imageUrl = "<IMAGE_URL>";
newChannelParams.metaData = new Dictionary<string, object> { };

TalkPlusApi.CreateChannel(createParams, (TPChannel tpChannel) => { 
   // SUCCESS
}, (int statusCode, Exception e) => {
   // FAILURE
});

2. 채널 삭제

현재 참여중인 채널 목록을 조회할 수 있습니다.

채널 owner만 채널 삭제가 가능합니다.

TalkPlusApi.DeleteChannel(channelID, () =>{
   // SUCCESS
}, (int statusCode, Exception e) => {
   // FAILURE
});
PreviousChannelNext채널 조회

Last updated 2 months ago