Are you an LLM? You can read better optimized documentation at /doc/javascript/chatting/using-channels/create-channel.md for this page in Markdown format
채팅방 생성 및 삭제
이 문서에서는 VChatCloud JavaScript SDK를 사용하여 채팅방을 동적으로 생성하고 삭제하는 방법을 설명합니다.
사전 준비
채팅방을 생성하거나 삭제하려면 먼저 VChatCloud
인스턴스를 생성하고 기존 채팅방에 접속하여 clientKey
를 확보해야 합니다.
- VChatCloud 인스턴스 생성:
VChatCloud
인스턴스를 생성할 때serviceId
를 반드시 포함해야 합니다.serviceId
는 VChatCloud CMS에서 발급받은 서비스 ID입니다. - 기존 채팅방 접속: 채팅방 생성/삭제 권한을 얻기 위해 최소 하나의 채팅방에 접속되어 있어야 합니다. 이 과정에서 얻는
channel.clientKey
가 필요합니다.
자세한 내용은 시작하기 문서를 참고하세요.
채팅방 생성
vChatCloud.openChannel
메소드를 사용하여 새로운 채팅방을 생성합니다. 생성된 채팅방은 별도의 채널 객체로 관리할 수 있습니다.
예제 코드
javascript
// 1. VChatCloud 인스턴스 생성 (serviceId 포함)
const vChatCloud = new VChatCloud({ serviceId: "YOUR_SERVICE_ID" });
// ... 기존 채널(channel)에 접속 완료 후 ...
// 2. 새로운 채팅방 생성
const newRoomId = "UNIQUE_ROOM_ID"; // 생성할 채팅방의 고유 ID
const privateChannel = vChatCloud.openChannel(
{
roomId: newRoomId,
clientKey: channel.clientKey, // 기존 채널에서 발급받은 클라이언트 키
},
function (err, res) {
if (err) {
console.error("채팅방 생성 실패:", err);
return;
}
console.log("채팅방 생성 성공:", res);
// res 객체에는 새로 생성된 채널 정보가 포함됩니다.
}
);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
파라미터
파라미터 | 타입 | 설명 |
---|---|---|
roomId | String | 생성할 채팅방의 고유 ID |
clientKey | String | 기존에 접속한 채널에서 발급받은 클라이언트 키 |
콜백 함수
- 성공 시:
err
는null
이고,res
객체에 새로운 채널 정보가 반환됩니다. - 실패 시:
err
객체에 오류 정보가 반환됩니다. (예:10901:RECIPIENT_FAILURE
-serviceId
누락 또는 오류)
채팅방 삭제
vChatCloud.closeChannel
메소드를 사용하여 생성했던 채팅방을 삭제합니다.
예제 코드
javascript
const targetRoomId = "DELETING_ROOM_ID"; // 삭제할 채팅방의 ID
vChatCloud.closeChannel(
{
roomId: targetRoomId,
clientKey: channel.clientKey, // 기존 채널에서 발급받은 클라이언트 키
},
function (err, res) {
if (err) {
console.error("채팅방 삭제 실패:", err);
return;
}
console.log("채팅방 삭제 성공:", res);
}
);
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
파라미터
파라미터 | 타입 | 설명 |
---|---|---|
roomId | String | 삭제할 채팅방의 고유 ID |
clientKey | String | 기존에 접속한 채널에서 발급받은 클라이언트 키 |
콜백 함수
- 성공 시:
err
는null
이고,res
객체에 성공 응답이 반환됩니다. - 실패 시:
err
객체에 오류 정보가 반환됩니다.