@scrypted/server 0.0.106 → 0.0.110
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.
- package/dist/event-registry.js +2 -2
- package/dist/event-registry.js.map +1 -1
- package/dist/http-interfaces.js +2 -2
- package/dist/http-interfaces.js.map +1 -1
- package/dist/plugin/listen-zero.js +13 -1
- package/dist/plugin/listen-zero.js.map +1 -1
- package/dist/plugin/plugin-api.js +2 -2
- package/dist/plugin/plugin-api.js.map +1 -1
- package/dist/plugin/plugin-device.js +2 -1
- package/dist/plugin/plugin-device.js.map +1 -1
- package/dist/plugin/plugin-host-api.js +8 -7
- package/dist/plugin/plugin-host-api.js.map +1 -1
- package/dist/plugin/plugin-host.js +36 -87
- package/dist/plugin/plugin-host.js.map +1 -1
- package/dist/plugin/plugin-http.js +100 -0
- package/dist/plugin/plugin-http.js.map +1 -0
- package/dist/plugin/plugin-lazy-remote.js +73 -0
- package/dist/plugin/plugin-lazy-remote.js.map +1 -0
- package/dist/plugin/plugin-npm-dependencies.js +16 -16
- package/dist/plugin/plugin-npm-dependencies.js.map +1 -1
- package/dist/plugin/plugin-remote-websocket.js +40 -34
- package/dist/plugin/plugin-remote-websocket.js.map +1 -1
- package/dist/plugin/plugin-remote.js +35 -26
- package/dist/plugin/plugin-remote.js.map +1 -1
- package/dist/plugin/system.js +11 -3
- package/dist/plugin/system.js.map +1 -1
- package/dist/rpc.js +57 -27
- package/dist/rpc.js.map +1 -1
- package/dist/runtime.js +45 -111
- package/dist/runtime.js.map +1 -1
- package/dist/scrypted-main.js +3 -0
- package/dist/scrypted-main.js.map +1 -1
- package/dist/services/plugin.js +2 -2
- package/dist/services/plugin.js.map +1 -1
- package/dist/state.js +2 -8
- package/dist/state.js.map +1 -1
- package/package.json +2 -2
- package/python/plugin-remote.py +4 -4
- package/python/rpc.py +68 -26
- package/src/event-registry.ts +5 -5
- package/src/http-interfaces.ts +3 -3
- package/src/plugin/listen-zero.ts +13 -0
- package/src/plugin/plugin-api.ts +5 -5
- package/src/plugin/plugin-device.ts +3 -2
- package/src/plugin/plugin-host-api.ts +9 -9
- package/src/plugin/plugin-host.ts +40 -95
- package/src/plugin/plugin-http.ts +117 -0
- package/src/plugin/plugin-lazy-remote.ts +70 -0
- package/src/plugin/plugin-npm-dependencies.ts +19 -18
- package/src/plugin/plugin-remote-websocket.ts +55 -60
- package/src/plugin/plugin-remote.ts +45 -38
- package/src/plugin/system.ts +15 -6
- package/src/rpc.ts +66 -26
- package/src/runtime.ts +55 -128
- package/src/scrypted-main.ts +4 -0
- package/src/services/plugin.ts +2 -2
- package/src/state.ts +4 -12
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrypted-main.js","sourceRoot":"","sources":["../src/scrypted-main.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scrypted-main.js","sourceRoot":"","sources":["../src/scrypted-main.ts"],"names":[],"mappings":";;;;;AAAA,gDAAwB;AACxB,sDAA8B;AAC9B,gDAAwB;AACxB,kDAA0B;AAC1B,sDAA8B;AAC9B,8DAAqC;AACrC,8CAAsB;AACtB,sDAAyD;AACzD,uCAA4C;AAC5C,oDAA4B;AAC5B,yCAA4D;AAC5D,uDAAsG;AACtG,oDAA4B;AAC5B,kEAAyC;AACzC,kDAA0B;AAC1B,gEAA8B;AAC9B,+BAAuC;AACvC,4CAAoB;AACpB,oDAA4B;AAC5B,2DAAwE;AACxE,0DAAiC;AACjC,oDAA4B;AAC5B,0CAAuC;AACvC,2CAA2C;AAC3C,mCAAgC;AAChC,iCAA8F;AAC9F,wDAAoD;AAEpD,IAAI,CAAC,gBAAM,CAAC,GAAG,CAAC,iBAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE;IACxC,MAAM,IAAI,KAAK,CAAC,kEAAkE,CAAC,CAAA;CACtF;AAED,iBAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE;IACrC,IAAI,KAAK,EAAE,WAAW,KAAK,oBAAc,IAAI,KAAK,EAAE,WAAW,KAAK,0BAAW,EAAE;QAC7E,MAAM,KAAK,CAAC;KACf;IACD,OAAO,CAAC,IAAI,CAAC,mCAAmC,EAAE,KAAK,CAAC,CAAC;AAC7D,CAAC,CAAC,CAAC;AAEH,SAAS,gBAAgB,CAAC,GAAW,EAAE,IAAY,EAAE,MAAW;IAC5D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAE,CAAC;IACrB,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAQ,EAAE,EAAE;QAC5B,OAAO,CAAC,KAAK,CAAC,4BAA4B,IAAI,qBAAqB,CAAC,CAAC;QACrE,OAAO,CAAC,KAAK,CAAC,gCAAgC,GAAG,sBAAsB,CAAC,CAAC;QACzE,MAAM,CAAC,CAAC;IACZ,CAAC,CAAC,CAAA;AACN,CAAC;AAED,IAAI,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,OAAO,EAAE;IAC7B,IAAA,+BAAiB,GAAE,CAAC;CACvB;KACI;IACD,IAAA,4BAAuB,EAAC;QACpB,WAAW,EAAE,MAAM;KACtB,CAAC,CAAC;IAEH,IAAI,iBAAiB,GAAW,SAAS,CAAC;IAE1C,KAAK,UAAU,SAAS;QACpB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACnC,MAAM,MAAM,GAAG,aAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;YAC9C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;YAC5B,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;QACjD,CAAC,CAAC,CAAA;IACN,CAAC;IAED,MAAM,WAAW,GAAG,aAAG,CAAC,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;QAClD,IAAI,CAAC,iBAAiB,EAAE;YACpB,MAAM,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO;SACV;QAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;YACzB,IAAI;gBACA,MAAM,MAAM,GAAG,MAAM,SAAS,EAAE,CAAC;gBACjC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjC,MAAM,OAAO,GAAG,GAAG,EAAE;oBACjB,MAAM,CAAC,OAAO,EAAE,CAAC;oBACjB,MAAM,CAAC,OAAO,EAAE,CAAC;gBACrB,CAAC,CAAA;gBACD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5B,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;gBAC5B,OAAO;aACV;YACD,OAAO,CAAC,EAAE;gBACN,MAAM,IAAA,aAAK,EAAC,GAAG,CAAC,CAAC;aACpB;SACJ;QACD,OAAO,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;QAC3C,MAAM,CAAC,OAAO,EAAE,CAAC;IACrB,CAAC,CAAC,CAAA;IACF,gBAAgB,CAAC,qBAAqB,EAAE,qCAAmB,EAAE,WAAW,CAAC,CAAC;IAE1E,MAAM,GAAG,GAAG,IAAA,iBAAO,GAAE,CAAC;IAEtB,0CAA0C;IAC1C,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,UAAU,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAQ,CAAC,CAAA;IAE1D,yBAAyB;IACzB,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,IAAI,EAAE,CAAC,CAAA;IAE1B,wCAAwC;IACxC,GAAG,CAAC,GAAG,CAAC,qBAAU,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,KAAK,EAAE,SAAS,EAAE,CAAQ,CAAC,CAAA;IAE7E,KAAK,UAAU,KAAK;QAChB,MAAM,SAAS,GAAG,iBAAO,CAAC,GAAG,CAAC,eAAe,IAAI,cAAI,CAAC,IAAI,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAC;QACpF,gBAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,cAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QACnD,MAAM,SAAS,GAAG,cAAI,CAAC,IAAI,CAAC,iBAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC;QAC1D,IAAI,YAAE,CAAC,UAAU,CAAC,SAAS,CAAC,IAAI,CAAC,YAAE,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE;YACpD,gBAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACvB,YAAE,CAAC,UAAU,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;SACpC;QACD,MAAM,EAAE,GAAG,IAAA,eAAK,EAAC,MAAM,CAAC,CAAC;QACzB,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;QAEhB,IAAI,iBAAO,CAAC,GAAG,CAAC,wBAAwB,KAAK,MAAM,EAAE;YACjD,MAAM,EAAE,CAAC,SAAS,CAAC,uBAAY,CAAC,CAAC;SACpC;QAED,IAAI,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,mBAAQ,EAAE,aAAa,CAAa,CAAC;QAEvE,IAAI,WAAW,EAAE,KAAK,EAAE,OAAO,KAAK,8CAAuC,EAAE;YACzE,MAAM,IAAI,GAAG,IAAA,kCAA2B,GAAE,CAAC;YAE3C,WAAW,GAAG,IAAI,mBAAQ,EAAE,CAAC;YAC7B,WAAW,CAAC,GAAG,GAAG,aAAa,CAAC;YAChC,WAAW,CAAC,KAAK,GAAG,IAAI,CAAC;YACzB,WAAW,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SAC9C;QAGD,MAAM,SAAS,GAAG,mBAAQ,CAAC,KAAK,CAAC;YAC7B,KAAK,EAAE,UAAU;SACpB,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACtC,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAY,EAAE,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,EAAE;gBACP,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAChB,OAAO;aACV;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;YACpC,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAE1C,QAAQ,CAAC,GAAG,KAAK,IAAI,CAAC,YAAY,IAAI,QAAQ,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,WAAW,CAAC,KAAK,CAAC;QAE/B,MAAM,kBAAkB,GAAG,iBAAO,CAAC,GAAG,CAAC,2BAA2B;YAC9D,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAE,CAAC,YAAY,CAAC,iBAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC,QAAQ,EAAE,CAAC;YACjF,CAAC,CAAC,EAAE,CAAC;QAET,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,CAAC;YAC3C,GAAG,EAAE,IAAI,CAAC,UAAU;YACpB,IAAI,EAAE,IAAI,CAAC,WAAW;SACzB,EAAE,kBAAkB,CAAC,CAAC;QACvB,MAAM,MAAM,GAAG,eAAK,CAAC,YAAY,CAAC,wBAAwB,EAAE,GAAG,CAAC,CAAC;QACjE,gBAAgB,CAAC,sBAAsB,EAAE,sCAAoB,EAAE,MAAM,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,cAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QACxC,gBAAgB,CAAC,wBAAwB,EAAE,wCAAsB,EAAE,QAAQ,CAAC,CAAC;QAE7E,sDAAsD;QACtD,IAAI,oBAAoB,GAAG,KAAK,CAAA;QAChC,MAAM,YAAY,GAAG,eAAK,CAAC,YAAY,CAAC,wBAAwB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC3E,IAAI,CAAC,oBAAoB,EAAE;gBACvB,MAAM,IAAI,GAAG,QAAQ,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,CAAC;gBACzD,IAAI,IAAI,EAAE;oBACN,MAAM,MAAM,GAAG,QAAQ,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC;oBAC9C,oBAAoB,GAAG,IAAI,CAAC;oBAC5B,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,WAAW,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBAC7D,MAAM,MAAM,GAAG,WAAW,IAAI,IAAI,sCAAoB,EAAE,CAAC;oBACzD,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,kFAAkF,MAAM,EAAE,CAAC,CAAC;iBAC/G;aACJ;YACD,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAClB,CAAC,CAAC,CAAC;QACH,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC1B,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAC1B,cAAc;QAClB,CAAC,CAAC,CAAC;QAEH,sDAAsD;QACtD,GAAG,CAAC,GAAG,CAAC,IAAA,uBAAY,EAAC,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAEjH,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAClC,+BAA+B;YAC/B,0EAA0E;YAC1E,kCAAkC;YAElC,MAAM,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,aAAa,CAAC;YAC/C,IAAI,gBAAgB,EAAE;gBAClB,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACnD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;gBACnC,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC9C,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE;oBACnC,OAAO,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;oBAC9B,OAAO,IAAI,EAAE,CAAC;iBACjB;gBAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAY,EAAE,QAAQ,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,EAAE;oBACP,OAAO,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;oBAChC,OAAO,IAAI,EAAE,CAAC;iBACjB;gBAED,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;aAClC;YACD,IAAI,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,qCAAqC;QACrC,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3C,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,EAAE,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE;gBAC3H,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;oBACzC,GAAG,CAAC,MAAM,CAAC,QAAQ,GAAG,GAAG,CAAC,IAAI,CAAC;oBAC/B,IAAI,EAAE,CAAC;gBACX,CAAC,CAAC,CAAC;gBAEH,2CAA2C;gBAC3C,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBACvB,OAAO;aACV;YACD,IAAI,EAAE,CAAC;QACX,CAAC,CAAC,CAAA;QAEF,4DAA4D;QAC5D,GAAG,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAE;YAC3C,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE;gBACtB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gBAC3B,OAAO;aACV;YACD,IAAI,EAAE,CAAC;QACX,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,iDAAiD,sCAAoB,GAAG,CAAC,CAAC;QACtF,KAAK,MAAM,OAAO,IAAI,IAAA,wBAAY,GAAE,EAAE;YAClC,OAAO,CAAC,GAAG,CAAC,uCAAuC,OAAO,IAAI,sCAAoB,GAAG,CAAC,CAAC;SAC1F;QACD,OAAO,CAAC,GAAG,CAAC,oBAAoB,MAAM,IAAI,WAAI,EAAE,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACjE,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAA;QACrE,OAAO,CAAC,GAAG,CAAC,uDAAuD,CAAC,CAAA;QACpE,OAAO,CAAC,GAAG,CAAC,sDAAsD,CAAC,CAAA;QACnE,OAAO,CAAC,GAAG,CAAC,2DAA2D,CAAC,CAAA;QACxE,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,wCAAsB,CAAC,CAAC;QAC5E,OAAO,CAAC,GAAG,CAAC,kDAAkD,CAAC,CAAA;QAC/D,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;QAC3C,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAA;QAC7C,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAA;QACjF,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;QACtF,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAA;QAC5E,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;QACvE,MAAM,QAAQ,GAAG,IAAI,yBAAe,CAAC,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;QAChE,MAAM,QAAQ,CAAC,KAAK,EAAE,CAAC;QAEvB,GAAG,CAAC,GAAG,CAAC,CAAC,gCAAgC,EAAE,wCAAwC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACrG,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YAClC,IAAI,QAAQ,GAAG,GAAG,CAAC;YACnB,IAAI,KAAK;gBACL,QAAQ,GAAG,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;YACvC,IAAI;gBACA,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAK,EAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;gBACvE,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC3B;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,GAAG,EAAE,CAAC;aACb;QACL,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,CAAC,oCAAoC,EAAE,4CAA4C,EAAE,iDAAiD,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACjK,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC;YACvC,IAAI,QAAQ,GAAG,GAAG,CAAC;YACnB,IAAI,KAAK;gBACL,QAAQ,GAAG,IAAI,KAAK,IAAI,QAAQ,EAAE,CAAC;YACvC,IAAI;gBACA,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;gBACxD,GAAG,CAAC,IAAI,CAAC;oBACL,EAAE,EAAE,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,GAAG;iBACrD,CAAC,CAAC;aACN;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,GAAG,EAAE,CAAC;aACb;QACL,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,8BAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACvD,IAAI;gBACA,MAAM,KAAK,GAAG,sBAAE,CAAC,SAAS,CAAC;oBACvB,IAAI,EAAE,GAAG,CAAC,KAAK,CAAC,IAAI;iBACvB,CAAC,CAAA;gBACF,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAK,EAAC,0CAA0C,KAAK,EAAE,CAAC,CAAC;gBAChF,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;aAC3B;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,GAAG,EAAE,CAAC;aACb;QACL,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACvD,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAoB,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAM,EAAE,UAAU,CAAC,IAAI,IAAI,iBAAM,EAAE,CAAC;YAEnE,MAAM,CAAC,GAAG,GAAG,UAAU,CAAC;YACxB,MAAM,CAAC,WAAW,GAAG,GAAG,CAAC,IAAI,CAAC;YAE9B,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAExB,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,8BAA8B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACxD,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAoB,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAM,EAAE,UAAU,CAAC,CAAC;YAEnD,IAAI,CAAC,MAAM,EAAE;gBACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,eAAe,UAAU,YAAY,CAAC,CAAC;gBAChD,OAAO;aACV;YAED,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACzC,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAExB,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,SAAS,CAAC;YACtD,IAAI,CAAC,QAAQ;gBACT,MAAM,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;YAEzC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACnB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACvD,MAAM,UAAU,GAAG,GAAG,CAAC,KAAK,CAAC,UAAoB,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,iBAAM,EAAE,UAAU,CAAC,CAAC;YAEnD,IAAI,CAAC,MAAM,EAAE;gBACT,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,eAAe,UAAU,YAAY,CAAC,CAAC;gBAChD,OAAO;aACV;YAED,MAAM,SAAS,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;gBACpD,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;gBAClF,WAAW,CAAC,EAAE,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC1C,CAAC,CAAC,CAAC;YAEH,iBAAiB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC;YAC9D,IAAI;gBACA,MAAM,QAAQ,CAAC,aAAa,CAAC,MAAM,EAAE;oBACjC,SAAS;oBACT,WAAW,EAAE,iBAAiB;iBACjC,CAAC,CAAC;aACN;YACD,OAAO,CAAC,EAAE;gBACN,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACvB,OAAM;aACT;YAED,GAAG,CAAC,IAAI,CAAC;gBACL,iBAAiB;aACpB,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;YAC5B,GAAG,CAAC,WAAW,CAAC,kBAAkB,CAAC,CAAC;YACpC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACjB,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YAClC,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAY,CAAC,GAAG,CAAC,CAAC;YAErD,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;YACzD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,QAAQ,CAAC;YAExB,IAAI,QAAQ,EAAE;gBAEV,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAY,EAAE,QAAQ,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,EAAE;oBACP,GAAG,CAAC,IAAI,CAAC;wBACL,KAAK,EAAE,sBAAsB;wBAC7B,QAAQ;qBACX,CAAC,CAAA;oBACF,OAAO;iBACV;gBAED,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC;gBACpC,MAAM,IAAI,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;gBACzC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpB,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;gBAC1C,IAAI,IAAI,CAAC,YAAY,KAAK,GAAG,EAAE;oBAC3B,GAAG,CAAC,IAAI,CAAC;wBACL,KAAK,EAAE,qBAAqB;wBAC5B,QAAQ;qBACX,CAAC,CAAA;oBACF,OAAO;iBACV;gBAED,MAAM,gBAAgB,GAAG,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACpD,GAAG,CAAC,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,EAAE;oBAC7C,MAAM;oBACN,MAAM,EAAE,IAAI;oBACZ,MAAM,EAAE,IAAI;oBACZ,QAAQ,EAAE,IAAI;iBACjB,CAAC,CAAC;gBAEH,IAAI,eAAe,EAAE;oBACjB,IAAI,CAAC,IAAI,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBACtD,IAAI,CAAC,YAAY,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBAC7G,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;oBAC9B,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBACzB;gBAED,GAAG,CAAC,IAAI,CAAC;oBACL,QAAQ;oBACR,UAAU,EAAE,MAAM;iBACrB,CAAC,CAAC;gBAEH,OAAO;aACV;YAED,MAAM,IAAI,GAAG,IAAI,uBAAY,EAAE,CAAC;YAChC,IAAI,CAAC,GAAG,GAAG,QAAQ,CAAC;YACpB,IAAI,CAAC,IAAI,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,CAAC,YAAY,GAAG,gBAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,GAAG,QAAQ,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YACtG,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC;YAC9B,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;YAEtB,MAAM,gBAAgB,GAAG,GAAG,QAAQ,IAAI,SAAS,EAAE,CAAA;YACnD,GAAG,CAAC,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,EAAE;gBAC7C,MAAM;gBACN,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI;gBACZ,QAAQ,EAAE,IAAI;aACjB,CAAC,CAAC;YAEH,GAAG,CAAC,IAAI,CAAC;gBACL,QAAQ;gBACR,UAAU,EAAE,MAAM;aACrB,CAAC,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;YACjC,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE;gBACvD,MAAM,QAAQ,GAAG,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE;oBACzC,MAAM,YAAY,GAAG,SAAS,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;wBACzC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;oBACtB,CAAC,CAAC,CAAC;oBAEH,2CAA2C;oBAC3C,YAAY,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC3B,CAAC,CAAC,CAAC;gBAEH,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAY,EAAE,QAAQ,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;oBACb,IAAI,CAAC,KAAK,GAAG,gBAAM,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;oBACpD,MAAM,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;iBACzB;gBACD,GAAG,CAAC,IAAI,CAAC;oBACL,QAAQ;oBACR,KAAK,EAAE,IAAI,CAAC,KAAK;iBACpB,CAAC,CAAC;gBACH,OAAO;aACV;YAED,MAAM,QAAQ,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,uBAAY,CAAC,GAAG,CAAC,CAAC;YACrD,MAAM,EAAE,gBAAgB,EAAE,GAAG,GAAG,CAAC,aAAa,CAAC;YAC/C,IAAI,CAAC,gBAAgB,EAAE;gBACnB,GAAG,CAAC,IAAI,CAAC;oBACL,KAAK,EAAE,gBAAgB;oBACvB,QAAQ;iBACX,CAAC,CAAA;gBACF,OAAO;aACV;YAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;YACnC,MAAM,SAAS,GAAG,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9C,IAAI,SAAS,GAAG,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE;gBACnC,GAAG,CAAC,IAAI,CAAC;oBACL,KAAK,EAAE,gBAAgB;oBACvB,QAAQ;iBACX,CAAC,CAAA;gBACF,OAAO;aACV;YAED,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,MAAM,CAAC,uBAAY,EAAE,QAAQ,CAAC,CAAC;YACrD,IAAI,CAAC,IAAI,EAAE;gBACP,GAAG,CAAC,IAAI,CAAC;oBACL,KAAK,EAAE,iBAAiB;oBACxB,QAAQ;iBACX,CAAC,CAAA;gBACF,OAAO;aACV;YAED,IAAI,SAAS,GAAG,IAAI,CAAC,YAAY,EAAE;gBAC/B,GAAG,CAAC,IAAI,CAAC;oBACL,KAAK,EAAE,sCAAsC;oBAC7C,QAAQ;iBACX,CAAC,CAAA;gBACF,OAAO;aACV;YAED,GAAG,CAAC,IAAI,CAAC;gBACL,UAAU,EAAE,QAAQ,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;gBAC/C,QAAQ;aACX,CAAC,CAAA;QACN,CAAC,CAAC,CAAC;QAEH,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,kCAAkC,CAAC,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,CAAC,OAAO,GAAG,KAAK,EAAE,CAAC;CAC5B"}
|
package/dist/services/plugin.js
CHANGED
|
@@ -118,7 +118,7 @@ class PluginComponent {
|
|
|
118
118
|
}
|
|
119
119
|
console.log('done updating plugins');
|
|
120
120
|
}
|
|
121
|
-
async getRemoteServicePort(pluginId, name) {
|
|
121
|
+
async getRemoteServicePort(pluginId, name, ...args) {
|
|
122
122
|
if (name === 'console') {
|
|
123
123
|
const consoleServer = await this.scrypted.plugins[pluginId].consoleServer;
|
|
124
124
|
return consoleServer.readPort;
|
|
@@ -127,7 +127,7 @@ class PluginComponent {
|
|
|
127
127
|
const consoleServer = await this.scrypted.plugins[pluginId].consoleServer;
|
|
128
128
|
return consoleServer.writePort;
|
|
129
129
|
}
|
|
130
|
-
return this.scrypted.plugins[pluginId].remote.getServicePort(name);
|
|
130
|
+
return this.scrypted.plugins[pluginId].remote.getServicePort(name, ...args);
|
|
131
131
|
}
|
|
132
132
|
}
|
|
133
133
|
exports.PluginComponent = PluginComponent;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"plugin.js","sourceRoot":"","sources":["../../src/services/plugin.ts"],"names":[],"mappings":"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"}
|
package/dist/state.js
CHANGED
|
@@ -64,19 +64,13 @@ class ScryptedStateManager extends event_registry_1.EventRegistry {
|
|
|
64
64
|
}
|
|
65
65
|
}
|
|
66
66
|
updateDescriptor(device) {
|
|
67
|
-
|
|
68
|
-
plugin.remote?.updateDeviceState(device._id, device.state);
|
|
69
|
-
}
|
|
67
|
+
this.notify(device._id, undefined, types_1.ScryptedInterface.ScryptedDevice, undefined, device.state, true);
|
|
70
68
|
}
|
|
71
69
|
removeDevice(id) {
|
|
72
|
-
for (const plugin of Object.values(this.scrypted.plugins)) {
|
|
73
|
-
plugin.remote?.updateDeviceState(id, undefined);
|
|
74
|
-
}
|
|
75
70
|
this.notify(undefined, undefined, types_1.ScryptedInterface.ScryptedDevice, types_1.ScryptedInterfaceProperty.id, id, true);
|
|
76
71
|
}
|
|
77
72
|
notifyInterfaceEvent(device, eventInterface, value) {
|
|
78
|
-
|
|
79
|
-
this.notify(device?._id, eventTime, eventInterface, undefined, value, true);
|
|
73
|
+
this.notify(device?._id, Date.now(), eventInterface, undefined, value, true);
|
|
80
74
|
}
|
|
81
75
|
setState(id, property, value) {
|
|
82
76
|
const device = this.scrypted.pluginDevices[id];
|
package/dist/state.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"state.js","sourceRoot":"","sources":["../src/state.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/python/plugin-remote.py
CHANGED
|
@@ -21,7 +21,7 @@ from asyncio.futures import Future
|
|
|
21
21
|
from asyncio.streams import StreamReader, StreamWriter
|
|
22
22
|
import os
|
|
23
23
|
from os import sys
|
|
24
|
-
|
|
24
|
+
import platform
|
|
25
25
|
|
|
26
26
|
class SystemDeviceState(TypedDict):
|
|
27
27
|
lastEventTime: int
|
|
@@ -164,8 +164,8 @@ class PluginRemote:
|
|
|
164
164
|
|
|
165
165
|
zip = zipfile.ZipFile(zipPath)
|
|
166
166
|
|
|
167
|
-
|
|
168
|
-
|
|
167
|
+
plugin_volume = os.environ.get('SCRYPTED_PLUGIN_VOLUME')
|
|
168
|
+
python_prefix = os.path.join(plugin_volume, 'python-%s-%s' % (platform.system(), platform.machine()))
|
|
169
169
|
if not os.path.exists(python_prefix):
|
|
170
170
|
os.makedirs(python_prefix)
|
|
171
171
|
|
|
@@ -179,7 +179,7 @@ class PluginRemote:
|
|
|
179
179
|
|
|
180
180
|
requirementstxt = os.path.join(python_prefix, 'requirements.txt')
|
|
181
181
|
installed_requirementstxt = os.path.join(
|
|
182
|
-
python_prefix, '
|
|
182
|
+
python_prefix, 'requirements.installed.txt')
|
|
183
183
|
|
|
184
184
|
need_pip = True
|
|
185
185
|
try:
|
package/python/rpc.py
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
from asyncio.futures import Future
|
|
2
|
-
from typing import Callable, Mapping, List
|
|
2
|
+
from typing import Any, Callable, Mapping, List
|
|
3
3
|
import traceback
|
|
4
4
|
import inspect
|
|
5
|
+
from typing_extensions import TypedDict
|
|
5
6
|
import weakref
|
|
7
|
+
import sys
|
|
6
8
|
|
|
7
9
|
jsonSerializable = set()
|
|
8
10
|
jsonSerializable.add(float)
|
|
@@ -45,21 +47,35 @@ class RpcProxyMethod:
|
|
|
45
47
|
return self.__proxy.__apply__(self.__proxy_method_name, args)
|
|
46
48
|
|
|
47
49
|
|
|
50
|
+
class LocalProxiedEntry(TypedDict):
|
|
51
|
+
id: str
|
|
52
|
+
finalizerId: str
|
|
53
|
+
|
|
54
|
+
|
|
48
55
|
class RpcProxy(object):
|
|
49
|
-
def __init__(self, peer,
|
|
50
|
-
self.__dict__['__proxy_id'] =
|
|
56
|
+
def __init__(self, peer, entry: LocalProxiedEntry, proxyConstructorName: str, proxyProps: any, proxyOneWayMethods: List[str]):
|
|
57
|
+
self.__dict__['__proxy_id'] = entry['id']
|
|
58
|
+
self.__dict__['__proxy_entry'] = entry
|
|
51
59
|
self.__dict__['__proxy_constructor'] = proxyConstructorName
|
|
52
60
|
self.__dict__['__proxy_peer'] = peer
|
|
53
61
|
self.__dict__['__proxy_props'] = proxyProps
|
|
54
62
|
self.__dict__['__proxy_oneway_methods'] = proxyOneWayMethods
|
|
55
63
|
|
|
56
64
|
def __getattr__(self, name):
|
|
65
|
+
if name == '__proxy_finalizer_id':
|
|
66
|
+
return self.dict['__proxy_entry']['finalizerId']
|
|
57
67
|
if name in self.__dict__:
|
|
58
68
|
return self.__dict__[name]
|
|
59
69
|
if self.__dict__['__proxy_props'] and name in self.__dict__['__proxy_props']:
|
|
60
70
|
return self.__dict__['__proxy_props'][name]
|
|
61
71
|
return RpcProxyMethod(self, name)
|
|
62
72
|
|
|
73
|
+
def __setattr__(self, name: str, value: Any) -> None:
|
|
74
|
+
if name == '__proxy_finalizer_id':
|
|
75
|
+
self.dict['__proxy_entry']['finalizerId'] = value
|
|
76
|
+
|
|
77
|
+
return super().__setattr__(name, value)
|
|
78
|
+
|
|
63
79
|
def __call__(self, *args, **kwargs):
|
|
64
80
|
print('call')
|
|
65
81
|
pass
|
|
@@ -69,20 +85,18 @@ class RpcProxy(object):
|
|
|
69
85
|
|
|
70
86
|
|
|
71
87
|
class RpcPeer:
|
|
72
|
-
# todo: these are all class statics lol, fix this.
|
|
73
|
-
idCounter = 1
|
|
74
|
-
peerName = 'Unnamed Peer'
|
|
75
|
-
params: Mapping[str, any] = {}
|
|
76
|
-
localProxied: Mapping[any, str] = {}
|
|
77
|
-
localProxyMap: Mapping[str, any] = {}
|
|
78
|
-
constructorSerializerMap = {}
|
|
79
|
-
proxyCounter = 1
|
|
80
|
-
pendingResults: Mapping[str, Future] = {}
|
|
81
|
-
remoteWeakProxies: Mapping[str, any] = {}
|
|
82
|
-
nameDeserializerMap: Mapping[str, RpcSerializer] = {}
|
|
83
|
-
|
|
84
88
|
def __init__(self, send: Callable[[object, Callable[[Exception], None]], None]) -> None:
|
|
85
89
|
self.send = send
|
|
90
|
+
self.idCounter = 1
|
|
91
|
+
self.peerName = 'Unnamed Peer'
|
|
92
|
+
self.params: Mapping[str, any] = {}
|
|
93
|
+
self.localProxied: Mapping[any, LocalProxiedEntry] = {}
|
|
94
|
+
self.localProxyMap: Mapping[str, any] = {}
|
|
95
|
+
self.constructorSerializerMap = {}
|
|
96
|
+
self.proxyCounter = 1
|
|
97
|
+
self.pendingResults: Mapping[str, Future] = {}
|
|
98
|
+
self.remoteWeakProxies: Mapping[str, any] = {}
|
|
99
|
+
self.nameDeserializerMap: Mapping[str, RpcSerializer] = {}
|
|
86
100
|
|
|
87
101
|
def __apply__(self, proxyId: str, oneWayMethods: List[str], method: str, args: list):
|
|
88
102
|
serializedArgs = []
|
|
@@ -120,12 +134,17 @@ class RpcPeer:
|
|
|
120
134
|
def serialize(self, value, requireProxy):
|
|
121
135
|
if (not value or (not requireProxy and type(value) in jsonSerializable)):
|
|
122
136
|
return value
|
|
137
|
+
|
|
123
138
|
__remote_constructor_name = 'Function' if callable(value) else value.__proxy_constructor if hasattr(
|
|
124
139
|
value, '__proxy_constructor') else type(value).__name__
|
|
125
|
-
|
|
126
|
-
|
|
140
|
+
|
|
141
|
+
proxiedEntry = self.localProxied.get(value, None)
|
|
142
|
+
if proxiedEntry:
|
|
143
|
+
proxiedEntry['finalizerId'] = str(self.proxyCounter)
|
|
144
|
+
self.proxyCounter = self.proxyCounter + 1
|
|
127
145
|
ret = {
|
|
128
|
-
'__remote_proxy_id':
|
|
146
|
+
'__remote_proxy_id': proxiedEntry['id'],
|
|
147
|
+
'__remote_proxy_finalizer_id': proxiedEntry['finalizerId'],
|
|
129
148
|
'__remote_constructor_name': __remote_constructor_name,
|
|
130
149
|
'__remote_proxy_props': getattr(value, '__proxy_props', None),
|
|
131
150
|
'__remote_proxy_oneway_methods': getattr(value, '__proxy_oneway_methods', None),
|
|
@@ -140,13 +159,15 @@ class RpcPeer:
|
|
|
140
159
|
}
|
|
141
160
|
return ret
|
|
142
161
|
|
|
143
|
-
serializerMapName = self.constructorSerializerMap.get(
|
|
162
|
+
serializerMapName = self.constructorSerializerMap.get(
|
|
163
|
+
type(value), None)
|
|
144
164
|
if serializerMapName:
|
|
145
165
|
__remote_constructor_name = serializerMapName
|
|
146
166
|
serializer = self.nameDeserializerMap.get(serializerMapName, None)
|
|
147
167
|
serialized = serializer.serialize(value)
|
|
148
168
|
ret = {
|
|
149
169
|
'__remote_proxy_id': None,
|
|
170
|
+
'__remote_proxy_finalizer_id': None,
|
|
150
171
|
'__remote_constructor_name': __remote_constructor_name,
|
|
151
172
|
'__remote_proxy_props': getattr(value, '__proxy_props', None),
|
|
152
173
|
'__remote_proxy_oneway_methods': getattr(value, '__proxy_oneway_methods', None),
|
|
@@ -156,11 +177,16 @@ class RpcPeer:
|
|
|
156
177
|
|
|
157
178
|
proxyId = str(self.proxyCounter)
|
|
158
179
|
self.proxyCounter = self.proxyCounter + 1
|
|
159
|
-
|
|
180
|
+
proxiedEntry = {
|
|
181
|
+
'id': proxyId,
|
|
182
|
+
'finalizerId': proxyId,
|
|
183
|
+
}
|
|
184
|
+
self.localProxied[value] = proxiedEntry
|
|
160
185
|
self.localProxyMap[proxyId] = value
|
|
161
186
|
|
|
162
187
|
ret = {
|
|
163
188
|
'__remote_proxy_id': proxyId,
|
|
189
|
+
'__remote_proxy_finalizer_id': proxyId,
|
|
164
190
|
'__remote_constructor_name': __remote_constructor_name,
|
|
165
191
|
'__remote_proxy_props': getattr(value, '__proxy_props', None),
|
|
166
192
|
'__remote_proxy_oneway_methods': getattr(value, '__proxy_oneway_methods', None),
|
|
@@ -168,20 +194,26 @@ class RpcPeer:
|
|
|
168
194
|
|
|
169
195
|
return ret
|
|
170
196
|
|
|
171
|
-
def finalize(self,
|
|
197
|
+
def finalize(self, localProxiedEntry: LocalProxiedEntry):
|
|
198
|
+
id = localProxiedEntry['id']
|
|
172
199
|
self.remoteWeakProxies.pop(id, None)
|
|
173
200
|
rpcFinalize = {
|
|
174
201
|
'__local_proxy_id': id,
|
|
202
|
+
'__local_proxy_finalizer_id': localProxiedEntry['finalizerId'],
|
|
175
203
|
'type': 'finalize',
|
|
176
204
|
}
|
|
177
205
|
self.send(rpcFinalize)
|
|
178
206
|
|
|
179
207
|
def newProxy(self, proxyId: str, proxyConstructorName: str, proxyProps: any, proxyOneWayMethods: List[str]):
|
|
180
|
-
|
|
208
|
+
localProxiedEntry: LocalProxiedEntry = {
|
|
209
|
+
'id': proxyId,
|
|
210
|
+
'finalizerId': None,
|
|
211
|
+
}
|
|
212
|
+
proxy = RpcProxy(self, localProxiedEntry, proxyConstructorName,
|
|
181
213
|
proxyProps, proxyOneWayMethods)
|
|
182
214
|
wr = weakref.ref(proxy)
|
|
183
215
|
self.remoteWeakProxies[proxyId] = wr
|
|
184
|
-
weakref.finalize(proxy, lambda: self.finalize(
|
|
216
|
+
weakref.finalize(proxy, lambda: self.finalize(localProxiedEntry))
|
|
185
217
|
return proxy
|
|
186
218
|
|
|
187
219
|
def deserialize(self, value):
|
|
@@ -192,6 +224,8 @@ class RpcPeer:
|
|
|
192
224
|
return value
|
|
193
225
|
|
|
194
226
|
__remote_proxy_id = value.get('__remote_proxy_id', None)
|
|
227
|
+
__remote_proxy_finalizer_id = value.get(
|
|
228
|
+
'__remote_proxy_finalizer_id', None)
|
|
195
229
|
__local_proxy_id = value.get('__local_proxy_id', None)
|
|
196
230
|
__remote_constructor_name = value.get(
|
|
197
231
|
'__remote_constructor_name', None)
|
|
@@ -206,6 +240,7 @@ class RpcPeer:
|
|
|
206
240
|
if not proxy:
|
|
207
241
|
proxy = self.newProxy(__remote_proxy_id, __remote_constructor_name,
|
|
208
242
|
__remote_proxy_props, __remote_proxy_oneway_methods)
|
|
243
|
+
proxy.__proxy_finalizer_id = __remote_proxy_finalizer_id
|
|
209
244
|
return proxy
|
|
210
245
|
|
|
211
246
|
if __local_proxy_id:
|
|
@@ -297,9 +332,16 @@ class RpcPeer:
|
|
|
297
332
|
future.set_result(self.deserialize(
|
|
298
333
|
message.get('result', None)))
|
|
299
334
|
elif messageType == 'finalize':
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
self.
|
|
335
|
+
finalizerId = message.get('__local_proxy_finalizer_id', None)
|
|
336
|
+
proxyId = message['__local_proxy_id']
|
|
337
|
+
local = self.localProxyMap.get(proxyId, None)
|
|
338
|
+
if local:
|
|
339
|
+
localProxiedEntry = self.localProxied.get(local)
|
|
340
|
+
if localProxiedEntry and finalizerId and localProxiedEntry['finalizerId'] != finalizerId:
|
|
341
|
+
print('mismatch finalizer id', file=sys.stderr)
|
|
342
|
+
return
|
|
343
|
+
self.localProxied.pop(local, None)
|
|
344
|
+
local = self.localProxyMap.pop(proxyId, None)
|
|
303
345
|
else:
|
|
304
346
|
raise RpcResultException(
|
|
305
347
|
None, 'unknown rpc message type %s' % type)
|
package/src/event-registry.ts
CHANGED
|
@@ -12,12 +12,12 @@ export class EventListenerRegisterImpl implements EventListenerRegister {
|
|
|
12
12
|
const allowedEventInterfaces = new Set<string>([ScryptedInterface.ScryptedDevice, 'Logger', 'Storage'])
|
|
13
13
|
|
|
14
14
|
export class EventRegistry {
|
|
15
|
-
systemListeners = new Set<(id: string, eventDetails: EventDetails, eventData:
|
|
16
|
-
listeners: { [token: string]: Set<(eventDetails: EventDetails, eventData:
|
|
15
|
+
systemListeners = new Set<(id: string, eventDetails: EventDetails, eventData: any) => void>();
|
|
16
|
+
listeners: { [token: string]: Set<(eventDetails: EventDetails, eventData: any) => void> } = {};
|
|
17
17
|
|
|
18
|
-
listen(
|
|
18
|
+
listen(callback: (id: string, eventDetails: EventDetails, eventData: any) => void): EventListenerRegister {
|
|
19
19
|
const events = this.systemListeners;
|
|
20
|
-
let cb =
|
|
20
|
+
let cb = callback;
|
|
21
21
|
events.add(cb);
|
|
22
22
|
return new EventListenerRegisterImpl(() => {
|
|
23
23
|
events.delete(cb);
|
|
@@ -25,7 +25,7 @@ export class EventRegistry {
|
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
listenDevice(id: string, options: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData:
|
|
28
|
+
listenDevice(id: string, options: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData: any) => void): EventListenerRegister {
|
|
29
29
|
let { event } = (options || {}) as EventListenerOptions;
|
|
30
30
|
if (!event && typeof options === 'string')
|
|
31
31
|
event = options as string;
|
package/src/http-interfaces.ts
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { HttpResponse, HttpResponseOptions } from "@scrypted/sdk/types";
|
|
2
2
|
import { Response } from "express";
|
|
3
|
-
import { PluginHost } from './plugin/plugin-host';
|
|
4
3
|
import mime from "mime";
|
|
4
|
+
import AdmZip from "adm-zip";
|
|
5
5
|
|
|
6
|
-
export function createResponseInterface(res: Response,
|
|
6
|
+
export function createResponseInterface(res: Response, zip: AdmZip): HttpResponse {
|
|
7
7
|
class HttpResponseImpl implements HttpResponse {
|
|
8
8
|
send(body: string): void;
|
|
9
9
|
send(body: string, options: HttpResponseOptions): void;
|
|
@@ -35,7 +35,7 @@ export function createResponseInterface(res: Response, plugin: PluginHost): Http
|
|
|
35
35
|
if (!res.getHeader('Content-Type'))
|
|
36
36
|
res.contentType(mime.lookup(path));
|
|
37
37
|
|
|
38
|
-
const data =
|
|
38
|
+
const data = zip.getEntry(`fs/${path}`)?.getData();
|
|
39
39
|
if (!data) {
|
|
40
40
|
res.status(404);
|
|
41
41
|
res.end();
|
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
import net from 'net';
|
|
2
2
|
import { once } from 'events';
|
|
3
|
+
import express from 'express';
|
|
3
4
|
|
|
4
5
|
export async function listenZero(server: net.Server) {
|
|
5
6
|
server.listen(0);
|
|
6
7
|
await once(server, 'listening');
|
|
7
8
|
return (server.address() as net.AddressInfo).port;
|
|
8
9
|
}
|
|
10
|
+
|
|
11
|
+
export function listenZeroExpress(app: express.Express) {
|
|
12
|
+
const server = app.listen(0);
|
|
13
|
+
return {
|
|
14
|
+
server,
|
|
15
|
+
port: (async () => {
|
|
16
|
+
await once(server, 'listening');
|
|
17
|
+
const { port } = (server.address() as net.AddressInfo);
|
|
18
|
+
return port;
|
|
19
|
+
})()
|
|
20
|
+
}
|
|
21
|
+
}
|
package/src/plugin/plugin-api.ts
CHANGED
|
@@ -20,7 +20,7 @@ export interface PluginAPI {
|
|
|
20
20
|
setDeviceProperty(id: string, property: ScryptedInterfaceProperty, value: any): Promise<void>;
|
|
21
21
|
removeDevice(id: string): Promise<void>;
|
|
22
22
|
listen(EventListener: (id: string, eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister>;
|
|
23
|
-
listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData:
|
|
23
|
+
listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister>;
|
|
24
24
|
|
|
25
25
|
ioClose(id: string): Promise<void>;
|
|
26
26
|
ioSend(id: string, message: string): Promise<void>;
|
|
@@ -101,10 +101,10 @@ export class PluginAPIProxy extends PluginAPIManagedListeners implements PluginA
|
|
|
101
101
|
removeDevice(id: string): Promise<void> {
|
|
102
102
|
return this.api.removeDevice(id);
|
|
103
103
|
}
|
|
104
|
-
async listen(
|
|
105
|
-
return this.manageListener(await this.api.listen(
|
|
104
|
+
async listen(callback: (id: string, eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister> {
|
|
105
|
+
return this.manageListener(await this.api.listen(callback));
|
|
106
106
|
}
|
|
107
|
-
async listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData:
|
|
107
|
+
async listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister> {
|
|
108
108
|
return this.manageListener(await this.api.listenDevice(id, event, callback));
|
|
109
109
|
}
|
|
110
110
|
ioClose(id: string): Promise<void> {
|
|
@@ -146,7 +146,7 @@ export interface PluginRemote {
|
|
|
146
146
|
|
|
147
147
|
createDeviceState(id: string, setState: (property: string, value: any) => Promise<any>): Promise<any>;
|
|
148
148
|
|
|
149
|
-
getServicePort(name: string): Promise<number>;
|
|
149
|
+
getServicePort(name: string, ...args: any[]): Promise<number>;
|
|
150
150
|
}
|
|
151
151
|
|
|
152
152
|
export interface MediaObjectRemote extends MediaObject {
|
|
@@ -54,6 +54,7 @@ export class PluginDeviceProxyHandler implements ProxyHandler<any>, ScryptedDevi
|
|
|
54
54
|
async isMixin(id: string, mixinDevice: any) {
|
|
55
55
|
if (this.releasing.has(mixinDevice))
|
|
56
56
|
return true;
|
|
57
|
+
await this.scrypted.devices[id].handler.ensureProxy();
|
|
57
58
|
for (const mixin of this.scrypted.devices[id].handler.mixinTable) {
|
|
58
59
|
const { proxy } = await mixin.entry;
|
|
59
60
|
if (proxy === mixinDevice) {
|
|
@@ -236,7 +237,7 @@ export class PluginDeviceProxyHandler implements ProxyHandler<any>, ScryptedDevi
|
|
|
236
237
|
// todo: remove this and pass the setter directly.
|
|
237
238
|
const deviceState = await host.remote.createDeviceState(this.id,
|
|
238
239
|
async (property, value) => this.scrypted.stateManager.setPluginDeviceState(pluginDevice, property, value));
|
|
239
|
-
const mixinProxy = await mixinProvider.getMixin(wrappedProxy,
|
|
240
|
+
const mixinProxy = await mixinProvider.getMixin(wrappedProxy, previousInterfaces as ScryptedInterface[], deviceState);
|
|
240
241
|
if (!mixinProxy)
|
|
241
242
|
throw new PluginError(`mixin provider ${mixinId} did not return mixin for ${this.id}`);
|
|
242
243
|
|
|
@@ -298,7 +299,7 @@ export class PluginDeviceProxyHandler implements ProxyHandler<any>, ScryptedDevi
|
|
|
298
299
|
return new Proxy(() => prop, this);
|
|
299
300
|
}
|
|
300
301
|
|
|
301
|
-
listen(event: string | EventListenerOptions, callback: (eventSource: ScryptedDevice, eventDetails: EventDetails, eventData:
|
|
302
|
+
listen(event: string | EventListenerOptions, callback: (eventSource: ScryptedDevice, eventDetails: EventDetails, eventData: any) => void): EventListenerRegister {
|
|
302
303
|
return this.scrypted.stateManager.listenDevice(this.id, event, (eventDetails, eventData) => callback(this.scrypted.getDevice(this.id), eventDetails, eventData));
|
|
303
304
|
}
|
|
304
305
|
async setName(name: string): Promise<void> {
|
|
@@ -8,7 +8,6 @@ import { PluginHost } from './plugin-host';
|
|
|
8
8
|
import debounce from 'lodash/debounce';
|
|
9
9
|
import { PROPERTY_PROXY_ONEWAY_METHODS } from '../rpc';
|
|
10
10
|
|
|
11
|
-
|
|
12
11
|
export class PluginHostAPI extends PluginAPIManagedListeners implements PluginAPI {
|
|
13
12
|
pluginId: string;
|
|
14
13
|
|
|
@@ -48,22 +47,23 @@ export class PluginHostAPI extends PluginAPIManagedListeners implements PluginAP
|
|
|
48
47
|
const device = this.scrypted.findPluginDeviceById(id);
|
|
49
48
|
|
|
50
49
|
if (!nativeIdOrMixinDevice || typeof nativeIdOrMixinDevice === 'string') {
|
|
50
|
+
const nativeId: string = nativeIdOrMixinDevice;
|
|
51
51
|
// todo: deprecate this code path
|
|
52
|
-
const mixinProvider = this.scrypted.findPluginDevice(this.pluginId,
|
|
52
|
+
const mixinProvider = this.scrypted.findPluginDevice(this.pluginId, nativeId);
|
|
53
53
|
const mixins: string[] = getState(device, ScryptedInterfaceProperty.mixins) || [];
|
|
54
54
|
if (!mixins.includes(mixinProvider._id))
|
|
55
55
|
throw new Error(`${mixinProvider._id} is not a mixin provider for ${id}`);
|
|
56
56
|
|
|
57
|
-
this.scrypted.findPluginDevice(this.pluginId,
|
|
57
|
+
this.scrypted.findPluginDevice(this.pluginId, nativeId);
|
|
58
58
|
const tableEntry = this.scrypted.devices[device._id].handler.mixinTable.find(entry => entry.mixinProviderId === mixinProvider._id);
|
|
59
59
|
const { interfaces } = await tableEntry.entry;
|
|
60
60
|
if (!interfaces.has(eventInterface))
|
|
61
61
|
throw new Error(`${mixinProvider._id} does not mixin ${eventInterface} for ${id}`);
|
|
62
62
|
}
|
|
63
63
|
else {
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
throw new Error(`${
|
|
64
|
+
const mixin: object = nativeIdOrMixinDevice;
|
|
65
|
+
if (!await this.scrypted.devices[device._id]?.handler?.isMixin(id, mixin)) {
|
|
66
|
+
throw new Error(`${mixin} does not mixin ${eventInterface} for ${id}`);
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
this.scrypted.stateManager.notifyInterfaceEvent(device, eventInterface, eventData);
|
|
@@ -151,10 +151,10 @@ export class PluginHostAPI extends PluginAPIManagedListeners implements PluginAP
|
|
|
151
151
|
async getDeviceById<T>(id: string): Promise<T & ScryptedDevice> {
|
|
152
152
|
return this.scrypted.getDevice(id);
|
|
153
153
|
}
|
|
154
|
-
async listen(
|
|
155
|
-
return this.manageListener(this.scrypted.stateManager.listen(
|
|
154
|
+
async listen(callback: (id: string, eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister> {
|
|
155
|
+
return this.manageListener(this.scrypted.stateManager.listen(callback));
|
|
156
156
|
}
|
|
157
|
-
async listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData:
|
|
157
|
+
async listenDevice(id: string, event: string | EventListenerOptions, callback: (eventDetails: EventDetails, eventData: any) => void): Promise<EventListenerRegister> {
|
|
158
158
|
const device = this.scrypted.findPluginDeviceById(id);
|
|
159
159
|
if (device) {
|
|
160
160
|
const self = this.scrypted.findPluginDevice(this.pluginId);
|