MCPcopy Index your code
hub / github.com/codecombat/codecombat / init

Method init

app/lib/wsBus.js:37–82  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

35 }
36
37 init () {
38 this.ws = websocket.setupBaseWS()
39 if (!this.ws) {
40 return
41 }
42 this.ws.addEventListener('message', (msg) => {
43 let data = msg.data
44 // console.log('received: ', data)
45 try {
46 data = JSON.parse(data)
47 } catch (e) {}
48
49 switch (data.type) {
50 case 'fetch': // return infos
51 this.getFetchMessage(data)
52 break
53 case 'send': // receive infos
54 this.getSendMessage(data)
55 // globalVar.currentView.trigger('websocket:update-infos')
56 break
57 case 'msg':
58 this.getMsg(data)
59 break
60 case 'publish':
61 this.getPublishMessage(data)
62 break
63 // TODO: ping pong is not used now, can clean later (when websocket things almost finished)
64 case 'ping': // check alive
65 case 'pong': // check alive
66 this.updateFriend(data.from, { online: true })
67 break
68 }
69 })
70 this.ws.addEventListener('open', () => {
71 this.connected = true
72 if (this.reconnectInterval) {
73 clearInterval(this.reconnectInterval)
74 }
75 this.resetWSInfos()
76 })
77 this.ws.addEventListener('close', () => {
78 console.log('ws close unexpected! try reconnect in 10 secnds...')
79 this.connected = false
80 this.reconnectInterval = setInterval(() => this.ws = websocket.setupBaseWS(), 10000)
81 })
82 }
83
84 getFetchMessage (data) {
85 const obj = {

Callers 3

constructorMethod · 0.95
run-tests.jsFile · 0.45
runTestsMethod · 0.45

Calls 8

getFetchMessageMethod · 0.95
getSendMessageMethod · 0.95
getMsgMethod · 0.95
getPublishMessageMethod · 0.95
updateFriendMethod · 0.95
resetWSInfosMethod · 0.95
parseMethod · 0.80
logMethod · 0.80

Tested by

no test coverage detected