make code cleaner

This commit is contained in:
Peter Maquiran
2022-01-12 22:07:55 +01:00
parent 87b03e3b4b
commit 8287580a13
2 changed files with 32 additions and 25 deletions
@@ -11,4 +11,10 @@ export interface msgQueue {
message: object, message: object,
requestId: string, requestId: string,
loginRequired: boolean loginRequired: boolean
}
export interface send {
message: object
requestId?: string
loginRequired: boolean
} }
+26 -25
View File
@@ -1,6 +1,6 @@
import { Injectable } from '@angular/core'; import { Injectable } from '@angular/core';
import { v4 as uuidv4 } from 'uuid' import { v4 as uuidv4 } from 'uuid'
import { wsCallbacksParams, msgQueue } from 'src/app/models/rochet-chat-cliente-service' import { wsCallbacksParams, msgQueue, send } from 'src/app/models/rochet-chat-cliente-service'
import { deepFind } from 'src/plugin/deep' import { deepFind } from 'src/plugin/deep'
import { environment } from 'src/environments/environment'; import { environment } from 'src/environments/environment';
import { SessionStore } from 'src/app/store/session.service'; import { SessionStore } from 'src/app/store/session.service';
@@ -15,24 +15,24 @@ export class WsChatService {
constructor() {} constructor() {}
connect() { connect() {
this.ws.connect(); this.ws.connect();
const connectMessage = { const message = {
msg: "connect", msg: "connect",
version: "1", version: "1",
support: ["1"] support: ["1"]
} }
this.ws.send(connectMessage, 'connectMessage', false) this.ws.send({message, loginRequired: false})
this.ws.send({msg:"pong"}, 'pong', false) this.ws.send({message:{msg:"pong"}, loginRequired: false})
this.ws.registerCallback({ this.ws.registerCallback({
type:'Onmessage', type:'Onmessage',
key: this.constructor.name+'ping/pong', key: this.constructor.name+'ping/pong',
funx:(message: any) => { funx:(message: any) => {
if(message.msg == "ping") { if(message.msg == "ping") {
this.ws.send({msg:"pong"},'reconnect', false) this.ws.send({message:{msg:"pong"}, loginRequired: false})
} }
} }
}) })
@@ -42,7 +42,7 @@ export class WsChatService {
login() { login() {
const requestId = uuidv4() const requestId = uuidv4()
const loginRequest = { const message = {
msg: "method", msg: "method",
method: "login", method: "login",
id: requestId, id: requestId,
@@ -53,7 +53,8 @@ export class WsChatService {
} }
] ]
} }
this.ws.send(loginRequest, requestId, false) this.ws.send({message, requestId, loginRequired: false})
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', requestId, funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', requestId, funx:(message)=>{
@@ -83,14 +84,14 @@ export class WsChatService {
const requestId = uuidv4() const requestId = uuidv4()
const request = { const message = {
"msg": "method", "msg": "method",
"method": "rooms/get", "method": "rooms/get",
"id": requestId, "id": requestId,
"params": [ { "$date": 1480377601 } ] "params": [ { "$date": 1480377601 } ]
} }
this.ws.send(request, requestId, true) this.ws.send({message, requestId, loginRequired: true})
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
@@ -104,22 +105,22 @@ export class WsChatService {
logout() {} logout() {}
send(roomId, message) { send(roomId, msg) {
const requestId = uuidv4() const requestId = uuidv4()
var request = { var message = {
msg: "method", msg: "method",
method: "sendMessage", method: "sendMessage",
id: requestId, id: requestId,
params: [{ params: [{
_id: uuidv4(), _id: uuidv4(),
rid: roomId, rid: roomId,
msg: message msg: msg
}] }]
} }
this.ws.send(request, requestId, true); this.ws.send({message, requestId, loginRequired: true});
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', requestId, funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', requestId, funx:(message)=>{
@@ -141,7 +142,7 @@ export class WsChatService {
const requestId = uuidv4() const requestId = uuidv4()
const request = { const message = {
msg: "method", msg: "method",
method: "loadHistory", method: "loadHistory",
id: requestId, id: requestId,
@@ -155,7 +156,7 @@ export class WsChatService {
] ]
} }
this.ws.send(request, requestId, true) this.ws.send({message, requestId, loginRequired: true})
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
@@ -172,7 +173,7 @@ export class WsChatService {
const requestId = uuidv4() const requestId = uuidv4()
var subscribeRequest = { var message = {
"msg": "sub", "msg": "sub",
"id": requestId, "id": requestId,
"name": "stream-notify-room", "name": "stream-notify-room",
@@ -182,7 +183,7 @@ export class WsChatService {
] ]
} }
this.ws.send(subscribeRequest, requestId, true); this.ws.send({message, requestId, loginRequired: true});
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
@@ -221,7 +222,7 @@ export class WsChatService {
const requestId = uuidv4() const requestId = uuidv4()
const request = { const message = {
"msg": "sub", "msg": "sub",
"id": requestId, "id": requestId,
"name": "stream-room-messages", "name": "stream-room-messages",
@@ -231,7 +232,7 @@ export class WsChatService {
] ]
} }
this.ws.send(request, requestId, true); this.ws.send({message, requestId, loginRequired: true});
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
@@ -247,7 +248,7 @@ export class WsChatService {
const requestId = uuidv4() const requestId = uuidv4()
let streamNotifyObj = { let message = {
"msg": "method", "msg": "method",
"method": "stream-notify-room", "method": "stream-notify-room",
"id": requestId, "id": requestId,
@@ -258,7 +259,7 @@ export class WsChatService {
] ]
}; };
this.ws.send(streamNotifyObj, requestId, true) this.ws.send({message, requestId, loginRequired: true})
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{ this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
@@ -310,16 +311,16 @@ export class WsChatService {
if(item.loginRequired == true && this.isLogin == true) { if(item.loginRequired == true && this.isLogin == true) {
// console.log('run msgQueue ',index) // console.log('run msgQueue ',index)
this.ws.send(item.message, item.requestId, item.loginRequired); this.ws.send(item);
delete this.wsMsgQueue[key] delete this.wsMsgQueue[key]
} else if(item.loginRequired == false) { } else if(item.loginRequired == false) {
// console.log('run msgQueue ',index) // console.log('run msgQueue ',index)
this.ws.send(item.message, item.requestId, item.loginRequired); this.ws.send(item);
delete this.wsMsgQueue[key] delete this.wsMsgQueue[key]
} }
} }
}, },
send: (message: object, requestId = uuidv4(), loginRequired) => { send: ({message, requestId = uuidv4(), loginRequired = false}:send) => {
if (this.ws.connected == false || loginRequired == true && this.isLogin == false) { // save data to send when back online if (this.ws.connected == false || loginRequired == true && this.isLogin == false) { // save data to send when back online
// console.log('save msgQueue this.ws.connected == false || loginRequired == true && this.isLogin == false',this.ws.connected, loginRequired, this.isLogin) // console.log('save msgQueue this.ws.connected == false || loginRequired == true && this.isLogin == false',this.ws.connected, loginRequired, this.isLogin)