@fastybird/smart-panel-backend 1.1.0-alpha.15 → 1.1.0-alpha.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/modules/devices/utils/schema.utils.js +1 -1
  2. package/dist/modules/devices/utils/schema.utils.js.map +1 -1
  3. package/dist/modules/system/scripts/update-worker.sh +463 -59
  4. package/dist/modules/system/services/update-executor.service.d.ts +9 -0
  5. package/dist/modules/system/services/update-executor.service.js +170 -25
  6. package/dist/modules/system/services/update-executor.service.js.map +1 -1
  7. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.d.ts +2 -0
  8. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js +22 -0
  9. package/dist/plugins/devices-homekit/listeners/homekit-event.listener.js.map +1 -1
  10. package/dist/plugins/devices-homekit/mappers/button.mapper.d.ts +15 -0
  11. package/dist/plugins/devices-homekit/mappers/button.mapper.js +143 -0
  12. package/dist/plugins/devices-homekit/mappers/button.mapper.js.map +1 -0
  13. package/dist/plugins/devices-homekit/mappers/homekit-mapper.interface.d.ts +8 -0
  14. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.d.ts +5 -1
  15. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js +42 -0
  16. package/dist/plugins/devices-homekit/services/homekit-mapper-registry.service.js.map +1 -1
  17. package/dist/plugins/devices-reterminal/services/reterminal-button.service.d.ts +7 -3
  18. package/dist/plugins/devices-reterminal/services/reterminal-button.service.js +63 -17
  19. package/dist/plugins/devices-reterminal/services/reterminal-button.service.js.map +1 -1
  20. package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.d.ts +17 -0
  21. package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.js +205 -0
  22. package/dist/plugins/devices-third-party/controllers/third-party-inputs.controller.js.map +1 -0
  23. package/dist/plugins/devices-third-party/devices-third-party.openapi.d.ts +1 -1
  24. package/dist/plugins/devices-third-party/devices-third-party.plugin.js +2 -1
  25. package/dist/plugins/devices-third-party/devices-third-party.plugin.js.map +1 -1
  26. package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.d.ts +5 -0
  27. package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.js +50 -0
  28. package/dist/plugins/devices-third-party/dto/report-input-occurrence-response.dto.js.map +1 -0
  29. package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.d.ts +8 -0
  30. package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.js +81 -0
  31. package/dist/plugins/devices-third-party/dto/report-input-occurrence.dto.js.map +1 -0
  32. package/dist/plugins/devices-third-party/platforms/third-party-device.platform.js +19 -4
  33. package/dist/plugins/devices-third-party/platforms/third-party-device.platform.js.map +1 -1
  34. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.d.ts +2 -0
  35. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js +57 -0
  36. package/dist/plugins/devices-virtual/listeners/virtual-projection.listener.js.map +1 -1
  37. package/dist/plugins/simulator/controllers/simulator.controller.d.ts +8 -2
  38. package/dist/plugins/simulator/controllers/simulator.controller.js +102 -2
  39. package/dist/plugins/simulator/controllers/simulator.controller.js.map +1 -1
  40. package/dist/plugins/simulator/dto/simulate-occurrence.dto.d.ts +12 -0
  41. package/dist/plugins/simulator/dto/simulate-occurrence.dto.js +122 -0
  42. package/dist/plugins/simulator/dto/simulate-occurrence.dto.js.map +1 -0
  43. package/dist/plugins/simulator/models/simulator-response.model.d.ts +12 -0
  44. package/dist/plugins/simulator/models/simulator-response.model.js +84 -1
  45. package/dist/plugins/simulator/models/simulator-response.model.js.map +1 -1
  46. package/dist/plugins/simulator/scenarios/definitions/small-apartment.yaml +78 -0
  47. package/dist/plugins/simulator/services/scenario-executor.service.js +3 -1
  48. package/dist/plugins/simulator/services/scenario-executor.service.js.map +1 -1
  49. package/dist/plugins/simulator/services/simulation.service.js +10 -1
  50. package/dist/plugins/simulator/services/simulation.service.js.map +1 -1
  51. package/dist/plugins/simulator/simulator.openapi.d.ts +3 -2
  52. package/dist/plugins/simulator/simulator.openapi.js +5 -0
  53. package/dist/plugins/simulator/simulator.openapi.js.map +1 -1
  54. package/dist/plugins/simulator/simulators/device-simulator.interface.d.ts +2 -0
  55. package/dist/plugins/simulator/simulators/device-simulator.interface.js +83 -0
  56. package/dist/plugins/simulator/simulators/device-simulator.interface.js.map +1 -1
  57. package/dist/plugins/simulator/simulators/index.d.ts +1 -0
  58. package/dist/plugins/simulator/simulators/index.js +1 -0
  59. package/dist/plugins/simulator/simulators/index.js.map +1 -1
  60. package/dist/plugins/simulator/simulators/input-controller.simulator.d.ts +10 -0
  61. package/dist/plugins/simulator/simulators/input-controller.simulator.js +57 -0
  62. package/dist/plugins/simulator/simulators/input-controller.simulator.js.map +1 -0
  63. package/dist/plugins/simulator/simulators/lighting.simulator.js +1 -0
  64. package/dist/plugins/simulator/simulators/lighting.simulator.js.map +1 -1
  65. package/dist/tsconfig.build.tsbuildinfo +1 -1
  66. package/package.json +2 -2
