@iobroker/socket-classes 2.7.1 → 2.9.0

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/README.md CHANGED
@@ -526,6 +526,7 @@ Unsubscribe from file changes in ioBroker DB
526
526
  * [`getCompactInstalled`](#getcompactinstalled_a)
527
527
  * [`getCompactSystemRepositories`](#getcompactsystemrepositories_a)
528
528
  * [`getCompactRepository`](#getcompactrepository_a)
529
+ * [`getReducedRepository`](#getreducedrepository_a)
529
530
  * [`getCompactHosts`](#getcompacthosts_a)
530
531
  * [`delState`](#delstate_a)
531
532
  * [`getStates`](#getstates_a)
@@ -770,6 +771,17 @@ made every start of the GUI wait seconds for it.
770
771
  * `host` *string*: - Host name, e.g., `system.host.raspberrypi`
771
772
  * `callback` *(result: Record<string, {version: string; icon?: string}>) => void) => void*: - Callback function `(error: string | null, results?: Record<string, { version: string; icon?: string }>) => void`
772
773
 
774
+ #### <a name="getreducedrepository_a"></a>`getReducedRepository(host, options, callback)`
775
+ Get the repository with what the GUI shows of it.
776
+ The whole repository is several megabytes, most of it the `news` of every version in every
777
+ language. They are delivered only for the adapters installed on any host and for the
778
+ controller, as only an update shows them; with `lang` all translated texts keep only that
779
+ language and English. Answered from the objects admin holds in memory where possible.
780
+ Announced as the feature `REDUCED_REPOSITORY`.
781
+ * `host` *string*: - Host to ask if the objects in memory cannot answer, e.g., `system.host.raspberrypi`
782
+ * `options` *ReducedRepositoryOptions | null | undefined*: - `{ repo?: string | string[]; update?: boolean; lang?: ioBroker.Languages; adapters?: string[] }`
783
+ * `callback` *(error: string | null | Error | undefined, repository?: Record<string, RepoAdapterObject>) => void*: - Callback function `(error: string | null, repository?: Record<string, RepoAdapterObject>) => void`
784
+
773
785
  #### <a name="getcompacthosts_a"></a>`getCompactHosts(callback)`
774
786
  Get all hosts in a compact form to save bandwidth.
775
787
  * `callback` *(error: string | null | Error | undefined, hosts?: CompactHost[]) => void) => void*: - Callback function `(error: string | null, results?: Record<string, { common: { name: string; icon: string; color: string; installedVersion: string }; native: { hardware: { networkInterfaces: any[] } } }>) => void`
@@ -1043,6 +1055,17 @@ Unsubscribe from file changes in ioBroker DB
1043
1055
  Placeholder for the next version (at the beginning of the line):
1044
1056
  ### **WORK IN PROGRESS**
1045
1057
  -->
1058
+ ### 2.9.0 (2026-10-16)
1059
+ - (@GermanBluefox) Changed: `getReducedRepository` with `update` takes the downloaded repositories from the objects in memory
1060
+ - (@GermanBluefox) Fixed: `getRepositoryCompact` is only sent to the own host, as another host can run an older controller
1061
+
1062
+ ### 2.8.1 (2026-10-15)
1063
+ - (@GermanBluefox) Changed: `getCompactSystemRepositories` is answered from the objects in memory
1064
+ - (@GermanBluefox) Fixed: the outdated lock file that stopped the release of 2.8.0
1065
+
1066
+ ### 2.8.0 (2026-10-15)
1067
+ - (@GermanBluefox) Added: command `getReducedRepository` - the repository without unneeded news and languages
1068
+
1046
1069
  ### 2.7.1 (2026-10-07)
1047
1070
  - (@GermanBluefox) Added: an event only reaches a connection whose user may read what it is about. A subscription says which ids a client is interested in, never which ids it may see - `subscribe` asks whether the user may read states *at all*, so whoever subscribed to `*` was told about every state of the system, the ACL of the single objects notwithstanding, and the same went for objects and for files. The fan-out asks that question now, for state, object and file events alike. Members of the administrator group are not restricted, as everywhere else, and with authentication switched off every connection is the configured default user - so for most installations nothing changes at all. **Where restricted users exist, they will see less than before: that is the point, but it is the kind of change that comes back as "my user stopped getting updates".** The database decides, not this package: `mayRead` of js-controller 8.0 and newer is asked where it exists, which knows the ACL of a state rather than that of its object and the mode of a single file rather than that of the adapter; an older controller is asked for the object instead, which is coarser but refuses in the same direction. One question per user and thing, remembered until the object - or the rights themselves - change, and the objects are watched from the first decision on, so an installation whose connections are all administrators never asks anything
1048
1071
  - (@GermanBluefox) Changed: `publish` and `publishFile` answer `true` where the event is on its way to the client, which now includes the moment it waits for the decision described above; `false` means the client is not subscribed to it, or may not see it. Only the first event of a thing ever waits, and only the newest one of it, so nothing can overtake it
package/build/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
1
  import passport from 'passport';
2
2
  import cookieParser from 'cookie-parser';
3
3
  export type { SocketSubscribeTypes, InternalStorageToken, CommandFile } from './types';
4
- export { SocketCommandsAdmin, type ObjectsCount } from './lib/socketCommandsAdmin';
4
+ export { SocketCommandsAdmin, type ObjectsCount, type ReducedRepositoryOptions } from './lib/socketCommandsAdmin';
5
5
  export { SocketCommands, type SupportedFeature, COMMANDS_PERMISSIONS } from './lib/socketCommands';
6
6
  export { SocketCommon, type Server, type SocketSettings, type SocketIoOptions, type WhiteListSettings, } from './lib/socketCommon';
7
7
  export { SocketAdmin } from './lib/socketAdmin';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAoBvB,mBApBF,kBAAQ,CAoBE;AAnBjB,kEAAyC;AAmBtB,uBAnBZ,uBAAY,CAmBY;AAhB/B,iEAAmF;AAA1E,0HAAA,mBAAmB,OAAA;AAC5B,uDAAmG;AAA1F,gHAAA,cAAc,OAAA;AAAyB,sHAAA,oBAAoB,OAAA;AACpE,mDAM4B;AALxB,4GAAA,YAAY,OAAA;AAMhB,iDAAgD;AAAvC,0GAAA,WAAW,OAAA;AACpB,yDAK8B;AACG,+FALhB,0BAAc,OAKgB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAAA,wDAAgC;AAoBvB,mBApBF,kBAAQ,CAoBE;AAnBjB,kEAAyC;AAmBtB,uBAnBZ,uBAAY,CAmBY;AAhB/B,iEAAkH;AAAzG,0HAAA,mBAAmB,OAAA;AAC5B,uDAAmG;AAA1F,gHAAA,cAAc,OAAA;AAAyB,sHAAA,oBAAoB,OAAA;AACpE,mDAM4B;AALxB,4GAAA,YAAY,OAAA;AAMhB,iDAAgD;AAAvC,0GAAA,WAAW,OAAA;AACpB,yDAK8B;AACG,+FALhB,0BAAc,OAKgB"}
@@ -110,6 +110,7 @@ class SocketAdmin extends socketCommon_1.SocketCommon {
110
110
  }
111
111
  }
112
112
  objectChange(id, obj) {
113
+ this.adminCommands.objectChanged(id);
113
114
  const sockets = this.getSocketsList();
114
115
  if (sockets) {
115
116
  if (Array.isArray(sockets)) {
@@ -1 +1 @@
1
- {"version":3,"file":"socketAdmin.js","sourceRoot":"","sources":["../../src/lib/socketAdmin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketAdmin.js","sourceRoot":"","sources":["../../src/lib/socketAdmin.ts"],"names":[],"mappings":";;;;;;AAAA;;;;;;GAMG;AACH,iDAAsG;AACtG,+DAA4D;AAC5D,wDAAgC;AAChC,kEAAyC;AACzC,qDAAmF;AAKnF,MAAa,WAAY,SAAQ,2BAAY;IACjC,aAAa,CAAsB;IAE3C,YAAY,QAAwB,EAAE,OAAyB,EAAE,OAAyC;QACtG,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QAEzB,yCAAyC;QACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,yCAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAChH,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,QAA+B,CAAC;IAC9D,CAAC;IAED,mBAAmB;QACf,iCAAiC;QACjC,OAAO,IAAI,CAAC;IAChB,CAAC;IAED,mBAAmB,GAAG,CAAC,IAAyB,EAAE,MAA8B,EAAQ,EAAE;QACtF,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAClB,2CAA2C,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,EAAE,CAC9F,CAAC;QACF,WAAW;QACX,MAAM,CAAC,KAAK,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,gBAAgB,GAAG,CACf,IAAyB,EACzB,OAAe,EACf,QAAiB,EACjB,MAA8B,EAC1B,EAAE;QACN,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,2BAAY,CAAC,uBAAuB,CAAC,EAAE,GAAG,CAAC,CAAC;QAE9E,IAAI,QAAQ,EAAE,CAAC;YACX,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,IAAI,CAClB,uCAAuC,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,aAAa,KAAK,OAAO,EAAE,CACtG,CAAC;QACN,CAAC;QAED,iEAAiE;QACjE,+DAA+D;QAC/D,IAAI,QAAQ,EAAE,CAAC;YACX,mBAAmB;YACnB,MAAM,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/B,CAAC;aAAM,CAAC;YACJ,mBAAmB;YACnB,MAAM,CAAC,IAAI,KAAK,CAAC,mCAAmC,OAAO,EAAE,CAAC,CAAC,CAAC;QACpE,CAAC;IACL,CAAC,CAAC;IAEF,oBAAoB,CAAC,WAgBpB;QACG,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC;QAE/B,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,CAAC;YAC1B,IAAI,CAAC,MAAM,EAAE,GAAG,CACZ,IAAA,0BAAS,EAAC;gBACN,QAAQ,EAAR,kBAAQ;gBACR,YAAY,EAAZ,uBAAY;gBACZ,WAAW,EAAE,WAAW,CAAC,WAAW;gBACpC,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,yCAAyC;gBACrE,KAAK,EAAE,WAAW,CAAC,KAAK,EAAE,wDAAwD;gBAClF,OAAO,EAAE,IAAI,CAAC,mBAAmB,EAAE,mDAAmD;gBACtF,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,sDAAsD;aACtF,CAAC,CACL,CAAC;QACN,CAAC;IACL,CAAC;IAED,cAAc,CAAC,MAAuB;QAClC,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;IACrE,CAAC;IAED,KAAK,CACD,MAAgC,EAChC,WAA6B,EAC7B,WAKC,EACD,aAA+B;QAE/B,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,aAAa,CAAC,CAAC;QAE7D,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,CAAC,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAC5F,CAAC;IAED,kBAAkB,CAAC,OAAgB;QAC/B,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,WAAW,CAAC,EAAU,EAAE,KAAwC;QAC5D,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC;QAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;YACxF,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,EAAE,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;YACvG,CAAC;QACL,CAAC;IACL,CAAC;IAED,UAAU,CAAC,EAAU,EAAE,QAAgB,EAAE,IAAmB;QACxD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,WAAW,CAAC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YACrG,CAAC;QACL,CAAC;IACL,CAAC;IAED,WAAW;QACP,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;YAC5D,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;YAC3E,CAAC;YAED,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QAC7C,CAAC;IACL,CAAC;IAED,YAAY,CAAC,EAAU,EAAE,GAAuC;QAC5D,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QAErC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QACtC,IAAI,OAAO,EAAE,CAAC;YACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YACvF,CAAC;iBAAM,CAAC;gBACJ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,OAAO,CAAC,MAAM,EAAE,cAAc,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YACtG,CAAC;QACL,CAAC;IACL,CAAC;IAED,SAAS,CAAC,IAA0B,EAAE,OAAe;QACjD,IAAI,CAAC,QAAS,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,aAAa,CAAC,EAAU,EAAE,WAAmB;QACzC,IAAI,CAAC,QAAS,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;IAClE,CAAC;IAED,WAAW,CAAC,GAAqB;QAC7B,IAAI,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;YACtC,IAAI,OAAO,EAAE,CAAC;gBACV,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;oBACzB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC5D,CAAC;qBAAM,CAAC;oBACJ,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,CAAC,CAAC;gBAC3E,CAAC;gBAED,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAC7E,CAAC;QACL,CAAC;IACL,CAAC;IAED,aAAa,CAAC,IAAa,EAAE,YAAsB;QAC/C,OAAO,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;IAChE,CAAC;CACJ;AAxLD,kCAwLC"}
@@ -34,7 +34,9 @@ export type Ratings = {
34
34
  };
35
35
  export type SupportedFeature = 'ALIAS' | 'ALIAS_SEPARATE_READ_WRITE_ID' | 'ADAPTER_GETPORT_BIND' | 'ADAPTER_DEL_OBJECT_RECURSIVE' | 'ADAPTER_SET_OBJECT_SETS_DEFAULT_VALUE' | 'ADAPTER_AUTO_DECRYPT_NATIVE' | 'PLUGINS' | 'CONTROLLER_NPM_AUTO_REBUILD' | 'CONTROLLER_READWRITE_BASE_SETTINGS' | 'CONTROLLER_MULTI_REPO' | 'CONTROLLER_LICENSE_MANAGER' | 'CONTROLLER_OS_PACKAGE_UPGRADE' | 'DEL_INSTANCE_CUSTOM' | 'CUSTOM_FULL_VIEW' | 'ADAPTER_GET_OBJECTS_BY_ARRAY' | 'CONTROLLER_UI_UPGRADE' | 'ADAPTER_WEBSERVER_UPGRADE' | 'INSTANCE_MESSAGES' | 'PARTIAL_OBJECT_TREE'
36
36
  /** The command `getObjectsCount` counts the objects instead of the client reading them all */
37
- | 'OBJECTS_COUNT';
37
+ | 'OBJECTS_COUNT'
38
+ /** The command `getReducedRepository` delivers the repository without what the GUI does not show */
39
+ | 'REDUCED_REPOSITORY';
38
40
  export interface SocketDataContext {
39
41
  language?: ioBroker.Languages;
40
42
  ratings: Ratings | null;
@@ -1173,6 +1173,9 @@ class SocketCommands {
1173
1173
  // send a command that nobody answers - it would sit there until its timeout
1174
1174
  _a._fixCallback(callback, null, !!this.commands.getObjectsCount);
1175
1175
  }
1176
+ else if (feature === 'REDUCED_REPOSITORY') {
1177
+ _a._fixCallback(callback, null, !!this.commands.getReducedRepository);
1178
+ }
1176
1179
  else {
1177
1180
  _a._fixCallback(callback, null, this.adapter.supportsFeature(feature));
1178
1181
  }
@@ -1 +1 @@
1
- {"version":3,"file":"socketCommands.js","sourceRoot":"","sources":["../../src/lib/socketCommands.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketCommands.js","sourceRoot":"","sources":["../../src/lib/socketCommands.ts"],"names":[],"mappings":"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"}
@@ -108,6 +108,23 @@ export interface RepoAdapterObject extends ioBroker.AdapterCommon {
108
108
  allowAdapterReadme?: boolean;
109
109
  allowAdapterRating?: boolean;
110
110
  }
111
+ /** Options of the command `getReducedRepository` */
112
+ export interface ReducedRepositoryOptions {
113
+ /** The repositories to merge, like `common.activeRepo` of `system.config`, which is the default */
114
+ repo?: string | string[];
115
+ /** Download the repositories anew first. Only the host can do that, so it is asked then */
116
+ update?: boolean;
117
+ /**
118
+ * Language of the GUI: the translated texts keep only this language and English, the fallback of
119
+ * the GUI. All languages are kept without it
120
+ */
121
+ lang?: ioBroker.Languages;
122
+ /**
123
+ * Only these entries, all of them with their `news` - e.g. for the readme of one adapter, which
124
+ * shows the changes also of an adapter that is not installed
125
+ */
126
+ adapters?: string[];
127
+ }
111
128
  export interface ObjectsCount {
112
129
  /** Number of all objects */
113
130
  total: number;
@@ -130,8 +147,16 @@ export declare class SocketCommandsAdmin extends SocketCommands {
130
147
  private readonly lastRepoSideEffects;
131
148
  /** Pending requests of the above, per host */
132
149
  private readonly repoSideEffectTimers;
150
+ /** Called on the next change of `system.repositories` in the objects in memory, with their timeouts */
151
+ private readonly repoObjectWaiters;
133
152
  constructor(adapter: ioBroker.Adapter, updateSession?: (socket: WebSocketClient) => boolean, context?: SocketDataContext, objects?: Record<string, ioBroker.Object>, states?: Record<string, ioBroker.State>);
134
153
  start(onThresholdChanged: ((on: boolean) => void) | null): void;
154
+ /**
155
+ * Tells that an object has changed in the objects in memory - after it was replaced there.
156
+ *
157
+ * @param id ID of the changed object
158
+ */
159
+ objectChanged(id: string): void;
135
160
  /**
136
161
  * Read a file with ratings from server
137
162
  *
@@ -31,6 +31,12 @@ const COUNT_TYPES_VIEW = "function(doc) { emit(doc.type || '', 0) }";
31
31
  const REPO_SIDE_EFFECT_INTERVAL = 3_600_000;
32
32
  /** How long that request waits, so it stays out of the way while the GUI is starting */
33
33
  const REPO_SIDE_EFFECT_DELAY = 10_000;
34
+ /**
35
+ * How long to wait, once the host has downloaded the repositories, for `system.repositories` to
36
+ * arrive in the objects in memory. The host writes it before it answers, but the object takes its
37
+ * own way and is much bigger than the answer, so it usually comes a moment later.
38
+ */
39
+ const REPO_UPDATE_WAIT = 10_000;
34
40
  /**
35
41
  * Reduces a repository to what the GUI needs: the version and the icon of every entry.
36
42
  *
@@ -50,6 +56,106 @@ function toCompactRepository(source, result = {}) {
50
56
  }
51
57
  return result;
52
58
  }
59
+ /**
60
+ * Reduces `system.repositories` to what the GUI shows of it: of the content of every repository only
61
+ * `_repoInfo`.
62
+ *
63
+ * A new object is built and `obj` is left as it is: it can be the object that admin keeps in memory.
64
+ *
65
+ * @param obj the object `system.repositories`
66
+ */
67
+ function toCompactSystemRepositories(obj) {
68
+ const repositories = {};
69
+ for (const [name, repo] of Object.entries(obj.native?.repositories || {})) {
70
+ if (repo && typeof repo === 'object' && repo.json) {
71
+ repositories[name] = { ...repo, json: { _repoInfo: repo.json._repoInfo } };
72
+ }
73
+ else {
74
+ repositories[name] = repo;
75
+ }
76
+ }
77
+ return {
78
+ ...obj,
79
+ native: { ...obj.native, repositories },
80
+ };
81
+ }
82
+ /**
83
+ * Keeps of a translated text only the given language and English. A plain string stays as it is.
84
+ *
85
+ * @param text translated text or string
86
+ * @param lang language to keep besides English
87
+ */
88
+ function reduceTranslation(text, lang) {
89
+ if (!text || typeof text !== 'object' || Array.isArray(text)) {
90
+ return text;
91
+ }
92
+ const translated = text;
93
+ const result = {};
94
+ if (translated.en !== undefined) {
95
+ result.en = translated.en;
96
+ }
97
+ if (translated[lang] !== undefined) {
98
+ result[lang] = translated[lang];
99
+ }
100
+ return result;
101
+ }
102
+ /**
103
+ * Reduces a repository to what the GUI shows.
104
+ *
105
+ * `news` holds the changes of every version in up to eleven languages and is most of a repository:
106
+ * 8.9 of 10.7 MB, measured on "Beta (latest)". The GUI shows it only for an update, so it is kept for
107
+ * the entries in `withNews` only. With `lang` the translated texts keep only that language and English.
108
+ *
109
+ * Nothing in `source` is changed: it can be the object that admin keeps in memory.
110
+ *
111
+ * @param source merged repository
112
+ * @param withNews tells whether the `news` of an entry are kept
113
+ * @param lang language of the GUI
114
+ * @param only names of the entries to deliver, all of them if not given
115
+ */
116
+ function toReducedRepository(source, withNews, lang, only) {
117
+ const result = {};
118
+ for (const name of only || Object.keys(source)) {
119
+ const entry = source[name];
120
+ if (!entry || typeof entry !== 'object') {
121
+ continue;
122
+ }
123
+ const reduced = { ...entry };
124
+ if (!withNews(name, entry)) {
125
+ delete reduced.news;
126
+ }
127
+ else if (lang && entry.news) {
128
+ reduced.news = {};
129
+ for (const [version, text] of Object.entries(entry.news)) {
130
+ reduced.news[version] = reduceTranslation(text, lang);
131
+ }
132
+ }
133
+ if (lang) {
134
+ if (entry.desc) {
135
+ reduced.desc = reduceTranslation(entry.desc, lang);
136
+ }
137
+ if (entry.titleLang) {
138
+ reduced.titleLang = reduceTranslation(entry.titleLang, lang);
139
+ }
140
+ // shown when installing and when updating, so they are kept for every entry
141
+ if (Array.isArray(entry.messages)) {
142
+ reduced.messages = entry.messages.map(message => {
143
+ const reducedMessage = {
144
+ ...message,
145
+ title: reduceTranslation(message.title, lang),
146
+ text: reduceTranslation(message.text, lang),
147
+ };
148
+ if (message.linkText) {
149
+ reducedMessage.linkText = reduceTranslation(message.linkText, lang);
150
+ }
151
+ return reducedMessage;
152
+ });
153
+ }
154
+ }
155
+ result[name] = reduced;
156
+ }
157
+ return result;
158
+ }
53
159
  class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
54
160
  static ALLOW_CACHE = [
55
161
  'getRepository',
@@ -76,6 +182,8 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
76
182
  lastRepoSideEffects = {};
77
183
  /** Pending requests of the above, per host */
78
184
  repoSideEffectTimers = {};
185
+ /** Called on the next change of `system.repositories` in the objects in memory, with their timeouts */
186
+ repoObjectWaiters = new Map();
79
187
  constructor(adapter, updateSession, context, objects, states) {
80
188
  super(adapter, updateSession, context);
81
189
  this.objects = objects;
@@ -112,6 +220,17 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
112
220
  }, this.eventsThreshold.checkInterval);
113
221
  this.onThresholdChanged = onThresholdChanged;
114
222
  }
223
+ /**
224
+ * Tells that an object has changed in the objects in memory - after it was replaced there.
225
+ *
226
+ * @param id ID of the changed object
227
+ */
228
+ objectChanged(id) {
229
+ if (id === 'system.repositories') {
230
+ // every waiter removes itself
231
+ [...this.repoObjectWaiters.keys()].forEach(done => done());
232
+ }
233
+ }
115
234
  /**
116
235
  * Read a file with ratings from server
117
236
  *
@@ -250,13 +369,26 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
250
369
  * @param callback answered with the compact repository
251
370
  */
252
371
  #askHostForRepository(host, callback) {
253
- if (this.adapter.supportsFeature('CONTROLLER_REPOSITORY_COMPACT')) {
372
+ if (this.#knowsRepositoryCompact(host)) {
254
373
  this._sendToHost(host, 'getRepositoryCompact', null, (data) => callback(data || {}));
255
374
  }
256
375
  else {
257
376
  this._sendToHost(host, 'getRepository', null, (data) => callback(toCompactRepository(data)));
258
377
  }
259
378
  }
379
+ /**
380
+ * Whether the host can be asked with `getRepositoryCompact`.
381
+ *
382
+ * Only the own controller tells its features. A controller that does not know the command
383
+ * ignores it without answering, and another host can run an older one, so it is asked as before.
384
+ *
385
+ * @param host host to ask, e.g. `system.host.raspberrypi`
386
+ */
387
+ #knowsRepositoryCompact(host) {
388
+ const id = host.startsWith('system.host.') ? host : `system.host.${host}`;
389
+ return (id === `system.host.${this.adapter.host}` &&
390
+ this.adapter.supportsFeature('CONTROLLER_REPOSITORY_COMPACT'));
391
+ }
260
392
  /**
261
393
  * Builds the compact repository from the objects that admin keeps in memory.
262
394
  *
@@ -295,6 +427,149 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
295
427
  }
296
428
  return result;
297
429
  }
430
+ /**
431
+ * Merges the repositories from the objects that admin keeps in memory, as the host does it: in
432
+ * the given order, a later repository replacing an entry of an earlier one.
433
+ *
434
+ * @param repo the repositories to merge, the active ones if not given
435
+ * @param systemRepos `system.repositories`, the one in memory if not given
436
+ * @returns the merged repository, or null if only the host can answer - see `#compactRepositoryFromObjects`
437
+ */
438
+ #repositoryFromObjects(repo, systemRepos = this.objects?.['system.repositories']) {
439
+ if (!this.objects) {
440
+ return null;
441
+ }
442
+ const systemConfig = this.objects['system.config'];
443
+ if (!systemConfig?.common || !systemRepos?.native?.repositories) {
444
+ return null;
445
+ }
446
+ const wanted = repo || systemConfig.common.activeRepo;
447
+ const names = Array.isArray(wanted) ? wanted : wanted ? [wanted] : [];
448
+ if (!names.length) {
449
+ return null;
450
+ }
451
+ const result = {};
452
+ for (const name of names) {
453
+ const entry = systemRepos.native.repositories[name];
454
+ if (!entry || typeof entry === 'string' || !entry.json) {
455
+ return null;
456
+ }
457
+ Object.assign(result, entry.json);
458
+ }
459
+ return result;
460
+ }
461
+ /**
462
+ * Names of the adapters that are installed on any host: the GUI shows `news` only for them.
463
+ *
464
+ * An adapter is taken as installed if it has its object `system.adapter.<name>` or one of the
465
+ * objects `system.host.<host>.adapter.<name>`. Neither is complete on its own: an adapter that was
466
+ * only put into `node_modules` can lack the first, and the controller writes the second only for
467
+ * what it found when it started. Only the host knows for sure, so the GUI asks for the news of an
468
+ * installed adapter that is missing here.
469
+ */
470
+ async #installedAdapters() {
471
+ const names = new Set();
472
+ const add = (id, obj) => {
473
+ const match = id.match(/^system\.(?:host\..+\.)?adapter\.([^.]+)$/);
474
+ if (match && obj?.type === 'adapter') {
475
+ names.add(match[1]);
476
+ }
477
+ };
478
+ if (this.objects) {
479
+ for (const id of Object.keys(this.objects)) {
480
+ add(id, this.objects[id]);
481
+ }
482
+ }
483
+ else {
484
+ const doc = await this.adapter.getObjectViewAsync('system', 'adapter', {
485
+ startkey: 'system.',
486
+ endkey: 'system.\u9999',
487
+ });
488
+ doc?.rows.forEach(row => add(row.id, row.value));
489
+ }
490
+ return names;
491
+ }
492
+ /**
493
+ * Lets the host download the repositories and takes the result from the objects in memory.
494
+ *
495
+ * Asked with `getRepository`, the host sends everything it downloaded through the message box -
496
+ * 11 MB with the beta repository - although it has just written all of it into
497
+ * `system.repositories`, which admin receives anyway to keep its objects up to date. Asked with
498
+ * `getRepositoryCompact`, it downloads and writes the same, but answers with a few kilobytes.
499
+ *
500
+ * @param host host to download the repositories, e.g. `system.host.raspberrypi`
501
+ * @param repo the repositories to download, the active ones if not given
502
+ * @returns the merged repository, or null if only the host can answer - because there are no
503
+ * objects in memory, the host may not know `getRepositoryCompact`, or a repository could not be
504
+ * downloaded
505
+ */
506
+ async #updatedRepositoryFromObjects(host, repo) {
507
+ if (!this.objects || !this.#knowsRepositoryCompact(host)) {
508
+ return null;
509
+ }
510
+ // taken before asking, as the new object can arrive before the answer
511
+ const before = this.objects['system.repositories'];
512
+ await new Promise(resolve => this._sendToHost(host, 'getRepositoryCompact', { repo, update: true }, () => resolve()));
513
+ if (await this.#repositoriesChanged(before)) {
514
+ return this.#repositoryFromObjects(repo);
515
+ }
516
+ // The host writes the object with every download, so it is late, or the host did not write it:
517
+ // because it failed to, or because a request without download was already running and was
518
+ // answered for both. Only the database tells which.
519
+ this.adapter.log.debug(`${host} did not update system.repositories in time, reading it from the database`);
520
+ const systemRepos = await this.adapter.getForeignObjectAsync('system.repositories');
521
+ return this.#repositoryFromObjects(repo, systemRepos);
522
+ }
523
+ /**
524
+ * Waits until `system.repositories` in the objects in memory is no longer the given one.
525
+ *
526
+ * @param before the object as it was
527
+ * @returns true if it changed, false if it did not within `REPO_UPDATE_WAIT`
528
+ */
529
+ #repositoriesChanged(before) {
530
+ const changed = () => this.objects?.['system.repositories'] !== before;
531
+ if (changed()) {
532
+ return Promise.resolve(true);
533
+ }
534
+ return new Promise(resolve => {
535
+ const done = () => {
536
+ clearTimeout(this.repoObjectWaiters.get(done));
537
+ this.repoObjectWaiters.delete(done);
538
+ resolve(changed());
539
+ };
540
+ this.repoObjectWaiters.set(done, setTimeout(done, REPO_UPDATE_WAIT));
541
+ });
542
+ }
543
+ /**
544
+ * The repository as the GUI needs it, see `getReducedRepository`.
545
+ *
546
+ * @param host host to ask if the objects in memory cannot answer, e.g. `system.host.raspberrypi`
547
+ * @param options what to read and how to reduce it
548
+ */
549
+ async #reducedRepository(host, options) {
550
+ let source;
551
+ if (options.update) {
552
+ source = await this.#updatedRepositoryFromObjects(host, options.repo);
553
+ }
554
+ else {
555
+ source = this.#repositoryFromObjects(options.repo);
556
+ if (source) {
557
+ // the GUI has what it needs, only the side effects of asking the host are still wanted
558
+ this.#triggerRepositorySideEffects(host);
559
+ }
560
+ }
561
+ if (!source) {
562
+ source = await new Promise(resolve => this._sendToHost(host, 'getRepository', { repo: options.repo, update: !!options.update }, data => resolve(data && typeof data === 'object' && !data.error
563
+ ? data
564
+ : {})));
565
+ }
566
+ if (options.adapters) {
567
+ return toReducedRepository(source, () => true, options.lang, options.adapters);
568
+ }
569
+ const installed = await this.#installedAdapters();
570
+ // the controller keeps its news for the update dialog of the hosts
571
+ return toReducedRepository(source, (name, entry) => installed.has(name) || !!entry.controller, options.lang);
572
+ }
298
573
  /**
299
574
  * Asks the host for the repository without waiting for the answer, at most once an hour and only
300
575
  * after a delay, so the side effects of that command keep happening without holding up the GUI.
@@ -1450,19 +1725,22 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
1450
1725
  */
1451
1726
  this.commands.getCompactSystemRepositories = (socket, callback) => {
1452
1727
  if (this._checkPermissions(socket, 'getObject', callback)) {
1453
- void this.adapter.getForeignObject('system.repositories', { user: socket._acl?.user }, (error, obj) => {
1454
- if (obj?.native?.repositories) {
1455
- Object.keys(obj.native.repositories).forEach(name => {
1456
- if (obj.native.repositories[name].json) {
1457
- // limit information to _repoInfo
1458
- obj.native.repositories[name].json = {
1459
- _repoInfo: obj.native.repositories[name].json._repoInfo,
1460
- };
1461
- }
1462
- });
1728
+ // Reading it from the database parses the whole content of every repository - 23 MB on
1729
+ // an installation with the beta repository, almost a second in which admin answers
1730
+ // nothing else - for one small attribute per repository
1731
+ const cached = this.objects?.['system.repositories'];
1732
+ if (cached) {
1733
+ if (socket._acl &&
1734
+ !_a.#isAdmin(socket) &&
1735
+ !_a.#checkObject(cached, socket._acl, ACL_READ)) {
1736
+ socketCommands_1.SocketCommands._fixCallback(callback, socketCommands_1.SocketCommands.ERROR_PERMISSION);
1463
1737
  }
1464
- socketCommands_1.SocketCommands._fixCallback(callback, error, obj);
1465
- });
1738
+ else {
1739
+ socketCommands_1.SocketCommands._fixCallback(callback, null, toCompactSystemRepositories(cached));
1740
+ }
1741
+ return;
1742
+ }
1743
+ void this.adapter.getForeignObject('system.repositories', { user: socket._acl?.user }, (error, obj) => socketCommands_1.SocketCommands._fixCallback(callback, error, obj ? toCompactSystemRepositories(obj) : obj));
1466
1744
  }
1467
1745
  };
1468
1746
  /**
@@ -1490,6 +1768,28 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
1490
1768
  this.#askHostForRepository(host, callback);
1491
1769
  }
1492
1770
  };
1771
+ /**
1772
+ * #DOCUMENTATION admin
1773
+ * Get the repository with what the GUI shows of it.
1774
+ *
1775
+ * The whole repository is several megabytes, most of it the `news` of every version in every
1776
+ * language. They are delivered only for the adapters installed on any host and for the
1777
+ * controller, as only an update shows them; with `lang` all translated texts keep only that
1778
+ * language and English. Answered from the objects admin holds in memory where possible.
1779
+ * Announced as the feature `REDUCED_REPOSITORY`.
1780
+ *
1781
+ * @param socket - WebSocket client instance
1782
+ * @param host - Host to ask if the objects in memory cannot answer, e.g., `system.host.raspberrypi`
1783
+ * @param options - `{ repo?: string | string[]; update?: boolean; lang?: ioBroker.Languages; adapters?: string[] }`
1784
+ * @param callback - Callback function `(error: string | null, repository?: Record<string, RepoAdapterObject>) => void`
1785
+ */
1786
+ this.commands.getReducedRepository = (socket, host, options, callback) => {
1787
+ if (this._checkPermissions(socket, 'sendToHost', callback)) {
1788
+ this.#reducedRepository(host, options || {})
1789
+ .then(repository => socketCommands_1.SocketCommands._fixCallback(callback, null, repository))
1790
+ .catch(error => socketCommands_1.SocketCommands._fixCallback(callback, error));
1791
+ }
1792
+ };
1493
1793
  /**
1494
1794
  * #DOCUMENTATION admin
1495
1795
  * Get all hosts in a compact form to save bandwidth.
@@ -1792,6 +2092,8 @@ class SocketCommandsAdmin extends socketCommands_1.SocketCommands {
1792
2092
  clearTimeout(this.repoSideEffectTimers[host]);
1793
2093
  delete this.repoSideEffectTimers[host];
1794
2094
  }
2095
+ // nothing is going to change the objects any more
2096
+ [...this.repoObjectWaiters.keys()].forEach(done => done());
1795
2097
  super.destroy();
1796
2098
  }
1797
2099
  }
@@ -1 +1 @@
1
- {"version":3,"file":"socketCommandsAdmin.js","sourceRoot":"","sources":["../../src/lib/socketCommandsAdmin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socketCommandsAdmin.js","sourceRoot":"","sources":["../../src/lib/socketCommandsAdmin.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iobroker/socket-classes",
3
- "version": "2.7.1",
3
+ "version": "2.9.0",
4
4
  "description": "ioBroker server-side web sockets",
5
5
  "author": {
6
6
  "name": "bluefox",
@@ -30,13 +30,13 @@
30
30
  "@alcalzone/release-script": "^5.2.1",
31
31
  "@alcalzone/release-script-plugin-license": "^5.2.2",
32
32
  "@iobroker/eslint-config": "^2.3.4",
33
- "@iobroker/js-controller-common-db": "^7.2.4",
34
- "@iobroker/ws-server": "^4.5.1",
35
- "@iobroker/types": "^7.2.4",
33
+ "@iobroker/js-controller-common-db": "^7.2.5",
34
+ "@iobroker/ws-server": "^4.5.2",
35
+ "@iobroker/types": "^7.2.5",
36
36
  "@types/cookie-parser": "^1.4.10",
37
37
  "@types/node": "^22.20.5",
38
38
  "@types/passport": "^1.0.17",
39
- "iobroker.js-controller": "^7.2.4",
39
+ "iobroker.js-controller": "^7.2.5",
40
40
  "mocha": "^12.0.3",
41
41
  "typescript": "~6.0.3"
42
42
  },