add processing of pushed packets. The _header.id prop but be set to 'pushed' instead of id of the packet generated by send
parent
b6be936f44
commit
7b7872cb64
|
@ -39,6 +39,14 @@ class Consumer extends EventEmitter {
|
||||||
listen (func) {
|
listen (func) {
|
||||||
this.socket.addEventListener('message', handler.bind(this))
|
this.socket.addEventListener('message', handler.bind(this))
|
||||||
|
|
||||||
|
this.on('pushed',async function(packet){
|
||||||
|
// TODO do some extra security here?
|
||||||
|
let res = await this._packetProcess(packet)
|
||||||
|
if (!res) { // if process was not promise returning like just logged to console
|
||||||
|
console.log('warning: consumer process function was not promise returning')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
function handler (event) {
|
function handler (event) {
|
||||||
let packet = {}
|
let packet = {}
|
||||||
if (this.socket.readyState === 1) {
|
if (this.socket.readyState === 1) {
|
||||||
|
@ -67,7 +75,6 @@ class Consumer extends EventEmitter {
|
||||||
this.socket.send(message)
|
this.socket.send(message)
|
||||||
// listen for when packet comes back with unique header id
|
// listen for when packet comes back with unique header id
|
||||||
this.once(packet._header.id, async function (reply) {
|
this.once(packet._header.id, async function (reply) {
|
||||||
// console.log('reply emitted', reply)
|
|
||||||
let res = await this._packetProcess(reply)
|
let res = await this._packetProcess(reply)
|
||||||
if (!res) { // if process was not promise returning like just logged to console
|
if (!res) { // if process was not promise returning like just logged to console
|
||||||
res = reply
|
res = reply
|
||||||
|
@ -86,6 +93,7 @@ class Consumer extends EventEmitter {
|
||||||
async _packetProcess (packet) {
|
async _packetProcess (packet) {
|
||||||
return Promise.resolve(packet)
|
return Promise.resolve(packet)
|
||||||
}
|
}
|
||||||
|
|
||||||
} // end Consumer Class
|
} // end Consumer Class
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@uci/websocket-client",
|
"name": "@uci/websocket-client",
|
||||||
"version": "0.1.2",
|
"version": "0.1.3",
|
||||||
"description": "JSON packet browser client over web socket",
|
"description": "JSON packet browser client over web socket",
|
||||||
"main": "browser-client",
|
"main": "browser-client",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
|
|
Loading…
Reference in New Issue