@@ -1,19 +1,24 @@
1
1
  import { ConnectionState } from '../../../modules/devices/devices.constants';
2
2
  import { DeviceResponseModel } from '../../../modules/devices/models/devices-response.model';
3
+ import { ChannelInputOccurrencesService } from '../../../modules/devices/services/channel-input-occurrences.service';
3
4
  import { ChannelsPropertiesService } from '../../../modules/devices/services/channels.properties.service';
5
+ import { ChannelsService } from '../../../modules/devices/services/channels.service';
4
6
  import { DeviceConnectivityService } from '../../../modules/devices/services/device-connectivity.service';
5
7
  import { DevicesService } from '../../../modules/devices/services/devices.service';
6
8
  import { ReqGenerateDeviceDto } from '../dto/generate-device.dto';
9
+ import { ReqSimulateOccurrenceDto } from '../dto/simulate-occurrence.dto';
7
10
  import { ReqSimulateValueDto } from '../dto/simulate-value.dto';
8
- import { ConnectionStateResponseModel, DeviceCategoriesResponseModel, SimulatedValueResponseModel } from '../models/simulator-response.model';
11
+ import { ConnectionStateResponseModel, DeviceCategoriesResponseModel, SimulatedOccurrenceResponseModel, SimulatedValueResponseModel } from '../models/simulator-response.model';
9
12
  import { DeviceGeneratorService } from '../services/device-generator.service';
10
13
  export declare class SimulatorController {
11
14
  private readonly devicesService;
15
+ private readonly channelsService;
12
16
  private readonly channelsPropertiesService;
13
17
  private readonly deviceConnectivityService;
14
18
  private readonly deviceGeneratorService;
19
+ private readonly channelInputOccurrencesService;
15
20
  private readonly logger;
16
- constructor(devicesService: DevicesService, channelsPropertiesService: ChannelsPropertiesService, deviceConnectivityService: DeviceConnectivityService, deviceGeneratorService: DeviceGeneratorService);
21
+ constructor(devicesService: DevicesService, channelsService: ChannelsService, channelsPropertiesService: ChannelsPropertiesService, deviceConnectivityService: DeviceConnectivityService, deviceGeneratorService: DeviceGeneratorService, channelInputOccurrencesService: ChannelInputOccurrencesService);
17
22
  getCategories(): DeviceCategoriesResponseModel;
18
23
  generateDevice(body: ReqGenerateDeviceDto): Promise<DeviceResponseModel>;
19
24
  simulateValue(deviceId: string, body: ReqSimulateValueDto): Promise<SimulatedValueResponseModel>;
@@ -22,6 +27,7 @@ export declare class SimulatorController {
22
27
  state?: ConnectionState;
23
28
  };
24
29
  }): Promise<ConnectionStateResponseModel>;
30
+ simulateOccurrence(deviceId: string, body: ReqSimulateOccurrenceDto): Promise<SimulatedOccurrenceResponseModel>;
25
31
  simulateAllValues(deviceId: string): Promise<DeviceResponseModel>;
26
32
  private formatCategoryName;
27
33
  }
@@ -20,22 +20,27 @@ const transform_utils_1 = require("../../../common/utils/transform.utils");
20
20
  const devices_constants_1 = require("../../../modules/devices/devices.constants");
21
21
  const devices_exceptions_1 = require("../../../modules/devices/devices.exceptions");
22
22
  const devices_response_model_1 = require("../../../modules/devices/models/devices-response.model");
23
+ const channel_input_occurrences_service_1 = require("../../../modules/devices/services/channel-input-occurrences.service");
23
24
  const channels_properties_service_1 = require("../../../modules/devices/services/channels.properties.service");
