kuzzle-device-manager 2.4.0-beta.8 → 2.4.0-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.
- package/dist/lib/modules/asset/AssetHistoryService.js +2 -1
- package/dist/lib/modules/asset/AssetHistoryService.js.map +1 -1
- package/dist/lib/modules/asset/AssetModule.js +30 -0
- package/dist/lib/modules/asset/AssetModule.js.map +1 -1
- package/dist/lib/modules/asset/AssetService.d.ts +18 -4
- package/dist/lib/modules/asset/AssetService.js +91 -12
- package/dist/lib/modules/asset/AssetService.js.map +1 -1
- package/dist/lib/modules/asset/AssetsController.d.ts +7 -1
- package/dist/lib/modules/asset/AssetsController.js +132 -1
- package/dist/lib/modules/asset/AssetsController.js.map +1 -1
- package/dist/lib/modules/asset/AssetsGroupsController.js +1 -1
- package/dist/lib/modules/asset/AssetsGroupsController.js.map +1 -1
- package/dist/lib/modules/asset/model/AssetSerializer.js.map +1 -1
- package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js +3 -0
- package/dist/lib/modules/asset/roles/RoleAssetsAdmin.js.map +1 -1
- package/dist/lib/modules/asset/roles/RoleAssetsReader.d.ts +4 -0
- package/dist/lib/modules/asset/roles/RoleAssetsReader.js +8 -0
- package/dist/lib/modules/asset/roles/RoleAssetsReader.js.map +1 -1
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsConfiguration.d.ts +8 -0
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsConfiguration.js +20 -0
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsConfiguration.js.map +1 -0
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsCreation.d.ts +8 -0
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsCreation.js +24 -0
- package/dist/lib/modules/asset/roles/specificRoles/RoleAssetsCreation.js.map +1 -0
- package/dist/lib/modules/asset/roles/specificRoles/index.d.ts +2 -0
- package/dist/lib/modules/asset/roles/specificRoles/index.js +19 -0
- package/dist/lib/modules/asset/roles/specificRoles/index.js.map +1 -0
- package/dist/lib/modules/asset/types/AssetApi.d.ts +31 -2
- package/dist/lib/modules/decoder/DecodedPayload.js.map +1 -1
- package/dist/lib/modules/decoder/Decoder.d.ts +11 -0
- package/dist/lib/modules/decoder/Decoder.js +1 -0
- package/dist/lib/modules/decoder/Decoder.js.map +1 -1
- package/dist/lib/modules/decoder/DecodersRegister.js.map +1 -1
- package/dist/lib/modules/decoder/DecodingState.js +1 -1
- package/dist/lib/modules/decoder/DecodingState.js.map +1 -1
- package/dist/lib/modules/decoder/PayloadService.d.ts +1 -1
- package/dist/lib/modules/decoder/PayloadService.js +12 -6
- package/dist/lib/modules/decoder/PayloadService.js.map +1 -1
- package/dist/lib/modules/decoder/PayloadsController.js.map +1 -1
- package/dist/lib/modules/decoder/types/DecoderContent.d.ts +1 -0
- package/dist/lib/modules/device/DeviceModule.js +30 -0
- package/dist/lib/modules/device/DeviceModule.js.map +1 -1
- package/dist/lib/modules/device/DeviceService.d.ts +14 -5
- package/dist/lib/modules/device/DeviceService.js +73 -18
- package/dist/lib/modules/device/DeviceService.js.map +1 -1
- package/dist/lib/modules/device/DevicesController.d.ts +7 -1
- package/dist/lib/modules/device/DevicesController.js +134 -3
- package/dist/lib/modules/device/DevicesController.js.map +1 -1
- package/dist/lib/modules/device/roles/RoleDevicesReader.d.ts +4 -0
- package/dist/lib/modules/device/roles/RoleDevicesReader.js +8 -0
- package/dist/lib/modules/device/roles/RoleDevicesReader.js.map +1 -1
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesAssetAssociation.d.ts +8 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesAssetAssociation.js +20 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesAssetAssociation.js.map +1 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesConfiguration.d.ts +8 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesConfiguration.js +20 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesConfiguration.js.map +1 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesCreation.d.ts +8 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesCreation.js +24 -0
- package/dist/lib/modules/device/roles/specificRoles/RoleDevicesCreation.js.map +1 -0
- package/dist/lib/modules/device/roles/specificRoles/index.d.ts +3 -0
- package/dist/lib/modules/device/roles/specificRoles/index.js +20 -0
- package/dist/lib/modules/device/roles/specificRoles/index.js.map +1 -0
- package/dist/lib/modules/device/types/DeviceApi.d.ts +23 -2
- package/dist/lib/modules/measure/MeasureExporter.d.ts +5 -4
- package/dist/lib/modules/measure/MeasureExporter.js +35 -14
- package/dist/lib/modules/measure/MeasureExporter.js.map +1 -1
- package/dist/lib/modules/measure/MeasureService.js +4 -2
- package/dist/lib/modules/measure/MeasureService.js.map +1 -1
- package/dist/lib/modules/measure/collections/measuresMappings.d.ts +3 -0
- package/dist/lib/modules/measure/collections/measuresMappings.js +5 -0
- package/dist/lib/modules/measure/collections/measuresMappings.js.map +1 -1
- package/dist/lib/modules/measure/measures/BatteryMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/BatteryMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/HumidityMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/HumidityMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/MovementMeasure.js +10 -0
- package/dist/lib/modules/measure/measures/MovementMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/PositionMeasure.js +22 -0
- package/dist/lib/modules/measure/measures/PositionMeasure.js.map +1 -1
- package/dist/lib/modules/measure/measures/TemperatureMeasure.js +12 -0
- package/dist/lib/modules/measure/measures/TemperatureMeasure.js.map +1 -1
- package/dist/lib/modules/measure/types/MeasureContent.d.ts +4 -0
- package/dist/lib/modules/measure/types/MeasureDefinition.d.ts +28 -3
- package/dist/lib/modules/model/MappingsConflictsError.d.ts +7 -0
- package/dist/lib/modules/model/MappingsConflictsError.js +20 -0
- package/dist/lib/modules/model/MappingsConflictsError.js.map +1 -0
- package/dist/lib/modules/model/ModelSerializer.js.map +1 -1
- package/dist/lib/modules/model/ModelService.d.ts +16 -6
- package/dist/lib/modules/model/ModelService.js +246 -34
- package/dist/lib/modules/model/ModelService.js.map +1 -1
- package/dist/lib/modules/model/ModelsConflicts.d.ts +30 -0
- package/dist/lib/modules/model/ModelsConflicts.js +106 -0
- package/dist/lib/modules/model/ModelsConflicts.js.map +1 -0
- package/dist/lib/modules/model/ModelsController.d.ts +5 -1
- package/dist/lib/modules/model/ModelsController.js +54 -3
- package/dist/lib/modules/model/ModelsController.js.map +1 -1
- package/dist/lib/modules/model/ModelsRegister.d.ts +28 -3
- package/dist/lib/modules/model/ModelsRegister.js +50 -5
- package/dist/lib/modules/model/ModelsRegister.js.map +1 -1
- package/dist/lib/modules/model/collections/modelsMappings.js +24 -0
- package/dist/lib/modules/model/collections/modelsMappings.js.map +1 -1
- package/dist/lib/modules/model/types/ModelApi.d.ts +50 -4
- package/dist/lib/modules/model/types/ModelContent.d.ts +263 -2
- package/dist/lib/modules/model/types/ModelContent.js +15 -0
- package/dist/lib/modules/model/types/ModelContent.js.map +1 -1
- package/dist/lib/modules/model/types/ModelDefinition.d.ts +141 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.d.ts +141 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.js +235 -37
- package/dist/lib/modules/plugin/DeviceManagerEngine.js.map +1 -1
- package/dist/lib/modules/plugin/DeviceManagerPlugin.d.ts +113 -8
- package/dist/lib/modules/plugin/DeviceManagerPlugin.js +141 -19
- package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
- package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +18 -4
- package/dist/lib/modules/plugin/types/InternalCollection.js +1 -1
- package/dist/lib/modules/plugin/types/InternalCollection.js.map +1 -1
- package/dist/lib/modules/shared/exports.d.ts +2 -0
- package/dist/lib/modules/shared/exports.js +2 -0
- package/dist/lib/modules/shared/exports.js.map +1 -1
- package/dist/lib/modules/shared/index.d.ts +6 -4
- package/dist/lib/modules/shared/index.js +6 -4
- package/dist/lib/modules/shared/index.js.map +1 -1
- package/dist/lib/modules/shared/services/AbstractExporter.d.ts +1 -2
- package/dist/lib/modules/shared/services/AbstractExporter.js +7 -1
- package/dist/lib/modules/shared/services/AbstractExporter.js.map +1 -1
- package/dist/lib/modules/shared/services/BaseService.js.map +1 -1
- package/dist/lib/modules/shared/services/DigitalTwinExporter.d.ts +0 -2
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js +8 -2
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js.map +1 -1
- package/dist/lib/modules/shared/services/DigitalTwinService.d.ts +21 -0
- package/dist/lib/modules/shared/services/DigitalTwinService.js +162 -0
- package/dist/lib/modules/shared/services/DigitalTwinService.js.map +1 -0
- package/dist/lib/modules/shared/services/index.d.ts +1 -0
- package/dist/lib/modules/shared/services/index.js +1 -0
- package/dist/lib/modules/shared/services/index.js.map +1 -1
- package/dist/lib/modules/shared/types/DigitalTwinApi.d.ts +34 -0
- package/dist/lib/modules/shared/types/DigitalTwinApi.js +3 -0
- package/dist/lib/modules/shared/types/DigitalTwinApi.js.map +1 -0
- package/dist/lib/modules/shared/types/DigitalTwinContent.d.ts +2 -4
- package/dist/lib/modules/shared/types/DigitalTwinEvents.d.ts +9 -0
- package/dist/lib/modules/shared/types/DigitalTwinEvents.js +3 -0
- package/dist/lib/modules/shared/types/DigitalTwinEvents.js.map +1 -0
- package/dist/lib/modules/shared/types/DigitalTwinMeasures.d.ts +5 -0
- package/dist/lib/modules/shared/types/DigitalTwinMeasures.js +3 -0
- package/dist/lib/modules/shared/types/DigitalTwinMeasures.js.map +1 -0
- package/dist/lib/modules/shared/utils/flattenObject.js +1 -2
- package/dist/lib/modules/shared/utils/flattenObject.js.map +1 -1
- package/dist/lib/modules/shared/utils/keepStack.js +1 -2
- package/dist/lib/modules/shared/utils/keepStack.js.map +1 -1
- package/dist/lib/modules/shared/utils/lock.js +1 -2
- package/dist/lib/modules/shared/utils/lock.js.map +1 -1
- package/dist/lib/modules/shared/utils/objectDiff.js +1 -2
- package/dist/lib/modules/shared/utils/objectDiff.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +26 -26
- package/dist/lib/modules/shared/utils/ask.d.ts +0 -8
- package/dist/lib/modules/shared/utils/ask.js +0 -12
- package/dist/lib/modules/shared/utils/ask.js.map +0 -1
|
@@ -4,13 +4,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.DeviceManagerEngine = void 0;
|
|
7
|
-
const lodash_1 = __importDefault(require("lodash"));
|
|
8
7
|
const kuzzle_1 = require("kuzzle");
|
|
9
8
|
const kuzzle_plugin_commons_1 = require("kuzzle-plugin-commons");
|
|
9
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
10
10
|
const asset_1 = require("../asset");
|
|
11
11
|
const measure_1 = require("../measure");
|
|
12
|
-
const shared_1 = require("../shared");
|
|
13
12
|
const InternalCollection_1 = require("./types/InternalCollection");
|
|
13
|
+
const ModelsConflicts_1 = require("../model/ModelsConflicts");
|
|
14
14
|
class DeviceManagerEngine extends kuzzle_plugin_commons_1.AbstractEngine {
|
|
15
15
|
get app() {
|
|
16
16
|
return global.app;
|
|
@@ -18,22 +18,98 @@ class DeviceManagerEngine extends kuzzle_plugin_commons_1.AbstractEngine {
|
|
|
18
18
|
constructor(plugin, adminConfigManager, engineConfigManager) {
|
|
19
19
|
super("device-manager", plugin, plugin.config.adminIndex, adminConfigManager, engineConfigManager);
|
|
20
20
|
this.context = plugin.context;
|
|
21
|
-
(0,
|
|
22
|
-
(0,
|
|
21
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:engine:list", async ({ group }) => this.list(group));
|
|
22
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:engine:updateAll", async () => {
|
|
23
23
|
await this.updateEngines();
|
|
24
24
|
await this.createDevicesCollection(this.config.adminIndex);
|
|
25
25
|
});
|
|
26
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:engine:doesUpdateConflict", async (payload) => {
|
|
27
|
+
if (!payload) {
|
|
28
|
+
return [];
|
|
29
|
+
}
|
|
30
|
+
if (payload.twin === undefined &&
|
|
31
|
+
payload.measuresModels === undefined) {
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
const measureModels = await this.getModels(this.config.adminIndex, "measure");
|
|
35
|
+
const results = await this.getEngines();
|
|
36
|
+
const engineGroups = results.map((elt) => elt.engine.group);
|
|
37
|
+
const groups = [undefined, ...engineGroups];
|
|
38
|
+
for (const group of groups) {
|
|
39
|
+
if (payload.twin) {
|
|
40
|
+
const twinModels = await this.getModels(this.config.adminIndex, payload.twin.type, group);
|
|
41
|
+
const conflicts = await this.doesTwinUpdateConflicts(payload.twin.type, twinModels, payload.twin.models, measureModels);
|
|
42
|
+
if (conflicts.length > 0) {
|
|
43
|
+
return conflicts;
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
if (payload.measuresModels) {
|
|
48
|
+
return this.doesMeasuresUpdateConflicts(measureModels, payload.measuresModels);
|
|
49
|
+
}
|
|
50
|
+
return [];
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Return conflicts between the new and already present twin models
|
|
55
|
+
*
|
|
56
|
+
* @param twinType The target twin type
|
|
57
|
+
* @param twinModels The already present twin models
|
|
58
|
+
* @param additionalModels The new or updated twin models
|
|
59
|
+
* @param measureModels The already present measures models
|
|
60
|
+
*
|
|
61
|
+
* @throws If a measure type declared in the twin does not exists
|
|
62
|
+
* @returns An array of conflict chunk
|
|
63
|
+
*/
|
|
64
|
+
async doesTwinUpdateConflicts(twinType, twinModels, additionalModels, measureModels) {
|
|
65
|
+
const conflicts = [];
|
|
66
|
+
for (const additional of additionalModels) {
|
|
67
|
+
for (const { type: measureType } of additional[twinType]
|
|
68
|
+
.measures) {
|
|
69
|
+
const measureModel = measureModels.find((m) => m.measure.type === measureType);
|
|
70
|
+
if (!measureModel) {
|
|
71
|
+
throw new kuzzle_1.InternalError(`Cannot find measure "${measureType}" declared in ${[
|
|
72
|
+
twinType,
|
|
73
|
+
]} "${additional[twinType].model}"`);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
conflicts.push(...(0, ModelsConflicts_1.getTwinConflicts)(twinType, twinModels, additional));
|
|
77
|
+
}
|
|
78
|
+
return conflicts;
|
|
79
|
+
}
|
|
80
|
+
/**
|
|
81
|
+
* Return conflicts between the new and already present measure models
|
|
82
|
+
*
|
|
83
|
+
* @param measuresModels The already present measure models
|
|
84
|
+
* @param additionalMeasures The new or updated measure models
|
|
85
|
+
* @returns An array of ConflictChunk
|
|
86
|
+
*/
|
|
87
|
+
async doesMeasuresUpdateConflicts(measuresModels, additionalMeasures) {
|
|
88
|
+
const conflicts = [];
|
|
89
|
+
for (const model of additionalMeasures) {
|
|
90
|
+
conflicts.push(...(0, ModelsConflicts_1.getMeasureConflicts)(measuresModels, model));
|
|
91
|
+
}
|
|
92
|
+
return conflicts;
|
|
26
93
|
}
|
|
27
94
|
async updateEngines() {
|
|
95
|
+
const results = await this.getEngines();
|
|
96
|
+
this.context.log.info(`Update ${results.length} existing engines`);
|
|
97
|
+
for (const document of results) {
|
|
98
|
+
await this.onUpdate(document.engine.index, document.engine.group);
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Search and return every engines in use
|
|
103
|
+
*
|
|
104
|
+
* @returns An array of the available engines
|
|
105
|
+
*/
|
|
106
|
+
async getEngines() {
|
|
28
107
|
const result = await this.sdk.document.search(this.config.adminIndex, InternalCollection_1.InternalCollection.CONFIG, {
|
|
29
108
|
query: {
|
|
30
109
|
equals: { type: "engine-device-manager" },
|
|
31
110
|
},
|
|
32
111
|
}, { lang: "koncorde", size: 5000 });
|
|
33
|
-
|
|
34
|
-
for (const engine of result.hits) {
|
|
35
|
-
await this.onUpdate(engine._source.engine.index, engine._source.engine.group);
|
|
36
|
-
}
|
|
112
|
+
return result.hits.map((elt) => elt._source);
|
|
37
113
|
}
|
|
38
114
|
async onCreate(index, group = "commons") {
|
|
39
115
|
const promises = [];
|
|
@@ -74,66 +150,188 @@ class DeviceManagerEngine extends kuzzle_plugin_commons_1.AbstractEngine {
|
|
|
74
150
|
collections,
|
|
75
151
|
};
|
|
76
152
|
}
|
|
153
|
+
/**
|
|
154
|
+
* Generate assets mappings and create the assets collection in the engine
|
|
155
|
+
*
|
|
156
|
+
* @param engineId The target engine Id
|
|
157
|
+
* @param engineGroup The engine group
|
|
158
|
+
*
|
|
159
|
+
* @throws If it failed during the assets collection creation
|
|
160
|
+
*/
|
|
77
161
|
async createAssetsCollection(engineId, engineGroup) {
|
|
78
|
-
const mappings = await this.
|
|
79
|
-
|
|
162
|
+
const mappings = await this.getDigitalTwinMappingsFromDB("asset", engineGroup);
|
|
163
|
+
const settings = this.config.engineCollections.asset.settings;
|
|
164
|
+
await this.tryCreateCollection(engineId, InternalCollection_1.InternalCollection.ASSETS, {
|
|
165
|
+
mappings,
|
|
166
|
+
settings,
|
|
167
|
+
});
|
|
80
168
|
return InternalCollection_1.InternalCollection.ASSETS;
|
|
81
169
|
}
|
|
170
|
+
/**
|
|
171
|
+
* Generate assets mappings and create the assets history collection in the engine
|
|
172
|
+
*
|
|
173
|
+
* @param engineId The target engine Id
|
|
174
|
+
* @param engineGroup The engine group
|
|
175
|
+
*
|
|
176
|
+
* @throws If it failed during the assets history collection creation
|
|
177
|
+
*/
|
|
82
178
|
async createAssetsHistoryCollection(engineId, engineGroup) {
|
|
83
|
-
const
|
|
179
|
+
const assetsMappings = await this.getDigitalTwinMappingsFromDB("asset", engineGroup);
|
|
84
180
|
const mappings = JSON.parse(JSON.stringify(asset_1.assetsHistoryMappings));
|
|
85
|
-
lodash_1.default.merge(mappings.properties.asset,
|
|
86
|
-
|
|
181
|
+
lodash_1.default.merge(mappings.properties.asset, assetsMappings);
|
|
182
|
+
const settings = this.config.engineCollections.assetHistory.settings;
|
|
183
|
+
await this.tryCreateCollection(engineId, InternalCollection_1.InternalCollection.ASSETS_HISTORY, {
|
|
184
|
+
mappings,
|
|
185
|
+
settings,
|
|
186
|
+
});
|
|
87
187
|
return InternalCollection_1.InternalCollection.ASSETS_HISTORY;
|
|
88
188
|
}
|
|
189
|
+
/**
|
|
190
|
+
* Create the assets groups collection with the assets groups mappings in the engine
|
|
191
|
+
*
|
|
192
|
+
* @param engineId The target engine Id
|
|
193
|
+
* @param engineGroup The engine group
|
|
194
|
+
*
|
|
195
|
+
* @throws If it failed during the assets groups collection creation
|
|
196
|
+
*/
|
|
89
197
|
async createAssetsGroupsCollection(engineId) {
|
|
90
|
-
|
|
198
|
+
const settings = this.config.engineCollections.assetGroups.settings;
|
|
199
|
+
await this.tryCreateCollection(engineId, InternalCollection_1.InternalCollection.ASSETS_GROUPS, {
|
|
200
|
+
mappings: asset_1.assetGroupsMappings,
|
|
201
|
+
settings,
|
|
202
|
+
});
|
|
91
203
|
return InternalCollection_1.InternalCollection.ASSETS_GROUPS;
|
|
92
204
|
}
|
|
93
|
-
|
|
205
|
+
/**
|
|
206
|
+
* Generate devices mappings and create the devices collection in the engine
|
|
207
|
+
*
|
|
208
|
+
* @param engineId The target engine Id
|
|
209
|
+
* @param engineGroup The engine group
|
|
210
|
+
*
|
|
211
|
+
* @throws If it failed during the devices collection creation
|
|
212
|
+
*/
|
|
213
|
+
async createDevicesCollection(engineId) {
|
|
214
|
+
const mappings = await this.getDigitalTwinMappingsFromDB("device");
|
|
215
|
+
const settings = this.config.engineCollections.device.settings;
|
|
216
|
+
await this.tryCreateCollection(engineId, InternalCollection_1.InternalCollection.DEVICES, {
|
|
217
|
+
mappings,
|
|
218
|
+
settings,
|
|
219
|
+
});
|
|
220
|
+
return InternalCollection_1.InternalCollection.DEVICES;
|
|
221
|
+
}
|
|
222
|
+
/**
|
|
223
|
+
* Generate measures mappings and create the measures collection in the engine
|
|
224
|
+
*
|
|
225
|
+
* @param engineId The target engine Id
|
|
226
|
+
* @param engineGroup The engine group
|
|
227
|
+
*
|
|
228
|
+
* @throws If it failed during the measures collection creation
|
|
229
|
+
*/
|
|
230
|
+
async createMeasuresCollection(engineId, engineGroup) {
|
|
231
|
+
const mappings = await this.getMeasuresMappingsFromDB(engineGroup);
|
|
232
|
+
const settings = this.config.engineCollections.measures.settings;
|
|
233
|
+
await this.tryCreateCollection(engineId, InternalCollection_1.InternalCollection.MEASURES, {
|
|
234
|
+
mappings,
|
|
235
|
+
settings,
|
|
236
|
+
});
|
|
237
|
+
return InternalCollection_1.InternalCollection.MEASURES;
|
|
238
|
+
}
|
|
239
|
+
/**
|
|
240
|
+
* Create a collection with custom mappings in an engine
|
|
241
|
+
*
|
|
242
|
+
* @param engineIndex The target engine
|
|
243
|
+
* @param collection The collection name
|
|
244
|
+
* @param mappings The collection mappings
|
|
245
|
+
*
|
|
246
|
+
* @throws If it failed to create the collection
|
|
247
|
+
*/
|
|
248
|
+
async tryCreateCollection(engineIndex, collection, options) {
|
|
249
|
+
try {
|
|
250
|
+
await this.sdk.collection.create(engineIndex, collection, options);
|
|
251
|
+
}
|
|
252
|
+
catch (error) {
|
|
253
|
+
throw new kuzzle_1.InternalError(`Failed to create the collection [${collection}] for engine [${engineIndex}]: ${error.message}`, error);
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
/**
|
|
257
|
+
* Generate ES mappings from twin models and theirs associated measures, all fetched from the database
|
|
258
|
+
*
|
|
259
|
+
* @param digitalTwinType The target twin type
|
|
260
|
+
* @param engineGroup The twin engine group
|
|
261
|
+
* @returns The complete ES mappings produces by merging all the target type twins
|
|
262
|
+
*/
|
|
263
|
+
async getDigitalTwinMappingsFromDB(digitalTwinType, engineGroup) {
|
|
264
|
+
const models = await this.getModels(this.config.adminIndex, digitalTwinType, engineGroup);
|
|
265
|
+
const measureModels = await this.getModels(this.config.adminIndex, "measure");
|
|
266
|
+
return this.getDigitalTwinMappings(digitalTwinType, models, measureModels);
|
|
267
|
+
}
|
|
268
|
+
/**
|
|
269
|
+
* Generate ES mappings from twin models and theirs associated measures
|
|
270
|
+
*
|
|
271
|
+
* @param digitalTwinType The target twin type
|
|
272
|
+
* @param models The twin models
|
|
273
|
+
* @param measureModels The associated measures
|
|
274
|
+
* @returns The complete ES mappings produces by merging all the target type twins
|
|
275
|
+
*/
|
|
276
|
+
async getDigitalTwinMappings(digitalTwinType, models, measureModels) {
|
|
94
277
|
if (this.config.engineCollections[digitalTwinType] === undefined ||
|
|
95
278
|
this.config.engineCollections[digitalTwinType].mappings === undefined) {
|
|
96
279
|
throw new kuzzle_1.InternalError(`Cannot find mapping for "${digitalTwinType}"`);
|
|
97
280
|
}
|
|
98
|
-
const models = await this.getModels(this.config.adminIndex, digitalTwinType, engineGroup);
|
|
99
|
-
const measureModels = await this.getModels(this.config.adminIndex, "measure");
|
|
100
281
|
const mappings = JSON.parse(JSON.stringify(this.config.engineCollections[digitalTwinType].mappings));
|
|
101
282
|
for (const model of models) {
|
|
102
|
-
lodash_1.default.merge(mappings.properties.metadata.properties, model
|
|
103
|
-
for (const { name: measureName, type: measureType } of model
|
|
104
|
-
const measureModel = measureModels.find((m) => m.
|
|
283
|
+
lodash_1.default.merge(mappings.properties.metadata.properties, model[digitalTwinType].metadataMappings);
|
|
284
|
+
for (const { name: measureName, type: measureType } of model[digitalTwinType].measures) {
|
|
285
|
+
const measureModel = measureModels.find((m) => m.measure.type === measureType);
|
|
105
286
|
if (!measureModel) {
|
|
106
287
|
throw new kuzzle_1.InternalError(`Cannot find measure "${measureType}" declared in ${[
|
|
107
288
|
digitalTwinType,
|
|
108
|
-
]} "${model
|
|
289
|
+
]} "${model[digitalTwinType].model}"`);
|
|
109
290
|
}
|
|
110
291
|
mappings.properties.measures.properties[measureName] =
|
|
111
|
-
(0, measure_1.getEmbeddedMeasureMappings)(measureModel.
|
|
292
|
+
(0, measure_1.getEmbeddedMeasureMappings)(measureModel.measure.valuesMappings);
|
|
112
293
|
}
|
|
113
294
|
}
|
|
114
295
|
return mappings;
|
|
115
296
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
await this.sdk.collection.create(engineId, InternalCollection_1.InternalCollection.MEASURES, mappings);
|
|
124
|
-
return InternalCollection_1.InternalCollection.MEASURES;
|
|
125
|
-
}
|
|
126
|
-
async getMeasuresMappings(engineGroup) {
|
|
297
|
+
/**
|
|
298
|
+
* Generate ES mappings from measures and theirs associated assets, all fetched via the database
|
|
299
|
+
*
|
|
300
|
+
* @param engineGroup The target engine group
|
|
301
|
+
* @returns The complete ES mappings produced by merging models mappings
|
|
302
|
+
*/
|
|
303
|
+
async getMeasuresMappingsFromDB(engineGroup) {
|
|
127
304
|
const models = await this.getModels(this.config.adminIndex, "measure");
|
|
305
|
+
const assetsMappings = await this.getDigitalTwinMappingsFromDB("asset", engineGroup);
|
|
306
|
+
const deviceMappings = await this.getDigitalTwinMappingsFromDB("device");
|
|
307
|
+
return this.getMeasuresMappings(models, assetsMappings, deviceMappings);
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* Generate ES mappings from measures and theirs associated assets
|
|
311
|
+
*
|
|
312
|
+
* @param models The measures models
|
|
313
|
+
* @param assetsMappings The assets complete mappings
|
|
314
|
+
* @returns The complete ES mappings produced by merging models mappings
|
|
315
|
+
*/
|
|
316
|
+
async getMeasuresMappings(models, assetsMappings, deviceMappings) {
|
|
128
317
|
const mappings = JSON.parse(JSON.stringify(measure_1.measuresMappings));
|
|
129
318
|
for (const model of models) {
|
|
130
|
-
lodash_1.default.merge(mappings.properties.values.properties, model.
|
|
319
|
+
lodash_1.default.merge(mappings.properties.values.properties, model.measure.valuesMappings);
|
|
131
320
|
}
|
|
132
|
-
const _assetsMappings = await this.getDigitalTwinMappings("asset", engineGroup);
|
|
133
321
|
mappings.properties.asset.properties.metadata.properties =
|
|
134
|
-
|
|
322
|
+
assetsMappings.properties.metadata.properties;
|
|
323
|
+
mappings.properties.origin.properties.deviceMetadata.properties =
|
|
324
|
+
deviceMappings.properties.metadata.properties;
|
|
135
325
|
return mappings;
|
|
136
326
|
}
|
|
327
|
+
/**
|
|
328
|
+
* Retrieve a certain type of models associated to an engine
|
|
329
|
+
*
|
|
330
|
+
* @param engineId The target engine Id
|
|
331
|
+
* @param type The desired model type
|
|
332
|
+
* @param engineGroup The target engine group
|
|
333
|
+
* @returns An array of the generic type provided
|
|
334
|
+
*/
|
|
137
335
|
async getModels(engineId, type, engineGroup) {
|
|
138
336
|
const query = {
|
|
139
337
|
and: [{ equals: { type } }],
|
|
@@ -147,7 +345,7 @@ class DeviceManagerEngine extends kuzzle_plugin_commons_1.AbstractEngine {
|
|
|
147
345
|
});
|
|
148
346
|
}
|
|
149
347
|
const result = await this.sdk.document.search(engineId, InternalCollection_1.InternalCollection.MODELS, { query }, { lang: "koncorde", size: 5000 });
|
|
150
|
-
return result.hits;
|
|
348
|
+
return result.hits.map((elt) => elt._source);
|
|
151
349
|
}
|
|
152
350
|
}
|
|
153
351
|
exports.DeviceManagerEngine = DeviceManagerEngine;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceManagerEngine.js","sourceRoot":"","sources":["../../../../lib/modules/plugin/DeviceManagerEngine.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DeviceManagerEngine.js","sourceRoot":"","sources":["../../../../lib/modules/plugin/DeviceManagerEngine.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,10 +22,14 @@ export declare class DeviceManagerPlugin extends Plugin {
|
|
|
22
22
|
* Register an asset model
|
|
23
23
|
*
|
|
24
24
|
* @param engineGroup Engine group name
|
|
25
|
-
* @param model Name of the asset model
|
|
26
|
-
* @param definition
|
|
27
|
-
*
|
|
28
|
-
*
|
|
25
|
+
* @param model Name of the asset model. Must follow a naming convention in PascalCase.
|
|
26
|
+
* @param definition Object containing the asset model definition, including:
|
|
27
|
+
* - measures: Array describing measure names and their types.
|
|
28
|
+
* - metadataMappings: Definition of metadata mappings, specifying types for each metadata field.
|
|
29
|
+
* - defaultMetadata: Default values for metadata fields, applied when actual data is not provided.
|
|
30
|
+
* - metadataDetails: Optional detailed descriptions for each metadata, including localizations, group association and definition.
|
|
31
|
+
* - metadataGroups: Optional description of metadata groups, organizing metadata logically, with localizations for group names.
|
|
32
|
+
* - tooltipModels: Optional tooltip model list, containing each labels and tooltip content to display.
|
|
29
33
|
*
|
|
30
34
|
* @example
|
|
31
35
|
* ```
|
|
@@ -44,6 +48,74 @@ export declare class DeviceManagerPlugin extends Plugin {
|
|
|
44
48
|
* },
|
|
45
49
|
* defaultMetadata: {
|
|
46
50
|
* height: 20
|
|
51
|
+
* },
|
|
52
|
+
* metadataDetails: {
|
|
53
|
+
* "extTemp": {
|
|
54
|
+
* "group": "environment",
|
|
55
|
+
* "locales": {
|
|
56
|
+
* "en": {
|
|
57
|
+
* "friendlyName": "External Temperature",
|
|
58
|
+
* "description": "The temperature outside the container"
|
|
59
|
+
* },
|
|
60
|
+
* "fr": {
|
|
61
|
+
* "friendlyName": "Température Externe",
|
|
62
|
+
* "description": "La température à l'extérieur du conteneur"
|
|
63
|
+
* }
|
|
64
|
+
* }
|
|
65
|
+
* }
|
|
66
|
+
* },
|
|
67
|
+
* metadataGroups: {
|
|
68
|
+
* "environment": {
|
|
69
|
+
* "locales": {
|
|
70
|
+
* "en": {
|
|
71
|
+
* "groupFriendlyName": "Environment"
|
|
72
|
+
* },
|
|
73
|
+
* "fr": {
|
|
74
|
+
* "groupFriendlyName": "Environnement"
|
|
75
|
+
* }
|
|
76
|
+
* }
|
|
77
|
+
* }
|
|
78
|
+
* },
|
|
79
|
+
* tooltipModels: {
|
|
80
|
+
* "defaultTooltipKey": {
|
|
81
|
+
* "tooltipLabel": "Default Tooltip Model",
|
|
82
|
+
* "content": [
|
|
83
|
+
* {
|
|
84
|
+
* "category": "metadata",
|
|
85
|
+
* "label": {
|
|
86
|
+
* "locales": {
|
|
87
|
+
* "en": {
|
|
88
|
+
* "friendlyName": "Container position",
|
|
89
|
+
* "description": ""
|
|
90
|
+
* },
|
|
91
|
+
* "fr": {
|
|
92
|
+
* "friendlyName": "Position du conteneur",
|
|
93
|
+
* "description": ""
|
|
94
|
+
* }
|
|
95
|
+
* }
|
|
96
|
+
* },
|
|
97
|
+
* "metadataPath": "geolocation"
|
|
98
|
+
* },
|
|
99
|
+
* {
|
|
100
|
+
* "category": "measure",
|
|
101
|
+
* "label": {
|
|
102
|
+
* "locales": {
|
|
103
|
+
* "en": {
|
|
104
|
+
* "friendlyName": "External temperature",
|
|
105
|
+
* "description": ""
|
|
106
|
+
* },
|
|
107
|
+
* "fr": {
|
|
108
|
+
* "friendlyName": "Température extérieure",
|
|
109
|
+
* "description": ""
|
|
110
|
+
* }
|
|
111
|
+
* }
|
|
112
|
+
* },
|
|
113
|
+
* "measureSlot": "externalTemperature",
|
|
114
|
+
* "measureValuePath": "externalTemperature",
|
|
115
|
+
* "suffix": "°C"
|
|
116
|
+
* }
|
|
117
|
+
* ]
|
|
118
|
+
* }
|
|
47
119
|
* }
|
|
48
120
|
* }
|
|
49
121
|
* );
|
|
@@ -51,12 +123,15 @@ export declare class DeviceManagerPlugin extends Plugin {
|
|
|
51
123
|
*/
|
|
52
124
|
registerAsset: (engineGroup: string, model: string, definition: AssetModelDefinition) => void;
|
|
53
125
|
/**
|
|
54
|
-
* Register a device
|
|
126
|
+
* Register a device.
|
|
55
127
|
*
|
|
56
128
|
* @param model Name of the device model
|
|
57
|
-
* @param definition
|
|
58
|
-
*
|
|
59
|
-
*
|
|
129
|
+
* @param definition Object containing the device model definition, including:
|
|
130
|
+
* - decoder: Decoder used to decode payloads
|
|
131
|
+
* - metadataMappings: Metadata mappings definition
|
|
132
|
+
* - defaultMetadata: Default metadata values
|
|
133
|
+
* - metadataDetails: Localizations, detailed metadata descriptions and definition
|
|
134
|
+
* - metadataGroups: Groups for organizing metadata, with localizations
|
|
60
135
|
*
|
|
61
136
|
* @example
|
|
62
137
|
* ```
|
|
@@ -66,6 +141,36 @@ export declare class DeviceManagerPlugin extends Plugin {
|
|
|
66
141
|
* decoder: new DummyTempPositionDecoder(),
|
|
67
142
|
* metadataMappings: {
|
|
68
143
|
* serial: { type: "keyword" },
|
|
144
|
+
* },
|
|
145
|
+
* defaultMetadata: {
|
|
146
|
+
* company: "Acme Inc"
|
|
147
|
+
* },
|
|
148
|
+
* metadataDetails: {
|
|
149
|
+
* sensorVersion: {
|
|
150
|
+
* group: "sensorSpecs",
|
|
151
|
+
* locales: {
|
|
152
|
+
* en: {
|
|
153
|
+
* friendlyName: "Sensor version",
|
|
154
|
+
* description: "Firmware version of the sensor"
|
|
155
|
+
* },
|
|
156
|
+
* fr: {
|
|
157
|
+
* friendlyName: "Version du capteur",
|
|
158
|
+
* description: "Version du micrologiciel du capteur"
|
|
159
|
+
* }
|
|
160
|
+
* }
|
|
161
|
+
* }
|
|
162
|
+
* },
|
|
163
|
+
* metadataGroups: {
|
|
164
|
+
* sensorSpecs: {
|
|
165
|
+
* locales: {
|
|
166
|
+
* en: {
|
|
167
|
+
* groupFriendlyName: "Sensors specifications"
|
|
168
|
+
* },
|
|
169
|
+
* fr: {
|
|
170
|
+
* groupFriendlyName: "Spécifications des capteurs"
|
|
171
|
+
* }
|
|
172
|
+
* }
|
|
173
|
+
* }
|
|
69
174
|
* }
|
|
70
175
|
* }
|
|
71
176
|
* );
|