@scrypted/server 0.0.155 → 0.0.156

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.

Potentially problematic release.


This version of @scrypted/server might be problematic. Click here for more details.

@@ -8,7 +8,7 @@ const rpc_1 = require("./rpc");
8
8
  const path_1 = require("path");
9
9
  const fs_1 = __importDefault(require("fs"));
10
10
  const mime = require('mime/lite');
11
- function createResponseInterface(res, unzippedDir) {
11
+ function createResponseInterface(res, unzippedDir, filesPath) {
12
12
  class HttpResponseImpl {
13
13
  [rpc_1.RpcPeer.PROPERTY_PROXY_ONEWAY_METHODS] = [
14
14
  'send',
@@ -38,11 +38,14 @@ function createResponseInterface(res, unzippedDir) {
38
38
  res.contentType(mime.getExtension(type));
39
39
  }
40
40
  }
41
- const filePath = (0, path_1.join)(unzippedDir, 'fs', path);
41
+ let filePath = (0, path_1.join)(unzippedDir, 'fs', path);
42
42
  if (!fs_1.default.existsSync(filePath)) {
43
- res.status(404);
44
- res.end();
45
- return;
43
+ filePath = (0, path_1.join)(filesPath, path);
44
+ if (!fs_1.default.existsSync(filePath)) {
45
+ res.status(404);
46
+ res.end();
47
+ return;
48
+ }
46
49
  }
47
50
  res.sendFile(filePath);
48
51
  }
@@ -1 +1 @@
1
- {"version":3,"file":"http-interfaces.js","sourceRoot":"","sources":["../src/http-interfaces.ts"],"names":[],"mappings":";;;;;;AAEA,+BAAgC;AAChC,+BAAwC;AACxC,4CAAoB;AAEpB,MAAO,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAEnC,SAAgB,uBAAuB,CAAC,GAAa,EAAE,WAAmB;IACtE,MAAM,gBAAgB;QAClB,CAAC,aAAO,CAAC,6BAA6B,CAAC,GAAG;YACtC,MAAM;YACN,UAAU;SACb,CAAC;QAMF,IAAI,CAAC,IAAS,EAAE,OAAa;YACzB,IAAI,OAAO,EAAE,IAAI;gBACb,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,OAAO,EAAE,OAAO,EAAE;gBAClB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAG,OAAO,CAAC,OAAe,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC3D;aACJ;YAED,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAID,QAAQ,CAAC,IAAS,EAAE,OAA6B;YAC7C,IAAI,OAAO,EAAE,IAAI;gBACb,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,OAAO,EAAE,OAAO,EAAE;gBAClB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAG,OAAO,CAAC,OAAe,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC3D;aACJ;YAED,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChC,IAAI,IAAI,EAAE;oBACN,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC5C;aACJ;YAED,MAAM,QAAQ,GAAG,IAAA,WAAQ,EAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACnD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;gBAC1B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;aACV;YACD,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;KACJ;IAED,OAAO,IAAI,gBAAgB,EAAE,CAAC;AAClC,CAAC;AApDD,0DAoDC"}
1
+ {"version":3,"file":"http-interfaces.js","sourceRoot":"","sources":["../src/http-interfaces.ts"],"names":[],"mappings":";;;;;;AAEA,+BAAgC;AAChC,+BAAwC;AACxC,4CAAoB;AAEpB,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;AAElC,SAAgB,uBAAuB,CAAC,GAAa,EAAE,WAAmB,EAAE,SAAiB;IACzF,MAAM,gBAAgB;QAClB,CAAC,aAAO,CAAC,6BAA6B,CAAC,GAAG;YACtC,MAAM;YACN,UAAU;SACb,CAAC;QAMF,IAAI,CAAC,IAAS,EAAE,OAAa;YACzB,IAAI,OAAO,EAAE,IAAI;gBACb,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,OAAO,EAAE,OAAO,EAAE;gBAClB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAG,OAAO,CAAC,OAAe,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC3D;aACJ;YAED,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC;QAID,QAAQ,CAAC,IAAS,EAAE,OAA6B;YAC7C,IAAI,OAAO,EAAE,IAAI;gBACb,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,OAAO,EAAE,OAAO,EAAE;gBAClB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE;oBAC/C,GAAG,CAAC,SAAS,CAAC,MAAM,EAAG,OAAO,CAAC,OAAe,CAAC,MAAM,CAAC,CAAC,CAAC;iBAC3D;aACJ;YAED,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,cAAc,CAAC,EAAE;gBAChC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChC,IAAI,IAAI,EAAE;oBACN,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC;iBAC5C;aACJ;YAED,IAAI,QAAQ,GAAG,IAAA,WAAQ,EAAC,WAAW,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YACjD,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;gBAC1B,QAAQ,GAAG,IAAA,WAAQ,EAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBACrC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;oBAC1B,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;oBAChB,GAAG,CAAC,GAAG,EAAE,CAAC;oBACV,OAAO;iBACV;aACJ;YACD,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC;KACJ;IAED,OAAO,IAAI,gBAAgB,EAAE,CAAC;AAClC,CAAC;AAvDD,0DAuDC"}
@@ -17,6 +17,8 @@ const whatwg_mimetype_1 = __importDefault(require("whatwg-mimetype"));
17
17
  const axios_1 = __importDefault(require("axios"));
18
18
  const https_1 = __importDefault(require("https"));
19
19
  const rimraf_1 = __importDefault(require("rimraf"));
20
+ const mkdirp_1 = __importDefault(require("mkdirp"));
21
+ const path_1 = __importDefault(require("path"));
20
22
  function typeMatches(target, candidate) {
21
23
  // candidate will accept anything
22
24
  if (candidate === '*' || target === '*')
@@ -149,6 +151,14 @@ class MediaManagerBase {
149
151
  const defaultPath = os_1.default.platform() === 'win32' ? 'ffmpeg.exe' : 'ffmpeg';
150
152
  return (0, ffmpeg_1.getInstalledFfmpeg)() || defaultPath;
151
153
  }
154
+ async getFilesPath() {
155
+ const filesPath = process.env.SCRYPTED_PLUGIN_VOLUME;
156
+ if (!filesPath)
157
+ throw new Error('SCRYPTED_PLUGIN_VOLUME env variable not set?');
158
+ const ret = path_1.default.join(filesPath, 'files');
159
+ mkdirp_1.default.sync(ret);
160
+ return ret;
161
+ }
152
162
  getConverters() {
153
163
  const converters = Object.entries(this.getSystemState())
154
164
  .filter(([id, state]) => state[types_1.ScryptedInterfaceProperty.interfaces]?.value?.includes(types_1.ScryptedInterface.BufferConverter))
@@ -159,13 +169,17 @@ class MediaManagerBase {
159
169
  ensureMediaObjectRemote(mediaObject) {
160
170
  if (typeof mediaObject === 'string') {
161
171
  const mime = mime_1.default.lookup(mediaObject);
162
- return this.createMediaObject(mediaObject, mime);
172
+ return this.createMediaObjectRemote(mediaObject, mime);
163
173
  }
164
174
  return mediaObject;
165
175
  }
176
+ async convertMediaObject(mediaObject, toMimeType) {
177
+ const converted = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
178
+ return converted.data;
179
+ }
166
180
  async convertMediaObjectToInsecureLocalUrl(mediaObject, toMimeType) {
167
181
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
168
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
182
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
169
183
  const url = await this.convert(this.getConverters(), converted, types_1.ScryptedMimeTypes.InsecureLocalUrl);
170
184
  return url.data.toString();
171
185
  }
@@ -175,20 +189,20 @@ class MediaManagerBase {
175
189
  }
176
190
  async convertMediaObjectToLocalUrl(mediaObject, toMimeType) {
177
191
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
178
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
192
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
179
193
  const url = await this.convert(this.getConverters(), converted, types_1.ScryptedMimeTypes.LocalUrl);
180
194
  return url.data.toString();
181
195
  }
182
196
  async convertMediaObjectToUrl(mediaObject, toMimeType) {
183
197
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
184
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
198
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
185
199
  const url = await this.convert(this.getConverters(), converted, types_1.ScryptedMimeTypes.Url);
186
200
  return url.data.toString();
187
201
  }
188
- createFFmpegMediaObject(ffMpegInput) {
189
- return this.createMediaObject(Buffer.from(JSON.stringify(ffMpegInput)), types_1.ScryptedMimeTypes.FFmpegInput);
202
+ async createFFmpegMediaObject(ffMpegInput) {
203
+ return this.createMediaObjectRemote(Buffer.from(JSON.stringify(ffMpegInput)), types_1.ScryptedMimeTypes.FFmpegInput);
190
204
  }
191
- createMediaObject(data, mimeType) {
205
+ createMediaObjectRemote(data, mimeType) {
192
206
  if (typeof data === 'string')
193
207
  throw new Error('string is not a valid type. if you intended to send a url, use createMediaObjectFromUrl.');
194
208
  if (!mimeType)
@@ -208,6 +222,9 @@ class MediaManagerBase {
208
222
  }
209
223
  return new MediaObjectImpl();
210
224
  }
225
+ async createMediaObject(data, mimeType) {
226
+ return this.createMediaObjectRemote(data, mimeType);
227
+ }
211
228
  async createMediaObjectFromUrl(data) {
212
229
  const url = new URL(data);
213
230
  const scheme = url.protocol.slice(0, -1);
@@ -310,6 +327,14 @@ class MediaManagerBase {
310
327
  }
311
328
  throw new Error(`no ${types_1.ScryptedInterface.BufferConverter} exists for scheme: ${scheme}`);
312
329
  }
330
+ if (converter.toMimeType === types_1.ScryptedMimeTypes.MediaObject) {
331
+ const mo = await converter.convert(value, valueMime.essence, toMimeType);
332
+ const found = await this.convertMediaObjectToBuffer(mo, toMimeType);
333
+ return {
334
+ data: found,
335
+ mimeType: mo.mimeType,
336
+ };
337
+ }
313
338
  value = await converter.convert(value, valueMime.essence, targetMimeType);
314
339
  valueMime = new whatwg_mimetype_1.default(targetMimeType);
315
340
  }
@@ -1 +1 @@
1
- {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/plugin/media.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"media.js","sourceRoot":"","sources":["../../src/plugin/media.ts"],"names":[],"mappings":"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"}
@@ -86,14 +86,14 @@ class EndpointManagerImpl {
86
86
  }
87
87
  async getPublicCloudEndpoint(nativeId) {
88
88
  const local = await this.getPublicLocalEndpoint(nativeId);
89
- const mo = this.mediaManager.createMediaObject(Buffer.from(local), types_1.ScryptedMimeTypes.LocalUrl);
89
+ const mo = await this.mediaManager.createMediaObject(Buffer.from(local), types_1.ScryptedMimeTypes.LocalUrl);
90
90
  return this.mediaManager.convertMediaObjectToUrl(mo, types_1.ScryptedMimeTypes.LocalUrl);
91
91
  }
92
92
  async getPublicLocalEndpoint(nativeId) {
93
93
  return `https://${await this.getUrlSafeIp()}:${await this.api.getComponent('SCRYPTED_SECURE_PORT')}/endpoint/${this.getEndpoint(nativeId)}/public/`;
94
94
  }
95
95
  async getPublicPushEndpoint(nativeId) {
96
- const mo = this.mediaManager.createMediaObject(Buffer.from(this.getEndpoint(nativeId)), types_1.ScryptedMimeTypes.PushEndpoint);
96
+ const mo = await this.mediaManager.createMediaObject(Buffer.from(this.getEndpoint(nativeId)), types_1.ScryptedMimeTypes.PushEndpoint);
97
97
  return this.mediaManager.convertMediaObjectToUrl(mo, types_1.ScryptedMimeTypes.PushEndpoint);
98
98
  }
99
99
  async deliverPush(endpoint, request) {
@@ -137,6 +137,8 @@ class DeviceManagerImpl {
137
137
  getMixinConsole;
138
138
  api;
139
139
  nativeIds = new Map();
140
+ deviceStorage = new Map();
141
+ mixinStorage = new Map();
140
142
  constructor(systemManager, getDeviceConsole, getMixinConsole) {
141
143
  this.systemManager = systemManager;
142
144
  this.getDeviceConsole = getDeviceConsole;
@@ -153,10 +155,25 @@ class DeviceManagerImpl {
153
155
  return new Proxy(handler, handler);
154
156
  }
155
157
  getDeviceStorage(nativeId) {
156
- return new StorageImpl(this, nativeId);
158
+ let ret = this.deviceStorage.get(nativeId);
159
+ if (!ret) {
160
+ ret = new StorageImpl(this, nativeId);
161
+ this.deviceStorage.set(nativeId, ret);
162
+ }
163
+ return ret;
157
164
  }
158
165
  getMixinStorage(id, nativeId) {
159
- return new StorageImpl(this, nativeId, `mixin:${id}:`);
166
+ let ms = this.mixinStorage.get(nativeId);
167
+ if (!ms) {
168
+ ms = new Map();
169
+ this.mixinStorage.set(nativeId, ms);
170
+ }
171
+ let ret = ms.get(id);
172
+ if (!ret) {
173
+ ret = new StorageImpl(this, nativeId, `mixin:${id}:`);
174
+ ms.set(id, ret);
175
+ }
176
+ return ret;
160
177
  }
161
178
  async onMixinEvent(id, nativeId, eventInterface, eventData) {
162
179
  return this.api.onMixinEvent(id, nativeId, eventInterface, eventData);
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-remote.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-remote.js","sourceRoot":"","sources":["../../src/plugin/plugin-remote.ts"],"names":[],"mappings":"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"}
package/dist/runtime.js CHANGED
@@ -31,6 +31,7 @@ const rimraf_1 = __importDefault(require("rimraf"));
31
31
  const plugin_volume_1 = require("./plugin/plugin-volume");
32
32
  const plugin_http_1 = require("./plugin/plugin-http");
33
33
  const adm_zip_1 = __importDefault(require("adm-zip"));
34
+ const path_1 = __importDefault(require("path"));
34
35
  const MIN_SCRYPTED_CORE_VERSION = 'v0.0.217';
35
36
  const PLUGIN_DEVICE_STATE_VERSION = 2;
36
37
  class ScryptedRuntime extends plugin_http_1.PluginHttp {
@@ -300,7 +301,8 @@ class ScryptedRuntime extends plugin_http_1.PluginHttp {
300
301
  console.log(ws);
301
302
  });
302
303
  }
303
- handler.onRequest(endpointRequest, (0, http_interfaces_1.createResponseInterface)(res, pluginHost.unzippedPath));
304
+ const filesPath = path_1.default.join((0, plugin_volume_1.getPluginVolume)(pluginHost.pluginId), 'files');
305
+ handler.onRequest(endpointRequest, (0, http_interfaces_1.createResponseInterface)(res, pluginHost.unzippedPath, filesPath));
304
306
  }
305
307
  killPlugin(pluginId) {
306
308
  const existing = this.plugins[pluginId];
@@ -1 +1 @@
1
- {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime.js","sourceRoot":"","sources":["../src/runtime.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "@scrypted/server",
3
- "version": "0.0.155",
3
+ "version": "0.0.156",
4
4
  "description": "",
5
5
  "dependencies": {
6
6
  "@mapbox/node-pre-gyp": "^1.0.8",
7
7
  "@scrypted/ffmpeg": "^1.0.10",
8
- "@scrypted/types": "^0.0.11",
8
+ "@scrypted/types": "^0.0.19",
9
9
  "adm-zip": "^0.5.3",
10
10
  "axios": "^0.21.1",
11
11
  "body-parser": "^1.19.0",
@@ -4,9 +4,9 @@ import { RpcPeer } from "./rpc";
4
4
  import { join as pathJoin } from 'path';
5
5
  import fs from 'fs';
6
6
 
7
- const mime = require('mime/lite');
7
+ const mime = require('mime/lite');
8
8
 
9
- export function createResponseInterface(res: Response, unzippedDir: string): HttpResponse {
9
+ export function createResponseInterface(res: Response, unzippedDir: string, filesPath: string): HttpResponse {
10
10
  class HttpResponseImpl implements HttpResponse {
11
11
  [RpcPeer.PROPERTY_PROXY_ONEWAY_METHODS] = [
12
12
  'send',
@@ -47,11 +47,14 @@ export function createResponseInterface(res: Response, unzippedDir: string): Htt
47
47
  }
48
48
  }
49
49
 
50
- const filePath = pathJoin(unzippedDir, 'fs', path);
50
+ let filePath = pathJoin(unzippedDir, 'fs', path);
51
51
  if (!fs.existsSync(filePath)) {
52
- res.status(404);
53
- res.end();
54
- return;
52
+ filePath = pathJoin(filesPath, path);
53
+ if (!fs.existsSync(filePath)) {
54
+ res.status(404);
55
+ res.end();
56
+ return;
57
+ }
55
58
  }
56
59
  res.sendFile(filePath);
57
60
  }
@@ -1,4 +1,4 @@
1
- import { ScryptedInterfaceProperty, SystemDeviceState, MediaStreamUrl, VideoCamera, Camera, BufferConverter, FFMpegInput, MediaManager, MediaObject, ScryptedDevice, ScryptedInterface, ScryptedMimeTypes, SystemManager } from "@scrypted/types";
1
+ import { ScryptedInterfaceProperty, SystemDeviceState, MediaStreamUrl, BufferConverter, FFMpegInput, MediaManager, MediaObject, ScryptedInterface, ScryptedMimeTypes, SystemManager } from "@scrypted/types";
2
2
  import { MediaObjectRemote } from "./plugin-api";
3
3
  import mimeType from 'mime'
4
4
  import child_process from 'child_process';
@@ -7,12 +7,13 @@ import fs from 'fs';
7
7
  import tmp from 'tmp';
8
8
  import os from 'os';
9
9
  import { getInstalledFfmpeg } from '@scrypted/ffmpeg'
10
- import { ffmpegLogInitialOutput } from "../media-helpers";
11
10
  import Graph from 'node-dijkstra';
12
11
  import MimeType from 'whatwg-mimetype';
13
12
  import axios from 'axios';
14
13
  import https from 'https';
15
14
  import rimraf from "rimraf";
15
+ import mkdirp from "mkdirp";
16
+ import path from 'path';
16
17
 
17
18
  function typeMatches(target: string, candidate: string): boolean {
18
19
  // candidate will accept anything
@@ -171,6 +172,15 @@ export abstract class MediaManagerBase implements MediaManager {
171
172
  return getInstalledFfmpeg() || defaultPath;
172
173
  }
173
174
 
175
+ async getFilesPath(): Promise<string> {
176
+ const filesPath = process.env.SCRYPTED_PLUGIN_VOLUME;
177
+ if (!filesPath)
178
+ throw new Error('SCRYPTED_PLUGIN_VOLUME env variable not set?');
179
+ const ret = path.join(filesPath, 'files');
180
+ mkdirp.sync(ret);
181
+ return ret;
182
+ }
183
+
174
184
  getConverters(): BufferConverter[] {
175
185
  const converters = Object.entries(this.getSystemState())
176
186
  .filter(([id, state]) => state[ScryptedInterfaceProperty.interfaces]?.value?.includes(ScryptedInterface.BufferConverter))
@@ -182,14 +192,19 @@ export abstract class MediaManagerBase implements MediaManager {
182
192
  ensureMediaObjectRemote(mediaObject: string | MediaObject): MediaObjectRemote {
183
193
  if (typeof mediaObject === 'string') {
184
194
  const mime = mimeType.lookup(mediaObject);
185
- return this.createMediaObject(mediaObject, mime);
195
+ return this.createMediaObjectRemote(mediaObject, mime);
186
196
  }
187
197
  return mediaObject as MediaObjectRemote;
188
198
  }
189
199
 
200
+ async convertMediaObject<T>(mediaObject: MediaObject, toMimeType: string): Promise<T> {
201
+ const converted = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
202
+ return converted.data;
203
+ }
204
+
190
205
  async convertMediaObjectToInsecureLocalUrl(mediaObject: string | MediaObject, toMimeType: string): Promise<string> {
191
206
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
192
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
207
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
193
208
  const url = await this.convert(this.getConverters(), converted, ScryptedMimeTypes.InsecureLocalUrl);
194
209
  return url.data.toString();
195
210
  }
@@ -200,22 +215,22 @@ export abstract class MediaManagerBase implements MediaManager {
200
215
  }
201
216
  async convertMediaObjectToLocalUrl(mediaObject: string | MediaObject, toMimeType: string): Promise<string> {
202
217
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
203
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
218
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
204
219
  const url = await this.convert(this.getConverters(), converted, ScryptedMimeTypes.LocalUrl);
205
220
  return url.data.toString();
206
221
  }
207
222
  async convertMediaObjectToUrl(mediaObject: string | MediaObject, toMimeType: string): Promise<string> {
208
223
  const intermediate = await this.convert(this.getConverters(), this.ensureMediaObjectRemote(mediaObject), toMimeType);
209
- const converted = this.createMediaObject(intermediate.data, intermediate.mimeType);
224
+ const converted = this.createMediaObjectRemote(intermediate.data, intermediate.mimeType);
210
225
  const url = await this.convert(this.getConverters(), converted, ScryptedMimeTypes.Url);
211
226
  return url.data.toString();
212
227
  }
213
228
 
214
- createFFmpegMediaObject(ffMpegInput: FFMpegInput): MediaObject {
215
- return this.createMediaObject(Buffer.from(JSON.stringify(ffMpegInput)), ScryptedMimeTypes.FFmpegInput);
229
+ async createFFmpegMediaObject(ffMpegInput: FFMpegInput): Promise<MediaObject> {
230
+ return this.createMediaObjectRemote(Buffer.from(JSON.stringify(ffMpegInput)), ScryptedMimeTypes.FFmpegInput);
216
231
  }
217
232
 
218
- createMediaObject(data: any | Buffer | Promise<string | Buffer>, mimeType: string): MediaObjectRemote {
233
+ createMediaObjectRemote(data: any | Buffer | Promise<string | Buffer>, mimeType: string): MediaObjectRemote {
219
234
  if (typeof data === 'string')
220
235
  throw new Error('string is not a valid type. if you intended to send a url, use createMediaObjectFromUrl.');
221
236
  if (!mimeType)
@@ -239,6 +254,10 @@ export abstract class MediaManagerBase implements MediaManager {
239
254
  return new MediaObjectImpl();
240
255
  }
241
256
 
257
+ async createMediaObject(data: any, mimeType: string): Promise<MediaObject> {
258
+ return this.createMediaObjectRemote(data, mimeType);
259
+ }
260
+
242
261
  async createMediaObjectFromUrl(data: string): Promise<MediaObject> {
243
262
  const url = new URL(data);
244
263
  const scheme = url.protocol.slice(0, -1);
@@ -257,7 +276,7 @@ export abstract class MediaManagerBase implements MediaManager {
257
276
  return new MediaObjectImpl();
258
277
  }
259
278
 
260
- async convert(converters: BufferConverter[], mediaObject: MediaObjectRemote, toMimeType: string): Promise<{ data: Buffer | string, mimeType: string }> {
279
+ async convert(converters: BufferConverter[], mediaObject: MediaObjectRemote, toMimeType: string): Promise<{ data: Buffer | string | any, mimeType: string }> {
261
280
  // console.log('converting', mediaObject.mimeType, toMimeType);
262
281
  const mediaMime = new MimeType(mediaObject.mimeType);
263
282
  const outputMime = new MimeType(toMimeType);
@@ -352,6 +371,16 @@ export abstract class MediaManagerBase implements MediaManager {
352
371
  }
353
372
  throw new Error(`no ${ScryptedInterface.BufferConverter} exists for scheme: ${scheme}`);
354
373
  }
374
+
375
+ if (converter.toMimeType === ScryptedMimeTypes.MediaObject) {
376
+ const mo = await converter.convert(value, valueMime.essence, toMimeType) as MediaObject;
377
+ const found = await this.convertMediaObjectToBuffer(mo, toMimeType);
378
+ return {
379
+ data: found,
380
+ mimeType: mo.mimeType,
381
+ };
382
+ }
383
+
355
384
  value = await converter.convert(value, valueMime.essence, targetMimeType) as string | Buffer;
356
385
  valueMime = new MimeType(targetMimeType);
357
386
  }
@@ -88,14 +88,14 @@ class EndpointManagerImpl implements EndpointManager {
88
88
  }
89
89
  async getPublicCloudEndpoint(nativeId?: ScryptedNativeId): Promise<string> {
90
90
  const local = await this.getPublicLocalEndpoint(nativeId);
91
- const mo = this.mediaManager.createMediaObject(Buffer.from(local), ScryptedMimeTypes.LocalUrl);
91
+ const mo = await this.mediaManager.createMediaObject(Buffer.from(local), ScryptedMimeTypes.LocalUrl);
92
92
  return this.mediaManager.convertMediaObjectToUrl(mo, ScryptedMimeTypes.LocalUrl);
93
93
  }
94
94
  async getPublicLocalEndpoint(nativeId?: ScryptedNativeId): Promise<string> {
95
95
  return `https://${await this.getUrlSafeIp()}:${await this.api.getComponent('SCRYPTED_SECURE_PORT')}/endpoint/${this.getEndpoint(nativeId)}/public/`;
96
96
  }
97
97
  async getPublicPushEndpoint(nativeId?: ScryptedNativeId): Promise<string> {
98
- const mo = this.mediaManager.createMediaObject(Buffer.from(this.getEndpoint(nativeId)), ScryptedMimeTypes.PushEndpoint);
98
+ const mo = await this.mediaManager.createMediaObject(Buffer.from(this.getEndpoint(nativeId)), ScryptedMimeTypes.PushEndpoint);
99
99
  return this.mediaManager.convertMediaObjectToUrl(mo, ScryptedMimeTypes.PushEndpoint);
100
100
  }
101
101
  async deliverPush(endpoint: string, request: HttpRequest) {
@@ -140,6 +140,8 @@ interface DeviceManagerDevice {
140
140
  class DeviceManagerImpl implements DeviceManager {
141
141
  api: PluginAPI;
142
142
  nativeIds = new Map<string, DeviceManagerDevice>();
143
+ deviceStorage = new Map<string, StorageImpl>();
144
+ mixinStorage = new Map<string, Map<string, StorageImpl>>();
143
145
 
144
146
  constructor(public systemManager: SystemManagerImpl,
145
147
  public getDeviceConsole?: (nativeId?: ScryptedNativeId) => Console,
@@ -161,10 +163,25 @@ class DeviceManagerImpl implements DeviceManager {
161
163
  }
162
164
 
163
165
  getDeviceStorage(nativeId?: any): StorageImpl {
164
- return new StorageImpl(this, nativeId);
166
+ let ret = this.deviceStorage.get(nativeId);
167
+ if (!ret) {
168
+ ret = new StorageImpl(this, nativeId);
169
+ this.deviceStorage.set(nativeId, ret);
170
+ }
171
+ return ret;
165
172
  }
166
173
  getMixinStorage(id: string, nativeId?: ScryptedNativeId) {
167
- return new StorageImpl(this, nativeId, `mixin:${id}:`);
174
+ let ms = this.mixinStorage.get(nativeId);
175
+ if (!ms) {
176
+ ms = new Map();
177
+ this.mixinStorage.set(nativeId, ms);
178
+ }
179
+ let ret = ms.get(id);
180
+ if (!ret) {
181
+ ret = new StorageImpl(this, nativeId, `mixin:${id}:`);
182
+ ms.set(id, ret);
183
+ }
184
+ return ret;
168
185
  }
169
186
  async onMixinEvent(id: string, nativeId: ScryptedNativeId, eventInterface: string, eventData: any) {
170
187
  return this.api.onMixinEvent(id, nativeId, eventInterface, eventData);
package/src/runtime.ts CHANGED
@@ -31,6 +31,7 @@ import rimraf from 'rimraf';
31
31
  import { getPluginVolume } from './plugin/plugin-volume';
32
32
  import { PluginHttp } from './plugin/plugin-http';
33
33
  import AdmZip from 'adm-zip';
34
+ import path from 'path';
34
35
 
35
36
  interface DeviceProxyPair {
36
37
  handler: PluginDeviceProxyHandler;
@@ -353,7 +354,9 @@ export class ScryptedRuntime extends PluginHttp<HttpPluginData> {
353
354
  console.log(ws);
354
355
  });
355
356
  }
356
- handler.onRequest(endpointRequest, createResponseInterface(res, pluginHost.unzippedPath));
357
+
358
+ const filesPath = path.join(getPluginVolume(pluginHost.pluginId), 'files');
359
+ handler.onRequest(endpointRequest, createResponseInterface(res, pluginHost.unzippedPath, filesPath));
357
360
  }
358
361
 
359
362
  killPlugin(pluginId: string) {