This commit is contained in:
faris Aljohari
2024-07-30 14:14:58 +03:00
parent 0b7934e9cc
commit 8cb131f395
19 changed files with 760 additions and 14 deletions

View File

@ -1,8 +1,7 @@
import { Injectable } from '@nestjs/common';
import TuyaWebsocket from '../../config/tuya-web-socket-config';
import { ConfigService } from '@nestjs/config';
import { OneSignalService } from './onesignal.service';
import { DeviceMessagesService } from './device.messages.service';
import { DeviceStatusMongoService } from '@app/common/mongoose/devices-status/services/devices-status.service';
@Injectable()
export class TuyaWebSocketService {
@ -10,8 +9,7 @@ export class TuyaWebSocketService {
constructor(
private readonly configService: ConfigService,
private readonly oneSignalService: OneSignalService,
private readonly deviceMessagesService: DeviceMessagesService,
private readonly deviceStatusMongoService: DeviceStatusMongoService,
) {
// Initialize the TuyaWebsocket client
this.client = new TuyaWebsocket({
@ -39,10 +37,11 @@ export class TuyaWebSocketService {
this.client.message(async (ws: WebSocket, message: any) => {
try {
await this.deviceMessagesService.getDevicesUserNotifications(
message.payload.data.bizData.devId,
message.payload.data.bizData,
);
await this.deviceStatusMongoService.addDeviceStatusToMongo({
deviceTuyaUuid: message.payload.data.bizData.devId,
status: message.payload.data.bizData.properties,
});
this.client.ackMessage(message.messageId);
} catch (error) {
console.error('Error processing message:', error);