UNPKG

1.01 kBJavaScriptView Raw
1
2const io = require('socket.io-client')
3
4// Use https or wss in production.
5let url = 'ws://localhost:8000/chat-service'
6let userName = `user${Math.floor(Math.random() * 99) + 1}`
7let token = 'token' // auth token
8let query = `userName=${userName}&token=${token}`
9let opts = { query }
10
11// Connect to a server.
12let socket = io.connect(url, opts)
13
14// Rooms messages handler (own messages are here too).
15socket.on('roomMessage', (room, msg) => {
16 console.log(`${msg.author}: ${msg.textMessage}`)
17})
18
19// Auth success handler.
20socket.on('loginConfirmed', userName => {
21 // Join room named 'default'.
22 socket.emit('roomJoin', 'default', (error, data) => {
23 // Check for a command error.
24 if (error) { return }
25 // Now we will receive 'default' room messages in 'roomMessage' handler.
26 // Now we can also send a message to 'default' room:
27 socket.emit('roomMessage', 'default', { textMessage: 'Hello!' })
28 })
29})
30
31// Auth error handler.
32socket.on('loginRejected', error => {
33 console.error(error)
34})