kuzzle-device-manager 2.11.0-dev.1 → 3.0.0-3-dev.1

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 (193) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.js +1 -0
  3. package/dist/index.js.map +1 -1
  4. package/dist/lib/modules/asset/AssetModule.d.ts +1 -4
  5. package/dist/lib/modules/asset/AssetModule.js +0 -13
  6. package/dist/lib/modules/asset/AssetModule.js.map +1 -1
  7. package/dist/lib/modules/asset/AssetService.d.ts +7 -4
  8. package/dist/lib/modules/asset/AssetService.js +119 -50
  9. package/dist/lib/modules/asset/AssetService.js.map +1 -1
  10. package/dist/lib/modules/asset/AssetsController.d.ts +25 -7
  11. package/dist/lib/modules/asset/AssetsController.js +123 -36
  12. package/dist/lib/modules/asset/AssetsController.js.map +1 -1
  13. package/dist/lib/modules/asset/collections/assetsMappings.js +10 -15
  14. package/dist/lib/modules/asset/collections/assetsMappings.js.map +1 -1
  15. package/dist/lib/modules/asset/exports.d.ts +0 -4
  16. package/dist/lib/modules/asset/exports.js +0 -4
  17. package/dist/lib/modules/asset/exports.js.map +1 -1
  18. package/dist/lib/modules/asset/index.d.ts +1 -3
  19. package/dist/lib/modules/asset/index.js +1 -3
  20. package/dist/lib/modules/asset/index.js.map +1 -1
  21. package/dist/lib/modules/asset/model/AssetSerializer.js +0 -1
  22. package/dist/lib/modules/asset/model/AssetSerializer.js.map +1 -1
  23. package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js +1 -1
  24. package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js.map +1 -1
  25. package/dist/lib/modules/asset/types/AssetApi.d.ts +124 -9
  26. package/dist/lib/modules/asset/types/AssetContent.d.ts +9 -16
  27. package/dist/lib/modules/asset/types/AssetHistoryContent.d.ts +4 -11
  28. package/dist/lib/modules/decoder/DecodedPayload.d.ts +2 -0
  29. package/dist/lib/modules/decoder/DecodedPayload.js +13 -2
  30. package/dist/lib/modules/decoder/DecodedPayload.js.map +1 -1
  31. package/dist/lib/modules/decoder/Decoder.d.ts +1 -1
  32. package/dist/lib/modules/decoder/Decoder.js.map +1 -1
  33. package/dist/lib/modules/decoder/DecoderModule.js.map +1 -1
  34. package/dist/lib/modules/decoder/DecodersController.d.ts +4 -1
  35. package/dist/lib/modules/decoder/DecodersController.js +3 -0
  36. package/dist/lib/modules/decoder/DecodersController.js.map +1 -1
  37. package/dist/lib/modules/decoder/DecodersRegister.js +4 -1
  38. package/dist/lib/modules/decoder/DecodersRegister.js.map +1 -1
  39. package/dist/lib/modules/decoder/PayloadService.d.ts +1 -0
  40. package/dist/lib/modules/decoder/PayloadService.js +136 -26
  41. package/dist/lib/modules/decoder/PayloadService.js.map +1 -1
  42. package/dist/lib/modules/decoder/PayloadsController.js +1 -1
  43. package/dist/lib/modules/decoder/PayloadsController.js.map +1 -1
  44. package/dist/lib/modules/device/DeviceService.d.ts +6 -47
  45. package/dist/lib/modules/device/DeviceService.js +157 -291
  46. package/dist/lib/modules/device/DeviceService.js.map +1 -1
  47. package/dist/lib/modules/device/DevicesController.d.ts +5 -5
  48. package/dist/lib/modules/device/DevicesController.js +35 -23
  49. package/dist/lib/modules/device/DevicesController.js.map +1 -1
  50. package/dist/lib/modules/device/collections/deviceMappings.d.ts +6 -0
  51. package/dist/lib/modules/device/collections/deviceMappings.js +76 -6
  52. package/dist/lib/modules/device/collections/deviceMappings.js.map +1 -1
  53. package/dist/lib/modules/device/roles/RoleDevicesAdmin.d.ts +2 -2
  54. package/dist/lib/modules/device/roles/RoleDevicesAdmin.js +7 -4
  55. package/dist/lib/modules/device/roles/RoleDevicesAdmin.js.map +1 -1
  56. package/dist/lib/modules/device/roles/specificRoles/RoleDevicesAssetAssociation.js +4 -1
  57. package/dist/lib/modules/device/roles/specificRoles/RoleDevicesAssetAssociation.js.map +1 -1
  58. package/dist/lib/modules/device/types/DeviceApi.d.ts +69 -41
  59. package/dist/lib/modules/device/types/DeviceContent.d.ts +56 -5
  60. package/dist/lib/modules/device/types/DeviceEvents.d.ts +9 -24
  61. package/dist/lib/modules/group/GroupsController.d.ts +37 -0
  62. package/dist/lib/modules/group/GroupsController.js +472 -0
  63. package/dist/lib/modules/group/GroupsController.js.map +1 -0
  64. package/dist/lib/modules/group/GroupsModule.d.ts +10 -0
  65. package/dist/lib/modules/group/GroupsModule.js +25 -0
  66. package/dist/lib/modules/group/GroupsModule.js.map +1 -0
  67. package/dist/lib/modules/group/GroupsService.d.ts +118 -0
  68. package/dist/lib/modules/group/GroupsService.js +518 -0
  69. package/dist/lib/modules/group/GroupsService.js.map +1 -0
  70. package/dist/lib/modules/group/collections/groupsMappings.d.ts +2 -0
  71. package/dist/lib/modules/{asset/collections/assetsGroupsMapping.js → group/collections/groupsMappings.js} +4 -12
  72. package/dist/lib/modules/group/collections/groupsMappings.js.map +1 -0
  73. package/dist/lib/modules/group/exports.d.ts +5 -0
  74. package/dist/lib/modules/group/exports.js +22 -0
  75. package/dist/lib/modules/group/exports.js.map +1 -0
  76. package/dist/lib/modules/group/index.d.ts +4 -0
  77. package/dist/lib/modules/{measure/measures → group}/index.js +4 -5
  78. package/dist/lib/modules/group/index.js.map +1 -0
  79. package/dist/lib/modules/{asset/roles/RoleAssetsGroupsAdmin.d.ts → group/roles/RoleGroupsAdmin.d.ts} +3 -3
  80. package/dist/lib/modules/{asset/roles/RoleAssetsGroupsAdmin.js → group/roles/RoleGroupsAdmin.js} +7 -7
  81. package/dist/lib/modules/group/roles/RoleGroupsAdmin.js.map +1 -0
  82. package/dist/lib/modules/{asset/roles/RoleAssetsGroupsReader.d.ts → group/roles/RoleGroupsReader.d.ts} +3 -3
  83. package/dist/lib/modules/{asset/roles/RoleAssetsGroupsReader.js → group/roles/RoleGroupsReader.js} +7 -7
  84. package/dist/lib/modules/group/roles/RoleGroupsReader.js.map +1 -0
  85. package/dist/lib/modules/group/types/GroupContent.d.ts +10 -0
  86. package/dist/lib/modules/{asset/types/AssetGroupsApi.js → group/types/GroupContent.js} +1 -1
  87. package/dist/lib/modules/group/types/GroupContent.js.map +1 -0
  88. package/dist/lib/modules/group/types/GroupsApi.d.ts +141 -0
  89. package/dist/lib/modules/{asset/types/AssetGroupContent.js → group/types/GroupsApi.js} +1 -1
  90. package/dist/lib/modules/group/types/GroupsApi.js.map +1 -0
  91. package/dist/lib/modules/measure/MeasureExporter.js +14 -6
  92. package/dist/lib/modules/measure/MeasureExporter.js.map +1 -1
  93. package/dist/lib/modules/measure/MeasureService.d.ts +11 -43
  94. package/dist/lib/modules/measure/MeasureService.js +86 -375
  95. package/dist/lib/modules/measure/MeasureService.js.map +1 -1
  96. package/dist/lib/modules/measure/MeasureSourcesBuilder.d.ts +1 -2
  97. package/dist/lib/modules/measure/MeasureSourcesBuilder.js +5 -15
  98. package/dist/lib/modules/measure/MeasureSourcesBuilder.js.map +1 -1
  99. package/dist/lib/modules/measure/MeasureTargetBuilder.d.ts +1 -1
  100. package/dist/lib/modules/measure/MeasureTargetBuilder.js +2 -2
  101. package/dist/lib/modules/measure/MeasureTargetBuilder.js.map +1 -1
  102. package/dist/lib/modules/measure/collections/measuresMappings.d.ts +2 -91
  103. package/dist/lib/modules/measure/collections/measuresMappings.js +7 -11
  104. package/dist/lib/modules/measure/collections/measuresMappings.js.map +1 -1
  105. package/dist/lib/modules/measure/exports.d.ts +0 -1
  106. package/dist/lib/modules/measure/exports.js +0 -1
  107. package/dist/lib/modules/measure/exports.js.map +1 -1
  108. package/dist/lib/modules/measure/index.d.ts +0 -1
  109. package/dist/lib/modules/measure/index.js +0 -1
  110. package/dist/lib/modules/measure/index.js.map +1 -1
  111. package/dist/lib/modules/measure/types/MeasureContent.d.ts +9 -2
  112. package/dist/lib/modules/measure/types/MeasureEvents.d.ts +6 -149
  113. package/dist/lib/modules/measure/types/MeasureSources.d.ts +5 -0
  114. package/dist/lib/modules/measure/types/MeasureSources.js.map +1 -1
  115. package/dist/lib/modules/measure/types/MeasureTarget.d.ts +1 -1
  116. package/dist/lib/modules/measure/types/MeasureTarget.js +1 -1
  117. package/dist/lib/modules/measure/types/MeasureTarget.js.map +1 -1
  118. package/dist/lib/modules/model/ModelModule.js.map +1 -1
  119. package/dist/lib/modules/model/ModelSerializer.js +15 -0
  120. package/dist/lib/modules/model/ModelSerializer.js.map +1 -1
  121. package/dist/lib/modules/model/ModelService.d.ts +20 -14
  122. package/dist/lib/modules/model/ModelService.js +301 -117
  123. package/dist/lib/modules/model/ModelService.js.map +1 -1
  124. package/dist/lib/modules/model/ModelsController.d.ts +1 -1
  125. package/dist/lib/modules/model/ModelsController.js +32 -19
  126. package/dist/lib/modules/model/ModelsController.js.map +1 -1
  127. package/dist/lib/modules/model/ModelsRegister.d.ts +6 -5
  128. package/dist/lib/modules/model/ModelsRegister.js +10 -8
  129. package/dist/lib/modules/model/ModelsRegister.js.map +1 -1
  130. package/dist/lib/modules/model/collections/modelsMappings.js +20 -1
  131. package/dist/lib/modules/model/collections/modelsMappings.js.map +1 -1
  132. package/dist/lib/modules/model/types/ModelApi.d.ts +14 -9
  133. package/dist/lib/modules/model/types/ModelContent.d.ts +34 -3
  134. package/dist/lib/modules/model/types/ModelContent.js.map +1 -1
  135. package/dist/lib/modules/model/types/ModelDefinition.d.ts +6 -2
  136. package/dist/lib/modules/model/types/ModelEvents.d.ts +3 -1
  137. package/dist/lib/modules/plugin/DeviceManagerEngine.d.ts +15 -6
  138. package/dist/lib/modules/plugin/DeviceManagerEngine.js +151 -54
  139. package/dist/lib/modules/plugin/DeviceManagerEngine.js.map +1 -1
  140. package/dist/lib/modules/plugin/DeviceManagerPlugin.d.ts +10 -8
  141. package/dist/lib/modules/plugin/DeviceManagerPlugin.js +41 -44
  142. package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
  143. package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +9 -14
  144. package/dist/lib/modules/plugin/types/InternalCollection.d.ts +1 -1
  145. package/dist/lib/modules/plugin/types/InternalCollection.js +1 -1
  146. package/dist/lib/modules/plugin/types/InternalCollection.js.map +1 -1
  147. package/dist/lib/modules/plugin/types/exports.d.ts +1 -0
  148. package/dist/lib/modules/plugin/types/exports.js +1 -0
  149. package/dist/lib/modules/plugin/types/exports.js.map +1 -1
  150. package/dist/lib/modules/shared/services/AbstractExporter.d.ts +3 -1
  151. package/dist/lib/modules/shared/services/AbstractExporter.js +7 -3
  152. package/dist/lib/modules/shared/services/AbstractExporter.js.map +1 -1
  153. package/dist/lib/modules/shared/services/BaseService.js.map +1 -1
  154. package/dist/lib/modules/shared/services/DigitalTwinExporter.d.ts +6 -1
  155. package/dist/lib/modules/shared/services/DigitalTwinExporter.js +49 -7
  156. package/dist/lib/modules/shared/services/DigitalTwinExporter.js.map +1 -1
  157. package/dist/lib/modules/shared/services/DigitalTwinService.d.ts +70 -2
  158. package/dist/lib/modules/shared/services/DigitalTwinService.js +309 -1
  159. package/dist/lib/modules/shared/services/DigitalTwinService.js.map +1 -1
  160. package/dist/lib/modules/shared/types/DigitalTwinContent.d.ts +4 -5
  161. package/dist/lib/modules/shared/types/DigitalTwinEvents.d.ts +30 -0
  162. package/package.json +15 -9
  163. package/dist/lib/modules/asset/AssetsGroupsController.d.ts +0 -24
  164. package/dist/lib/modules/asset/AssetsGroupsController.js +0 -239
  165. package/dist/lib/modules/asset/AssetsGroupsController.js.map +0 -1
  166. package/dist/lib/modules/asset/AssetsGroupsService.d.ts +0 -49
  167. package/dist/lib/modules/asset/AssetsGroupsService.js +0 -172
  168. package/dist/lib/modules/asset/AssetsGroupsService.js.map +0 -1
  169. package/dist/lib/modules/asset/collections/assetsGroupsMapping.d.ts +0 -2
  170. package/dist/lib/modules/asset/collections/assetsGroupsMapping.js.map +0 -1
  171. package/dist/lib/modules/asset/roles/RoleAssetsGroupsAdmin.js.map +0 -1
  172. package/dist/lib/modules/asset/roles/RoleAssetsGroupsReader.js.map +0 -1
  173. package/dist/lib/modules/asset/types/AssetGroupContent.d.ts +0 -11
  174. package/dist/lib/modules/asset/types/AssetGroupContent.js.map +0 -1
  175. package/dist/lib/modules/asset/types/AssetGroupsApi.d.ts +0 -59
  176. package/dist/lib/modules/asset/types/AssetGroupsApi.js.map +0 -1
  177. package/dist/lib/modules/measure/measures/BatteryMeasure.d.ts +0 -5
  178. package/dist/lib/modules/measure/measures/BatteryMeasure.js +0 -19
  179. package/dist/lib/modules/measure/measures/BatteryMeasure.js.map +0 -1
  180. package/dist/lib/modules/measure/measures/HumidityMeasure.d.ts +0 -5
  181. package/dist/lib/modules/measure/measures/HumidityMeasure.js +0 -19
  182. package/dist/lib/modules/measure/measures/HumidityMeasure.js.map +0 -1
  183. package/dist/lib/modules/measure/measures/MovementMeasure.d.ts +0 -5
  184. package/dist/lib/modules/measure/measures/MovementMeasure.js +0 -17
  185. package/dist/lib/modules/measure/measures/MovementMeasure.js.map +0 -1
  186. package/dist/lib/modules/measure/measures/PositionMeasure.d.ts +0 -10
  187. package/dist/lib/modules/measure/measures/PositionMeasure.js +0 -43
  188. package/dist/lib/modules/measure/measures/PositionMeasure.js.map +0 -1
  189. package/dist/lib/modules/measure/measures/TemperatureMeasure.d.ts +0 -5
  190. package/dist/lib/modules/measure/measures/TemperatureMeasure.js +0 -19
  191. package/dist/lib/modules/measure/measures/TemperatureMeasure.js.map +0 -1
  192. package/dist/lib/modules/measure/measures/index.d.ts +0 -5
  193. package/dist/lib/modules/measure/measures/index.js.map +0 -1
