방 관련 기능
P2P 방 생성
예시
await knowledgetalk.createRoom('K43254033', 'p2pRoom', 2);
타입
createRoom(
roomId?: string;
title?: string;
capacity?: number;
destroy?: boolean;
): Promise<{
code: ResponseCode;
roomId: string;
}>
요청 상세
roomId
요청할 roomId 또는 자동생성
'K43254033'
title
방 제목
'p2pRoom'
capacity
수용인원
2
destroy
방 인원 없을 경우 방 종료
기본값: true
true
응답 상세
roomId
랜덤 또는 요청된 roomId
'K43254033'
그룹통화 방 생성
예시
await knowledgetalk.createVideoRoom('K43254033', 'groupRoom', 16);
타입
createVideoRoom(
roomId?: string;
title?: string;
capacity?: string;
destroy?: boolean;
talkingNoty?: boolean;
): Promise<{
code: ResponseCode;
roomId: string;
}>
요청 상세
roomId
요청할 roomId 또는 자동생성
'K43254033'
title
방 제목
'groupRoom'
capacity
수용인원
16
destroy
방 인원 없을 경우 방 종료
기본값: true
true
talkingNoty
화자 감지 이벤트
기본값: false
false
응답 상세
roomId
랜덤 또는 요청된 roomId
'K43254033'
방 입장
예시
await knowledgetalk.joinRoom('K43254033');
타입
joinRoom(
roomId: string;
): Promise<{
code: ResponseCode;
createdAt: string;
fileServerUrl: string;
isRecording: boolean;
media: boolean;
roomId: string;
talkingNoty: boolean;
title: string;
host: Member;
members: {
[userId: string]: Member;
}
}>
type Member = {
id: string;
name: string;
userType: 'host' | 'guest';
device: string;
video: boolean;
audio: boolean;
pulishing: boolean;
permit: {
screen: boolean;
chat: boolean;
whiteboard: boolean;
draw: boolean;
document: boolean;
}
}
요청 상세
roomId
랜덤 또는 요청된 roomId
'K43254033'
응답 상세
createdAt
방 생성 일시
'2024/05/30 13:38:37'
fileServerUrl
파일 서버 주소
'https://fileServer'
isRecording
현재 녹화 여부
false
media
미디어 서버 사용 여부
false
roomId
방 아이디
'K43254033'
talkingNoty
화자 감지 활성화 여부
false
title
방 제목
'테스트방'
host
방 host 정보
Member
members
현재 방에 접속한 유저 정보
Members
Member
id
유저 아이디
'kpoint123'
name
유저 이름
'홍길동'
userType
host 또는 guest
'host'
device
기기 정보
'Galaxy Tab'
video
비디오 활성화 여부
true
audio
오디오 활성화 여부
true
publishing
영상 송신여부
false
permit
채팅, 공유등 권한 정보
{ chat: true, ...}
기존에 방에 참여중인 유저는 join 이벤트 메시지로 멤버 정보 수신
방 퇴장
예시
await knowledgetalk.leaveRoom('K43254033');
타입
leaveRoom(
roomId: string;
): Promise<{
code: ResponseCode;
}>
요청 상세
roomId
퇴장할 방 아이디
'K43254033'
응답 상세
leaveRoom 호출 시 방에 leave 이벤트 메시지 보냄
방 종료
예시
await knowledgetalk.destroyRoom('K43254033');
타입
destroyRoom(
roomId: string;
): Promise<{
code: ResponseCode;
}>
요청 상세
roomId
종료할 방 아이디
'K43254033'
응답 상세
방에 접속한 유저 조회
예시
await knowledgetalk.memberList(roomId);
타입 Member 타입 참조
memberList(
roomId: string;
): Promise<{
[userId: string]: Member;
}>
요청 상세
roomId
조회할 방 아이디
'200'
응답 상세
members
현재 방에 접속한 유저 정보
Members
권한 부여
예시
await knowledgetalk.permit('kpoint123', true, true, true, true, true);
타입
permit(
target: string;
chat?: boolean;
draw?: boolean;
screen?: boolean;
whiteboard?: boolean;
document?: boolean;
): Promise<{
code: ResponseCode;
}>
요청 상세
chat / draw / screen / whiteboard / document 중 하나는 필수
target
타겟 아이디
'kpoint123'
chat
채팅 권한
true
draw
그리기 권한
false
screen
화면 공유 권한
false
whiteboard
화이트 보드 공유 권한
false
document
자료 공유 권한
false
응답 상세
알림 메시지 전송
예시
await knowledgetalk.inform('Hello!', 'kpoint123', 'K43254033');
타입
inform(
message: any;
target?: string;
roomId?: string;
): Promise<{
code: ResponseCode;
}>
요청 상세
message
전달할 메시지
'Hello!'
target
메시지를 전달할 유저 아이디
'kpoint123'
roomId
메시지를 전달할 방 아이디
'K43254033'
응답 상세
타겟유저는 inform 이벤트 메시지를 받아 사용
강제 퇴장 요청 메시지 전송
예시
await knowledgetalk.kickOut('kpoint123');
타입
kickOut(
target: string;
): Promise<{
code: ResponseCode;
}>
요청 상세
target
메시지를 전달할 userId
'kpoint123'
요청 응답
target 유저는 kickOut 이벤트 메시지를 수신해서 leaveRoom 진행
방 정보 변경
예시
await knowledgetalk.editRoomInfo('K43254033', 'room title');
타입
editRoomInfo(
roomId: string;
title?: string;
capacity?: number;
host?: string;
): Promise<{
code: ResponseCode;
}>
요청 상세
roomId
방 아이디
'K43254033'
title
방 제목
'chatRoom'
capacity
수용인원
16
host
호스트 아이디
'k123'
응답 상세
Last updated