iT邦幫忙

2021 iThome 鐵人賽

DAY 20
0
Modern Web

後疫情時代的 WebRTC 微學習系列 第 20

Day20 Socket.io 常用的 API

  • 分享至 

  • xImage
  •  

接下來我們要把前面的東西組合起來,拼湊成一個一對一的視訊系統,不過我今天們先來看看,Socket.io 有哪些常用的api。

訂閱訊息

socket.on("message", (data) => {
	// 收到後處理
})

加入房間

socket.join("room-1")

離開房間

socket.leave("room-1")

發送訊息

  1. 給所有使用者廣播訊息

    io.sockets.emit("message", {data:"hello"})
    
  2. 給除了自己以外的使用者廣播訊息

    socket.broadcast.emit("message", {data:"hello"})
    
  3. 給當前連線的使用者發送訊息

    socket.emit("message", {data:"hello"})
    
  4. 給指定的使用者發送訊息

    io.sockets.socket(socketid).emit("message", {data:"hello"})
    
  5. 發送訊息給房間的所有人

io.in(room).emit('message', room, socket.id)
  1. 發送訊息給房間的所有人,除了自己

    socket.to(room).emit('message', room, socket.id)
    

查看房間資訊

io.sockets.adapter.rooms
  • 房間內人數

    io.sockets.adapter.rooms.get(room).size
    

上一篇
Day19 部署 STUN / TURN server
下一篇
Day21 [實作] 一對一視訊通話(1): 運作說明
系列文
後疫情時代的 WebRTC 微學習30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言