@@ -1,7 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PayloadService = void 0;
4
- const kuzzle_1 = require("kuzzle");
5
4
  const kuzzle_plugin_commons_1 = require("kuzzle-plugin-commons");
6
5
  const uuid_1 = require("uuid");
7
6
  const device_1 = require("../device");
@@ -57,31 +56,126 @@ class PayloadService extends shared_1.BaseService {
57
56
  let decodedPayload = new DecodedPayload_1.DecodedPayload(decoder);
58
57
  decodedPayload = await decoder.decode(decodedPayload, payload, request);
59
58
  if (decodedPayload.references.length === 0) {
60
- throw new kuzzle_1.BadRequestError("No measurement has been decoded");
59
+ this.logger.debug(`No change detected in measurements or metadata for device model "${decoder.deviceModel}", skipping ingestion`);
60
+ return { valid };
61
+ }
62
+ let ingestMeasurements = true;
63
+ if (!decodedPayload.hasMeasurements()) {
64
+ this.logger.debug(`No change detected in measurements for device model "${decoder.deviceModel}", skipping measure ingestion`);
65
+ ingestMeasurements = false;
66
+ }
67
+ let changeMetadata = true;
68
+ if (!decodedPayload.hasMetadata()) {
69
+ this.logger.debug(`No change detected in metadata for device model "${decoder.deviceModel}", skipping metadata ingestion`);
70
+ changeMetadata = false;
61
71
  }
62
72
  const devices = await this.retrieveDevices(decoder.deviceModel, decodedPayload.references, {
63
73
  refresh,
64
74
  });
65
75
  for (const device of devices) {
66
- await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:ingest", {
67
- device,
68
- measurements: decodedPayload.getMeasurements(device._source.reference),
69
- metadata: decodedPayload.getMetadata(device._source.reference),
70
- payloadUuids: [uuid],
71
- });
76
+ const { _id, _source: { reference, linkedMeasures, engineId }, } = device;
77
+ // ? Done here to avoid invoque Measure service only for device metadata change (if no engineId)
78
+ const deviceMetadataChanges = decodedPayload.getMetadata(reference);
79
+ if (changeMetadata &&
80
+ deviceMetadataChanges !== null &&
81
+ Object.values(deviceMetadataChanges).length > 0) {
82
+ if (engineId !== null) {
83
+ await this.sdk.document.update(engineId, plugin_1.InternalCollection.DEVICES, _id, {
84
+ metadata: deviceMetadataChanges,
85
+ });
86
+ }
87
+ }
88
+ if (ingestMeasurements) {
89
+ const measurements = decodedPayload.getMeasurements(reference);
90
+ // Handle device not attached to an engine
91
+ if (engineId === null) {
92
+ await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:sourceIngest", {
93
+ measurements,
94
+ payloadUuids: [uuid],
95
+ source: this.getDeviceMeasureSource(device, deviceMetadataChanges),
96
+ target: {
97
+ assetId: null,
98
+ indexId: engineId,
99
+ type: "device",
100
+ },
101
+ });
102
+ continue;
103
+ }
104
+ // Handle every linked assets
105
+ for (const link of linkedMeasures) {
106
+ const assetId = link.assetId;
107
+ const assetMeasurements = measurements.filter((m) => link.measureSlots
108
+ .map((slot) => slot.device)
109
+ .includes(m.measureName));
110
+ await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:sourceIngest", {
111
+ measurements: assetMeasurements,
112
+ payloadUuids: [uuid],
113
+ source: this.getDeviceMeasureSource(device, deviceMetadataChanges),
114
+ target: {
115
+ assetId: assetId,
116
+ indexId: engineId,
117
+ type: "device",
118
+ },
119
+ });
120
+ }
121
+ // HANDLE MEASURES NOT LINKED
122
+ const unlinkedMeasurements = measurements.filter((m) => !linkedMeasures.some((link) => link.measureSlots
123
+ .map((slot) => slot.device)
124
+ .includes(m.measureName)));
125
+ if (unlinkedMeasurements.length > 0) {
126
+ await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:sourceIngest", {
127
+ measurements: unlinkedMeasurements,
128
+ payloadUuids: [uuid],
129
+ source: this.getDeviceMeasureSource(device, deviceMetadataChanges),
130
+ target: {
131
+ assetId: null,
132
+ indexId: engineId,
133
+ type: "device",
134
+ },
135
+ });
136
+ }
137
+ }
72
138
  }
