mirror of
https://code.equilibrium.co.ao/ITO/doneit-web.git
synced 2026-04-20 05:16:07 +00:00
improve
This commit is contained in:
@@ -193,6 +193,57 @@ class _RocketChatClientService {
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @param roomId
|
||||
* @param key
|
||||
* @param funx
|
||||
*/
|
||||
receiveLiveMessageFromRoom(roomId, key, funx: Function) {
|
||||
|
||||
this.ws.registerCallback({
|
||||
type:'Onmessage',
|
||||
requestId: key,
|
||||
funx:(message)=>{
|
||||
if(message.msg =='result') {
|
||||
if(message.result.msg) {
|
||||
if(message.result.rid == roomId) {
|
||||
funx(message)
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
}
|
||||
|
||||
streamRoomMessages(roomId : string) {
|
||||
|
||||
const conditions = this.attemptRequestQueue({roomId},{methodName: 'subscribe'})
|
||||
if(conditions == false) { return new Promise((resolve, reject) => { reject('no error')}); }
|
||||
|
||||
const requestId = uuidv4()
|
||||
|
||||
const request = {
|
||||
"msg": "sub",
|
||||
"id": requestId,
|
||||
"name": "stream-room-messages",
|
||||
"params":[
|
||||
`${roomId}/event`,
|
||||
false
|
||||
]
|
||||
}
|
||||
|
||||
this.ws.send(request);
|
||||
|
||||
return new Promise((resolve, reject) => {
|
||||
this.ws.registerCallback({type:'Onmessage', requestId, runOnces: true, funx:(message)=>{
|
||||
if(message.msg == 'ready' || message.subs[0] == requestId) { // same request send
|
||||
resolve(message)
|
||||
}
|
||||
}})
|
||||
});
|
||||
}
|
||||
|
||||
streamNotifyRoom(roomId : string) {
|
||||
const conditions = this.attemptRequestQueue({roomId},{methodName: 'subscribe'})
|
||||
if(conditions == false) { return new Promise((resolve, reject) => { reject('no error')}); }
|
||||
@@ -221,10 +272,6 @@ class _RocketChatClientService {
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private disconnect = () => {
|
||||
|
||||
}
|
||||
|
||||
// socket class ==================================================================
|
||||
private socket!: WebSocket;
|
||||
|
||||
Reference in New Issue
Block a user