1 |
- {"ast":null,"code":"import bus from \"./bus\";\nexport default class wsService {\n constructor() {\n // const wsUrl = ref(\"ws://172.16.50.3/websocket\");\n // this.address = \"ws://172.16.50.3/websocket\";\n this.address = \"ws://106.14.237.165/websocket\";\n this.promisePool = {};\n this._websocket = undefined;\n this.wsClosed = false;\n this.latestLog = \"\";\n this.latestMessage = \"\";\n }\n open() {\n return new Promise((resolve, reject) => {\n console.warn(this.address);\n if (typeof this._websocket === \"undefined\") {\n this._websocket = new WebSocket(this.address);\n this._websocket.onopen = e => {\n this.wsClosed = false;\n resolve({\n e,\n ws: this\n });\n };\n this._websocket.onerror = e => {\n reject(e);\n };\n }\n this._websocket.onclose = e => {\n reject(e);\n this.wsClosed = true;\n // bus.emit(\"websocket-onclose\", e);\n };\n\n this._websocket.onmessage = res => {\n if (res.data) {\n let msg = JSON.parse(res.data);\n let [token, action, status, bench_id, data] = [msg.msg_id, msg.method, msg.status, msg.bench_id, msg.data];\n // console.log(action != \"play_audio\");\n // if (action != \"get_image\" && action != \"play_audio\" && action != \"collect_audio\") {\n // console.log(\"onmessage\", action);\n // }\n\n // handle message subscribtion\n if (action == \"notify_im\") {\n if (status === \"WS_OK\") {\n bus.emit(\"newMessage\", data);\n }\n } else if (action == \"notify_bench_status\") {\n // console.log('notify_bench_status', data);\n // handle log subscribtion\n if (status === \"WS_OK\") {\n bus.emit(\"newLog\", JSON.parse(data));\n }\n } else {\n const req = this.promisePool[token];\n if (status === \"WS_OK\") {\n if (action == \"collect_audio\") {\n bus.emit(\"sendAudio\" + bench_id, {\n data,\n bench_id\n });\n // bus.emit(\"sendAudio\", { data, bench_id });\n }\n\n if (this.promisePool[token]) {\n let benchId = this.promisePool[token][\"bench_id\"];\n req.resolve({\n data: data,\n benchId\n });\n delete this.promisePool[token];\n }\n } else {\n let err = {\n action,\n data: JSON.stringify(data)\n };\n console.error(err);\n // req.reject(err);\n }\n }\n }\n };\n });\n }\n\n close() {\n this._websocket.close();\n }\n send(method, params) {\n if (!method) {\n console.error(\"no method assigned\");\n } else {\n let bench_id = params.bench_id;\n let msg_id = this.genMsgId();\n let msgObj = {\n msg_id: msg_id,\n method: method,\n ...params\n };\n let msg = JSON.stringify(msgObj);\n // if (!(method == \"get_image\" || method == \"play_audio\")) {\n // console.log(`< ${method} > ${msg}`);\n // }\n return new Promise((resolve, reject) => {\n this.promisePool[msg_id] = {\n bench_id,\n resolve,\n reject\n };\n if (this._websocket.readyState == 1) {\n // console.log(\"this._websocket.readyState == 1\");\n // if (!this.wsClosed) {\n // console.log('msg',msg);\n this._websocket.send(msg);\n }\n // setTimeout(() => {\n // console.log('this._websocket.readyState2', this._websocket.readyState);\n // }, 100)\n });\n }\n }\n\n genMsgId() {\n let rand = Math.random().toString(36).substr(2);\n return \"request_\" + rand;\n }\n connectBench(connectParam) {\n let res = this.send(\"connect_bench\", connectParam);\n return res;\n }\n disconnectBench(connectParam) {\n let res = this.send(\"disconnect_bench\", connectParam);\n return res;\n }\n getImage(id, screenType) {\n return this.send(\"get_image\", {\n bench_id: id,\n screen_type: screenType\n });\n }\n singleFingerTouch(id, x, y, screenType = 1, debug = false) {\n console.log('tag', id, x, y);\n return this.send(\"single_finger_touch\", {\n bench_id: id,\n x: x,\n y: y,\n screen_type: screenType,\n debug: debug\n });\n }\n singleFingerDrag(id, x1, y1, x2, y2, screenType = 1, debug = false) {\n return this.send(\"single_finger_drag\", {\n bench_id: id,\n x1: x1,\n y1: y1,\n x2: x2,\n y2: y2,\n screen_type: screenType,\n debug: debug\n });\n }\n singleFingerLongTouch(id, x, y, duration, screenType = 1, debug = false) {\n return this.send(\"single_finger_long_touch\", {\n bench_id: id,\n x: x,\n y: y,\n duration: duration,\n screen_type: screenType,\n debug: debug\n });\n }\n subscribeBenchStatus(id) {\n return this.send(\"subscribe_bench_status\", id);\n }\n unsubscribeBenchStatus(id) {\n return this.send(\"unsubscribe_bench_status\", id);\n }\n planExecute(id) {\n return this.send(\"plan-execute\", {\n bench_id: id\n });\n }\n play_audio(data) {\n return this.send(\"play_audio\", {\n bench_id: \"\",\n bench_ids: data.benchIds,\n data: data.data\n });\n }\n stop_play_audio(data) {\n return this.send(\"stop_play_audio\", {\n bench_id: data.benchId\n });\n }\n collect_audio(data) {\n return this.send(\"collect_audio\", {\n bench_id: data.benchId\n });\n }\n stop_collect_audio(data) {\n return this.send(\"stop_collect_audio\", {\n bench_id: data.benchId\n });\n }\n press_ptt(data) {\n return this.send(\"press_ptt\", {\n bench_id: data.benchId\n });\n }\n connect_audio_device(data) {\n return this.send(\"connect_audio_device\", {\n bench_id: data.benchId\n });\n }\n}","map":{"version":3,"names":["bus","wsService","constructor","address","promisePool","_websocket","undefined","wsClosed","latestLog","latestMessage","open","Promise","resolve","reject","console","warn","WebSocket","onopen","e","ws","onerror","onclose","onmessage","res","data","msg","JSON","parse","token","action","status","bench_id","msg_id","method","emit","req","benchId","err","stringify","error","close","send","params","genMsgId","msgObj","readyState","rand","Math","random","toString","substr","connectBench","connectParam","disconnectBench","getImage","id","screenType","screen_type","singleFingerTouch","x","y","debug","log","singleFingerDrag","x1","y1","x2","y2","singleFingerLongTouch","duration","subscribeBenchStatus","unsubscribeBenchStatus","planExecute","play_audio","bench_ids","benchIds","stop_play_audio","collect_audio","stop_collect_audio","press_ptt","connect_audio_device"],"sources":["/Users/mac/projects/mime/mine/src/service/ws.js"],"sourcesContent":["import bus from \"./bus\";\nexport default class wsService {\n constructor() {\n // const wsUrl = ref(\"ws://172.16.50.3/websocket\");\n // this.address = \"ws://172.16.50.3/websocket\";\n this.address = \"ws://106.14.237.165/websocket\";\n this.promisePool = {};\n this._websocket = undefined;\n this.wsClosed = false;\n this.latestLog = \"\";\n this.latestMessage = \"\";\n }\n\n open() {\n return new Promise((resolve, reject) => {\n console.warn(this.address);\n if (typeof this._websocket === \"undefined\") {\n this._websocket = new WebSocket(this.address);\n this._websocket.onopen = e => {\n this.wsClosed = false;\n resolve({ e, ws: this });\n };\n this._websocket.onerror = e => {\n reject(e);\n };\n }\n\n this._websocket.onclose = e => {\n reject(e);\n this.wsClosed = true;\n // bus.emit(\"websocket-onclose\", e);\n };\n\n this._websocket.onmessage = res => {\n if (res.data) {\n let msg = JSON.parse(res.data);\n\n let [token, action, status, bench_id, data] = [\n msg.msg_id,\n msg.method,\n msg.status,\n msg.bench_id,\n msg.data\n ];\n // console.log(action != \"play_audio\");\n // if (action != \"get_image\" && action != \"play_audio\" && action != \"collect_audio\") {\n // console.log(\"onmessage\", action);\n // }\n\n // handle message subscribtion\n if (action == \"notify_im\") {\n if (status === \"WS_OK\") {\n bus.emit(\"newMessage\", data);\n }\n } else if (action == \"notify_bench_status\") {\n // console.log('notify_bench_status', data);\n // handle log subscribtion\n if (status === \"WS_OK\") {\n bus.emit(\"newLog\", JSON.parse(data));\n }\n } else {\n const req = this.promisePool[token];\n if (status === \"WS_OK\") {\n if (action == \"collect_audio\") {\n bus.emit(\"sendAudio\" + bench_id, { data, bench_id });\n // bus.emit(\"sendAudio\", { data, bench_id });\n }\n if (this.promisePool[token]) {\n let benchId = this.promisePool[token][\n \"bench_id\"\n ];\n req.resolve({ data: data, benchId });\n delete this.promisePool[token];\n }\n } else {\n let err = { action, data: JSON.stringify(data) };\n console.error(err);\n // req.reject(err);\n }\n }\n }\n };\n });\n }\n\n close() {\n this._websocket.close();\n }\n\n send(method, params) {\n if (!method) {\n console.error(\"no method assigned\");\n } else {\n let bench_id = params.bench_id;\n let msg_id = this.genMsgId();\n let msgObj = {\n msg_id: msg_id,\n method: method,\n ...params\n };\n let msg = JSON.stringify(msgObj);\n // if (!(method == \"get_image\" || method == \"play_audio\")) {\n // console.log(`< ${method} > ${msg}`);\n // }\n return new Promise((resolve, reject) => {\n this.promisePool[msg_id] = {\n bench_id,\n resolve,\n reject\n };\n if (this._websocket.readyState == 1) {\n // console.log(\"this._websocket.readyState == 1\");\n // if (!this.wsClosed) {\n // console.log('msg',msg);\n this._websocket.send(msg);\n }\n // setTimeout(() => {\n // console.log('this._websocket.readyState2', this._websocket.readyState);\n // }, 100)\n });\n }\n }\n\n genMsgId() {\n let rand = Math.random()\n .toString(36)\n .substr(2);\n return \"request_\" + rand;\n }\n\n connectBench(connectParam) {\n let res = this.send(\"connect_bench\", connectParam);\n return res;\n }\n\n disconnectBench(connectParam) {\n let res = this.send(\"disconnect_bench\", connectParam);\n return res;\n }\n\n getImage(id, screenType) {\n return this.send(\"get_image\", {\n bench_id: id,\n screen_type: screenType\n });\n }\n\n singleFingerTouch(id, x, y, screenType = 1, debug = false) {\n console.log('tag',id,x,y)\n return this.send(\"single_finger_touch\", {\n bench_id:id,\n x: x,\n y: y,\n screen_type: screenType,\n debug: debug\n });\n }\n\n singleFingerDrag(id, x1, y1, x2, y2, screenType = 1, debug = false) {\n return this.send(\"single_finger_drag\", {\n bench_id: id,\n x1: x1,\n y1: y1,\n x2: x2,\n y2: y2,\n screen_type: screenType,\n debug: debug\n });\n }\n\n singleFingerLongTouch(id, x, y, duration, screenType = 1, debug = false) {\n return this.send(\"single_finger_long_touch\", {\n bench_id: id,\n x: x,\n y: y,\n duration: duration,\n screen_type: screenType,\n debug: debug\n });\n }\n\n subscribeBenchStatus(id) {\n return this.send(\"subscribe_bench_status\", id);\n }\n\n unsubscribeBenchStatus(id) {\n return this.send(\"unsubscribe_bench_status\", id);\n }\n\n planExecute(id) {\n return this.send(\"plan-execute\", {\n bench_id: id,\n });\n }\n\n play_audio(data) {\n return this.send(\"play_audio\", {\n bench_id: \"\",\n bench_ids: data.benchIds,\n data: data.data\n });\n }\n\n stop_play_audio(data) {\n return this.send(\"stop_play_audio\", {\n bench_id: data.benchId,\n });\n }\n\n collect_audio(data) {\n return this.send(\"collect_audio\", {\n bench_id: data.benchId,\n });\n }\n\n stop_collect_audio(data) {\n return this.send(\"stop_collect_audio\", {\n bench_id: data.benchId,\n });\n }\n\n press_ptt(data) {\n return this.send(\"press_ptt\", {\n bench_id: data.benchId,\n });\n }\n\n connect_audio_device(data) {\n return this.send(\"connect_audio_device\", {\n bench_id: data.benchId,\n });\n }\n\n}"],"mappings":"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"},"metadata":{},"sourceType":"module","externalDependencies":[]}
|