-
Notifications
You must be signed in to change notification settings - Fork 6
socket.io 명세서
message
event name:
create message
socket.emit('create message',{
chatroomId: number,
content: string
})
비고: 생성될 메시지 정보를 서버에 전달
event name:
update message
socket.emit('create message',{
messageId: number,
content: string
})
비고: 수정될 메시지 정보를 서버에 전달
event name:
delete message
socket.emit('delete message',{
messageId: number
})
비고: 삭제될 메시지의 정보를 서버에 전달
event name:
create message
socket.on('create message', (message) =>{
/*deploy code*/
})
message
{
messageId: number,
content: string,
createdAt: date,
updatedAt: date,
deletedAt: date,
user: User {
userId: number,
profileUri: string,
displayName: string
},
chatroom: Chatroom { chatroomId: number },
chatroomId: number
}
비고: 서버로부터 생성된 메시지의 정보를 받음
event name:
update message
socket.on('update message', (message) =>{
/*deploy code*/
})
message
{
messageId: number,
content: string
}
비고: 서버로부터 수정된 메시지의 정보를 받음
event name:
delete message
socket.on('delete message', (message) =>{
/*deploy code*/
})
message
{
messageId: number
}
비고: 서버로부터 삭제된 메시지의 정보를 받음
reply
event name:
create reply
socket.emit('create reply',{
messageId: number,
content: string
})
비고: 생성될 reply 정보를 서버에 전달
event name:
update reply
socket.emit('create reply',{
replyId: number,
content: string
})
비고: 수정될 메시지 정보를 서버에 전달
event name:
delete reply
socket.emit('delete reply',{
messageId: number
})
비고: 삭제될 reply의 정보를 서버에 전달
event name:
create reply
socket.on('create message', (reply) =>{
/*deploy code*/
})
reply
{
replyId: number,
content: string,
createdAt: date,
updatedAt: date,
user: User {
userId: number,
profileUri: string,
displayName: string
},
chatroomId: number
}
비고: 서버로부터 생성된 reply의 정보를 받음
event name:
update reply
socket.on('update reply', (reply) =>{
/*deploy code*/
})
reply
{
replyId: number,
content: string
}
비고: 서버로부터 수정된 reply의 정보를 받음
event name:
delete reply
socket.on('delete reply', (reply) =>{
/*deploy code*/
})
reply
{
replyId: number
}
비고: 서버로부터 삭제된 reply의 정보를 받음
chatroom
event name:
join chatroom
socket.emit('join chatroom',{
chatroomId: number
})
비고: 사용자를 해당 채팅방의 room에 join (채팅방 생성, 채팅방 참여 등에서 최초 1회만 사용)
event name:
join DM
socket.emit('join DM',{
userId: number
chatroomId: number
})
비고: DM이 생성당한 사용자가 해당 DM에 조인할 수 있도록 chatroomId와 userId를 전달
event name:
leave channel
socket.emit('leave channel',{
chatroomId: number
})
비고: 해당 사용자가 해당 chatroom에서 떠나도록 DB에서 설정, 해당 챗룸 구독 해제
event name:
join DM
socket.on('join DM', (data) =>{
socket.emit('join chatroom',{
chatroomId: data.chatroomId
})
})
data
{
chatroomId: number
}
비고: 서버로부터 해당 사용자가 참여할 DM의 chatroomId를 받음
event name:
join chatroom
socket.on('join chatroom', (data) =>{
/*deploy code*/
})
data
{
chatroomId: number,
users: [
User {
userId: number,
profileUri: string,
displayName: string
}
],
userCount: number
}
비고: 서버로부터 새로운 사용자가 참여한 chatroom의 갱신된 정보를 받음
event name:
leave channel
socket.on('leave channel', (chatroom) =>{
/*deploy code*/
})
chatroom
{
title: string,
description: string,
isPrivate: bool,
chatType: 'Channel',
topic: string,
userCount: nmumber,
users: [
User {
userId: number,
profileUri: string,
displayName: string
}
],
chatroomId: number,
leaveUserId: number
}
비고: 사용자가 해당 채팅방을 떠났을 경우 서버로부터 새롭게 갱신된 채팅방의 정보와 떠난 userId를 받음
reaction
event name:
create reaction
socket.emit('create reaction',{
messageId: number,
title:stirng,
emoji: string
})
비고: 생성될 messageReaction의 정보를 서버에 전달
event name:
delete reaction
socket.emit('delete reaction',{
messageId: number,
reactionId: number
})
비고: 삭제될 messageReaction의 정보를 서버에 전달
event name:
create reaction
socket.on('create reaction', (messageReaction) =>{
/*deploy code*/
})
messageReaction
{
reactionId: number,
title: string,
emoji: string,
messageId: number,
authors: [
{
displayName: string,
userId: number
}
],
chatroomId: number
}
비고: 서버로부터 생성된 reaction의 정보를 받음
event name:
delete reaction
socket.on('delete reaction', (messageReaction) =>{
/*deploy code*/
})
messageReaction
{
reactionId: number,
title: string,
emoji: string,
messageId: number,
authors: [
{
displayName: string,
userId: number
}
],
chatroomId: number
}
비고: 서버로부터 삭제된 reaction의 정보를 받음
reply reaction
event name:
create reply reaction
socket.emit('create reply reaction',{
chatroomId: number,
replyId: number,
title: stirng,
emoji: string
})
비고: 생성될 replyReaction의 정보를 서버에 전달
event name:
delete reply reaction
socket.emit('delete reply reaction',{
replyId: number,
reactionId: number,
chatroomId: number
})
비고: 삭제될 replyReaction의 정보를 서버에 전달
event name:
create reply reaction
socket.on('create reply reaction', (replyReaction) =>{
/*deploy code*/
})
replyReaction
{
reactionId: number,
title: string,
emoji: string,
replyId: number,
authors: [
{
displayName: string,
userId: number
}
],
messageId: number,
chatroomId: number
}
비고: 서버로부터 생성된 reply reaction의 정보를 받음
event name:
delete reply reaction
socket.on('delete reply reaction', (replyReaction) =>{
/*deploy code*/
})
replyReaction
{
reactionId: number,
title: string,
emoji: string,
replyId: number,
authors: [
{
displayName: string,
userId: number
}
],
messageId: number,
chatroomId: number
}
비고: 서버로부터 삭제된 reply reaction의 정보를 받음