diff --git a/.env.example b/.env.example index 9e7ad91f..d1695c94 100644 --- a/.env.example +++ b/.env.example @@ -66,6 +66,8 @@ RABBITMQ_EVENTS_GROUPS_UPSERT=false RABBITMQ_EVENTS_GROUP_UPDATE=false RABBITMQ_EVENTS_GROUP_PARTICIPANTS_UPDATE=false RABBITMQ_EVENTS_CONNECTION_UPDATE=false +RABBITMQ_EVENTS_REMOVE_INSTANCE=false +RABBITMQ_EVENTS_LOGOUT_INSTANCE=false RABBITMQ_EVENTS_CALL=false RABBITMQ_EVENTS_TYPEBOT_START=false RABBITMQ_EVENTS_TYPEBOT_CHANGE_STATUS=false @@ -116,6 +118,8 @@ WEBHOOK_EVENTS_GROUPS_UPSERT=true WEBHOOK_EVENTS_GROUPS_UPDATE=true WEBHOOK_EVENTS_GROUP_PARTICIPANTS_UPDATE=true WEBHOOK_EVENTS_CONNECTION_UPDATE=true +WEBHOOK_EVENTS_REMOVE_INSTANCE=false +WEBHOOK_EVENTS_LOGOUT_INSTANCE=false WEBHOOK_EVENTS_LABELS_EDIT=true WEBHOOK_EVENTS_LABELS_ASSOCIATION=true WEBHOOK_EVENTS_CALL=true diff --git a/CHANGELOG.md b/CHANGELOG.md index 75e86eb9..2c83981b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,6 +5,10 @@ * Improved layout manager * Translation in manager: English, Portuguese, Spanish and French +### Fixed + +* Refactor websocket structure + # 2.0.10 (2024-08-16 16:23) ### Features diff --git a/README.md b/README.md index 0bb6d7e7..ea6c6bf2 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,7 @@ [![Documentation](https://img.shields.io/badge/Documentation-Official-green)](https://doc.evolution-api.com) [![License](https://img.shields.io/badge/license-GPL--3.0-orange)](./LICENSE) [![Support](https://img.shields.io/badge/Donation-picpay-green)](https://app.picpay.com/user/davidsongomes1998) -[![Support](https://img.shields.io/badge/Buy%20me-coffe-orange)](https://bmc.link/evolutionapi) +[![Sponsors](https://img.shields.io/badge/Github-sponsor-orange)](https://github.com/sponsors/EvolutionAPI) @@ -79,6 +79,10 @@ Join our Evolution Pro community for expert support and a weekly call to answer # Donate to the project. +#### Github Sponsors + +https://github.com/sponsors/EvolutionAPI + #### PicPay
diff --git a/src/api/controllers/instance.controller.ts b/src/api/controllers/instance.controller.ts index c3657142..fe468d6d 100644 --- a/src/api/controllers/instance.controller.ts +++ b/src/api/controllers/instance.controller.ts @@ -1,8 +1,8 @@ import { InstanceDto, SetPresenceDto } from '@api/dto/instance.dto'; -import { ChatwootService } from '@api/integrations/chatwoot/services/chatwoot.service'; -import { RabbitmqService } from '@api/integrations/rabbitmq/services/rabbitmq.service'; -import { SqsService } from '@api/integrations/sqs/services/sqs.service'; -import { WebsocketController } from '@api/integrations/websocket/controllers/websocket.controller'; +import { ChatwootService } from '@api/integrations/chatbot/chatwoot/services/chatwoot.service'; +import { RabbitmqService } from '@api/integrations/event/rabbitmq/services/rabbitmq.service'; +import { SqsService } from '@api/integrations/event/sqs/services/sqs.service'; +import { WebsocketController } from '@api/integrations/event/websocket/controllers/websocket.controller'; import { ProviderFiles } from '@api/provider/sessions'; import { PrismaRepository } from '@api/repository/repository.service'; import { AuthService } from '@api/services/auth.service'; diff --git a/src/api/integrations/chatwoot/controllers/chatwoot.controller.ts b/src/api/integrations/chatbot/chatwoot/controllers/chatwoot.controller.ts similarity index 94% rename from src/api/integrations/chatwoot/controllers/chatwoot.controller.ts rename to src/api/integrations/chatbot/chatwoot/controllers/chatwoot.controller.ts index 1abccc4b..afe2dcba 100644 --- a/src/api/integrations/chatwoot/controllers/chatwoot.controller.ts +++ b/src/api/integrations/chatbot/chatwoot/controllers/chatwoot.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { ChatwootDto } from '@api/integrations/chatwoot/dto/chatwoot.dto'; -import { ChatwootService } from '@api/integrations/chatwoot/services/chatwoot.service'; +import { ChatwootDto } from '@api/integrations/chatbot/chatwoot/dto/chatwoot.dto'; +import { ChatwootService } from '@api/integrations/chatbot/chatwoot/services/chatwoot.service'; import { PrismaRepository } from '@api/repository/repository.service'; import { waMonitor } from '@api/server.module'; import { CacheService } from '@api/services/cache.service'; diff --git a/src/api/integrations/chatwoot/dto/chatwoot.dto.ts b/src/api/integrations/chatbot/chatwoot/dto/chatwoot.dto.ts similarity index 100% rename from src/api/integrations/chatwoot/dto/chatwoot.dto.ts rename to src/api/integrations/chatbot/chatwoot/dto/chatwoot.dto.ts diff --git a/src/api/integrations/chatwoot/libs/postgres.client.ts b/src/api/integrations/chatbot/chatwoot/libs/postgres.client.ts similarity index 100% rename from src/api/integrations/chatwoot/libs/postgres.client.ts rename to src/api/integrations/chatbot/chatwoot/libs/postgres.client.ts diff --git a/src/api/integrations/chatwoot/routes/chatwoot.router.ts b/src/api/integrations/chatbot/chatwoot/routes/chatwoot.router.ts similarity index 95% rename from src/api/integrations/chatwoot/routes/chatwoot.router.ts rename to src/api/integrations/chatbot/chatwoot/routes/chatwoot.router.ts index f71e6294..51b23ab5 100644 --- a/src/api/integrations/chatwoot/routes/chatwoot.router.ts +++ b/src/api/integrations/chatbot/chatwoot/routes/chatwoot.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { ChatwootDto } from '@api/integrations/chatwoot/dto/chatwoot.dto'; +import { ChatwootDto } from '@api/integrations/chatbot/chatwoot/dto/chatwoot.dto'; import { HttpStatus } from '@api/routes/index.router'; import { chatwootController } from '@api/server.module'; import { chatwootSchema, instanceSchema } from '@validate/validate.schema'; diff --git a/src/api/integrations/chatwoot/services/chatwoot.service.ts b/src/api/integrations/chatbot/chatwoot/services/chatwoot.service.ts similarity index 99% rename from src/api/integrations/chatwoot/services/chatwoot.service.ts rename to src/api/integrations/chatbot/chatwoot/services/chatwoot.service.ts index 0904ac61..f32b3764 100644 --- a/src/api/integrations/chatwoot/services/chatwoot.service.ts +++ b/src/api/integrations/chatbot/chatwoot/services/chatwoot.service.ts @@ -1,8 +1,8 @@ import { InstanceDto } from '@api/dto/instance.dto'; import { Options, Quoted, SendAudioDto, SendMediaDto, SendTextDto } from '@api/dto/sendMessage.dto'; -import { ChatwootDto } from '@api/integrations/chatwoot/dto/chatwoot.dto'; -import { postgresClient } from '@api/integrations/chatwoot/libs/postgres.client'; -import { chatwootImport } from '@api/integrations/chatwoot/utils/chatwoot-import-helper'; +import { ChatwootDto } from '@api/integrations/chatbot/chatwoot/dto/chatwoot.dto'; +import { postgresClient } from '@api/integrations/chatbot/chatwoot/libs/postgres.client'; +import { chatwootImport } from '@api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper'; import { PrismaRepository } from '@api/repository/repository.service'; import { CacheService } from '@api/services/cache.service'; import { WAMonitoringService } from '@api/services/monitor.service'; diff --git a/src/api/integrations/chatwoot/utils/chatwoot-import-helper.ts b/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts similarity index 98% rename from src/api/integrations/chatwoot/utils/chatwoot-import-helper.ts rename to src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts index 765e9cf3..f331e494 100644 --- a/src/api/integrations/chatwoot/utils/chatwoot-import-helper.ts +++ b/src/api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper.ts @@ -1,7 +1,7 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { ChatwootDto } from '@api/integrations/chatwoot/dto/chatwoot.dto'; -import { postgresClient } from '@api/integrations/chatwoot/libs/postgres.client'; -import { ChatwootService } from '@api/integrations/chatwoot/services/chatwoot.service'; +import { ChatwootDto } from '@api/integrations/chatbot/chatwoot/dto/chatwoot.dto'; +import { postgresClient } from '@api/integrations/chatbot/chatwoot/libs/postgres.client'; +import { ChatwootService } from '@api/integrations/chatbot/chatwoot/services/chatwoot.service'; import { Chatwoot, configService } from '@config/env.config'; import { Logger } from '@config/logger.config'; import { inbox } from '@figuro/chatwoot-sdk'; diff --git a/src/api/integrations/chatwoot/validate/chatwoot.schema.ts b/src/api/integrations/chatbot/chatwoot/validate/chatwoot.schema.ts similarity index 100% rename from src/api/integrations/chatwoot/validate/chatwoot.schema.ts rename to src/api/integrations/chatbot/chatwoot/validate/chatwoot.schema.ts diff --git a/src/api/integrations/dify/controllers/dify.controller.ts b/src/api/integrations/chatbot/dify/controllers/dify.controller.ts similarity index 93% rename from src/api/integrations/dify/controllers/dify.controller.ts rename to src/api/integrations/chatbot/dify/controllers/dify.controller.ts index faf0a486..dd19127f 100644 --- a/src/api/integrations/dify/controllers/dify.controller.ts +++ b/src/api/integrations/chatbot/dify/controllers/dify.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { DifyDto, DifyIgnoreJidDto } from '@api/integrations/dify/dto/dify.dto'; -import { DifyService } from '@api/integrations/dify/services/dify.service'; +import { DifyDto, DifyIgnoreJidDto } from '@api/integrations/chatbot/dify/dto/dify.dto'; +import { DifyService } from '@api/integrations/chatbot/dify/services/dify.service'; import { configService, Dify } from '@config/env.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/dify/dto/dify.dto.ts b/src/api/integrations/chatbot/dify/dto/dify.dto.ts similarity index 100% rename from src/api/integrations/dify/dto/dify.dto.ts rename to src/api/integrations/chatbot/dify/dto/dify.dto.ts diff --git a/src/api/integrations/dify/routes/dify.router.ts b/src/api/integrations/chatbot/dify/routes/dify.router.ts similarity index 99% rename from src/api/integrations/dify/routes/dify.router.ts rename to src/api/integrations/chatbot/dify/routes/dify.router.ts index 2015d6a4..017c6171 100644 --- a/src/api/integrations/dify/routes/dify.router.ts +++ b/src/api/integrations/chatbot/dify/routes/dify.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { DifyDto, DifyIgnoreJidDto, DifySettingDto } from '@api/integrations/dify/dto/dify.dto'; +import { DifyDto, DifyIgnoreJidDto, DifySettingDto } from '@api/integrations/chatbot/dify/dto/dify.dto'; import { HttpStatus } from '@api/routes/index.router'; import { difyController } from '@api/server.module'; import { diff --git a/src/api/integrations/dify/services/dify.service.ts b/src/api/integrations/chatbot/dify/services/dify.service.ts similarity index 99% rename from src/api/integrations/dify/services/dify.service.ts rename to src/api/integrations/chatbot/dify/services/dify.service.ts index b0d8464b..a1fbf21a 100644 --- a/src/api/integrations/dify/services/dify.service.ts +++ b/src/api/integrations/chatbot/dify/services/dify.service.ts @@ -1,5 +1,5 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { DifyDto, DifyIgnoreJidDto, DifySettingDto } from '@api/integrations/dify/dto/dify.dto'; +import { DifyDto, DifyIgnoreJidDto, DifySettingDto } from '@api/integrations/chatbot/dify/dto/dify.dto'; import { PrismaRepository } from '@api/repository/repository.service'; import { WAMonitoringService } from '@api/services/monitor.service'; import { Auth, ConfigService, HttpServer, S3 } from '@config/env.config'; diff --git a/src/api/integrations/dify/validate/dify.schema.ts b/src/api/integrations/chatbot/dify/validate/dify.schema.ts similarity index 100% rename from src/api/integrations/dify/validate/dify.schema.ts rename to src/api/integrations/chatbot/dify/validate/dify.schema.ts diff --git a/src/api/integrations/openai/controllers/openai.controller.ts b/src/api/integrations/chatbot/openai/controllers/openai.controller.ts similarity index 96% rename from src/api/integrations/openai/controllers/openai.controller.ts rename to src/api/integrations/chatbot/openai/controllers/openai.controller.ts index 73489805..a9e0ffc7 100644 --- a/src/api/integrations/openai/controllers/openai.controller.ts +++ b/src/api/integrations/chatbot/openai/controllers/openai.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { OpenaiCredsDto, OpenaiDto, OpenaiIgnoreJidDto } from '@api/integrations/openai/dto/openai.dto'; -import { OpenaiService } from '@api/integrations/openai/services/openai.service'; +import { OpenaiCredsDto, OpenaiDto, OpenaiIgnoreJidDto } from '@api/integrations/chatbot/openai/dto/openai.dto'; +import { OpenaiService } from '@api/integrations/chatbot/openai/services/openai.service'; import { configService, Openai } from '@config/env.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/openai/dto/openai.dto.ts b/src/api/integrations/chatbot/openai/dto/openai.dto.ts similarity index 100% rename from src/api/integrations/openai/dto/openai.dto.ts rename to src/api/integrations/chatbot/openai/dto/openai.dto.ts diff --git a/src/api/integrations/openai/routes/openai.router.ts b/src/api/integrations/chatbot/openai/routes/openai.router.ts similarity index 99% rename from src/api/integrations/openai/routes/openai.router.ts rename to src/api/integrations/chatbot/openai/routes/openai.router.ts index 17c036ac..15b468c4 100644 --- a/src/api/integrations/openai/routes/openai.router.ts +++ b/src/api/integrations/chatbot/openai/routes/openai.router.ts @@ -5,7 +5,7 @@ import { OpenaiDto, OpenaiIgnoreJidDto, OpenaiSettingDto, -} from '@api/integrations/openai/dto/openai.dto'; +} from '@api/integrations/chatbot/openai/dto/openai.dto'; import { HttpStatus } from '@api/routes/index.router'; import { openaiController } from '@api/server.module'; import { diff --git a/src/api/integrations/openai/services/openai.service.ts b/src/api/integrations/chatbot/openai/services/openai.service.ts similarity index 99% rename from src/api/integrations/openai/services/openai.service.ts rename to src/api/integrations/chatbot/openai/services/openai.service.ts index d0f50b5d..81600154 100644 --- a/src/api/integrations/openai/services/openai.service.ts +++ b/src/api/integrations/chatbot/openai/services/openai.service.ts @@ -4,7 +4,7 @@ import { OpenaiDto, OpenaiIgnoreJidDto, OpenaiSettingDto, -} from '@api/integrations/openai/dto/openai.dto'; +} from '@api/integrations/chatbot/openai/dto/openai.dto'; import { PrismaRepository } from '@api/repository/repository.service'; import { WAMonitoringService } from '@api/services/monitor.service'; import { ConfigService, Language, S3 } from '@config/env.config'; diff --git a/src/api/integrations/openai/validate/openai.schema.ts b/src/api/integrations/chatbot/openai/validate/openai.schema.ts similarity index 100% rename from src/api/integrations/openai/validate/openai.schema.ts rename to src/api/integrations/chatbot/openai/validate/openai.schema.ts diff --git a/src/api/integrations/typebot/controllers/typebot.controller.ts b/src/api/integrations/chatbot/typebot/controllers/typebot.controller.ts similarity index 95% rename from src/api/integrations/typebot/controllers/typebot.controller.ts rename to src/api/integrations/chatbot/typebot/controllers/typebot.controller.ts index b0260d1d..35d35eb2 100644 --- a/src/api/integrations/typebot/controllers/typebot.controller.ts +++ b/src/api/integrations/chatbot/typebot/controllers/typebot.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { TypebotDto, TypebotIgnoreJidDto } from '@api/integrations/typebot/dto/typebot.dto'; -import { TypebotService } from '@api/integrations/typebot/services/typebot.service'; +import { TypebotDto, TypebotIgnoreJidDto } from '@api/integrations/chatbot/typebot/dto/typebot.dto'; +import { TypebotService } from '@api/integrations/chatbot/typebot/services/typebot.service'; import { configService, Typebot } from '@config/env.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/typebot/dto/typebot.dto.ts b/src/api/integrations/chatbot/typebot/dto/typebot.dto.ts similarity index 100% rename from src/api/integrations/typebot/dto/typebot.dto.ts rename to src/api/integrations/chatbot/typebot/dto/typebot.dto.ts diff --git a/src/api/integrations/typebot/routes/typebot.router.ts b/src/api/integrations/chatbot/typebot/routes/typebot.router.ts similarity index 98% rename from src/api/integrations/typebot/routes/typebot.router.ts rename to src/api/integrations/chatbot/typebot/routes/typebot.router.ts index c3d031c3..c9bcd932 100644 --- a/src/api/integrations/typebot/routes/typebot.router.ts +++ b/src/api/integrations/chatbot/typebot/routes/typebot.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { TypebotDto, TypebotIgnoreJidDto, TypebotSettingDto } from '@api/integrations/typebot/dto/typebot.dto'; +import { TypebotDto, TypebotIgnoreJidDto, TypebotSettingDto } from '@api/integrations/chatbot/typebot/dto/typebot.dto'; import { HttpStatus } from '@api/routes/index.router'; import { typebotController } from '@api/server.module'; import { diff --git a/src/api/integrations/typebot/services/typebot.service.ts b/src/api/integrations/chatbot/typebot/services/typebot.service.ts similarity index 99% rename from src/api/integrations/typebot/services/typebot.service.ts rename to src/api/integrations/chatbot/typebot/services/typebot.service.ts index 4c7ab951..a1f6ca50 100644 --- a/src/api/integrations/typebot/services/typebot.service.ts +++ b/src/api/integrations/chatbot/typebot/services/typebot.service.ts @@ -1,5 +1,5 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { TypebotDto, TypebotIgnoreJidDto } from '@api/integrations/typebot/dto/typebot.dto'; +import { TypebotDto, TypebotIgnoreJidDto } from '@api/integrations/chatbot/typebot/dto/typebot.dto'; import { PrismaRepository } from '@api/repository/repository.service'; import { WAMonitoringService } from '@api/services/monitor.service'; import { Events } from '@api/types/wa.types'; diff --git a/src/api/integrations/typebot/validate/typebot.schema.ts b/src/api/integrations/chatbot/typebot/validate/typebot.schema.ts similarity index 100% rename from src/api/integrations/typebot/validate/typebot.schema.ts rename to src/api/integrations/chatbot/typebot/validate/typebot.schema.ts diff --git a/src/api/integrations/rabbitmq/controllers/rabbitmq.controller.ts b/src/api/integrations/event/rabbitmq/controllers/rabbitmq.controller.ts similarity index 88% rename from src/api/integrations/rabbitmq/controllers/rabbitmq.controller.ts rename to src/api/integrations/event/rabbitmq/controllers/rabbitmq.controller.ts index cb5ec71a..582e1ddc 100644 --- a/src/api/integrations/rabbitmq/controllers/rabbitmq.controller.ts +++ b/src/api/integrations/event/rabbitmq/controllers/rabbitmq.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { RabbitmqDto } from '@api/integrations/rabbitmq/dto/rabbitmq.dto'; -import { RabbitmqService } from '@api/integrations/rabbitmq/services/rabbitmq.service'; +import { RabbitmqDto } from '@api/integrations/event/rabbitmq/dto/rabbitmq.dto'; +import { RabbitmqService } from '@api/integrations/event/rabbitmq/services/rabbitmq.service'; import { configService, Rabbitmq } from '@config/env.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/rabbitmq/dto/rabbitmq.dto.ts b/src/api/integrations/event/rabbitmq/dto/rabbitmq.dto.ts similarity index 100% rename from src/api/integrations/rabbitmq/dto/rabbitmq.dto.ts rename to src/api/integrations/event/rabbitmq/dto/rabbitmq.dto.ts diff --git a/src/api/integrations/rabbitmq/libs/amqp.server.ts b/src/api/integrations/event/rabbitmq/libs/amqp.server.ts similarity index 100% rename from src/api/integrations/rabbitmq/libs/amqp.server.ts rename to src/api/integrations/event/rabbitmq/libs/amqp.server.ts diff --git a/src/api/integrations/rabbitmq/routes/rabbitmq.router.ts b/src/api/integrations/event/rabbitmq/routes/rabbitmq.router.ts similarity index 94% rename from src/api/integrations/rabbitmq/routes/rabbitmq.router.ts rename to src/api/integrations/event/rabbitmq/routes/rabbitmq.router.ts index 983008e6..d3590c1d 100644 --- a/src/api/integrations/rabbitmq/routes/rabbitmq.router.ts +++ b/src/api/integrations/event/rabbitmq/routes/rabbitmq.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { RabbitmqDto } from '@api/integrations/rabbitmq/dto/rabbitmq.dto'; +import { RabbitmqDto } from '@api/integrations/event/rabbitmq/dto/rabbitmq.dto'; import { HttpStatus } from '@api/routes/index.router'; import { rabbitmqController } from '@api/server.module'; import { instanceSchema, rabbitmqSchema } from '@validate/validate.schema'; diff --git a/src/api/integrations/rabbitmq/services/rabbitmq.service.ts b/src/api/integrations/event/rabbitmq/services/rabbitmq.service.ts similarity index 85% rename from src/api/integrations/rabbitmq/services/rabbitmq.service.ts rename to src/api/integrations/event/rabbitmq/services/rabbitmq.service.ts index e4a165d6..371aaafb 100644 --- a/src/api/integrations/rabbitmq/services/rabbitmq.service.ts +++ b/src/api/integrations/event/rabbitmq/services/rabbitmq.service.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { RabbitmqDto } from '@api/integrations/rabbitmq/dto/rabbitmq.dto'; -import { initQueues } from '@api/integrations/rabbitmq/libs/amqp.server'; +import { RabbitmqDto } from '@api/integrations/event/rabbitmq/dto/rabbitmq.dto'; +import { initQueues } from '@api/integrations/event/rabbitmq/libs/amqp.server'; import { WAMonitoringService } from '@api/services/monitor.service'; import { Logger } from '@config/logger.config'; import { Rabbitmq } from '@prisma/client'; diff --git a/src/api/integrations/rabbitmq/validate/rabbitmq.schema.ts b/src/api/integrations/event/rabbitmq/validate/rabbitmq.schema.ts similarity index 100% rename from src/api/integrations/rabbitmq/validate/rabbitmq.schema.ts rename to src/api/integrations/event/rabbitmq/validate/rabbitmq.schema.ts diff --git a/src/api/integrations/sqs/controllers/sqs.controller.ts b/src/api/integrations/event/sqs/controllers/sqs.controller.ts similarity index 90% rename from src/api/integrations/sqs/controllers/sqs.controller.ts rename to src/api/integrations/event/sqs/controllers/sqs.controller.ts index 8aaa9c0b..e31c436b 100644 --- a/src/api/integrations/sqs/controllers/sqs.controller.ts +++ b/src/api/integrations/event/sqs/controllers/sqs.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { SqsDto } from '@api/integrations/sqs/dto/sqs.dto'; -import { SqsService } from '@api/integrations/sqs/services/sqs.service'; +import { SqsDto } from '@api/integrations/event/sqs/dto/sqs.dto'; +import { SqsService } from '@api/integrations/event/sqs/services/sqs.service'; import { configService, Sqs } from '@config/env.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/sqs/dto/sqs.dto.ts b/src/api/integrations/event/sqs/dto/sqs.dto.ts similarity index 100% rename from src/api/integrations/sqs/dto/sqs.dto.ts rename to src/api/integrations/event/sqs/dto/sqs.dto.ts diff --git a/src/api/integrations/sqs/libs/sqs.server.ts b/src/api/integrations/event/sqs/libs/sqs.server.ts similarity index 100% rename from src/api/integrations/sqs/libs/sqs.server.ts rename to src/api/integrations/event/sqs/libs/sqs.server.ts diff --git a/src/api/integrations/sqs/routes/sqs.router.ts b/src/api/integrations/event/sqs/routes/sqs.router.ts similarity index 94% rename from src/api/integrations/sqs/routes/sqs.router.ts rename to src/api/integrations/event/sqs/routes/sqs.router.ts index c6f911d7..d73aa138 100644 --- a/src/api/integrations/sqs/routes/sqs.router.ts +++ b/src/api/integrations/event/sqs/routes/sqs.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { SqsDto } from '@api/integrations/sqs/dto/sqs.dto'; +import { SqsDto } from '@api/integrations/event/sqs/dto/sqs.dto'; import { HttpStatus } from '@api/routes/index.router'; import { sqsController } from '@api/server.module'; import { instanceSchema, sqsSchema } from '@validate/validate.schema'; diff --git a/src/api/integrations/sqs/services/sqs.service.ts b/src/api/integrations/event/sqs/services/sqs.service.ts similarity index 86% rename from src/api/integrations/sqs/services/sqs.service.ts rename to src/api/integrations/event/sqs/services/sqs.service.ts index 2da45c33..7327df6c 100644 --- a/src/api/integrations/sqs/services/sqs.service.ts +++ b/src/api/integrations/event/sqs/services/sqs.service.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { SqsDto } from '@api/integrations/sqs/dto/sqs.dto'; -import { initQueues } from '@api/integrations/sqs/libs/sqs.server'; +import { SqsDto } from '@api/integrations/event/sqs/dto/sqs.dto'; +import { initQueues } from '@api/integrations/event/sqs/libs/sqs.server'; import { WAMonitoringService } from '@api/services/monitor.service'; import { Logger } from '@config/logger.config'; import { Sqs } from '@prisma/client'; diff --git a/src/api/integrations/sqs/validate/sqs.schema.ts b/src/api/integrations/event/sqs/validate/sqs.schema.ts similarity index 100% rename from src/api/integrations/sqs/validate/sqs.schema.ts rename to src/api/integrations/event/sqs/validate/sqs.schema.ts diff --git a/src/api/integrations/websocket/controllers/websocket.controller.ts b/src/api/integrations/event/websocket/controllers/websocket.controller.ts similarity index 98% rename from src/api/integrations/websocket/controllers/websocket.controller.ts rename to src/api/integrations/event/websocket/controllers/websocket.controller.ts index fbcf49c9..037b0bc2 100644 --- a/src/api/integrations/websocket/controllers/websocket.controller.ts +++ b/src/api/integrations/event/websocket/controllers/websocket.controller.ts @@ -1,4 +1,4 @@ -import { WebsocketDto } from '@api/integrations/websocket/dto/websocket.dto'; +import { WebsocketDto } from '@api/integrations/event/websocket/dto/websocket.dto'; import { PrismaRepository } from '@api/repository/repository.service'; import { WAMonitoringService } from '@api/services/monitor.service'; import { wa } from '@api/types/wa.types'; diff --git a/src/api/integrations/websocket/dto/websocket.dto.ts b/src/api/integrations/event/websocket/dto/websocket.dto.ts similarity index 100% rename from src/api/integrations/websocket/dto/websocket.dto.ts rename to src/api/integrations/event/websocket/dto/websocket.dto.ts diff --git a/src/api/integrations/websocket/routes/websocket.router.ts b/src/api/integrations/event/websocket/routes/websocket.router.ts similarity index 93% rename from src/api/integrations/websocket/routes/websocket.router.ts rename to src/api/integrations/event/websocket/routes/websocket.router.ts index 10ce07d3..7d46d50d 100644 --- a/src/api/integrations/websocket/routes/websocket.router.ts +++ b/src/api/integrations/event/websocket/routes/websocket.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; import { InstanceDto } from '@api/dto/instance.dto'; -import { WebsocketDto } from '@api/integrations/websocket/dto/websocket.dto'; +import { WebsocketDto } from '@api/integrations/event/websocket/dto/websocket.dto'; import { HttpStatus } from '@api/routes/index.router'; import { websocketController } from '@api/server.module'; import { instanceSchema, websocketSchema } from '@validate/validate.schema'; diff --git a/src/api/integrations/websocket/validate/websocket.schema.ts b/src/api/integrations/event/websocket/validate/websocket.schema.ts similarity index 100% rename from src/api/integrations/websocket/validate/websocket.schema.ts rename to src/api/integrations/event/websocket/validate/websocket.schema.ts diff --git a/src/api/integrations/s3/controllers/s3.controller.ts b/src/api/integrations/storage/s3/controllers/s3.controller.ts similarity index 72% rename from src/api/integrations/s3/controllers/s3.controller.ts rename to src/api/integrations/storage/s3/controllers/s3.controller.ts index e3bc6162..a72adc64 100644 --- a/src/api/integrations/s3/controllers/s3.controller.ts +++ b/src/api/integrations/storage/s3/controllers/s3.controller.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { MediaDto } from '@api/integrations/s3/dto/media.dto'; -import { S3Service } from '@api/integrations/s3/services/s3.service'; +import { MediaDto } from '@api/integrations/storage/s3/dto/media.dto'; +import { S3Service } from '@api/integrations/storage/s3/services/s3.service'; export class S3Controller { constructor(private readonly s3Service: S3Service) {} diff --git a/src/api/integrations/s3/dto/media.dto.ts b/src/api/integrations/storage/s3/dto/media.dto.ts similarity index 100% rename from src/api/integrations/s3/dto/media.dto.ts rename to src/api/integrations/storage/s3/dto/media.dto.ts diff --git a/src/api/integrations/s3/libs/minio.server.ts b/src/api/integrations/storage/s3/libs/minio.server.ts similarity index 100% rename from src/api/integrations/s3/libs/minio.server.ts rename to src/api/integrations/storage/s3/libs/minio.server.ts diff --git a/src/api/integrations/s3/routes/s3.router.ts b/src/api/integrations/storage/s3/routes/s3.router.ts similarity index 87% rename from src/api/integrations/s3/routes/s3.router.ts rename to src/api/integrations/storage/s3/routes/s3.router.ts index 6ddde14a..0ef8379e 100644 --- a/src/api/integrations/s3/routes/s3.router.ts +++ b/src/api/integrations/storage/s3/routes/s3.router.ts @@ -1,6 +1,6 @@ import { RouterBroker } from '@api/abstract/abstract.router'; -import { MediaDto } from '@api/integrations/s3/dto/media.dto'; -import { s3Schema, s3UrlSchema } from '@api/integrations/s3/validate/s3.schema'; +import { MediaDto } from '@api/integrations/storage/s3/dto/media.dto'; +import { s3Schema, s3UrlSchema } from '@api/integrations/storage/s3/validate/s3.schema'; import { HttpStatus } from '@api/routes/index.router'; import { s3Controller } from '@api/server.module'; import { RequestHandler, Router } from 'express'; diff --git a/src/api/integrations/s3/services/s3.service.ts b/src/api/integrations/storage/s3/services/s3.service.ts similarity index 89% rename from src/api/integrations/s3/services/s3.service.ts rename to src/api/integrations/storage/s3/services/s3.service.ts index c7ecc421..3a0c913b 100644 --- a/src/api/integrations/s3/services/s3.service.ts +++ b/src/api/integrations/storage/s3/services/s3.service.ts @@ -1,6 +1,6 @@ import { InstanceDto } from '@api/dto/instance.dto'; -import { MediaDto } from '@api/integrations/s3/dto/media.dto'; -import { getObjectUrl } from '@api/integrations/s3/libs/minio.server'; +import { MediaDto } from '@api/integrations/storage/s3/dto/media.dto'; +import { getObjectUrl } from '@api/integrations/storage/s3/libs/minio.server'; import { PrismaRepository } from '@api/repository/repository.service'; import { Logger } from '@config/logger.config'; import { BadRequestException } from '@exceptions'; diff --git a/src/api/integrations/s3/validate/s3.schema.ts b/src/api/integrations/storage/s3/validate/s3.schema.ts similarity index 100% rename from src/api/integrations/s3/validate/s3.schema.ts rename to src/api/integrations/storage/s3/validate/s3.schema.ts diff --git a/src/api/routes/index.router.ts b/src/api/routes/index.router.ts index 85e48383..b56d4dac 100644 --- a/src/api/routes/index.router.ts +++ b/src/api/routes/index.router.ts @@ -1,14 +1,14 @@ import { authGuard } from '@api/guards/auth.guard'; import { instanceExistsGuard, instanceLoggedGuard } from '@api/guards/instance.guard'; import Telemetry from '@api/guards/telemetry.guard'; -import { ChatwootRouter } from '@api/integrations/chatwoot/routes/chatwoot.router'; -import { DifyRouter } from '@api/integrations/dify/routes/dify.router'; -import { OpenaiRouter } from '@api/integrations/openai/routes/openai.router'; -import { RabbitmqRouter } from '@api/integrations/rabbitmq/routes/rabbitmq.router'; -import { S3Router } from '@api/integrations/s3/routes/s3.router'; -import { SqsRouter } from '@api/integrations/sqs/routes/sqs.router'; -import { TypebotRouter } from '@api/integrations/typebot/routes/typebot.router'; -import { WebsocketRouter } from '@api/integrations/websocket/routes/websocket.router'; +import { ChatwootRouter } from '@api/integrations/chatbot/chatwoot/routes/chatwoot.router'; +import { DifyRouter } from '@api/integrations/chatbot/dify/routes/dify.router'; +import { OpenaiRouter } from '@api/integrations/chatbot/openai/routes/openai.router'; +import { TypebotRouter } from '@api/integrations/chatbot/typebot/routes/typebot.router'; +import { RabbitmqRouter } from '@api/integrations/event/rabbitmq/routes/rabbitmq.router'; +import { SqsRouter } from '@api/integrations/event/sqs/routes/sqs.router'; +import { WebsocketRouter } from '@api/integrations/event/websocket/routes/websocket.router'; +import { S3Router } from '@api/integrations/storage/s3/routes/s3.router'; import { webhookController } from '@api/server.module'; import { configService, WaBusiness } from '@config/env.config'; import { Router } from 'express'; diff --git a/src/api/server.module.ts b/src/api/server.module.ts index fc9328cd..3cdd5cb3 100644 --- a/src/api/server.module.ts +++ b/src/api/server.module.ts @@ -12,21 +12,21 @@ import { SendMessageController } from './controllers/sendMessage.controller'; import { SettingsController } from './controllers/settings.controller'; import { TemplateController } from './controllers/template.controller'; import { WebhookController } from './controllers/webhook.controller'; -import { ChatwootController } from './integrations/chatwoot/controllers/chatwoot.controller'; -import { ChatwootService } from './integrations/chatwoot/services/chatwoot.service'; -import { DifyController } from './integrations/dify/controllers/dify.controller'; -import { DifyService } from './integrations/dify/services/dify.service'; -import { OpenaiController } from './integrations/openai/controllers/openai.controller'; -import { OpenaiService } from './integrations/openai/services/openai.service'; -import { RabbitmqController } from './integrations/rabbitmq/controllers/rabbitmq.controller'; -import { RabbitmqService } from './integrations/rabbitmq/services/rabbitmq.service'; -import { S3Controller } from './integrations/s3/controllers/s3.controller'; -import { S3Service } from './integrations/s3/services/s3.service'; -import { SqsController } from './integrations/sqs/controllers/sqs.controller'; -import { SqsService } from './integrations/sqs/services/sqs.service'; -import { TypebotController } from './integrations/typebot/controllers/typebot.controller'; -import { TypebotService } from './integrations/typebot/services/typebot.service'; -import { WebsocketController } from './integrations/websocket/controllers/websocket.controller'; +import { ChatwootController } from './integrations/chatbot/chatwoot/controllers/chatwoot.controller'; +import { ChatwootService } from './integrations/chatbot/chatwoot/services/chatwoot.service'; +import { DifyController } from './integrations/chatbot/dify/controllers/dify.controller'; +import { DifyService } from './integrations/chatbot/dify/services/dify.service'; +import { OpenaiController } from './integrations/chatbot/openai/controllers/openai.controller'; +import { OpenaiService } from './integrations/chatbot/openai/services/openai.service'; +import { RabbitmqController } from './integrations/event/rabbitmq/controllers/rabbitmq.controller'; +import { RabbitmqService } from './integrations/event/rabbitmq/services/rabbitmq.service'; +import { S3Controller } from './integrations/storage/s3/controllers/s3.controller'; +import { S3Service } from './integrations/storage/s3/services/s3.service'; +import { SqsController } from './integrations/event/sqs/controllers/sqs.controller'; +import { SqsService } from './integrations/event/sqs/services/sqs.service'; +import { TypebotController } from './integrations/chatbot/typebot/controllers/typebot.controller'; +import { TypebotService } from './integrations/chatbot/typebot/services/typebot.service'; +import { WebsocketController } from './integrations/event/websocket/controllers/websocket.controller'; import { ProviderFiles } from './provider/sessions'; import { PrismaRepository } from './repository/repository.service'; import { AuthService } from './services/auth.service'; diff --git a/src/api/services/channel.service.ts b/src/api/services/channel.service.ts index 6221eaed..7de460d1 100644 --- a/src/api/services/channel.service.ts +++ b/src/api/services/channel.service.ts @@ -2,15 +2,15 @@ import { InstanceDto } from '@api/dto/instance.dto'; import { ProxyDto } from '@api/dto/proxy.dto'; import { SettingsDto } from '@api/dto/settings.dto'; import { WebhookDto } from '@api/dto/webhook.dto'; -import { ChatwootDto } from '@api/integrations/chatwoot/dto/chatwoot.dto'; -import { ChatwootService } from '@api/integrations/chatwoot/services/chatwoot.service'; -import { DifyService } from '@api/integrations/dify/services/dify.service'; -import { OpenaiService } from '@api/integrations/openai/services/openai.service'; -import { RabbitmqDto } from '@api/integrations/rabbitmq/dto/rabbitmq.dto'; -import { getAMQP, removeQueues } from '@api/integrations/rabbitmq/libs/amqp.server'; -import { SqsDto } from '@api/integrations/sqs/dto/sqs.dto'; -import { getSQS, removeQueues as removeQueuesSQS } from '@api/integrations/sqs/libs/sqs.server'; -import { TypebotService } from '@api/integrations/typebot/services/typebot.service'; +import { ChatwootDto } from '@api/integrations/chatbot/chatwoot/dto/chatwoot.dto'; +import { ChatwootService } from '@api/integrations/chatbot/chatwoot/services/chatwoot.service'; +import { DifyService } from '@api/integrations/chatbot/dify/services/dify.service'; +import { OpenaiService } from '@api/integrations/chatbot/openai/services/openai.service'; +import { RabbitmqDto } from '@api/integrations/event/rabbitmq/dto/rabbitmq.dto'; +import { getAMQP, removeQueues } from '@api/integrations/event/rabbitmq/libs/amqp.server'; +import { SqsDto } from '@api/integrations/event/sqs/dto/sqs.dto'; +import { getSQS, removeQueues as removeQueuesSQS } from '@api/integrations/event/sqs/libs/sqs.server'; +import { TypebotService } from '@api/integrations/chatbot/typebot/services/typebot.service'; import { PrismaRepository, Query } from '@api/repository/repository.service'; import { waMonitor, websocketController } from '@api/server.module'; import { Events, wa } from '@api/types/wa.types'; diff --git a/src/api/services/channels/whatsapp.baileys.service.ts b/src/api/services/channels/whatsapp.baileys.service.ts index d6c51f0c..735c2314 100644 --- a/src/api/services/channels/whatsapp.baileys.service.ts +++ b/src/api/services/channels/whatsapp.baileys.service.ts @@ -44,8 +44,8 @@ import { SendTextDto, StatusMessage, } from '@api/dto/sendMessage.dto'; -import { chatwootImport } from '@api/integrations/chatwoot/utils/chatwoot-import-helper'; -import * as s3Service from '@api/integrations/s3/libs/minio.server'; +import { chatwootImport } from '@api/integrations/chatbot/chatwoot/utils/chatwoot-import-helper'; +import * as s3Service from '@api/integrations/storage/s3/libs/minio.server'; import { ProviderFiles } from '@api/provider/sessions'; import { PrismaRepository } from '@api/repository/repository.service'; import { waMonitor } from '@api/server.module'; diff --git a/src/api/services/channels/whatsapp.business.service.ts b/src/api/services/channels/whatsapp.business.service.ts index 2e227408..5a739586 100644 --- a/src/api/services/channels/whatsapp.business.service.ts +++ b/src/api/services/channels/whatsapp.business.service.ts @@ -13,7 +13,7 @@ import { SendTemplateDto, SendTextDto, } from '@api/dto/sendMessage.dto'; -import * as s3Service from '@api/integrations/s3/libs/minio.server'; +import * as s3Service from '@api/integrations/storage/s3/libs/minio.server'; import { ProviderFiles } from '@api/provider/sessions'; import { PrismaRepository } from '@api/repository/repository.service'; import { CacheService } from '@api/services/cache.service'; diff --git a/src/main.ts b/src/main.ts index 08594819..49523101 100644 --- a/src/main.ts +++ b/src/main.ts @@ -1,5 +1,5 @@ -import { initAMQP, initGlobalQueues } from '@api/integrations/rabbitmq/libs/amqp.server'; -import { initSQS } from '@api/integrations/sqs/libs/sqs.server'; +import { initAMQP, initGlobalQueues } from '@api/integrations/event/rabbitmq/libs/amqp.server'; +import { initSQS } from '@api/integrations/event/sqs/libs/sqs.server'; import { ProviderFiles } from '@api/provider/sessions'; import { PrismaRepository } from '@api/repository/repository.service'; import { HttpStatus, router } from '@api/routes/index.router'; diff --git a/src/validate/validate.schema.ts b/src/validate/validate.schema.ts index 22d910f9..64fae31c 100644 --- a/src/validate/validate.schema.ts +++ b/src/validate/validate.schema.ts @@ -9,9 +9,9 @@ export * from './settings.schema'; export * from './template.schema'; export * from './webhook.schema'; export * from './websocket.schema'; -export * from '@api/integrations/chatwoot/validate/chatwoot.schema'; -export * from '@api/integrations/dify/validate/dify.schema'; -export * from '@api/integrations/openai/validate/openai.schema'; -export * from '@api/integrations/rabbitmq/validate/rabbitmq.schema'; -export * from '@api/integrations/sqs/validate/sqs.schema'; -export * from '@api/integrations/typebot/validate/typebot.schema'; +export * from '@api/integrations/chatbot/chatwoot/validate/chatwoot.schema'; +export * from '@api/integrations/chatbot/dify/validate/dify.schema'; +export * from '@api/integrations/chatbot/openai/validate/openai.schema'; +export * from '@api/integrations/event/rabbitmq/validate/rabbitmq.schema'; +export * from '@api/integrations/event/sqs/validate/sqs.schema'; +export * from '@api/integrations/chatbot/typebot/validate/typebot.schema';