채팅 이벤트
채팅 이벤트를 구독하면 채널에서 발생하는 채팅 메시지를 실시간으로 수신합니다.
구독 엔드포인트: POST /api/openapi/open/v1/sessions/events/subscribe/chat
필요 Scope: READ:LIVE_CHAT
이벤트 데이터
{
"event": "CHAT",
"data": {
"channelId": "12345",
"senderChannelId": "67890",
"profile": {
"nickname": "닉네임"
},
"content": "안녕하세요 :AaBbCc-heart:",
"messageTime": "2024-01-15T10:30:00.000Z",
"emojis": {
":AaBbCc-heart:": "https://example.com/emojis/heart.webp"
}
}
}
| 필드 | 타입 | 설명 |
|---|---|---|
channelId |
string | 채팅이 발생한 채널의 ID |
senderChannelId |
string | 메시지 작성자의 채널 ID |
profile.nickname |
string | 작성자 닉네임 |
content |
string | 채팅 메시지. 이모티콘 토큰이 포함될 수 있음 |
messageTime |
string | 메시지 전송 시간 (ISO 8601) |
emojis |
object | 이모티콘 토큰과 이미지 URL 매핑 |
이모티콘 토큰
채팅 메시지에는 구독자 이모티콘이 토큰 형태로 포함될 수 있습니다.
토큰 형식: :{channelIdentifier}-{emojiName}:
{
"content": "안녕하세요 :AaBbCc-heart:",
"emojis": {
":AaBbCc-heart:": "https://example.com/emojis/heart.webp"
}
}
메시지 본문에서 토큰을 emojis 매핑의 이미지 URL로 치환하여 렌더링합니다.
"안녕하세요 :AaBbCc-heart: 반갑습니다"
→ "안녕하세요 <img src="...heart.webp"> 반갑습니다"