import { Module } from '@nestjs/common'; import { BullModule } from '@nestjs/bull'; import { DbModule } from './db/db.module'; import { DeviceModule } from './device/device.module'; import { CloudModule } from './cloud/cloud.module'; import { ManagementModule } from './management/management.module'; import { ClientModule } from './client/client.module'; import { MainController } from './main.controller'; import { ConfigModule, ConfigService } from '@nestjs/config'; import { HeartBeatCron } from './heart-beat.cron'; import { SocketModule } from './socket/socket.module'; @Module({ imports: [ BullModule.forRootAsync({ imports: [ConfigModule], useFactory: (config: ConfigService) => { return { redis: { host: config.get('REDIS_HOST'), port: config.get('REDIS_PORT') } }; }, inject: [ConfigService] }), DbModule, DeviceModule, CloudModule, ManagementModule, ClientModule, SocketModule ], controllers: [MainController], providers: [HeartBeatCron] }) export class AppModule { }