73
139
  return { valid };
74
140
  }
75
141
  async receiveFormated(device, measurements, { payloadUuids } = {}) {
76
142
  const apiAction = "device-manager/devices:receiveMeasure";
143
+ const { _source: { model, linkedMeasures, engineId }, } = device;
144
+ // TODO: do we want update a metadata from formatted payload to ?
77
145
  // Payload is already formated thus valid
78
- await this.savePayload(device._source.model, payloadUuids[0], true, measurements, apiAction);
79
- await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:ingest", {
80
- device,
81
- measurements,
82
- metadata: {},
83
- payloadUuids,
84
- });
146
+ await this.savePayload(model, payloadUuids[0], true, measurements, apiAction);
147
+ if (engineId !== null) {
148
+ for (const link of linkedMeasures) {
149
+ const assetId = link.assetId;
150
+ const assetMeasurements = measurements.filter((m) => link.measureSlots.map((mn) => mn.device).includes(m.measureName));
151
+ await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:sourceIngest", {
152
+ measurements: assetMeasurements,
153
+ payloadUuids,
154
+ source: this.getDeviceMeasureSource(device, device._source.metadata),
155
+ target: {
156
+ assetId: assetId,
157
+ indexId: engineId,
158
+ type: "device",
159
+ },
160
+ });
161
+ }
162
+ // HANDLE MEASURES NOT LINKED
163
+ const unlinkedMeasurements = measurements.filter((measurement) => !linkedMeasures.some((link) => link.measureSlots
164
+ .map((slot) => slot.device)
165
+ .includes(measurement.measureName)));
166
+ if (unlinkedMeasurements.length > 0) {
167
+ await (0, kuzzle_plugin_commons_1.ask)("device-manager:measures:sourceIngest", {
168
+ measurements: unlinkedMeasurements,
169
+ payloadUuids,
170
+ source: this.getDeviceMeasureSource(device, device._source.metadata),
171
+ target: {
172
+ assetId: null,
173
+ indexId: engineId,
174
+ type: "device",
175
+ },
176
+ });
177
+ }
178
+ }
85
179
  }
