채널 생성 / 삭제
Last updated
Last updated
대화를 위한 채널을 생성합니다.
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로 설정하면 채널의 새로운 참여자는 참여 시점 이전의 메시지를 볼 수 없습니다.
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 이 지원되지 않습니다.
현재 참여중인 채널 목록을 조회할 수 있습니다.
채널 owner만 채널 삭제가 가능합니다.
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
가능
미지원