25
+ const channels_service_1 = require("../../../modules/devices/services/channels.service");
24
26
  const device_connectivity_service_1 = require("../../../modules/devices/services/device-connectivity.service");
25
27
  const devices_service_1 = require("../../../modules/devices/services/devices.service");
26
28
  const schema_utils_1 = require("../../../modules/devices/utils/schema.utils");
27
29
  const api_documentation_decorator_1 = require("../../../modules/swagger/decorators/api-documentation.decorator");
28
30
  const generate_device_dto_1 = require("../dto/generate-device.dto");
31
+ const simulate_occurrence_dto_1 = require("../dto/simulate-occurrence.dto");
29
32
  const simulate_value_dto_1 = require("../dto/simulate-value.dto");
30
33
  const simulator_response_model_1 = require("../models/simulator-response.model");
31
34
  const device_generator_service_1 = require("../services/device-generator.service");
32
35
  const simulator_constants_1 = require("../simulator.constants");
33
36
  let SimulatorController = class SimulatorController {
34
- constructor(devicesService, channelsPropertiesService, deviceConnectivityService, deviceGeneratorService) {
37
+ constructor(devicesService, channelsService, channelsPropertiesService, deviceConnectivityService, deviceGeneratorService, channelInputOccurrencesService) {
35
38
  this.devicesService = devicesService;
39
+ this.channelsService = channelsService;
36
40
  this.channelsPropertiesService = channelsPropertiesService;
37
41
  this.deviceConnectivityService = deviceConnectivityService;
38
42
  this.deviceGeneratorService = deviceGeneratorService;
43
+ this.channelInputOccurrencesService = channelInputOccurrencesService;
39
44
  this.logger = (0, extension_logger_service_1.createExtensionLogger)(simulator_constants_1.SIMULATOR_PLUGIN_NAME, 'SimulatorController');
40
45
  }
41
46
  getCategories() {
@@ -136,6 +141,70 @@ let SimulatorController = class SimulatorController {
136
141
  };
137
142
  return (0, transform_utils_1.toInstance)(simulator_response_model_1.ConnectionStateResponseModel, { data: result }, { excludeExtraneousValues: true });
138
143
  }
144
+ async simulateOccurrence(deviceId, body) {
145
+ const dto = body.data;
146
+ this.logger.debug(`Simulating input occurrence for device=${deviceId}, channel=${dto.channel_id}, event=${dto.event}`);
147
+ const device = await this.devicesService.findOne(deviceId, simulator_constants_1.SIMULATOR_TYPE);
148
+ if (!device) {
149
+ throw new devices_exceptions_1.DevicesNotFoundException(`Simulator device ${deviceId} not found`);
150
+ }
151
+ const channel = await this.channelsService.findOne(dto.channel_id);
152
+ if (!channel) {
153
+ throw new devices_exceptions_1.DevicesNotFoundException(`Channel ${dto.channel_id} not found`);
154
+ }
155
+ const channelDeviceId = typeof channel.device === 'string' ? channel.device : channel.device?.id;
156
+ if (channelDeviceId !== deviceId) {
157
+ throw new devices_exceptions_1.DevicesNotFoundException(`Channel ${dto.channel_id} does not belong to device ${deviceId}`);
158
+ }
159
+ let propertyId = dto.property_id;
160
+ if (!propertyId) {
161
+ const channelProps = await this.channelsPropertiesService.findAll(channel.id);
162
+ const eventProp = channelProps.find((p) => p.category === devices_constants_1.PropertyCategory.EVENT || p.permissions.includes(devices_constants_1.PermissionType.EVENT_ONLY));
163
+ if (!eventProp) {
164
+ throw new common_1.BadRequestException(`No event property found on channel ${dto.channel_id}`);
165
+ }
166
+ propertyId = eventProp.id;
167
+ }
168
+ else {
169
+ const property = await this.channelsPropertiesService.findOne(propertyId);
170
+ if (!property) {
171
+ throw new devices_exceptions_1.DevicesNotFoundException(`Property ${propertyId} not found`);
172
+ }
173
+ const propChannelId = typeof property.channel === 'string' ? property.channel : property.channel?.id;
174
+ if (propChannelId !== dto.channel_id) {
175
+ throw new common_1.BadRequestException(`Property ${propertyId} does not belong to channel ${dto.channel_id}`);
176
+ }
177
+ }
178
+ let payload;
179
+ try {
180
+ payload = await this.channelInputOccurrencesService.publishOccurrence({
181
+ deviceId,
182
+ channelId: dto.channel_id,
183
+ propertyId,
184
+ event: dto.event,
185
+ sourceTimestamp: dto.source_timestamp,
186
+ sourceOccurrenceId: dto.source_occurrence_id,
187
+ nativeEventType: dto.native_event_type,
188
+ data: dto.data,
189
+ });
190
+ }
191
+ catch (error) {
192
+ if (error instanceof devices_exceptions_1.DevicesValidationException) {
193
+ throw new common_1.UnprocessableEntityException(error.message);
194
+ }
195
+ throw error;
196
+ }
197
+ const result = {
198
+ occurrence_id: payload?.id ?? null,
199
+ channel_id: dto.channel_id,
200
+ property_id: propertyId,
201
+ event: dto.event,
202
+ timestamp: payload?.timestamp ?? new Date().toISOString(),
203
+ dropped: payload === null,
204
+ success: true,
205
+ };
206
+ return (0, transform_utils_1.toInstance)(simulator_response_model_1.SimulatedOccurrenceResponseModel, { data: result }, { excludeExtraneousValues: true });
207
+ }
139
208
  async simulateAllValues(deviceId) {
140
209
  this.logger.debug(`Simulating all values for device=${deviceId}`);
141
210
  const device = await this.devicesService.findOne(deviceId, simulator_constants_1.SIMULATOR_TYPE);
@@ -145,6 +214,9 @@ let SimulatorController = class SimulatorController {
145
214
  for (const channel of device.channels) {
146
215
  const allProperties = (0, schema_utils_1.getAllProperties)(channel.category);
147
216
  for (const property of channel.properties) {
217
+ if (property.permissions.includes(devices_constants_1.PermissionType.EVENT_ONLY)) {
218
+ continue;
219
+ }
148
220
  const propMeta = allProperties.find((p) => p.category === property.category);
149
221
  if (propMeta) {
150
222
  const value = this.deviceGeneratorService.generateRandomValue(propMeta);
@@ -271,6 +343,32 @@ __decorate([
271
343
  __metadata("design:paramtypes", [String, Object]),
272
344
  __metadata("design:returntype", Promise)
273
345
  ], SimulatorController.prototype, "simulateConnectionState", null);
346
+ __decorate([
347
+ (0, swagger_1.ApiOperation)({
348
+ summary: 'Simulate a hardware input occurrence',
349
+ description: 'Emits a deterministic hardware input occurrence (e.g. button press, double press, long press, down, up) through the DevicesModule occurrence delivery pipeline.',
350
+ operationId: 'simulate-simulator-plugin-occurrence',
351
+ }),
352
+ (0, swagger_1.ApiParam)({
353
+ name: 'deviceId',
354
+ description: 'Device UUID',
355
+ type: 'string',
356
+ format: 'uuid',
357
+ }),
358
+ (0, swagger_1.ApiBody)({
359
+ type: simulate_occurrence_dto_1.ReqSimulateOccurrenceDto,
360
+ description: 'Input occurrence simulation parameters',
361
+ }),
362
+ (0, api_documentation_decorator_1.ApiSuccessResponse)(simulator_response_model_1.SimulatedOccurrenceResponseModel, 'Occurrence simulation result'),
363
+ (0, api_documentation_decorator_1.ApiNotFoundResponse)('Device, channel, or property not found'),
364
+ (0, api_documentation_decorator_1.ApiBadRequestResponse)('Invalid simulation parameters or device is not a simulator device'),
365
+ (0, common_1.Post)(':deviceId/simulate-occurrence'),
366
+ __param(0, (0, common_1.Param)('deviceId', common_1.ParseUUIDPipe)),
367
+ __param(1, (0, common_1.Body)()),
368
+ __metadata("design:type", Function),
369
+ __metadata("design:paramtypes", [String, simulate_occurrence_dto_1.ReqSimulateOccurrenceDto]),
370
+ __metadata("design:returntype", Promise)
371
+ ], SimulatorController.prototype, "simulateOccurrence", null);
274
372
  __decorate([
275
373
  (0, swagger_1.ApiOperation)({
276
374
  summary: 'Simulate random values for all properties',
@@ -296,8 +394,10 @@ exports.SimulatorController = SimulatorController = __decorate([
296
394
  (0, swagger_1.ApiTags)(simulator_constants_1.SIMULATOR_PLUGIN_API_TAG_NAME),
297
395
  (0, common_1.Controller)('simulator'),
298
396
  __metadata("design:paramtypes", [devices_service_1.DevicesService,
397
+ channels_service_1.ChannelsService,
299
398
  channels_properties_service_1.ChannelsPropertiesService,
300
399
  device_connectivity_service_1.DeviceConnectivityService,
301
- device_generator_service_1.DeviceGeneratorService])
400
+ device_generator_service_1.DeviceGeneratorService,
401
+ channel_input_occurrences_service_1.ChannelInputOccurrencesService])
302
402
  ], SimulatorController);
303
403
  //# sourceMappingURL=simulator.controller.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"simulator.controller.js","sourceRoot":"","sources":["../../../../src/plugins/simulator/controllers/simulator.controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulator.controller.js","sourceRoot":"","sources":["../../../../src/plugins/simulator/controllers/simulator.controller.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ export declare class SimulateOccurrenceDto {
2
+ channel_id: string;
3
+ property_id?: string;
4
+ event: string;
5
+ source_timestamp?: string;
6
+ source_occurrence_id?: string;
7
+ native_event_type?: string;
8
+ data?: Record<string, unknown>;
9
+ }
10
+ export declare class ReqSimulateOccurrenceDto {
11
+ data: SimulateOccurrenceDto;
12
+ }
@@ -0,0 +1,122 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.ReqSimulateOccurrenceDto = exports.SimulateOccurrenceDto = void 0;
13
+ const class_transformer_1 = require("class-transformer");
14
+ const class_validator_1 = require("class-validator");
15
+ const swagger_1 = require("@nestjs/swagger");
16
+ let SimulateOccurrenceDto = class SimulateOccurrenceDto {
17
+ };
18
+ exports.SimulateOccurrenceDto = SimulateOccurrenceDto;
19
+ __decorate([
20
+ (0, swagger_1.ApiProperty)({
21
+ description: 'Channel ID where the input occurrence happened',
22
+ name: 'channel_id',
23
+ type: 'string',
24
+ format: 'uuid',
25
+ example: '123e4567-e89b-12d3-a456-426614174000',
26
+ }),
27
+ (0, class_transformer_1.Expose)(),
28
+ (0, class_validator_1.IsNotEmpty)({ message: '[{"field":"channel_id","reason":"Channel ID is required."}]' }),
29
+ (0, class_validator_1.IsUUID)('4', { message: '[{"field":"channel_id","reason":"Channel ID must be a valid UUID."}]' }),
30
+ __metadata("design:type", String)
31
+ ], SimulateOccurrenceDto.prototype, "channel_id", void 0);
32
+ __decorate([
33
+ (0, swagger_1.ApiPropertyOptional)({
34
+ description: 'Property ID for event occurrence (if omitted, auto-detected from channel event property)',
35
+ name: 'property_id',
36
+ type: 'string',
37
+ format: 'uuid',
38
+ example: '123e4567-e89b-12d3-a456-426614174001',
39
+ }),
40
+ (0, class_transformer_1.Expose)(),
41
+ (0, class_validator_1.IsOptional)(),
42
+ (0, class_validator_1.IsUUID)('4', { message: '[{"field":"property_id","reason":"Property ID must be a valid UUID."}]' }),
43
+ __metadata("design:type", String)
44
+ ], SimulateOccurrenceDto.prototype, "property_id", void 0);
45
+ __decorate([
46
+ (0, swagger_1.ApiProperty)({
47
+ description: 'Normalized input event interaction (e.g. press, double_press, long_press, triple_press, down, up)',
48
+ type: 'string',
49
+ example: 'press',
50
+ }),
51
+ (0, class_transformer_1.Expose)(),
52
+ (0, class_validator_1.IsNotEmpty)({ message: '[{"field":"event","reason":"Event is required."}]' }),
53
+ (0, class_validator_1.IsString)({ message: '[{"field":"event","reason":"Event must be a string."}]' }),
54
+ __metadata("design:type", String)
55
+ ], SimulateOccurrenceDto.prototype, "event", void 0);
56
+ __decorate([
57
+ (0, swagger_1.ApiPropertyOptional)({
58
+ description: 'Optional ISO timestamp or epoch from device hardware clock',
59
+ name: 'source_timestamp',
60
+ type: 'string',
61
+ example: '2026-09-20T10:00:00.000Z',
62
+ }),
63
+ (0, class_transformer_1.Expose)(),
64
+ (0, class_validator_1.IsOptional)(),
65
+ (0, class_validator_1.IsString)({ message: '[{"field":"source_timestamp","reason":"Source timestamp must be a string."}]' }),
66
+ __metadata("design:type", String)
67
+ ], SimulateOccurrenceDto.prototype, "source_timestamp", void 0);
68
+ __decorate([
69
+ (0, swagger_1.ApiPropertyOptional)({
70
+ description: 'Optional native event_cnt, packet ID, or sequence number for transport deduplication',
71
+ name: 'source_occurrence_id',
72
+ type: 'string',
73
+ example: 'seq-42',
74
+ }),
75
+ (0, class_transformer_1.Expose)(),
76
+ (0, class_validator_1.IsOptional)(),
77
+ (0, class_validator_1.IsString)({ message: '[{"field":"source_occurrence_id","reason":"Source occurrence ID must be a string."}]' }),
78
+ __metadata("design:type", String)
79
+ ], SimulateOccurrenceDto.prototype, "source_occurrence_id", void 0);
80
+ __decorate([
81
+ (0, swagger_1.ApiPropertyOptional)({
82
+ description: 'Original provider event string (e.g. single_push, btn_down)',
83
+ name: 'native_event_type',
84
+ type: 'string',
85
+ example: 'single_push',
86
+ }),
87
+ (0, class_transformer_1.Expose)(),
88
+ (0, class_validator_1.IsOptional)(),
89
+ (0, class_validator_1.IsString)({ message: '[{"field":"native_event_type","reason":"Native event type must be a string."}]' }),
90
+ __metadata("design:type", String)
91
+ ], SimulateOccurrenceDto.prototype, "native_event_type", void 0);
92
+ __decorate([
93
+ (0, swagger_1.ApiPropertyOptional)({
94
+ description: 'Optional structured metadata or context',
95
+ type: 'object',
96
+ additionalProperties: true,
97
+ example: { duration_ms: 150 },
98
+ }),
99
+ (0, class_transformer_1.Expose)(),
100
+ (0, class_validator_1.IsOptional)(),
101
+ (0, class_validator_1.IsObject)({ message: '[{"field":"data","reason":"Data must be an object."}]' }),
102
+ __metadata("design:type", Object)
103
+ ], SimulateOccurrenceDto.prototype, "data", void 0);
104
+ exports.SimulateOccurrenceDto = SimulateOccurrenceDto = __decorate([
105
+ (0, swagger_1.ApiSchema)({ name: 'SimulatorPluginSimulateOccurrence' })
106
+ ], SimulateOccurrenceDto);
107
+ let ReqSimulateOccurrenceDto = class ReqSimulateOccurrenceDto {
108
+ };
109
+ exports.ReqSimulateOccurrenceDto = ReqSimulateOccurrenceDto;
110
+ __decorate([
111
+ (0, swagger_1.ApiProperty)({ description: 'Simulation occurrence data', type: () => SimulateOccurrenceDto }),
112
+ (0, class_transformer_1.Expose)(),
113
+ (0, class_validator_1.IsDefined)({ message: '[{"field":"data","reason":"Simulation occurrence data is required."}]' }),
114
+ (0, class_validator_1.IsObject)({ message: '[{"field":"data","reason":"Simulation occurrence data must be an object."}]' }),
115
+ (0, class_validator_1.ValidateNested)(),
116
+ (0, class_transformer_1.Type)(() => SimulateOccurrenceDto),
117
+ __metadata("design:type", SimulateOccurrenceDto)
118
+ ], ReqSimulateOccurrenceDto.prototype, "data", void 0);
119
+ exports.ReqSimulateOccurrenceDto = ReqSimulateOccurrenceDto = __decorate([
120
+ (0, swagger_1.ApiSchema)({ name: 'SimulatorPluginReqSimulateOccurrence' })
121
+ ], ReqSimulateOccurrenceDto);
122
+ //# sourceMappingURL=simulate-occurrence.dto.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"simulate-occurrence.dto.js","sourceRoot":"","sources":["../../../../src/plugins/simulator/dto/simulate-occurrence.dto.ts"],"names":[],"mappings":"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"}
@@ -27,3 +27,15 @@ export declare class ConnectionStateResultModel {
27
27
  export declare class ConnectionStateResponseModel extends BaseSuccessResponseModel<ConnectionStateResultModel> {
28
28
  data: ConnectionStateResultModel;
29
29
  }
30
+ export declare class SimulatedOccurrenceResultModel {
31
+ occurrence_id: string | null;
32
+ channel_id: string;
33
+ property_id: string;
34
+ event: string;
35
+ timestamp: string;
36
+ dropped: boolean;
37
+ success: boolean;
38
+ }
39
+ export declare class SimulatedOccurrenceResponseModel extends BaseSuccessResponseModel<SimulatedOccurrenceResultModel> {
40
+ data: SimulatedOccurrenceResultModel;
41
+ }
@@ -9,7 +9,7 @@ var __metadata = (this && this.__metadata) || function (k, v) {
9
9
  if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.ConnectionStateResponseModel = exports.ConnectionStateResultModel = exports.SimulatedValueResponseModel = exports.SimulatedValueResultModel = exports.DeviceCategoriesResponseModel = exports.DeviceCategoryModel = exports.GeneratedDeviceResponseModel = void 0;
12
+ exports.SimulatedOccurrenceResponseModel = exports.SimulatedOccurrenceResultModel = exports.ConnectionStateResponseModel = exports.ConnectionStateResultModel = exports.SimulatedValueResponseModel = exports.SimulatedValueResultModel = exports.DeviceCategoriesResponseModel = exports.DeviceCategoryModel = exports.GeneratedDeviceResponseModel = void 0;
13
13
  const class_transformer_1 = require("class-transformer");
14
14
  const swagger_1 = require("@nestjs/swagger");
15
15
  const api_response_model_1 = require("../../../modules/api/models/api-response.model");
@@ -169,4 +169,87 @@ __decorate([
169
169
  exports.ConnectionStateResponseModel = ConnectionStateResponseModel = __decorate([
170
170
  (0, swagger_1.ApiSchema)({ name: 'SimulatorPluginResConnectionState' })
171
171
  ], ConnectionStateResponseModel);
172
+ let SimulatedOccurrenceResultModel = class SimulatedOccurrenceResultModel {
173
+ };
174
+ exports.SimulatedOccurrenceResultModel = SimulatedOccurrenceResultModel;
175
+ __decorate([
176
+ (0, swagger_1.ApiProperty)({
177
+ description: 'Generated occurrence ID (or null if dropped by deduplication / disabled device)',
178
+ name: 'occurrence_id',
179
+ type: 'string',
180
+ format: 'uuid',
181
+ nullable: true,
182
+ }),
183
+ (0, class_transformer_1.Expose)(),
184
+ __metadata("design:type", String)
185
+ ], SimulatedOccurrenceResultModel.prototype, "occurrence_id", void 0);
186
+ __decorate([
187
+ (0, swagger_1.ApiProperty)({
188
+ description: 'Channel ID',
189
+ name: 'channel_id',
190
+ type: 'string',
191
+ format: 'uuid',
192
+ }),
193
+ (0, class_transformer_1.Expose)(),
194
+ __metadata("design:type", String)
195
+ ], SimulatedOccurrenceResultModel.prototype, "channel_id", void 0);
196
+ __decorate([
197
+ (0, swagger_1.ApiProperty)({
198
+ description: 'Property ID',
199
+ name: 'property_id',
200
+ type: 'string',
201
+ format: 'uuid',
202
+ }),
203
+ (0, class_transformer_1.Expose)(),
204
+ __metadata("design:type", String)
205
+ ], SimulatedOccurrenceResultModel.prototype, "property_id", void 0);
206
+ __decorate([
207
+ (0, swagger_1.ApiProperty)({
208
+ description: 'Normalized input event',
209
+ type: 'string',
210
+ }),
211
+ (0, class_transformer_1.Expose)(),
212
+ __metadata("design:type", String)
213
+ ], SimulatedOccurrenceResultModel.prototype, "event", void 0);
214
+ __decorate([
215
+ (0, swagger_1.ApiProperty)({
216
+ description: 'ISO timestamp of occurrence emission',
217
+ type: 'string',
218
+ }),
219
+ (0, class_transformer_1.Expose)(),
220
+ __metadata("design:type", String)
221
+ ], SimulatedOccurrenceResultModel.prototype, "timestamp", void 0);
222
+ __decorate([
223
+ (0, swagger_1.ApiProperty)({
224
+ description: 'Whether the occurrence was dropped by deduplication',
225
+ type: 'boolean',
226
+ }),
227
+ (0, class_transformer_1.Expose)(),
228
+ __metadata("design:type", Boolean)
229
+ ], SimulatedOccurrenceResultModel.prototype, "dropped", void 0);
230
+ __decorate([
231
+ (0, swagger_1.ApiProperty)({
232
+ description: 'Whether the simulation was successful',
233
+ type: 'boolean',
234
+ }),
235
+ (0, class_transformer_1.Expose)(),
236
+ __metadata("design:type", Boolean)
237
+ ], SimulatedOccurrenceResultModel.prototype, "success", void 0);
238
+ exports.SimulatedOccurrenceResultModel = SimulatedOccurrenceResultModel = __decorate([
239
+ (0, swagger_1.ApiSchema)({ name: 'SimulatorPluginDataSimulatedOccurrenceResult' })
240
+ ], SimulatedOccurrenceResultModel);
241
+ let SimulatedOccurrenceResponseModel = class SimulatedOccurrenceResponseModel extends api_response_model_1.BaseSuccessResponseModel {
242
+ };
243
+ exports.SimulatedOccurrenceResponseModel = SimulatedOccurrenceResponseModel;
244
+ __decorate([
245
+ (0, swagger_1.ApiProperty)({
246
+ description: 'Occurrence simulation result',
247
+ type: () => SimulatedOccurrenceResultModel,
248
+ }),
249
+ (0, class_transformer_1.Expose)(),
250
+ __metadata("design:type", SimulatedOccurrenceResultModel)
251
+ ], SimulatedOccurrenceResponseModel.prototype, "data", void 0);
252
+ exports.SimulatedOccurrenceResponseModel = SimulatedOccurrenceResponseModel = __decorate([
253
+ (0, swagger_1.ApiSchema)({ name: 'SimulatorPluginResSimulatedOccurrence' })
254
+ ], SimulatedOccurrenceResponseModel);
172
255
  //# sourceMappingURL=simulator-response.model.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"simulator-response.model.js","sourceRoot":"","sources":["../../../../src/plugins/simulator/models/simulator-response.model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"simulator-response.model.js","sourceRoot":"","sources":["../../../../src/plugins/simulator/models/simulator-response.model.ts"],"names":[],"mappings":"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"}
@@ -202,6 +202,84 @@ devices:
202
202
  - category: manufacturer
203
203
  value: "FastyBird"
204
204
 
205
+ - name: "Living Room Wall Button Controller"
206
+ category: input_controller
207
+ room: living-room
208
+ channels:
209
+ - category: button
210
+ name: "Button 1"
211
+ properties:
212
+ - category: event
213
+ - category: button
214
+ name: "Button 2"
215
+ properties:
216
+ - category: event
217
+ - category: button
218
+ name: "Button 3"
219
+ properties:
220
+ - category: event
221
+ - category: button
222
+ name: "Button 4"
223
+ properties:
224
+ - category: event
225
+ - category: battery
226
+ properties:
227
+ - category: percentage
228
+ value: 95
229
+ - category: device_information
230
+ properties:
231
+ - category: manufacturer
232
+ value: "FastyBird"
233
+ - category: model
234
+ value: "SIM-WallButton-04"
235
+
236
+ - name: "Hallway Smart Dimmer Switch"
237
+ category: lighting
238
+ room: hallway
239
+ channels:
240
+ - category: light
241
+ properties:
242
+ - category: on
243
+ value: false
244
+ - category: brightness
245
+ value: 100
246
+ - category: button
247
+ name: "Switch Button"
248
+ properties:
249
+ - category: event
250
+ - category: binary_input
251
+ name: "Switch Input"
252
+ properties:
253
+ - category: state
254
+ value: false
255
+ - category: device_information
256
+ properties:
257
+ - category: manufacturer
258
+ value: "FastyBird"
259
+ - category: model
260
+ value: "SIM-DimmerSW-01"
261
+
262
+ - name: "Hallway Auxiliary Controls"
263
+ category: input_controller
264
+ room: hallway
265
+ channels:
266
+ - category: binary_input
267
+ name: "Auxiliary Switch"
268
+ properties:
269
+ - category: state
270
+ value: false
271
+ - category: analog_input
272
+ name: "Rotary Dial"
273
+ properties:
274
+ - category: value
275
+ value: 0.0
276
+ - category: device_information
277
+ properties:
278
+ - category: manufacturer
279
+ value: "FastyBird"
280
+ - category: model
281
+ value: "SIM-AuxControl-01"
282
+
205
283
  scenes:
206
284
  - name: "Movie Night"
207
285
  category: movie
@@ -399,7 +399,9 @@ let ScenarioExecutorService = class ScenarioExecutorService {
399
399
  }
400
400
  let value = propertyDef.value;
401
401
  if (value === undefined) {
402
- value = this.getDefaultValue(metadata.data_type, metadata.format);
402
+ value = metadata.permissions.includes(devices_constants_1.PermissionType.EVENT_ONLY)
403
+ ? null
404
+ : this.getDefaultValue(metadata.data_type, metadata.format);
403
405
  }
404
406
  return {
405
407
  id: propertyDef.id ?? (0, uuid_1.v4)(),