86
180
  /**
87
181
  * Method used to save the payload and catch + log the error if any.
@@ -90,7 +184,7 @@ class PayloadService extends shared_1.BaseService {
90
184
  */
91
185
  async savePayload(deviceModel, uuid, valid, payload, apiAction, state, reason) {
92
186
  try {
93
- await this.sdk.document.create(this.config.adminIndex, "payloads", { apiAction, deviceModel, payload, reason, state, uuid, valid }, uuid);
187
+ await this.sdk.document.create(this.config.platformIndex, "payloads", { apiAction, deviceModel, payload, reason, state, uuid, valid }, uuid);
94
188
  }
95
189
  catch (error) {
96
190
  this.logger.error(`Cannot save the payload from "${deviceModel}": ${error}`);
@@ -100,15 +194,16 @@ class PayloadService extends shared_1.BaseService {
100
194
  * Get devices or create missing ones (when auto-provisionning is enabled)
101
195
  */
102
196
  async retrieveDevices(deviceModel, references, { refresh, } = {}) {
103
- const { successes: devices, errors } = await this.sdk.document.mGet(this.config.adminIndex, plugin_1.InternalCollection.DEVICES, references.map((reference) => device_1.DeviceSerializer.id(deviceModel, reference)));
197
+ const { successes: provisioningDevices, errors } = await this.sdk.document.mGet(this.config.platformIndex, plugin_1.InternalCollection.DEVICES, references.map((reference) => device_1.DeviceSerializer.id(deviceModel, reference)));
104
198
  // Due to the existence of a "devices" collection in the tenant index and a platform index,
105
199
  // we need to fetch the device content from the associated tenant if it exists.
106
- const updatedDevices = await Promise.all(devices.map((device) => device._source.engineId && device._source.engineId.trim() !== ""
107
- ? this.sdk.document.get(device._source.engineId, plugin_1.InternalCollection.DEVICES, device._id)
108
- : device));
200
+ const updatedDevices = await Promise.all(provisioningDevices.map((deviceProvisioning) => deviceProvisioning._source.engineId &&
201
+ deviceProvisioning._source.engineId.trim() !== ""
202
+ ? this.sdk.document.get(deviceProvisioning._source.engineId, plugin_1.InternalCollection.DEVICES, deviceProvisioning._id)
203
+ : deviceProvisioning));
109
204
  // If we have unknown devices, let's check if we should register them
110
205
  if (errors.length > 0) {
111
- const { _source } = await this.sdk.document.get(this.config.adminIndex, this.config.adminCollections.config.name, "plugin--device-manager");
206
+ const { _source } = await this.sdk.document.get(this.config.platformIndex, this.config.platformCollections.config.name, "plugin--device-manager");
112
207
  if (_source["device-manager"].provisioningStrategy === "auto") {
113
208
  const newDevices = await this.provisionDevices(deviceModel, errors, {
114
209
  refresh,
@@ -122,17 +217,20 @@ class PayloadService extends shared_1.BaseService {
122
217
  return updatedDevices;
123
218
  }
124
219
  async provisionDevices(deviceModel, deviceIds, { refresh }) {
220
+ const deviceModelContent = await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:model:device:get", {
221
+ model: deviceModel,
222
+ });
125
223
  const newDevices = deviceIds.map((deviceId) => {
126
224
  // Reference may contains a "-"
127
225
  const [, ...rest] = deviceId.split("-");
128
226
  const reference = rest.join("-");
129
227
  const body = {
130
- assetId: null,
131
228
  engineId: null,
132
229
  lastMeasuredAt: 0,
133
- measures: {},
134
- metadata: {},
230
+ lastMeasures: [],
231
+ measureSlots: deviceModelContent.device.measures,
135
232
  model: deviceModel,
233
+ provisionedAt: Date.now(),
136
234
  reference,
137
235
  };
138
236
  return {
@@ -140,7 +238,7 @@ class PayloadService extends shared_1.BaseService {
140
238
  body,
141
239
  };
142
240
  });
143
- const { successes, errors } = await this.sdk.document.mCreate(this.config.adminIndex, plugin_1.InternalCollection.DEVICES, newDevices, { refresh });
241
+ const { successes, errors } = await this.sdk.document.mCreate(this.config.platformIndex, plugin_1.InternalCollection.DEVICES, newDevices, { refresh });
144
242
  for (const error of errors) {
145
243
  this.logger.error(`Cannot create device "${error.document._id}": ${error.reason}`);
146
244
  }
@@ -162,7 +260,7 @@ class PayloadService extends shared_1.BaseService {
162
260
  if (deviceModel) {
163
261
  filter.push({ term: { deviceModel } });
164
262
  }
165
- const deleted = await this.sdk.bulk.deleteByQuery(this.config.adminIndex, "payloads", {
263
+ const deleted = await this.sdk.bulk.deleteByQuery(this.config.platformIndex, "payloads", {
166
264
  query: { bool: { filter } },
167
265
  });
168
266
  return deleted;
@@ -170,6 +268,18 @@ class PayloadService extends shared_1.BaseService {
170
268
  async receiveUnknown(deviceModel, payload, apiAction) {
171
269
  await this.savePayload(deviceModel, (0, uuid_1.v4)(), false, payload, apiAction);
172
270
  }
271
+ getDeviceMeasureSource(device, deviceMetadataChanges) {
272
+ const { reference, model, metadata, groups } = device._source;
273
+ return {
274
+ deviceMetadata: metadata,
275
+ groups,
276
+ id: device._id,
277
+ metadata: deviceMetadataChanges,
278
+ model: model,
279
+ reference: reference,
280
+ type: "device",
281
+ };
282
+ }
173
283
  }
174
284
  exports.PayloadService = PayloadService;
175
285
  //# sourceMappingURL=PayloadService.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PayloadService.js","sourceRoot":"","sources":["../../../../lib/modules/decoder/PayloadService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PayloadService.js","sourceRoot":"","sources":["../../../../lib/modules/decoder/PayloadService.ts"],"names":[],"mappings":"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"}
@@ -3,9 +3,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.PayloadsController = void 0;
4
4
  class PayloadsController {
5
5
  constructor(payloadService, decodersRegister, logger) {
6
+ this.logger = logger;
6
7
  this.payloadService = payloadService;
7
8
  this.decodersRegister = decodersRegister;
8
- this.logger = logger;
9
9
  this.definition = {
10
10
  actions: {
11
11
  receiveUnknown: {
@@ -1 +1 @@
1
- {"version":3,"file":"PayloadsController.js","sourceRoot":"","sources":["../../../../lib/modules/decoder/PayloadsController.ts"],"names":[],"mappings":";;;AAOA,MAAa,kBAAkB;IAM7B,YACE,cAA8B,EAC9B,gBAAkC,EAClC,MAAoB;QAEpB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QAErB,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO,EAAE;gBACP,cAAc,EAAE;oBACd,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;oBACvC,IAAI,EAAE;wBACJ;4BACE,OAAO,EAAE;gCACP,WAAW,EAAE,iCAAiC;gCAC9C,UAAU,EAAE;oCACV;wCACE,EAAE,EAAE,MAAM;wCACV,IAAI,EAAE,aAAa;wCACnB,QAAQ,EAAE,IAAI;wCACd,MAAM,EAAE;4CACN,IAAI,EAAE,QAAQ;yCACf;qCACF;oCACD;wCACE,EAAE,EAAE,MAAM;wCACV,IAAI,EAAE,SAAS;wCACf,QAAQ,EAAE,IAAI;wCACd,MAAM,EAAE;4CACN,IAAI,EAAE,QAAQ;yCACf;qCACF;iCACF;6BACF;4BACD,IAAI,EAAE,qCAAqC;4BAC3C,IAAI,EAAE,MAAM;yBACb;qBACF;iBACF;aACF;SACF,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG;gBACxC,OAAO,EAAE,CAAC,OAAsB,EAAE,EAAE,CAClC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;gBAC/C,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAAsB;QAEtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAExE,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;CACF;AApED,gDAoEC"}
1
+ {"version":3,"file":"PayloadsController.js","sourceRoot":"","sources":["../../../../lib/modules/decoder/PayloadsController.ts"],"names":[],"mappings":";;;AAOA,MAAa,kBAAkB;IAM7B,YACE,cAA8B,EAC9B,gBAAkC,EAClC,MAAoB;QAEpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACrC,IAAI,CAAC,gBAAgB,GAAG,gBAAgB,CAAC;QAEzC,IAAI,CAAC,UAAU,GAAG;YAChB,OAAO,EAAE;gBACP,cAAc,EAAE;oBACd,OAAO,EAAE,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;oBACvC,IAAI,EAAE;wBACJ;4BACE,OAAO,EAAE;gCACP,WAAW,EAAE,iCAAiC;gCAC9C,UAAU,EAAE;oCACV;wCACE,EAAE,EAAE,MAAM;wCACV,IAAI,EAAE,aAAa;wCACnB,QAAQ,EAAE,IAAI;wCACd,MAAM,EAAE;4CACN,IAAI,EAAE,QAAQ;yCACf;qCACF;oCACD;wCACE,EAAE,EAAE,MAAM;wCACV,IAAI,EAAE,SAAS;wCACf,QAAQ,EAAE,IAAI;wCACd,MAAM,EAAE;4CACN,IAAI,EAAE,QAAQ;yCACf;qCACF;iCACF;6BACF;4BACD,IAAI,EAAE,qCAAqC;4BAC3C,IAAI,EAAE,MAAM;yBACb;qBACF;iBACF;aACF;SACF,CAAC;QAEF,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,CAAC;YACrD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG;gBACxC,OAAO,EAAE,CAAC,OAAsB,EAAE,EAAE,CAClC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,OAAO,CAAC;gBAC/C,IAAI,EAAE,OAAO,CAAC,IAAI;aACnB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAClB,OAAsB;QAEtB,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAClC,MAAM,WAAW,GAAG,OAAO,CAAC,SAAS,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;QACrE,MAAM,SAAS,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAExE,MAAM,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5E,CAAC;CACF;AApED,gDAoEC"}
@@ -3,25 +3,21 @@ import { JSONObject, KDocument, KHit, SearchResult } from "kuzzle-sdk";
3
3
  import { DecodedMeasurement } from "../measure";
4
4
  import { DeviceManagerPlugin } from "../plugin";
5
5
  import { DigitalTwinService, Metadata, SearchParams } from "../shared";
6
- import { AssetContent } from "./../asset";
7
- import { ApiDeviceLinkAssetRequest } from "./types/DeviceApi";
8
- import { DeviceContent } from "./types/DeviceContent";
6
+ import { DeviceProvisioningContent, DeviceContent } from "./types/DeviceContent";
7
+ import { ApiDeviceUnlinkAssetsResult } from "./exports";
9
8
  import { KuzzleLogger } from "kuzzle-logger";
10
9
  export declare class DeviceService extends DigitalTwinService {
11
10
  readonly logger: KuzzleLogger;
12
11
  constructor(plugin: DeviceManagerPlugin, logger: KuzzleLogger);
13
12
  registerAskEvents(): void;
14
13
  private _create;
14
+ private _createDeviceProvisioning;
15
15
  /**
16
16
  * Create a new device.
17
17
  *
18
- * @todo creating a device in the "device-manager" index should be a separate
19
- * method since in this case "engineId" is not really an engine ID but still
20
- * required as an argument (in part to check the tenant rights)
21
18
  */
22
19
  create(model: string, reference: string, metadata: JSONObject, request: KuzzleRequest): Promise<KDocument<DeviceContent>>;
23
20
  get(engineId: string, deviceId: string, request: KuzzleRequest): Promise<KDocument<DeviceContent>>;
24
- private getInternalDevices;
25
21
  /**
26
22
  * Replace a device metadata
27
23
  */
@@ -33,13 +29,13 @@ export declare class DeviceService extends DigitalTwinService {
33
29
  update(engineId: string, deviceId: string, metadata: Metadata, request: KuzzleRequest): Promise<KDocument<DeviceContent>>;
34
30
  delete(engineId: string, deviceId: string, request: KuzzleRequest): Promise<void>;
35
31
  search(engineId: string, searchParams: SearchParams, request: KuzzleRequest): Promise<SearchResult<KHit<DeviceContent>>>;
32
+ unlinkAssets(deviceId: string, allMeasures: boolean, assetIds: string[], measureSlots: string[], request: KuzzleRequest): Promise<ApiDeviceUnlinkAssetsResult>;
36
33
  /**
37
34
  * Internal logic to attach the device to an engine
38
35
  *
39
36
  * @param engineId Engine id to attach to
40
37
  * @param deviceId Device id to attach
41
38
  * @param options.refresh Wait for ES indexation
42
- * @param options.strict If true, throw if an operation isn't possible
43
39
  */
44
40
  private _attachEngine;
45
41
  /**
@@ -57,46 +53,9 @@ export declare class DeviceService extends DigitalTwinService {
57
53
  * @param {string} deviceId Id of the device
58
54
  * @param {KuzzleRequest} request kuzzle request
59
55
  */
60
- detachEngine(deviceId: string, request: KuzzleRequest): Promise<KDocument<DeviceContent>>;
61
- /**
62
- * Link a device to an asset.
63
- */
64
- linkAsset(engineId: string, deviceId: string, assetId: string, measureNames: ApiDeviceLinkAssetRequest["body"]["measureNames"], implicitMeasuresLinking: boolean, request: KuzzleRequest): Promise<{
65
- asset: KDocument<AssetContent>;
66
- device: KDocument<DeviceContent>;
67
- }>;
56
+ detachEngine(deviceId: string, request: KuzzleRequest): Promise<KDocument<DeviceProvisioningContent>>;
68
57
  receiveMeasures(engineId: string, deviceId: string, measures: DecodedMeasurement[], payloadUuids: string[], request: KuzzleRequest): Promise<void>;
69
- /**
70
- * Checks if the asset does not already have a linked device using one of the
71
- * requested measure names.
72
- */
73
- private checkAlreadyProvidedMeasures;
74
- /**
75
- * Goes through the device available measures and add them into the link if:
76
- * - they are not already provided by another device
77
- * - they are not already present in the link request
78
- * - they are declared in the asset model
79
- */
80
- private generateMissingAssetMeasureNames;
81
- /**
82
- * Internal logic of unlink a device of an asset
83
- *
84
- * @param {string} deviceId Id of the device
85
- * @param {KuzzleRequest} request kuzzle request
86
- */
87
- private _unlinkAsset;
88
- /**
89
- * Unlink a device of an asset with lock
90
- *
91
- * @param {string} deviceId Id of the device
92
- * @param {KuzzleRequest} request kuzzle request
93
- */
94
- unlinkAsset(deviceId: string, request: KuzzleRequest): Promise<{
95
- asset: KDocument<AssetContent>;
96
- device: KDocument<DeviceContent>;
97
- }>;
98
58
  private checkEngineExists;
99
59
  private checkAttachedToEngine;
100
- private getDeviceModel;
101
- private getAssetModel;
60
+ private refreshModel;
102
61
  }