fix merge

This commit is contained in:
Peter Maquiran
2022-01-28 16:26:21 +01:00
23 changed files with 596 additions and 423 deletions
+87 -4
View File
@@ -228,8 +228,59 @@ export class WsChatService {
}
joinRoom(){}
deleteMessage() {}
createRoom() {}
deleteMessage(msgId) {
const requestId = uuidv4();
var message = {
msg: "method",
method: "deleteMessage",
id: requestId,
params:[{"_id":msgId}]
}
this.ws.send({message, requestId});
return new Promise ((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message) =>{
if(message.id == requestId || deepFind(message, 'result') == requestId){
resolve(message)
return true
}
}})
});
}
createPrivateRoom(groupName, username, customFields) {
const requestId = uuidv4()
var message = {
msg: "method",
method: "createPrivateGroup",
id: requestId,
params: [
groupName,
[username],
false,
customFields,
{
"broadcast":false,
"encrypted":false
}
]
}
this.ws.send({message, requestId});
return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
if(message.id == requestId || deepFind(message,'result.id') == requestId) { // same request send
resolve(message)
return true
}
}})
});
}
sendStreamNotifyRoom(roomId : string, username, event: 'typing', param: any) {
@@ -374,15 +425,20 @@ export class WsChatService {
}
receiveLiveMessageFromRoom(roomId, funx: Function) {
upateRoomEvents(roomId, collection:string, funx: Function, ) {
this.ws.registerCallback({
type:'Onmessage',
funx:(message)=>{
if(message.msg =='changed' && message.collection == 'stream-room-messages') {
//console.log(message);
if(message.msg =='changed' && message.collection == collection) {
if(message.fields.args[0].rid == roomId) {
funx(message)
}
else if(message.fields.eventName ==`${roomId}/deleteMessage`){
funx(message)
}
}
}
})
@@ -469,6 +525,33 @@ export class WsChatService {
}
streamNotifyRoomDeleteMessage(roomId:string) {
const requestId = uuidv4()
let message = {
"msg": "sub",
"id": requestId,
"name": "stream-notify-room",
"params": [
`${roomId}/deleteMessage`,
true
]
};
this.ws.send({message, requestId})
return new Promise((resolve, reject) => {
this.ws.registerCallback({type:'Onmessage', funx:(message)=>{
if(message.id == requestId || deepFind(message,'result.id') == requestId) { // same request send
resolve(message)
return true
}
}})
});
}
registerCallback(data:wsCallbacksParams) {
return this.ws.registerCallback(data)
}