@camera.ui/server 0.0.6 → 0.0.8
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/interface/assets/{@tanstack-BqH4GyO-.js → @tanstack-B-9PO-kT.js} +1 -1
- package/dist/interface/assets/{@vee-validate-DCBdnGo-.js → @vee-validate-D_G0ehOl.js} +1 -1
- package/dist/interface/assets/{@vue-C7-KaDG4.js → @vue-C10tA4b9.js} +6 -6
- package/dist/interface/assets/{@vueform-arggO0eF.js → @vueform-Bj73kRPS.js} +1 -1
- package/dist/interface/assets/{@vueuse-C3WMTDqL.js → @vueuse-BPeqNGoM.js} +1 -1
- package/dist/interface/assets/Account-MEaGtu1D.js +1 -0
- package/dist/interface/assets/Adminpanel-D1ycltxf.js +1 -0
- package/dist/interface/assets/Appearance-Jlzp_P21.js +1 -0
- package/dist/interface/assets/Backup-1-ju9NDo.js +1 -0
- package/dist/interface/assets/Camera-BOu5dUel.js +1 -0
- package/dist/interface/assets/Cameras-C7eUXdZk.js +1 -0
- package/dist/interface/assets/Cameras-tmTzi1M6.css +1 -0
- package/dist/interface/assets/Camview-CEgwGCGR.js +1 -0
- package/dist/interface/assets/{Camview-vUAs5YHU.css → Camview-CWTrsoY0.css} +1 -1
- package/dist/interface/assets/Config-Dt-etQ3h.js +1 -0
- package/dist/interface/assets/{Console-Caz7y-T0.js → Console-FCve5CKy.js} +2 -2
- package/dist/interface/assets/FirstSteps-DLkKDSe9.js +1 -0
- package/dist/interface/assets/{NewCamera-B9t-0NCc.js → NewCamera-Cc1X79Ns.js} +2 -2
- package/dist/interface/assets/Plugin-CnQjafMC.js +1 -0
- package/dist/interface/assets/{Plugin-BSHKKjrl.css → Plugin-DzKKCoqQ.css} +1 -1
- package/dist/interface/assets/Plugins-B8gCgxOx.css +1 -0
- package/dist/interface/assets/Plugins-CwyUdMlv.js +1 -0
- package/dist/interface/assets/Recordings-Boeev1lV.js +1 -0
- package/dist/interface/assets/Recordings-D5ta7AYS.js +1 -0
- package/dist/interface/assets/Settings-Cvm2jnBr.js +1 -0
- package/dist/interface/assets/System-fHQ7XKri.js +1 -0
- package/dist/interface/assets/User-5o1VKizc.js +1 -0
- package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-C_95ELTZ.js +2 -0
- package/dist/interface/assets/VConsole-BHy92Ws0.js +1 -0
- package/dist/interface/assets/VConsole-MV9pQtJj.css +1 -0
- package/dist/interface/assets/{VPlayer-YdRn97Bs.js → VPlayer-LX5HGLrY.js} +1 -1
- package/dist/interface/assets/{VPluginCard--3bx6UJb.js → VPluginCard-CFpg0LM4.js} +2 -2
- package/dist/interface/assets/VPluginCard-Fl0AYmnF.css +1 -0
- package/dist/interface/assets/main-BCWSiwnj.js +9 -0
- package/dist/interface/assets/{main-B3IVLctZ.css → main-CQNVVncO.css} +1 -1
- package/dist/interface/assets/{pinia-D8MtiGcH.js → pinia-CitQ5b66.js} +2 -2
- package/dist/interface/assets/{plugins-Bf03y242.js → plugins-D80RNVmI.js} +1 -1
- package/dist/interface/assets/qrcode-SHonoxyK.js +8 -0
- package/dist/interface/assets/{system-BONnDA4y.js → system-CS_ZOs3_.js} +1 -1
- package/dist/interface/assets/{ui-CNpIJotI.js → ui-CHKoHLl-.js} +1 -1
- package/dist/interface/assets/{v-calendar-uh0aTGqP.js → v-calendar-C-8W4FeM.js} +1 -1
- package/dist/interface/assets/{vee-validate-D3FqbChK.js → vee-validate-Ck3I2guh.js} +1 -1
- package/dist/interface/assets/{vue-i18n-1AU8MPys.js → vue-i18n-DuCDz9TJ.js} +1 -1
- package/dist/interface/assets/{vue-inline-svg-2DDwYW6V.js → vue-inline-svg-C2gR6nRD.js} +1 -1
- package/dist/interface/assets/{vue-router-DfeQ8s4I.js → vue-router-OPGDMnws.js} +1 -1
- package/dist/interface/assets/{vue3-dnd-BwxcSU9Z.js → vue3-dnd-Hf295yge.js} +1 -1
- package/dist/interface/assets/{vue3-toastify-Ul-rf53I.js → vue3-toastify-DQr2dOCx.js} +1 -1
- package/dist/interface/assets/vuetify-CrcT8VHB.js +5 -0
- package/dist/interface/index.html +14 -15
- package/dist/interface/sw.js +1 -1
- package/dist/server/bin/cui-service.d.ts +1 -0
- package/dist/server/bin/cui-service.js +41 -9
- package/dist/server/bin/cui-service.js.map +1 -1
- package/dist/server/package.json +8 -7
- package/dist/server/requirements.txt +2 -3
- package/dist/server/src/api/controllers/cameras.controller.js +2 -2
- package/dist/server/src/api/controllers/cameras.controller.js.map +1 -1
- package/dist/server/src/api/controllers/plugins.controller.js +7 -6
- package/dist/server/src/api/controllers/plugins.controller.js.map +1 -1
- package/dist/server/src/api/go2rtc/api/streams.d.ts +4 -4
- package/dist/server/src/api/go2rtc/api/streams.js +2 -24
- package/dist/server/src/api/go2rtc/api/streams.js.map +1 -1
- package/dist/server/src/api/go2rtc/types.d.ts +6 -2
- package/dist/server/src/api/schemas/go2rtc.schema.d.ts +5 -5
- package/dist/server/src/api/services/cameras.service.d.ts +6 -5
- package/dist/server/src/api/services/cameras.service.js +72 -59
- package/dist/server/src/api/services/cameras.service.js.map +1 -1
- package/dist/server/src/api/services/plugins.service.js +11 -13
- package/dist/server/src/api/services/plugins.service.js.map +1 -1
- package/dist/server/src/api.d.ts +2 -2
- package/dist/server/src/camera/controller.d.ts +9 -4
- package/dist/server/src/camera/controller.js +21 -7
- package/dist/server/src/camera/controller.js.map +1 -1
- package/dist/server/src/camera/device.d.ts +15 -3
- package/dist/server/src/camera/device.js.map +1 -1
- package/dist/server/src/camera/index.d.ts +18 -39
- package/dist/server/src/camera/index.js +137 -165
- package/dist/server/src/camera/index.js.map +1 -1
- package/dist/server/src/camera/interfaces/camera.d.ts +0 -1
- package/dist/server/src/camera/interfaces/camera.js +0 -8
- package/dist/server/src/camera/interfaces/camera.js.map +1 -1
- package/dist/server/src/camera/streaming/werift-session.d.ts +10 -1
- package/dist/server/src/camera/streaming/werift-session.js +16 -1
- package/dist/server/src/camera/streaming/werift-session.js.map +1 -1
- package/dist/server/src/camera/types.d.ts +0 -1
- package/dist/server/src/camera/types.js.map +1 -1
- package/dist/server/src/camera/videoFrame.d.ts +3 -3
- package/dist/server/src/camera/videoFrame.js +6 -7
- package/dist/server/src/camera/videoFrame.js.map +1 -1
- package/dist/server/src/decoder/types.d.ts +4 -9
- package/dist/server/src/decoder/worker.d.ts +3 -5
- package/dist/server/src/decoder/worker.js +40 -64
- package/dist/server/src/decoder/worker.js.map +1 -1
- package/dist/server/src/go2rtc/index.js +1 -1
- package/dist/server/src/go2rtc/index.js.map +1 -1
- package/dist/server/src/index.d.ts +3 -3
- package/dist/server/src/main.js +1 -2
- package/dist/server/src/main.js.map +1 -1
- package/dist/server/src/nats/connection.d.ts +17 -0
- package/dist/server/src/nats/connection.js +66 -0
- package/dist/server/src/nats/connection.js.map +1 -0
- package/dist/server/src/nats/error.d.ts +9 -0
- package/dist/server/src/nats/error.js +11 -0
- package/dist/server/src/nats/error.js.map +1 -0
- package/dist/server/src/nats/index.d.ts +6 -4
- package/dist/server/src/nats/index.js +22 -17
- package/dist/server/src/nats/index.js.map +1 -1
- package/dist/server/src/nats/messageQueue.d.ts +7 -4
- package/dist/server/src/nats/messageQueue.js +43 -59
- package/dist/server/src/nats/messageQueue.js.map +1 -1
- package/dist/server/src/nats/proxy/cameraDevice.js +19 -24
- package/dist/server/src/nats/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/nats/proxy/deviceManager.d.ts +2 -2
- package/dist/server/src/nats/proxy/deviceManager.js +4 -14
- package/dist/server/src/nats/proxy/deviceManager.js.map +1 -1
- package/dist/server/src/nats/server.js +4 -10
- package/dist/server/src/nats/server.js.map +1 -1
- package/dist/server/src/nats/subscription.d.ts +12 -0
- package/dist/server/src/nats/subscription.js +21 -0
- package/dist/server/src/nats/subscription.js.map +1 -0
- package/dist/server/src/nats/types.d.ts +25 -40
- package/dist/server/src/nats/types.js +1 -10
- package/dist/server/src/nats/types.js.map +1 -1
- package/dist/server/src/nats/utils.d.ts +2 -4
- package/dist/server/src/nats/utils.js +3 -3
- package/dist/server/src/nats/utils.js.map +1 -1
- package/dist/server/src/plugins/index.d.ts +3 -5
- package/dist/server/src/plugins/index.js +54 -141
- package/dist/server/src/plugins/index.js.map +1 -1
- package/dist/server/src/plugins/plugin.d.ts +4 -13
- package/dist/server/src/plugins/plugin.js +40 -90
- package/dist/server/src/plugins/plugin.js.map +1 -1
- package/dist/server/src/plugins/types.d.ts +4 -0
- package/dist/server/src/plugins/types.js.map +1 -1
- package/dist/server/src/plugins/worker.d.ts +1 -1
- package/dist/server/src/plugins/worker.js +52 -66
- package/dist/server/src/plugins/worker.js.map +1 -1
- package/dist/server/src/polyglot/node/decoder/child.js +87 -159
- package/dist/server/src/polyglot/node/decoder/child.js.map +1 -1
- package/dist/server/src/polyglot/node/decoder/imageUtils.d.ts +1 -1
- package/dist/server/src/polyglot/node/plugins/cameraStorage.d.ts +2 -2
- package/dist/server/src/polyglot/node/plugins/cameraStorage.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/child.d.ts +1 -1
- package/dist/server/src/polyglot/node/plugins/child.js +34 -60
- package/dist/server/src/polyglot/node/plugins/child.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/{config.js → configService.js} +1 -1
- package/dist/server/src/polyglot/node/plugins/configService.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/{api.d.ts → pluginApi.d.ts} +9 -12
- package/dist/server/src/polyglot/node/plugins/pluginApi.js +34 -0
- package/dist/server/src/polyglot/node/plugins/pluginApi.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/{logger.d.ts → pluginLogger.d.ts} +2 -0
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js +89 -0
- package/dist/server/src/polyglot/node/plugins/pluginLogger.js.map +1 -0
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.d.ts +8 -11
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js +67 -129
- package/dist/server/src/polyglot/node/plugins/proxy/cameraDevice.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.d.ts +6 -8
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js +15 -43
- package/dist/server/src/polyglot/node/plugins/proxy/deviceManager.js.map +1 -1
- package/dist/server/src/polyglot/node/plugins/storageController.d.ts +2 -2
- package/dist/server/src/polyglot/node/plugins/storageController.js.map +1 -1
- package/dist/server/src/polyglot/python/camera/interfaces/camera.py +0 -6
- package/dist/server/src/polyglot/python/camera/video_frame.py +10 -18
- package/dist/server/src/polyglot/python/camera_ui_types/__init__.py +1 -5
- package/dist/server/src/polyglot/python/decoder/child.py +102 -161
- package/dist/server/src/polyglot/python/plugins/camera_storage.py +10 -23
- package/dist/server/src/polyglot/python/plugins/child.py +35 -60
- package/dist/server/src/polyglot/python/plugins/{proxy/message_queue.py → message_queue.py} +50 -81
- package/dist/server/src/polyglot/python/plugins/plugin_api.py +13 -21
- package/dist/server/src/polyglot/python/plugins/proxy/camera_device.py +90 -173
- package/dist/server/src/polyglot/python/plugins/proxy/device_manager.py +25 -64
- package/dist/server/src/polyglot/python/plugins/storage_controller.py +3 -4
- package/dist/server/src/polyglot/python/utilities/connection.py +86 -0
- package/dist/server/src/polyglot/python/utilities/object_path.py +12 -4
- package/dist/server/src/polyglot/python/utilities/subscriptions.py +20 -0
- package/dist/server/src/polyglot/python/utilities/task.py +11 -1
- package/dist/server/src/services/config/index.js +4 -2
- package/dist/server/src/services/config/index.js.map +1 -1
- package/dist/server/src/services/logger/index.js +11 -8
- package/dist/server/src/services/logger/index.js.map +1 -1
- package/dist/server/src/utils/ffmpeg.d.ts +2 -0
- package/dist/server/src/{decoder → utils}/ffmpeg.js +2 -2
- package/dist/server/src/utils/ffmpeg.js.map +1 -0
- package/dist/server/src/utils/pythonInstaller.d.ts +1 -1
- package/dist/server/src/utils/pythonInstaller.js +10 -4
- package/dist/server/src/utils/pythonInstaller.js.map +1 -1
- package/dist/server/src/utils/reader.js.map +1 -0
- package/dist/server/src/utils/subscribed.d.ts +4 -4
- package/dist/server/src/utils/subscribed.js.map +1 -1
- package/package.json +8 -7
- package/dist/interface/assets/@camera.ui-2NVnv26v.js +0 -8
- package/dist/interface/assets/Account-gJpkf0nE.js +0 -1
- package/dist/interface/assets/Adminpanel-Bge9nu5N.js +0 -1
- package/dist/interface/assets/Appearance-D22q-X_I.js +0 -1
- package/dist/interface/assets/Backup-pJm6s10G.js +0 -1
- package/dist/interface/assets/Camera-BgO2yRjb.js +0 -1
- package/dist/interface/assets/Cameras-BM3vSM_R.css +0 -1
- package/dist/interface/assets/Cameras-DjeKruR_.js +0 -1
- package/dist/interface/assets/Camview-DfzlprzN.js +0 -1
- package/dist/interface/assets/Config-BKIOIkjC.js +0 -1
- package/dist/interface/assets/FirstSteps-mQK4XFTs.js +0 -1
- package/dist/interface/assets/Plugin-Di_bBsg-.js +0 -1
- package/dist/interface/assets/Plugins-BsMITags.css +0 -1
- package/dist/interface/assets/Plugins-DhmzMNuO.js +0 -1
- package/dist/interface/assets/Recordings-Bu53bSBp.js +0 -1
- package/dist/interface/assets/Recordings-XY20w8yp.js +0 -1
- package/dist/interface/assets/Settings-gGRBRVST.js +0 -1
- package/dist/interface/assets/System-ZDrcLNk0.js +0 -1
- package/dist/interface/assets/User-D4vEhhzi.js +0 -1
- package/dist/interface/assets/VConfigEditor.vue_vue_type_script_setup_true_lang-CXFI-IeE.js +0 -2
- package/dist/interface/assets/VConsole-BHo3xprq.js +0 -1
- package/dist/interface/assets/VConsole-f-nUkOuD.css +0 -1
- package/dist/interface/assets/VPluginCard-BJYMuCLk.css +0 -1
- package/dist/interface/assets/encode-utf8-Cn5aGd7v.js +0 -1
- package/dist/interface/assets/main-C4rYiRNz.js +0 -2
- package/dist/interface/assets/qrcode-CGiDONbL.js +0 -8
- package/dist/interface/assets/vuetify-_-Oqac3B.js +0 -5
- package/dist/server/src/decoder/ffmpeg.d.ts +0 -2
- package/dist/server/src/decoder/ffmpeg.js.map +0 -1
- package/dist/server/src/nats/proxy/index.d.ts +0 -2
- package/dist/server/src/nats/proxy/index.js +0 -3
- package/dist/server/src/nats/proxy/index.js.map +0 -1
- package/dist/server/src/polyglot/node/decoder/reader.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/api.js +0 -34
- package/dist/server/src/polyglot/node/plugins/api.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/config.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/logger.js +0 -128
- package/dist/server/src/polyglot/node/plugins/logger.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/index.d.ts +0 -2
- package/dist/server/src/polyglot/node/plugins/proxy/index.js +0 -3
- package/dist/server/src/polyglot/node/plugins/proxy/index.js.map +0 -1
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.d.ts +0 -20
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.js +0 -152
- package/dist/server/src/polyglot/node/plugins/proxy/messageQueue.js.map +0 -1
- /package/dist/server/src/polyglot/node/plugins/{config.d.ts → configService.d.ts} +0 -0
- /package/dist/server/src/polyglot/python/plugins/{logger.py → plugin_logger.py} +0 -0
- /package/dist/server/src/{polyglot/node/decoder → utils}/reader.d.ts +0 -0
- /package/dist/server/src/{polyglot/node/decoder → utils}/reader.js +0 -0
|
@@ -93,18 +93,22 @@ let CamerasService = class CamerasService {
|
|
|
93
93
|
throw new Error(`Camera ${cameraname} not found`);
|
|
94
94
|
}
|
|
95
95
|
if (!this.sourceExistAndEqual(sourceName, [source])) {
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
96
|
+
// fix after go2rtc update
|
|
97
|
+
await this.go2rtcApi.streamsApi.createStream({
|
|
98
|
+
name: sourceName,
|
|
99
|
+
src: source,
|
|
100
|
+
});
|
|
101
|
+
// if (this.configService.go2rtcConfig.streams?.[sourceName]) {
|
|
102
|
+
// await this.go2rtcApi.streamsApi.updateStreamSource({
|
|
103
|
+
// name: sourceName,
|
|
104
|
+
// src: source,
|
|
105
|
+
// });
|
|
106
|
+
// } else {
|
|
107
|
+
// await this.go2rtcApi.streamsApi.createStream({
|
|
108
|
+
// name: sourceName,
|
|
109
|
+
// src: source,
|
|
110
|
+
// });
|
|
111
|
+
// }
|
|
108
112
|
if (!this.configService.go2rtcConfig.streams)
|
|
109
113
|
this.configService.go2rtcConfig.streams = {};
|
|
110
114
|
this.configService.go2rtcConfig.streams[sourceName] = source;
|
|
@@ -216,19 +220,19 @@ let CamerasService = class CamerasService {
|
|
|
216
220
|
}
|
|
217
221
|
return camera;
|
|
218
222
|
}
|
|
219
|
-
async enableExtensionByName(cameraname,
|
|
223
|
+
async enableExtensionByName(cameraname, pluginNameOrId, extensionType) {
|
|
220
224
|
const cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
221
|
-
const plugin = this.pluginsService.getPluginByName(
|
|
225
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) || this.pluginsService.getPluginById(pluginNameOrId);
|
|
222
226
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
223
227
|
const cameraOld = structuredClone(camera);
|
|
224
228
|
if (camera && cameraOld && plugin) {
|
|
225
229
|
if (CAMERA_EXTENSIONS.includes(extensionType) &&
|
|
226
230
|
extensionType !== 'hub' &&
|
|
227
|
-
camera.extensions[extensionType] !== pluginName &&
|
|
228
|
-
(camera.extensions.plugins.includes(pluginName) || plugin.contract.builtIns?.includes(extensionType))) {
|
|
231
|
+
camera.extensions[extensionType] !== plugin.pluginName &&
|
|
232
|
+
(camera.extensions.plugins.includes(plugin.pluginName) || plugin.contract.builtIns?.includes(extensionType))) {
|
|
229
233
|
const oldExtension = camera.extensions[extensionType];
|
|
230
234
|
const oldPlugin = oldExtension ? this.pluginsService.getPluginByName(oldExtension) : undefined;
|
|
231
|
-
camera.extensions[extensionType] = pluginName;
|
|
235
|
+
camera.extensions[extensionType] = plugin.pluginName;
|
|
232
236
|
const transformedCamera = this.transformCamera(camera);
|
|
233
237
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
234
238
|
if (oldPlugin && oldExtension) {
|
|
@@ -240,16 +244,16 @@ let CamerasService = class CamerasService {
|
|
|
240
244
|
}
|
|
241
245
|
return camera;
|
|
242
246
|
}
|
|
243
|
-
async disableExtensionByName(cameraname,
|
|
247
|
+
async disableExtensionByName(cameraname, pluginNameOrId, extensionType) {
|
|
244
248
|
const cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
245
|
-
const plugin = this.pluginsService.getPluginByName(
|
|
249
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) || this.pluginsService.getPluginById(pluginNameOrId);
|
|
246
250
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
247
251
|
const cameraOld = structuredClone(camera);
|
|
248
252
|
if (camera && cameraOld && plugin) {
|
|
249
253
|
if (CAMERA_EXTENSIONS.includes(extensionType) &&
|
|
250
254
|
extensionType !== 'hub' &&
|
|
251
|
-
camera.extensions[extensionType] === pluginName &&
|
|
252
|
-
(camera.extensions.plugins.includes(pluginName) || plugin.contract.builtIns?.includes(extensionType))) {
|
|
255
|
+
camera.extensions[extensionType] === plugin.pluginName &&
|
|
256
|
+
(camera.extensions.plugins.includes(plugin.pluginName) || plugin.contract.builtIns?.includes(extensionType))) {
|
|
253
257
|
camera.extensions[extensionType] = undefined;
|
|
254
258
|
const transformedCamera = this.transformCamera(camera);
|
|
255
259
|
await this.dbs.camerasDB.put('cameras', cameras);
|
|
@@ -259,19 +263,19 @@ let CamerasService = class CamerasService {
|
|
|
259
263
|
}
|
|
260
264
|
return camera;
|
|
261
265
|
}
|
|
262
|
-
async addExtensionByName(cameraname,
|
|
266
|
+
async addExtensionByName(cameraname, pluginNameOrId) {
|
|
263
267
|
const cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
264
|
-
const plugin = this.pluginsService.getPluginByName(
|
|
268
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) || this.pluginsService.getPluginById(pluginNameOrId);
|
|
265
269
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
266
270
|
const cameraOld = structuredClone(camera);
|
|
267
|
-
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && !camera.extensions.plugins.includes(pluginName)) {
|
|
268
|
-
camera.extensions.plugins.push(pluginName);
|
|
271
|
+
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && !camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
272
|
+
camera.extensions.plugins.push(plugin.pluginName);
|
|
269
273
|
const addedExtensions = [];
|
|
270
274
|
if (plugin?.contract.extension) {
|
|
271
275
|
const extensionType = plugin.contract.extension;
|
|
272
276
|
if (extensionType !== 'hub') {
|
|
273
277
|
if (!camera.extensions[extensionType]) {
|
|
274
|
-
camera.extensions[extensionType] = pluginName;
|
|
278
|
+
camera.extensions[extensionType] = plugin.pluginName;
|
|
275
279
|
addedExtensions.push(extensionType);
|
|
276
280
|
}
|
|
277
281
|
}
|
|
@@ -279,7 +283,7 @@ let CamerasService = class CamerasService {
|
|
|
279
283
|
if (!camera.extensions[extensionType]) {
|
|
280
284
|
camera.extensions[extensionType] = [];
|
|
281
285
|
}
|
|
282
|
-
camera.extensions[extensionType].push(pluginName);
|
|
286
|
+
camera.extensions[extensionType].push(plugin.pluginName);
|
|
283
287
|
addedExtensions.push(extensionType);
|
|
284
288
|
}
|
|
285
289
|
}
|
|
@@ -287,7 +291,7 @@ let CamerasService = class CamerasService {
|
|
|
287
291
|
const extensionTypes = plugin.contract.builtIns;
|
|
288
292
|
extensionTypes.forEach((extensionType) => {
|
|
289
293
|
if (!camera.extensions[extensionType]) {
|
|
290
|
-
camera.extensions[extensionType] = pluginName;
|
|
294
|
+
camera.extensions[extensionType] = plugin.pluginName;
|
|
291
295
|
addedExtensions.push(extensionType);
|
|
292
296
|
}
|
|
293
297
|
});
|
|
@@ -301,18 +305,18 @@ let CamerasService = class CamerasService {
|
|
|
301
305
|
}
|
|
302
306
|
return camera;
|
|
303
307
|
}
|
|
304
|
-
async removeExtensionByName(cameraname,
|
|
308
|
+
async removeExtensionByName(cameraname, pluginNameOrId) {
|
|
305
309
|
const cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
306
|
-
const plugin = this.pluginsService.getPluginByName(
|
|
310
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) || this.pluginsService.getPluginById(pluginNameOrId);
|
|
307
311
|
const camera = cameras.find((camera) => camera.name === cameraname);
|
|
308
312
|
const cameraOld = structuredClone(camera);
|
|
309
|
-
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(pluginName)) {
|
|
310
|
-
camera.extensions.plugins = camera.extensions.plugins.filter((
|
|
313
|
+
if (camera && cameraOld && (plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
314
|
+
camera.extensions.plugins = camera.extensions.plugins.filter((extension) => extension !== plugin.pluginName);
|
|
311
315
|
const removedExtensions = new Set();
|
|
312
316
|
if (plugin?.contract.extension) {
|
|
313
317
|
const extensionType = plugin.contract.extension;
|
|
314
318
|
if (extensionType !== 'hub') {
|
|
315
|
-
if (camera.extensions[extensionType] === pluginName) {
|
|
319
|
+
if (camera.extensions[extensionType] === plugin.pluginName) {
|
|
316
320
|
camera.extensions[extensionType] = undefined;
|
|
317
321
|
removedExtensions.add(extensionType);
|
|
318
322
|
}
|
|
@@ -321,14 +325,14 @@ let CamerasService = class CamerasService {
|
|
|
321
325
|
if (!camera.extensions[extensionType]) {
|
|
322
326
|
camera.extensions[extensionType] = [];
|
|
323
327
|
}
|
|
324
|
-
camera.extensions[extensionType] = camera.extensions[extensionType].filter((
|
|
328
|
+
camera.extensions[extensionType] = camera.extensions[extensionType].filter((extension) => extension !== plugin.pluginName);
|
|
325
329
|
removedExtensions.add(extensionType);
|
|
326
330
|
}
|
|
327
331
|
}
|
|
328
332
|
else if (plugin?.contract.supportAdditionalCameras) {
|
|
329
333
|
const extensionTypes = plugin.contract.builtIns;
|
|
330
334
|
extensionTypes.forEach((extensionType) => {
|
|
331
|
-
if (camera.extensions[extensionType] === pluginName) {
|
|
335
|
+
if (camera.extensions[extensionType] === plugin.pluginName) {
|
|
332
336
|
camera.extensions[extensionType] = undefined;
|
|
333
337
|
removedExtensions.add(extensionType);
|
|
334
338
|
}
|
|
@@ -343,17 +347,17 @@ let CamerasService = class CamerasService {
|
|
|
343
347
|
}
|
|
344
348
|
return camera;
|
|
345
349
|
}
|
|
346
|
-
async removeExtension(
|
|
350
|
+
async removeExtension(pluginNameOrId) {
|
|
347
351
|
const cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
348
352
|
for (const camera of cameras) {
|
|
349
|
-
const plugin = this.pluginsService.getPluginByName(
|
|
350
|
-
if ((plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(pluginName)) {
|
|
351
|
-
camera.extensions.plugins = camera.extensions.plugins.filter((
|
|
353
|
+
const plugin = this.pluginsService.getPluginByName(pluginNameOrId) || this.pluginsService.getPluginById(pluginNameOrId);
|
|
354
|
+
if ((plugin?.contract.extension || plugin?.contract.supportAdditionalCameras) && camera.extensions.plugins.includes(plugin.pluginName)) {
|
|
355
|
+
camera.extensions.plugins = camera.extensions.plugins.filter((extension) => extension !== plugin.pluginName);
|
|
352
356
|
const removedExtensions = new Set();
|
|
353
357
|
if (plugin?.contract.extension) {
|
|
354
358
|
const extensionType = plugin.contract.extension;
|
|
355
359
|
if (extensionType !== 'hub') {
|
|
356
|
-
if (camera.extensions[extensionType] === pluginName) {
|
|
360
|
+
if (camera.extensions[extensionType] === plugin.pluginName) {
|
|
357
361
|
camera.extensions[extensionType] = undefined;
|
|
358
362
|
removedExtensions.add(extensionType);
|
|
359
363
|
}
|
|
@@ -362,14 +366,14 @@ let CamerasService = class CamerasService {
|
|
|
362
366
|
if (!camera.extensions[extensionType]) {
|
|
363
367
|
camera.extensions[extensionType] = [];
|
|
364
368
|
}
|
|
365
|
-
camera.extensions[extensionType] = camera.extensions[extensionType].filter((
|
|
369
|
+
camera.extensions[extensionType] = camera.extensions[extensionType].filter((extension) => extension !== plugin.pluginName);
|
|
366
370
|
removedExtensions.add(extensionType);
|
|
367
371
|
}
|
|
368
372
|
}
|
|
369
373
|
else if (plugin?.contract.supportAdditionalCameras) {
|
|
370
374
|
const extensionTypes = plugin.contract.builtIns;
|
|
371
375
|
for (const extensionType of extensionTypes) {
|
|
372
|
-
if (camera.extensions[extensionType] === pluginName) {
|
|
376
|
+
if (camera.extensions[extensionType] === plugin.pluginName) {
|
|
373
377
|
camera.extensions[extensionType] = undefined;
|
|
374
378
|
removedExtensions.add(extensionType);
|
|
375
379
|
}
|
|
@@ -406,9 +410,15 @@ let CamerasService = class CamerasService {
|
|
|
406
410
|
await this.api.removeCamera(this.transformCamera(camera), camera.extensions);
|
|
407
411
|
}
|
|
408
412
|
}
|
|
413
|
+
async removeByPluginName(pluginName) {
|
|
414
|
+
const plugin = this.pluginsService.getPluginDbByName(pluginName);
|
|
415
|
+
if (plugin) {
|
|
416
|
+
await this.removeByPluginId(plugin._id);
|
|
417
|
+
}
|
|
418
|
+
}
|
|
409
419
|
async removeByPluginId(pluginId) {
|
|
410
420
|
let cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
411
|
-
const camera = cameras.find((cameraObj) => cameraObj.
|
|
421
|
+
const camera = cameras.find((cameraObj) => cameraObj.pluginId === pluginId);
|
|
412
422
|
if (camera) {
|
|
413
423
|
cameras = cameras.filter((cameraObj) => cameraObj._id !== camera._id);
|
|
414
424
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
@@ -419,7 +429,7 @@ let CamerasService = class CamerasService {
|
|
|
419
429
|
}
|
|
420
430
|
async removeByPluginIdAndName(cameraname, pluginId) {
|
|
421
431
|
let cameras = this.dbs.camerasDB.get('cameras') || [];
|
|
422
|
-
const camera = cameras.find((cameraObj) => cameraObj.name === cameraname && cameraObj.
|
|
432
|
+
const camera = cameras.find((cameraObj) => cameraObj.name === cameraname && cameraObj.pluginId === pluginId);
|
|
423
433
|
if (camera) {
|
|
424
434
|
cameras = cameras.filter((cameraObj) => cameraObj._id !== camera._id);
|
|
425
435
|
await this.usersService.removeCameraFromPreferences(camera._id);
|
|
@@ -440,7 +450,6 @@ let CamerasService = class CamerasService {
|
|
|
440
450
|
}
|
|
441
451
|
await Promise.all(camerasToRemove.map((camera) => this.api.removeCamera(this.transformCamera(camera), camera.extensions)));
|
|
442
452
|
}
|
|
443
|
-
///
|
|
444
453
|
transformCamera(camera) {
|
|
445
454
|
const transformedCamera = {
|
|
446
455
|
_id: camera._id,
|
|
@@ -504,18 +513,22 @@ let CamerasService = class CamerasService {
|
|
|
504
513
|
}
|
|
505
514
|
}
|
|
506
515
|
for (const sourceData of cameraSources) {
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
516
|
+
// fix after go2rtc update
|
|
517
|
+
await this.go2rtcApi.streamsApi.createStream({
|
|
518
|
+
name: sourceData.name,
|
|
519
|
+
src: sourceData.src[0], // fix after go2rtc update
|
|
520
|
+
});
|
|
521
|
+
// if (this.configService.go2rtcConfig.streams?.[sourceData.name]) {
|
|
522
|
+
// await this.go2rtcApi.streamsApi.updateStreamSource({
|
|
523
|
+
// name: sourceData.name,
|
|
524
|
+
// src: sourceData.src,
|
|
525
|
+
// });
|
|
526
|
+
// } else {
|
|
527
|
+
// await this.go2rtcApi.streamsApi.createStream({
|
|
528
|
+
// name: sourceData.name,
|
|
529
|
+
// src: sourceData.src,
|
|
530
|
+
// });
|
|
531
|
+
// }
|
|
519
532
|
}
|
|
520
533
|
if (!this.configService.go2rtcConfig.streams) {
|
|
521
534
|
this.configService.go2rtcConfig.streams = {};
|
|
@@ -540,8 +553,8 @@ let CamerasService = class CamerasService {
|
|
|
540
553
|
if (this.configService.go2rtcConfig.streams?.[ffmpegSourceNameOPUS]) {
|
|
541
554
|
sourcesToRemove.push(ffmpegSourceNameOPUS);
|
|
542
555
|
}
|
|
543
|
-
for (const
|
|
544
|
-
await this.go2rtcApi.streamsApi.deleteStream({
|
|
556
|
+
for (const src of sourcesToRemove) {
|
|
557
|
+
await this.go2rtcApi.streamsApi.deleteStream({ src });
|
|
545
558
|
}
|
|
546
559
|
if (!this.configService.go2rtcConfig.streams) {
|
|
547
560
|
this.configService.go2rtcConfig.streams = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cameras.service.js","sourceRoot":"","sources":["../../../../../src/api/services/cameras.service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cameras.service.js","sourceRoot":"","sources":["../../../../../src/api/services/cameras.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,20 +80,19 @@ let PluginsService = class PluginsService {
|
|
|
80
80
|
return pluginData;
|
|
81
81
|
}
|
|
82
82
|
async removePluginDbByName(pluginName) {
|
|
83
|
-
let plugins = this.dbs.pluginsDB.get('plugins') || [];
|
|
84
|
-
plugins = plugins.filter((pluginObj) => pluginObj.pluginName !== pluginName);
|
|
85
83
|
const camerasService = new CamerasService();
|
|
86
84
|
await camerasService.removeExtension(pluginName);
|
|
85
|
+
await camerasService.removeByPluginName(pluginName);
|
|
86
|
+
let plugins = this.dbs.pluginsDB.get('plugins') || [];
|
|
87
|
+
plugins = plugins.filter((pluginObj) => pluginObj.pluginName !== pluginName);
|
|
87
88
|
await this.dbs.pluginsDB.put('plugins', plugins);
|
|
88
89
|
}
|
|
89
90
|
async removePluginDbById(id) {
|
|
91
|
+
const camerasService = new CamerasService();
|
|
92
|
+
await camerasService.removeExtension(id);
|
|
93
|
+
await camerasService.removeByPluginId(id);
|
|
90
94
|
let plugins = this.dbs.pluginsDB.get('plugins') || [];
|
|
91
95
|
plugins = plugins.filter((pluginObj) => pluginObj._id !== id);
|
|
92
|
-
const plugin = this.getPluginDbById(id);
|
|
93
|
-
if (plugin) {
|
|
94
|
-
const camerasService = new CamerasService();
|
|
95
|
-
await camerasService.removeExtension(plugin.pluginName);
|
|
96
|
-
}
|
|
97
96
|
await this.dbs.pluginsDB.put('plugins', plugins);
|
|
98
97
|
}
|
|
99
98
|
async removeAllPluginsDb() {
|
|
@@ -101,22 +100,20 @@ let PluginsService = class PluginsService {
|
|
|
101
100
|
const camerasService = new CamerasService();
|
|
102
101
|
for (const plugin of plugins) {
|
|
103
102
|
await camerasService.removeExtension(plugin.pluginName);
|
|
103
|
+
await camerasService.removeByPluginName(plugin.pluginName);
|
|
104
104
|
}
|
|
105
105
|
await this.dbs.pluginsDB.put('plugins', []);
|
|
106
106
|
}
|
|
107
107
|
async removeOrphanPluginsDb() {
|
|
108
108
|
let plugins = this.dbs.pluginsDB.get('plugins') || [];
|
|
109
109
|
const orphanedPlugins = [];
|
|
110
|
-
plugins
|
|
111
|
-
if (this.getPluginByName(pluginObj.pluginName)) {
|
|
112
|
-
return true;
|
|
113
|
-
}
|
|
114
|
-
else {
|
|
110
|
+
plugins.forEach((pluginObj) => {
|
|
111
|
+
if (!this.getPluginByName(pluginObj.pluginName)) {
|
|
115
112
|
orphanedPlugins.push(pluginObj.pluginName);
|
|
116
|
-
return false;
|
|
117
113
|
}
|
|
118
114
|
});
|
|
119
115
|
await Promise.all(orphanedPlugins.map((pluginName) => this.removePluginDbByName(pluginName)));
|
|
116
|
+
plugins = plugins.filter((pluginObj) => !orphanedPlugins.includes(pluginObj.pluginName));
|
|
120
117
|
await this.dbs.pluginsDB.put('plugins', plugins);
|
|
121
118
|
}
|
|
122
119
|
async handleDisabledPlugins() {
|
|
@@ -125,6 +122,7 @@ let PluginsService = class PluginsService {
|
|
|
125
122
|
const disabledPlugins = plugins.filter((plugin) => plugin.disabled).map((plugin) => plugin.pluginName);
|
|
126
123
|
for (const pluginName of disabledPlugins) {
|
|
127
124
|
await camerasService.removeExtension(pluginName);
|
|
125
|
+
await camerasService.removeByPluginName(pluginName);
|
|
128
126
|
}
|
|
129
127
|
}
|
|
130
128
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugins.service.js","sourceRoot":"","sources":["../../../../../src/api/services/plugins.service.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"plugins.service.js","sourceRoot":"","sources":["../../../../../src/api/services/plugins.service.ts"],"names":[],"mappings":"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"}
|
package/dist/server/src/api.d.ts
CHANGED
|
@@ -5,8 +5,8 @@ import type { Camera, CameraExtensions } from './api/database/types.js';
|
|
|
5
5
|
import type { FrameWorker } from './decoder/worker.js';
|
|
6
6
|
import type { BasePlugin } from './plugins/interfaces/base.js';
|
|
7
7
|
import type { CameraExtension } from './plugins/types.js';
|
|
8
|
-
import type { API } from './polyglot/node/plugins/
|
|
9
|
-
import type { PluginLogger } from './polyglot/node/plugins/
|
|
8
|
+
import type { API } from './polyglot/node/plugins/pluginApi.js';
|
|
9
|
+
import type { PluginLogger } from './polyglot/node/plugins/pluginLogger.js';
|
|
10
10
|
export interface PluginConstructor {
|
|
11
11
|
new (logger: PluginLogger, api: API): BasePlugin;
|
|
12
12
|
}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CameraDevice } from './device.js';
|
|
2
2
|
import { CameraPrebufferInterface } from './interfaces/prebuffer.js';
|
|
3
3
|
import { CameraPTZInterface } from './interfaces/ptz.js';
|
|
4
4
|
import type { Camera } from '../api/database/types.js';
|
|
5
|
+
import type { MotionFrame, VideoFrame } from '../decoder/types.js';
|
|
5
6
|
import type { ProxyServer } from '../nats/index.js';
|
|
6
7
|
import type { IceServer } from '../services/config/types.js';
|
|
7
8
|
import type { BaseLogger, CameraConfigInputSettings, CameraDelegate, CameraSource, SetValues } from './types.js';
|
|
8
|
-
export declare class CameraController extends
|
|
9
|
+
export declare class CameraController extends CameraDevice {
|
|
9
10
|
proxy: ProxyServer;
|
|
10
11
|
private motionTimeout?;
|
|
11
12
|
private objectTimeout?;
|
|
@@ -13,12 +14,16 @@ export declare class CameraController extends BaseCameraDevice {
|
|
|
13
14
|
private doorbellTimeout?;
|
|
14
15
|
private doorbellTimeoutDuration;
|
|
15
16
|
private prebufferStateSubscriptions;
|
|
16
|
-
cameraDelegate: CameraDelegate;
|
|
17
|
+
protected cameraDelegate: CameraDelegate;
|
|
18
|
+
protected ptzDelegate: CameraPTZInterface;
|
|
17
19
|
protected prebufferDelegate: CameraPrebufferInterface;
|
|
18
|
-
ptzDelegate: CameraPTZInterface;
|
|
19
20
|
get camera(): Camera;
|
|
20
21
|
get sources(): CameraSource[];
|
|
21
22
|
constructor(camera: Camera, logger: BaseLogger, proxy: ProxyServer);
|
|
23
|
+
setDelegate(): void;
|
|
24
|
+
getFfmpegPath(): Promise<string>;
|
|
25
|
+
getFrames(): AsyncIterableIterator<VideoFrame>;
|
|
26
|
+
getMotionFrames(): AsyncIterableIterator<MotionFrame>;
|
|
22
27
|
connect(): Promise<void>;
|
|
23
28
|
disconnect(): Promise<void>;
|
|
24
29
|
getIceServers(): Promise<IceServer[]>;
|