add telemetry

This commit is contained in:
Peter Maquiran
2024-10-29 16:00:19 +01:00
parent 0c6fa3118e
commit eedb66a1cf
11 changed files with 110 additions and 34 deletions
@@ -11,7 +11,7 @@ import { MessageCreateOutPutDataDTO, MessageInputDTO } from '../../../../../core
import { MessageMarkAsReadInput } from '../../../../../core/chat/usecase/message/message-mark-as-read-use-case.service';
import { MessageOutPutDataDTO } from 'src/app/core/chat/repository/dto/messageOutputDTO';
import { MessageDeleteInputDTO } from '../../../../../core/chat/usecase/message/message-delete-by-id-live-use-case.service';
import { BehaviorSubject, Observable } from 'rxjs';
import { BehaviorSubject } from 'rxjs';
interface sendDeliverAt {
memberId: number,
@@ -140,13 +140,17 @@ export class MessageSocketRepositoryService implements IMessageSocketRepository
reactToMessageSocket(data: MessageReactionInput) {
this.socket.sendData({
data['requestId'] = InstanceId +'@'+ uuidv4();
return this.socket.sendData({
method: 'ReactMessage',
data
})
}
updateMessage(input: MessageUpdateInput) {
input['requestId'] = InstanceId +'@'+ uuidv4();
this.socket.sendData({
method: 'EditMessage',
data: input,
@@ -2,12 +2,12 @@ import { Injectable } from '@angular/core';
import { liveQuery } from 'Dexie';
import { MessageEntity } from '../../../../../core/chat/entity/message';
import { DexieRepository } from 'src/app/infra/repository/dexie/dexie-repository.service';
import { Observable as DexieObservable, PromiseExtended } from 'Dexie';
import { PromiseExtended } from 'Dexie';
import { DexieMessageTable, MessageTable, MessageTableSchema } from 'src/app/infra/database/dexie/instance/chat/schema/message';
import { chatDatabase } from 'src/app/infra/database/dexie/instance/chat/service';
import { IDirectMessages, IMessageLocalRepository } from 'src/app/core/chat/repository/message/message-local-repository';
import { BehaviorSubject, combineLatest, from, Observable, Subject } from 'rxjs';
import { filter, map } from 'rxjs/operators';
import { combineLatest, from, Observable, Subject } from 'rxjs';
import { map } from 'rxjs/operators';
import { v4 as uuidv4 } from 'uuid'
import { err, ok } from 'neverthrow';
@@ -8,9 +8,8 @@ import { NotificationListMapper } from '../domain/mapper/notificationListMapper'
import { NotificationTable } from './infra/db/notification.db';
import { Observable, Subject } from 'rxjs';
import { filter } from 'rxjs/operators';
import { NotificationMapper } from '../domain/mapper/notificationMapper';
import { NotificationLive } from './dto/NotificationLiveOutputDTO';
import { NotificationReceiveService } from 'src/app/core/notification/use-case/notification-receive.service'
@Injectable({
providedIn: 'root'
})
@@ -21,16 +20,15 @@ export class NotificationRepositoryService {
constructor(
private RemoteNotificationService: RemoteNotificationService,
private FirebasePushNotificationService: FirebasePushNotificationService,
private LocalNotificationService: LocalNotificationService
private LocalNotificationService: LocalNotificationService,
private NotificationReceiveService: NotificationReceiveService
) {
this.FirebasePushNotificationService.onReceiveForeground(async (data)=> {
this.notificationSubject.next(NotificationMapper(data));
this.NotificationReceiveService.execute((data) => {
console.log('FirebasePushNotificationService', data)
this.init()
this.init();
})
if(SessionStore.user.UserId) {
this.init()
}