Merge branch 'feature/websocket' of bitbucket.org:equilibriumito/gabinete-digital into feature/websocket

This commit is contained in:
Peter Maquiran
2022-01-14 10:38:29 +01:00
14 changed files with 51 additions and 80 deletions
-41
View File
@@ -8,7 +8,6 @@ import { environment } from 'src/environments/environment';
import { Storage } from '@ionic/storage';
import { Message } from 'src/app/models/message.model';
import { Observable, Subject } from "rxjs/Rx";
import { WebsocketService } from './websocket.service';
@Injectable({
providedIn: 'root'
@@ -31,7 +30,6 @@ export class ChatService {
private authService: AuthService,
private storage: Storage,
private storageService:StorageService,
private wsService: WebsocketService,
)
{
this.loggedUserChat = authService.ValidatedUserChat;
@@ -42,45 +40,6 @@ export class ChatService {
headers: this.headers,
};
/* console.log("CHAT SERVICE");
wsService.messages = <Subject<any>>this.wsService
.connect(environment.apiWsChatUrl)
.map((response: MessageEvent): any => {
let data = JSON.parse(response.data);
console.log(data);
if(data.msg == 'ping'){
wsService.messages.next({msg:'pong'});
if(!this.authService.isWsAuthenticated){
//this.authService.loginWsChat();
let msg = {
"msg": "method",
"method": "login",
"id":"1",
"params":[
{
"user": { "username": "paulo.pinto" },
"password": "tabteste@006"
}
]
}
wsService.messages.next(msg);
console.log('Authenticate');
this.authService.isWsAuthenticated = true;
}
//this.authService.loginWsChat();
}
if(data.id == '1'){
this.authService.wsValidatedUserChat = data;
}
return (JSON.stringify(data));
});
console.log(wsService.messages) */;
}
getDocumentDetails(url:string){
+3 -1
View File
@@ -7,6 +7,7 @@ import { chatHistory, ChatMessage, File } from 'src/app/models/chatMethod'
})
export class MessageService {
customFields
channels = []
mentions = []
msg = ''
@@ -20,7 +21,8 @@ export class MessageService {
constructor() { }
setData({channels, mentions, msg ,rid ,ts, u, _id, _updatedAt, file, attachments}:Message) {
setData({customFields, channels, mentions, msg ,rid ,ts, u, _id, _updatedAt, file, attachments}:Message) {
this.customFields = customFields
this.channels = channels
this.mentions = mentions
this.msg = msg
+7 -5
View File
@@ -14,12 +14,13 @@ export class RoomService {
lastMessage: MessageService;
chatUser: ChatUserService[] = []
customFields:any;
id = ''
name = ''
_updatedAt = {}
private hasLoadHistory = false
duration = ''
private ToastService = ToastsService
constructor(
@@ -27,7 +28,8 @@ export class RoomService {
private MessageService: MessageService,
) {}
setData({id, name, lastMessage, _updatedAt}) {
setData({customFields, id, name, lastMessage, _updatedAt}) {
this.customFields = customFields
this.id = id
this.name = name
this.lastMessage = lastMessage
@@ -62,17 +64,17 @@ export class RoomService {
this.WsChatService.loadHistory(this.id, limit).then((chatHistory:chatHistory) => {
console.log('loadHistory', chatHistory)
chatHistory.result.messages.reverse().forEach(message => {
message = this.fix_updatedAt(message)
const wewMessage = new MessageService()
wewMessage.setData(message)
this.massages.push(wewMessage)
});
})
})
this.hasLoadHistory = true
}
@@ -36,7 +36,7 @@ export class WsChatMethodsService {
this.loadingWholeList = true
const rooms = await this.WsChatService.getRooms();
// console.log("ROOMS" + JSON.stringify(rooms))
rooms.result.update.forEach((roomData: room) => {
@@ -47,10 +47,11 @@ export class WsChatMethodsService {
room = new RoomService(this.WsChatService, new MessageService())
room.setData({
customFields: roomData.customFields,
id: this.getRoomId(roomData),
name: this.getRoomName(roomData),
lastMessage: this.getRoomLastMessage(roomData),
_updatedAt: roomData._updatedAt['$date']
_updatedAt: new Date(roomData._updatedAt['$date'])
})
room.receiveMessage()
@@ -65,10 +66,10 @@ export class WsChatMethodsService {
this.groupCount++
}
});
console.log('this.group', this.group)
this.loadingWholeList = false
}
@@ -87,12 +88,16 @@ export class WsChatMethodsService {
}
}
getRoom(id): RoomService {
getDmRoom(id): RoomService {
try {
return this.dm[id]
} catch(e) {
} catch(e) {}
}
getGroupRoom(id): RoomService {
try {
return this.group[id]
}
} catch(e) {}
}
getRoomName(roomData: room) {