kuzzle-device-manager 2.4.0-beta.2 → 2.4.0-beta.20
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.d.ts +2 -4
- package/dist/lib/modules/asset/AssetHistoryService.js +4 -7
- package/dist/lib/modules/asset/AssetHistoryService.js.map +1 -1
- package/dist/lib/modules/asset/AssetService.d.ts +25 -26
- package/dist/lib/modules/asset/AssetService.js +235 -42
- package/dist/lib/modules/asset/AssetService.js.map +1 -1
- package/dist/lib/modules/asset/AssetsController.d.ts +4 -1
- package/dist/lib/modules/asset/AssetsController.js +51 -25
- 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 +1 -0
- 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/types/AssetApi.d.ts +32 -0
- package/dist/lib/modules/asset/types/AssetContent.d.ts +1 -1
- 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 +3 -6
- package/dist/lib/modules/decoder/PayloadService.js +11 -17
- 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/DeviceService.d.ts +27 -46
- package/dist/lib/modules/device/DeviceService.js +159 -73
- package/dist/lib/modules/device/DeviceService.js.map +1 -1
- package/dist/lib/modules/device/DevicesController.d.ts +2 -1
- package/dist/lib/modules/device/DevicesController.js +25 -41
- package/dist/lib/modules/device/DevicesController.js.map +1 -1
- package/dist/lib/modules/device/collections/deviceMappings.d.ts +2 -46
- package/dist/lib/modules/device/collections/deviceMappings.js.map +1 -1
- package/dist/lib/modules/device/types/DeviceApi.d.ts +11 -0
- package/dist/lib/modules/device/types/DeviceEvents.d.ts +29 -0
- package/dist/lib/modules/measure/MeasureExporter.d.ts +5 -2
- 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.d.ts +2 -6
- package/dist/lib/modules/measure/MeasureService.js +6 -11
- package/dist/lib/modules/measure/MeasureService.js.map +1 -1
- package/dist/lib/modules/measure/collections/measuresMappings.d.ts +18 -0
- package/dist/lib/modules/measure/collections/measuresMappings.js +14 -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 +13 -8
- package/dist/lib/modules/model/ModelService.js +162 -28
- 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 +107 -0
- package/dist/lib/modules/model/ModelsConflicts.js.map +1 -0
- package/dist/lib/modules/model/ModelsController.d.ts +2 -1
- package/dist/lib/modules/model/ModelsController.js +27 -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 +24 -3
- package/dist/lib/modules/model/types/ModelContent.d.ts +207 -2
- package/dist/lib/modules/model/types/ModelContent.js +9 -0
- package/dist/lib/modules/model/types/ModelContent.js.map +1 -1
- package/dist/lib/modules/model/types/ModelDefinition.d.ts +129 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.d.ts +141 -5
- package/dist/lib/modules/plugin/DeviceManagerEngine.js +238 -41
- 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 +146 -16
- package/dist/lib/modules/plugin/DeviceManagerPlugin.js.map +1 -1
- package/dist/lib/modules/plugin/exports.d.ts +1 -1
- package/dist/lib/modules/plugin/exports.js +1 -1
- package/dist/lib/modules/plugin/exports.js.map +1 -1
- package/dist/lib/modules/plugin/index.d.ts +1 -2
- package/dist/lib/modules/plugin/index.js +1 -2
- package/dist/lib/modules/plugin/index.js.map +1 -1
- package/dist/lib/modules/plugin/types/DeviceManagerConfiguration.d.ts +27 -5
- 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/plugin/types/Pipes.d.ts +17 -0
- package/dist/lib/modules/plugin/types/Pipes.js +3 -0
- package/dist/lib/modules/plugin/types/Pipes.js.map +1 -0
- package/dist/lib/modules/plugin/types/exports.d.ts +1 -0
- package/dist/lib/modules/plugin/types/exports.js +18 -0
- package/dist/lib/modules/plugin/types/exports.js.map +1 -0
- package/dist/lib/modules/plugin/types/index.d.ts +3 -0
- package/dist/lib/modules/plugin/types/index.js +20 -0
- package/dist/lib/modules/plugin/types/index.js.map +1 -0
- package/dist/lib/modules/shared/index.d.ts +3 -4
- package/dist/lib/modules/shared/index.js +3 -4
- package/dist/lib/modules/shared/index.js.map +1 -1
- package/dist/lib/modules/shared/services/AbstractExporter.d.ts +1 -0
- 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.d.ts +69 -0
- package/dist/lib/modules/shared/services/BaseService.js +157 -0
- package/dist/lib/modules/shared/services/BaseService.js.map +1 -0
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js +9 -3
- package/dist/lib/modules/shared/services/DigitalTwinExporter.js.map +1 -1
- 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/utils/flattenObject.js.map +1 -1
- package/dist/lib/modules/shared/utils/lock.js.map +1 -1
- package/dist/lib/modules/shared/utils/objectDiff.js.map +1 -1
- 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
|
@@ -2,29 +2,31 @@
|
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.DeviceService = void 0;
|
|
4
4
|
const kuzzle_1 = require("kuzzle");
|
|
5
|
+
const kuzzle_plugin_commons_1 = require("kuzzle-plugin-commons");
|
|
5
6
|
const plugin_1 = require("../plugin");
|
|
6
7
|
const shared_1 = require("../shared");
|
|
7
8
|
const DeviceSerializer_1 = require("./model/DeviceSerializer");
|
|
8
|
-
class DeviceService {
|
|
9
|
-
get sdk() {
|
|
10
|
-
return this.context.accessors.sdk;
|
|
11
|
-
}
|
|
12
|
-
get app() {
|
|
13
|
-
return global.app;
|
|
14
|
-
}
|
|
15
|
-
get impersonatedSdk() {
|
|
16
|
-
return (user) => {
|
|
17
|
-
if (user?._id) {
|
|
18
|
-
return this.sdk.as(user, { checkRights: false });
|
|
19
|
-
}
|
|
20
|
-
return this.sdk;
|
|
21
|
-
};
|
|
22
|
-
}
|
|
9
|
+
class DeviceService extends shared_1.BaseService {
|
|
23
10
|
constructor(plugin) {
|
|
24
|
-
|
|
25
|
-
this.
|
|
26
|
-
|
|
27
|
-
|
|
11
|
+
super(plugin);
|
|
12
|
+
this.registerAskEvents();
|
|
13
|
+
}
|
|
14
|
+
registerAskEvents() {
|
|
15
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:device:link-asset", async ({ deviceId, engineId, user, assetId, measureNames }) => {
|
|
16
|
+
const request = new kuzzle_1.KuzzleRequest({ refresh: "false" }, { user });
|
|
17
|
+
await this.linkAsset(engineId, deviceId, assetId, measureNames, false, request);
|
|
18
|
+
});
|
|
19
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:device:unlink-asset", async ({ deviceId, user }) => {
|
|
20
|
+
const request = new kuzzle_1.KuzzleRequest({ refresh: "false" }, { user });
|
|
21
|
+
await this.unlinkAsset(deviceId, request);
|
|
22
|
+
});
|
|
23
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:device:detach-engine", async ({ deviceId, user }) => {
|
|
24
|
+
const request = new kuzzle_1.KuzzleRequest({ refresh: "false" }, { user });
|
|
25
|
+
await this.detachEngine(deviceId, request);
|
|
26
|
+
});
|
|
27
|
+
(0, kuzzle_plugin_commons_1.onAsk)("ask:device-manager:device:attach-engine", async ({ deviceId, engineId, user }) => {
|
|
28
|
+
const request = new kuzzle_1.KuzzleRequest({ refresh: "false" }, { user });
|
|
29
|
+
await this.attachEngine(engineId, deviceId, request);
|
|
28
30
|
});
|
|
29
31
|
}
|
|
30
32
|
/**
|
|
@@ -34,7 +36,7 @@ class DeviceService {
|
|
|
34
36
|
* method since in this case "engineId" is not really an engine ID but still
|
|
35
37
|
* required as an argument (in part to check the tenant rights)
|
|
36
38
|
*/
|
|
37
|
-
async create(
|
|
39
|
+
async create(model, reference, metadata, request) {
|
|
38
40
|
let device = {
|
|
39
41
|
_id: DeviceSerializer_1.DeviceSerializer.id(model, reference),
|
|
40
42
|
_source: {
|
|
@@ -50,38 +52,83 @@ class DeviceService {
|
|
|
50
52
|
return (0, shared_1.lock)(`device:create:${device._id}`, async () => {
|
|
51
53
|
var _a;
|
|
52
54
|
const deviceModel = await this.getDeviceModel(model);
|
|
55
|
+
const engineId = request.getString("engineId");
|
|
53
56
|
for (const metadataName of Object.keys(deviceModel.device.metadataMappings)) {
|
|
54
57
|
(_a = device._source.metadata)[metadataName] || (_a[metadataName] = null);
|
|
55
58
|
}
|
|
56
59
|
const refreshableCollections = [];
|
|
57
|
-
const { _source } = await this.
|
|
60
|
+
const { _source } = await this.createDocument(request, device, {
|
|
61
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
62
|
+
engineId: this.config.adminIndex,
|
|
63
|
+
});
|
|
58
64
|
device._source = _source;
|
|
59
65
|
refreshableCollections.push({
|
|
60
66
|
collection: plugin_1.InternalCollection.DEVICES,
|
|
61
67
|
index: this.config.adminIndex,
|
|
62
68
|
});
|
|
63
69
|
if (engineId && engineId !== this.config.adminIndex) {
|
|
64
|
-
device = await this.attachEngine(
|
|
70
|
+
device = await this.attachEngine(engineId, device._id, request);
|
|
65
71
|
refreshableCollections.push({
|
|
66
72
|
collection: plugin_1.InternalCollection.DEVICES,
|
|
67
73
|
index: engineId,
|
|
68
74
|
});
|
|
69
75
|
}
|
|
70
|
-
if (
|
|
76
|
+
if (request.getRefresh() === "wait_for") {
|
|
71
77
|
await Promise.all(refreshableCollections.map(({ index, collection }) => this.sdk.collection.refresh(index, collection)));
|
|
72
78
|
}
|
|
73
79
|
return device;
|
|
74
80
|
});
|
|
75
81
|
}
|
|
76
|
-
async get(
|
|
77
|
-
|
|
78
|
-
|
|
82
|
+
async get(engineId, deviceId, request) {
|
|
83
|
+
return this.getDocument(request, deviceId, {
|
|
84
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
85
|
+
engineId,
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
async getInternalDevices(deviceId) {
|
|
89
|
+
return this.sdk.document.get(this.config.adminIndex, plugin_1.InternalCollection.DEVICES, deviceId);
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* Update or Create an device metadata
|
|
93
|
+
*/
|
|
94
|
+
async upsert(engineId, model, reference, metadata, request) {
|
|
95
|
+
const deviceId = `${model}-${reference}`;
|
|
96
|
+
return (0, shared_1.lock)(`device:${engineId}:${deviceId}`, async () => {
|
|
97
|
+
const adminIndexDevice = await this.get(this.config.adminIndex, deviceId, request).catch(() => null);
|
|
98
|
+
if (!adminIndexDevice) {
|
|
99
|
+
return this.create(model, reference, metadata, request);
|
|
100
|
+
}
|
|
101
|
+
if (adminIndexDevice._source.engineId &&
|
|
102
|
+
adminIndexDevice._source.engineId !== engineId) {
|
|
103
|
+
throw new kuzzle_1.BadRequestError(`Device "${adminIndexDevice._id}" already exists on another engine. Abort`);
|
|
104
|
+
}
|
|
105
|
+
const engineDevice = await this.get(engineId, deviceId, request).catch(() => null);
|
|
106
|
+
if (!engineDevice) {
|
|
107
|
+
await this.attachEngine(engineId, deviceId, request);
|
|
108
|
+
}
|
|
109
|
+
const updatedPayload = await this.app.trigger("device-manager:device:update:before", { device: adminIndexDevice, metadata });
|
|
110
|
+
const updatedDevice = await this.updateDocument(request, {
|
|
111
|
+
_id: deviceId,
|
|
112
|
+
_source: { metadata: updatedPayload.metadata },
|
|
113
|
+
}, {
|
|
114
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
115
|
+
engineId,
|
|
116
|
+
}, { source: true });
|
|
117
|
+
await this.app.trigger("device-manager:device:update:after", {
|
|
118
|
+
device: updatedDevice,
|
|
119
|
+
metadata: updatedPayload.metadata,
|
|
120
|
+
});
|
|
121
|
+
return updatedDevice;
|
|
122
|
+
});
|
|
79
123
|
}
|
|
80
|
-
async update(
|
|
124
|
+
async update(engineId, deviceId, metadata, request) {
|
|
81
125
|
return (0, shared_1.lock)(`device:update:${deviceId}`, async () => {
|
|
82
|
-
const device = await this.get(engineId, deviceId);
|
|
126
|
+
const device = await this.get(engineId, deviceId, request);
|
|
83
127
|
const updatedPayload = await this.app.trigger("device-manager:device:update:before", { device, metadata });
|
|
84
|
-
const updatedDevice = await this.
|
|
128
|
+
const updatedDevice = await this.updateDocument(request, {
|
|
129
|
+
_id: deviceId,
|
|
130
|
+
_source: { metadata: updatedPayload.metadata },
|
|
131
|
+
}, { collection: plugin_1.InternalCollection.DEVICES, engineId }, { source: true });
|
|
85
132
|
await this.app.trigger("device-manager:device:update:after", {
|
|
86
133
|
device: updatedDevice,
|
|
87
134
|
metadata: updatedPayload.metadata,
|
|
@@ -89,9 +136,9 @@ class DeviceService {
|
|
|
89
136
|
return updatedDevice;
|
|
90
137
|
});
|
|
91
138
|
}
|
|
92
|
-
async delete(
|
|
139
|
+
async delete(engineId, deviceId, request) {
|
|
93
140
|
return (0, shared_1.lock)(`device:delete:${deviceId}`, async () => {
|
|
94
|
-
const device = await this.get(engineId, deviceId);
|
|
141
|
+
const device = await this.get(engineId, deviceId, request);
|
|
95
142
|
const promises = [];
|
|
96
143
|
if (device._source.assetId) {
|
|
97
144
|
const asset = await this.sdk.document.get(engineId, plugin_1.InternalCollection.ASSETS, device._source.assetId);
|
|
@@ -99,16 +146,17 @@ class DeviceService {
|
|
|
99
146
|
promises.push(
|
|
100
147
|
// Potential race condition if someone update the asset linkedDevices
|
|
101
148
|
// at the same time (e.g link or unlink asset)
|
|
102
|
-
this.
|
|
103
|
-
|
|
104
|
-
|
|
149
|
+
this.updateDocument(request, {
|
|
150
|
+
_id: device._source.assetId,
|
|
151
|
+
_source: { linkedDevices },
|
|
152
|
+
}, { collection: plugin_1.InternalCollection.ASSETS, engineId }).then(async (updatedAsset) => {
|
|
105
153
|
const event = {
|
|
106
154
|
name: "unlink",
|
|
107
155
|
unlink: {
|
|
108
156
|
deviceId,
|
|
109
157
|
},
|
|
110
158
|
};
|
|
111
|
-
await (0,
|
|
159
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:asset:history:add", {
|
|
112
160
|
engineId,
|
|
113
161
|
histories: [
|
|
114
162
|
{
|
|
@@ -121,14 +169,22 @@ class DeviceService {
|
|
|
121
169
|
});
|
|
122
170
|
}));
|
|
123
171
|
}
|
|
124
|
-
promises.push(this.
|
|
125
|
-
|
|
172
|
+
promises.push(this.deleteDocument(request, deviceId, {
|
|
173
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
174
|
+
engineId: this.config.adminIndex,
|
|
175
|
+
}));
|
|
176
|
+
promises.push(this.deleteDocument(request, deviceId, {
|
|
177
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
178
|
+
engineId,
|
|
179
|
+
}));
|
|
126
180
|
await Promise.all(promises);
|
|
127
181
|
});
|
|
128
182
|
}
|
|
129
|
-
async search(engineId,
|
|
130
|
-
|
|
131
|
-
|
|
183
|
+
async search(engineId, searchParams, request) {
|
|
184
|
+
return this.searchDocument(request, searchParams, {
|
|
185
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
186
|
+
engineId,
|
|
187
|
+
});
|
|
132
188
|
}
|
|
133
189
|
/**
|
|
134
190
|
* Attach the device to an engine
|
|
@@ -138,19 +194,25 @@ class DeviceService {
|
|
|
138
194
|
* @param options.refresh Wait for ES indexation
|
|
139
195
|
* @param options.strict If true, throw if an operation isn't possible
|
|
140
196
|
*/
|
|
141
|
-
async attachEngine(
|
|
197
|
+
async attachEngine(engineId, deviceId, request) {
|
|
142
198
|
return (0, shared_1.lock)(`device:attachEngine:${deviceId}`, async () => {
|
|
143
|
-
const device = await this.
|
|
199
|
+
const device = await this.getInternalDevices(deviceId);
|
|
144
200
|
if (device._source.engineId) {
|
|
145
201
|
throw new kuzzle_1.BadRequestError(`Device "${device._id}" is already attached to an engine.`);
|
|
146
202
|
}
|
|
147
203
|
await this.checkEngineExists(engineId);
|
|
148
204
|
device._source.engineId = engineId;
|
|
149
205
|
const [updatedDevice] = await Promise.all([
|
|
150
|
-
this.
|
|
151
|
-
|
|
206
|
+
this.updateDocument(request, device, {
|
|
207
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
208
|
+
engineId: this.config.adminIndex,
|
|
209
|
+
}),
|
|
210
|
+
this.createDocument(request, device, {
|
|
211
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
212
|
+
engineId,
|
|
213
|
+
}),
|
|
152
214
|
]);
|
|
153
|
-
if (
|
|
215
|
+
if (request.getRefresh() === "wait_for") {
|
|
154
216
|
await Promise.all([
|
|
155
217
|
this.sdk.collection.refresh(this.config.adminIndex, plugin_1.InternalCollection.DEVICES),
|
|
156
218
|
this.sdk.collection.refresh(device._source.engineId, plugin_1.InternalCollection.DEVICES),
|
|
@@ -162,21 +224,27 @@ class DeviceService {
|
|
|
162
224
|
/**
|
|
163
225
|
* Detach a device from its attached engine
|
|
164
226
|
*
|
|
165
|
-
* @param deviceId
|
|
166
|
-
* @param
|
|
227
|
+
* @param {string} deviceId Id of the device
|
|
228
|
+
* @param {KuzzleRequest} request kuzzle request
|
|
167
229
|
*/
|
|
168
|
-
async detachEngine(
|
|
230
|
+
async detachEngine(deviceId, request) {
|
|
169
231
|
return (0, shared_1.lock)(`device:detachEngine:${deviceId}`, async () => {
|
|
170
|
-
const device = await this.
|
|
232
|
+
const device = await this.getInternalDevices(deviceId);
|
|
171
233
|
this.checkAttachedToEngine(device);
|
|
172
234
|
if (device._source.assetId) {
|
|
173
|
-
await this.unlinkAsset(
|
|
235
|
+
await this.unlinkAsset(deviceId, request);
|
|
174
236
|
}
|
|
175
237
|
await Promise.all([
|
|
176
|
-
this.
|
|
238
|
+
this.updateDocument(request, {
|
|
239
|
+
_id: device._id,
|
|
240
|
+
_source: { engineId: null },
|
|
241
|
+
}, {
|
|
242
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
243
|
+
engineId: this.config.adminIndex,
|
|
244
|
+
}),
|
|
177
245
|
this.sdk.document.delete(device._source.engineId, plugin_1.InternalCollection.DEVICES, device._id),
|
|
178
246
|
]);
|
|
179
|
-
if (
|
|
247
|
+
if (request.getRefresh() === "wait_for") {
|
|
180
248
|
await Promise.all([
|
|
181
249
|
this.sdk.collection.refresh(this.config.adminIndex, plugin_1.InternalCollection.DEVICES),
|
|
182
250
|
this.sdk.collection.refresh(device._source.engineId, plugin_1.InternalCollection.DEVICES),
|
|
@@ -188,9 +256,9 @@ class DeviceService {
|
|
|
188
256
|
/**
|
|
189
257
|
* Link a device to an asset.
|
|
190
258
|
*/
|
|
191
|
-
async linkAsset(
|
|
259
|
+
async linkAsset(engineId, deviceId, assetId, measureNames, implicitMeasuresLinking, request) {
|
|
192
260
|
return (0, shared_1.lock)(`device:linkAsset:${deviceId}`, async () => {
|
|
193
|
-
const device = await this.
|
|
261
|
+
const device = await this.getInternalDevices(deviceId);
|
|
194
262
|
const engine = await this.getEngine(engineId);
|
|
195
263
|
this.checkAttachedToEngine(device);
|
|
196
264
|
if (device._source.engineId !== engineId) {
|
|
@@ -231,9 +299,18 @@ class DeviceService {
|
|
|
231
299
|
measureNames: updatedMeasureNames,
|
|
232
300
|
});
|
|
233
301
|
const [updatedDevice, , updatedAsset] = await Promise.all([
|
|
234
|
-
this.
|
|
235
|
-
|
|
236
|
-
|
|
302
|
+
this.updateDocument(request, device, {
|
|
303
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
304
|
+
engineId: this.config.adminIndex,
|
|
305
|
+
}, { source: true }),
|
|
306
|
+
this.updateDocument(request, device, {
|
|
307
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
308
|
+
engineId: device._source.engineId,
|
|
309
|
+
}),
|
|
310
|
+
this.updateDocument(request, asset, {
|
|
311
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
312
|
+
engineId: device._source.engineId,
|
|
313
|
+
}, { source: true }),
|
|
237
314
|
]);
|
|
238
315
|
const event = {
|
|
239
316
|
link: {
|
|
@@ -241,7 +318,7 @@ class DeviceService {
|
|
|
241
318
|
},
|
|
242
319
|
name: "link",
|
|
243
320
|
};
|
|
244
|
-
await (0,
|
|
321
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:asset:history:add", {
|
|
245
322
|
engineId,
|
|
246
323
|
histories: [
|
|
247
324
|
{
|
|
@@ -252,7 +329,7 @@ class DeviceService {
|
|
|
252
329
|
},
|
|
253
330
|
],
|
|
254
331
|
});
|
|
255
|
-
if (
|
|
332
|
+
if (request.getRefresh() === "wait_for") {
|
|
256
333
|
await Promise.all([
|
|
257
334
|
this.sdk.collection.refresh(this.config.adminIndex, plugin_1.InternalCollection.DEVICES),
|
|
258
335
|
this.sdk.collection.refresh(device._source.engineId, plugin_1.InternalCollection.DEVICES),
|
|
@@ -262,8 +339,8 @@ class DeviceService {
|
|
|
262
339
|
return { asset: updatedAsset, device: updatedDevice };
|
|
263
340
|
});
|
|
264
341
|
}
|
|
265
|
-
async receiveMeasures(engineId, deviceId, measures, payloadUuids) {
|
|
266
|
-
const device = await this.get(engineId, deviceId);
|
|
342
|
+
async receiveMeasures(engineId, deviceId, measures, payloadUuids, request) {
|
|
343
|
+
const device = await this.get(engineId, deviceId, request);
|
|
267
344
|
const deviceModel = await this.getDeviceModel(device._source.model);
|
|
268
345
|
for (const measure of measures) {
|
|
269
346
|
const declaredMeasure = deviceModel.device.measures.some((m) => m.name === measure.measureName && m.type === measure.type);
|
|
@@ -271,7 +348,7 @@ class DeviceService {
|
|
|
271
348
|
throw new kuzzle_1.BadRequestError(`Measure "${measure.measureName}" is not declared for this device model.`);
|
|
272
349
|
}
|
|
273
350
|
}
|
|
274
|
-
await (0,
|
|
351
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:payload:receive-formated", {
|
|
275
352
|
device,
|
|
276
353
|
measures,
|
|
277
354
|
payloadUuids,
|
|
@@ -323,12 +400,12 @@ class DeviceService {
|
|
|
323
400
|
/**
|
|
324
401
|
* Unlink a device of an asset
|
|
325
402
|
*
|
|
326
|
-
* @param deviceId Id of the device
|
|
327
|
-
* @param
|
|
403
|
+
* @param {string} deviceId Id of the device
|
|
404
|
+
* @param {KuzzleRequest} request kuzzle request
|
|
328
405
|
*/
|
|
329
|
-
async unlinkAsset(
|
|
406
|
+
async unlinkAsset(deviceId, request) {
|
|
330
407
|
return (0, shared_1.lock)(`device:unlinkAsset:${deviceId}`, async () => {
|
|
331
|
-
const device = await this.
|
|
408
|
+
const device = await this.getInternalDevices(deviceId);
|
|
332
409
|
const engineId = device._source.engineId;
|
|
333
410
|
this.checkAttachedToEngine(device);
|
|
334
411
|
if (!device._source.assetId) {
|
|
@@ -337,9 +414,18 @@ class DeviceService {
|
|
|
337
414
|
const asset = await this.sdk.document.get(engineId, plugin_1.InternalCollection.ASSETS, device._source.assetId);
|
|
338
415
|
const linkedDevices = asset._source.linkedDevices.filter((link) => link._id !== device._id);
|
|
339
416
|
const [updatedDevice, , updatedAsset] = await Promise.all([
|
|
340
|
-
this.
|
|
341
|
-
|
|
342
|
-
|
|
417
|
+
this.updateDocument(request, { _id: device._id, _source: { assetId: null } }, {
|
|
418
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
419
|
+
engineId: this.config.adminIndex,
|
|
420
|
+
}, { source: true }),
|
|
421
|
+
this.updateDocument(request, { _id: device._id, _source: { assetId: null } }, {
|
|
422
|
+
collection: plugin_1.InternalCollection.DEVICES,
|
|
423
|
+
engineId,
|
|
424
|
+
}),
|
|
425
|
+
this.updateDocument(request, { _id: asset._id, _source: { linkedDevices } }, {
|
|
426
|
+
collection: plugin_1.InternalCollection.ASSETS,
|
|
427
|
+
engineId,
|
|
428
|
+
}, { source: true }),
|
|
343
429
|
]);
|
|
344
430
|
const event = {
|
|
345
431
|
name: "unlink",
|
|
@@ -347,7 +433,7 @@ class DeviceService {
|
|
|
347
433
|
deviceId,
|
|
348
434
|
},
|
|
349
435
|
};
|
|
350
|
-
await (0,
|
|
436
|
+
await (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:asset:history:add", {
|
|
351
437
|
engineId,
|
|
352
438
|
histories: [
|
|
353
439
|
{
|
|
@@ -358,7 +444,7 @@ class DeviceService {
|
|
|
358
444
|
},
|
|
359
445
|
],
|
|
360
446
|
});
|
|
361
|
-
if (
|
|
447
|
+
if (request.getRefresh() === "wait_for") {
|
|
362
448
|
await Promise.all([
|
|
363
449
|
this.sdk.collection.refresh(this.config.adminIndex, plugin_1.InternalCollection.DEVICES),
|
|
364
450
|
this.sdk.collection.refresh(engineId, plugin_1.InternalCollection.DEVICES),
|
|
@@ -388,12 +474,12 @@ class DeviceService {
|
|
|
388
474
|
return engine._source.engine;
|
|
389
475
|
}
|
|
390
476
|
getDeviceModel(model) {
|
|
391
|
-
return (0,
|
|
477
|
+
return (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:model:device:get", {
|
|
392
478
|
model,
|
|
393
479
|
});
|
|
394
480
|
}
|
|
395
481
|
getAssetModel(engineGroup, model) {
|
|
396
|
-
return (0,
|
|
482
|
+
return (0, kuzzle_plugin_commons_1.ask)("ask:device-manager:model:asset:get", {
|
|
397
483
|
engineGroup,
|
|
398
484
|
model,
|
|
399
485
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceService.js","sourceRoot":"","sources":["../../../../lib/modules/device/DeviceService.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DeviceService.js","sourceRoot":"","sources":["../../../../lib/modules/device/DeviceService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ControllerDefinition, KuzzleRequest } from "kuzzle";
|
|
2
2
|
import { DeviceManagerPlugin } from "../plugin";
|
|
3
3
|
import { DeviceService } from "./DeviceService";
|
|
4
|
-
import { ApiDeviceAttachEngineResult, ApiDeviceCreateResult, ApiDeviceDeleteResult, ApiDeviceDetachEngineResult, ApiDeviceGetResult, ApiDeviceLinkAssetResult, ApiDeviceSearchResult, ApiDeviceUnlinkAssetResult, ApiDeviceUpdateResult, ApiDeviceGetMeasuresResult } from "./types/DeviceApi";
|
|
4
|
+
import { ApiDeviceAttachEngineResult, ApiDeviceCreateResult, ApiDeviceDeleteResult, ApiDeviceDetachEngineResult, ApiDeviceGetResult, ApiDeviceLinkAssetResult, ApiDeviceSearchResult, ApiDeviceUnlinkAssetResult, ApiDeviceUpdateResult, ApiDeviceGetMeasuresResult, ApiDeviceUpsertResult } from "./types/DeviceApi";
|
|
5
5
|
export declare class DevicesController {
|
|
6
6
|
private plugin;
|
|
7
7
|
private deviceService;
|
|
@@ -13,6 +13,7 @@ export declare class DevicesController {
|
|
|
13
13
|
update(request: KuzzleRequest): Promise<ApiDeviceUpdateResult>;
|
|
14
14
|
delete(request: KuzzleRequest): Promise<ApiDeviceDeleteResult>;
|
|
15
15
|
search(request: KuzzleRequest): Promise<ApiDeviceSearchResult>;
|
|
16
|
+
upsert(request: KuzzleRequest): Promise<ApiDeviceUpsertResult>;
|
|
16
17
|
/**
|
|
17
18
|
* Create and provision a new device
|
|
18
19
|
*/
|