@camstack/addon-provider-dreame 0.2.124 → 0.2.125
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon.js +120 -20
- package/dist/addon.mjs +120 -20
- package/package.json +1 -1
package/dist/addon.js
CHANGED
|
@@ -58282,7 +58282,7 @@ var ZodIssueCode = {
|
|
|
58282
58282
|
var ZodFirstPartyTypeKind;
|
|
58283
58283
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
58284
58284
|
//#endregion
|
|
58285
|
-
//#region ../types/dist/sleep-
|
|
58285
|
+
//#region ../types/dist/sleep-C16NCZR2.mjs
|
|
58286
58286
|
/**
|
|
58287
58287
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
58288
58288
|
* window to float samples (D455).
|
|
@@ -81194,6 +81194,14 @@ DeviceType.Camera, method(object({ deviceId: number().int().nonnegative() }), ar
|
|
|
81194
81194
|
*/
|
|
81195
81195
|
alive: boolean()
|
|
81196
81196
|
})), method(object({
|
|
81197
|
+
deviceId: number().int().nonnegative(),
|
|
81198
|
+
sessionId: string(),
|
|
81199
|
+
downlinkMbps: number().nonnegative()
|
|
81200
|
+
}), object({
|
|
81201
|
+
outcome: _enum(["switching", "held"]),
|
|
81202
|
+
tier: CamProfileSchema.nullable(),
|
|
81203
|
+
reason: string()
|
|
81204
|
+
}), { kind: "mutation" }), method(object({
|
|
81197
81205
|
deviceId: number().int().nonnegative(),
|
|
81198
81206
|
sessionId: string()
|
|
81199
81207
|
}), WebrtcSessionDebugSchema, { kind: "query" });
|
|
@@ -85030,7 +85038,8 @@ var ConnectionEndpointSchema = object({
|
|
|
85030
85038
|
"lan-ipv6",
|
|
85031
85039
|
"public",
|
|
85032
85040
|
"loopback",
|
|
85033
|
-
"app-link"
|
|
85041
|
+
"app-link",
|
|
85042
|
+
"custom"
|
|
85034
85043
|
]),
|
|
85035
85044
|
/**
|
|
85036
85045
|
* Originating-interface kind — `lan`/`wifi`/`docker`/`vpn`/`other`/
|
|
@@ -85133,13 +85142,12 @@ var ViewerEndpointsSchema = object({
|
|
|
85133
85142
|
resolved: array(string()).readonly()
|
|
85134
85143
|
});
|
|
85135
85144
|
/**
|
|
85136
|
-
*
|
|
85137
|
-
*
|
|
85145
|
+
* DEPRECATED compatibility shape of `getHubAddresses` (D729 amendment, kept
|
|
85146
|
+
* one release for addons built against it): `cluster` is the `agents` role,
|
|
85147
|
+
* `browser` the `signIn` role; `override` is the flagged address.
|
|
85138
85148
|
*/
|
|
85139
85149
|
var HubAddressSnapshotSchema = object({
|
|
85140
|
-
/** The operator's override, or null for automatic. */
|
|
85141
85150
|
override: string().nullable(),
|
|
85142
|
-
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
85143
85151
|
resolved: string().nullable(),
|
|
85144
85152
|
source: _enum([
|
|
85145
85153
|
"override",
|
|
@@ -85148,11 +85156,61 @@ var HubAddressSnapshotSchema = object({
|
|
|
85148
85156
|
])
|
|
85149
85157
|
});
|
|
85150
85158
|
var HubAddressesSchema = object({
|
|
85151
|
-
/** "Hub address for agents" — agents' bundle/model pulls, LAN devices. */
|
|
85152
85159
|
cluster: HubAddressSnapshotSchema,
|
|
85153
|
-
/** "Public address for sign-in links" — e-mail links, OIDC, WebAuthn, OAuth2. */
|
|
85154
85160
|
browser: HubAddressSnapshotSchema
|
|
85155
85161
|
});
|
|
85162
|
+
/**
|
|
85163
|
+
* What an address is used for (`hub-address.ts`). `viewer` is many-valued;
|
|
85164
|
+
* `notifications`, `agents` and `signIn` are carried by at most one address.
|
|
85165
|
+
*/
|
|
85166
|
+
var HubAddressRoleSchema = _enum([
|
|
85167
|
+
"viewer",
|
|
85168
|
+
"notifications",
|
|
85169
|
+
"agents",
|
|
85170
|
+
"signIn"
|
|
85171
|
+
]);
|
|
85172
|
+
var RoleSourceSchema = _enum([
|
|
85173
|
+
"flagged",
|
|
85174
|
+
"auto",
|
|
85175
|
+
"none"
|
|
85176
|
+
]);
|
|
85177
|
+
/** One single-valued role: the flagged address, the one in use, and why. */
|
|
85178
|
+
var HubAddressRoleResolutionSchema = object({
|
|
85179
|
+
/** The address carrying the flag, or null = automatic. */
|
|
85180
|
+
flagged: string().nullable(),
|
|
85181
|
+
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
85182
|
+
resolved: string().nullable(),
|
|
85183
|
+
source: RoleSourceSchema
|
|
85184
|
+
});
|
|
85185
|
+
var HubViewerResolutionSchema = object({
|
|
85186
|
+
/** The addresses flagged `viewer`, or empty = automatic. */
|
|
85187
|
+
flagged: array(string()).readonly(),
|
|
85188
|
+
/** What the apps race right now. */
|
|
85189
|
+
resolved: array(string()).readonly(),
|
|
85190
|
+
source: RoleSourceSchema
|
|
85191
|
+
});
|
|
85192
|
+
var HubAddressBookSchema = object({
|
|
85193
|
+
rows: array(ConnectionEndpointSchema.extend({
|
|
85194
|
+
/** In the hub's detected palette right now. */
|
|
85195
|
+
detected: boolean(),
|
|
85196
|
+
/** Entered by the operator (removable). */
|
|
85197
|
+
custom: boolean(),
|
|
85198
|
+
/** The roles explicitly flagged on this address. */
|
|
85199
|
+
flags: array(HubAddressRoleSchema).readonly(),
|
|
85200
|
+
/** The roles this address serves right now — flagged or automatic. */
|
|
85201
|
+
inUse: array(HubAddressRoleSchema).readonly(),
|
|
85202
|
+
/** The roles this address may be flagged with. */
|
|
85203
|
+
eligible: array(HubAddressRoleSchema).readonly()
|
|
85204
|
+
})).readonly(),
|
|
85205
|
+
roles: object({
|
|
85206
|
+
viewer: HubViewerResolutionSchema,
|
|
85207
|
+
notifications: HubAddressRoleResolutionSchema,
|
|
85208
|
+
agents: HubAddressRoleResolutionSchema,
|
|
85209
|
+
signIn: HubAddressRoleResolutionSchema
|
|
85210
|
+
}),
|
|
85211
|
+
/** The `hub=` an app link carries (D709), or null. */
|
|
85212
|
+
appLinkHub: string().nullable()
|
|
85213
|
+
});
|
|
85156
85214
|
var AllowedAddressesSchema = object({
|
|
85157
85215
|
/**
|
|
85158
85216
|
* Allowlist of interface addresses operators have explicitly opted
|
|
@@ -85199,13 +85257,24 @@ method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(obje
|
|
|
85199
85257
|
* an address notification links can be flagged with, not a hub
|
|
85200
85258
|
* route. Default `false`: racers and rankers never see it. */
|
|
85201
85259
|
includeAppLink: boolean().optional()
|
|
85202
|
-
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(
|
|
85203
|
-
|
|
85204
|
-
|
|
85205
|
-
}),
|
|
85260
|
+
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(object({ scheme: _enum(["http", "https"]).optional() }).optional(), HubAddressBookSchema), method(object({
|
|
85261
|
+
baseUrl: string(),
|
|
85262
|
+
label: string().max(80)
|
|
85263
|
+
}), HubAddressBookSchema, {
|
|
85264
|
+
kind: "mutation",
|
|
85265
|
+
auth: "admin"
|
|
85266
|
+
}), method(object({ baseUrl: string() }), HubAddressBookSchema, {
|
|
85267
|
+
kind: "mutation",
|
|
85268
|
+
auth: "admin"
|
|
85269
|
+
}), method(object({
|
|
85270
|
+
role: HubAddressRoleSchema,
|
|
85271
|
+
baseUrl: string().nullable(),
|
|
85272
|
+
enabled: boolean(),
|
|
85273
|
+
acceptInsecureHttp: boolean().optional()
|
|
85274
|
+
}), HubAddressBookSchema, {
|
|
85206
85275
|
kind: "mutation",
|
|
85207
85276
|
auth: "admin"
|
|
85208
|
-
}), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
85277
|
+
}), method(_void(), HubAddressesSchema), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
85209
85278
|
kind: "mutation",
|
|
85210
85279
|
auth: "admin"
|
|
85211
85280
|
}), method(object({
|
|
@@ -96811,12 +96880,24 @@ Object.freeze({
|
|
|
96811
96880
|
addonId: null,
|
|
96812
96881
|
access: "view"
|
|
96813
96882
|
},
|
|
96883
|
+
"localNetwork.addCustomAddress": {
|
|
96884
|
+
capName: "local-network",
|
|
96885
|
+
capScope: "system",
|
|
96886
|
+
addonId: null,
|
|
96887
|
+
access: "create"
|
|
96888
|
+
},
|
|
96814
96889
|
"localNetwork.downloadCa": {
|
|
96815
96890
|
capName: "local-network",
|
|
96816
96891
|
capScope: "system",
|
|
96817
96892
|
addonId: null,
|
|
96818
96893
|
access: "view"
|
|
96819
96894
|
},
|
|
96895
|
+
"localNetwork.getAddresses": {
|
|
96896
|
+
capName: "local-network",
|
|
96897
|
+
capScope: "system",
|
|
96898
|
+
addonId: null,
|
|
96899
|
+
access: "view"
|
|
96900
|
+
},
|
|
96820
96901
|
"localNetwork.getAllowedAddresses": {
|
|
96821
96902
|
capName: "local-network",
|
|
96822
96903
|
capScope: "system",
|
|
@@ -96871,6 +96952,12 @@ Object.freeze({
|
|
|
96871
96952
|
addonId: null,
|
|
96872
96953
|
access: "create"
|
|
96873
96954
|
},
|
|
96955
|
+
"localNetwork.removeCustomAddress": {
|
|
96956
|
+
capName: "local-network",
|
|
96957
|
+
capScope: "system",
|
|
96958
|
+
addonId: null,
|
|
96959
|
+
access: "delete"
|
|
96960
|
+
},
|
|
96874
96961
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
96875
96962
|
capName: "local-network",
|
|
96876
96963
|
capScope: "system",
|
|
@@ -96883,13 +96970,13 @@ Object.freeze({
|
|
|
96883
96970
|
addonId: null,
|
|
96884
96971
|
access: "create"
|
|
96885
96972
|
},
|
|
96886
|
-
"localNetwork.
|
|
96973
|
+
"localNetwork.setAddressRole": {
|
|
96887
96974
|
capName: "local-network",
|
|
96888
96975
|
capScope: "system",
|
|
96889
96976
|
addonId: null,
|
|
96890
96977
|
access: "create"
|
|
96891
96978
|
},
|
|
96892
|
-
"localNetwork.
|
|
96979
|
+
"localNetwork.setAllowedAddresses": {
|
|
96893
96980
|
capName: "local-network",
|
|
96894
96981
|
capScope: "system",
|
|
96895
96982
|
addonId: null,
|
|
@@ -101143,6 +101230,12 @@ Object.freeze({
|
|
|
101143
101230
|
addonId: null,
|
|
101144
101231
|
access: "create"
|
|
101145
101232
|
},
|
|
101233
|
+
"webrtcSession.applyDownlinkProbe": {
|
|
101234
|
+
capName: "webrtc-session",
|
|
101235
|
+
capScope: "device",
|
|
101236
|
+
addonId: null,
|
|
101237
|
+
access: "create"
|
|
101238
|
+
},
|
|
101146
101239
|
"webrtcSession.closeSession": {
|
|
101147
101240
|
capName: "webrtc-session",
|
|
101148
101241
|
capScope: "device",
|
|
@@ -105065,6 +105158,11 @@ Object.freeze({
|
|
|
105065
105158
|
form: "single",
|
|
105066
105159
|
optional: false
|
|
105067
105160
|
}],
|
|
105161
|
+
"webrtcSession.applyDownlinkProbe": [{
|
|
105162
|
+
name: "deviceId",
|
|
105163
|
+
form: "single",
|
|
105164
|
+
optional: false
|
|
105165
|
+
}],
|
|
105068
105166
|
"webrtcSession.closeSession": [{
|
|
105069
105167
|
name: "deviceId",
|
|
105070
105168
|
form: "single",
|
|
@@ -108690,8 +108788,9 @@ function cameraStreamCatalog(session) {
|
|
|
108690
108788
|
/**
|
|
108691
108789
|
* The host the broker is told to dial. The provider and the ingest owner
|
|
108692
108790
|
* share the hub today, but a broker on another node reaches the hub only
|
|
108693
|
-
* through the hub's address for agents — `local-network.
|
|
108694
|
-
* .
|
|
108791
|
+
* through the hub's address for agents — `local-network.getAddresses()
|
|
108792
|
+
* .roles.agents` (the address flagged "Agents" on the Network page, else the
|
|
108793
|
+
* detected LAN address).
|
|
108695
108794
|
* Loopback when that names nothing: then the only broker that can dial at
|
|
108696
108795
|
* all is this node's own.
|
|
108697
108796
|
*/
|
|
@@ -155087,14 +155186,15 @@ var DreameCameraDevice = class extends DreameChildDevice {
|
|
|
155087
155186
|
unsubscribeRefresh = null;
|
|
155088
155187
|
/** Register the stream on the broker — the server, or the lazy sentinel (push semantics; the catalog is the durable copy). */
|
|
155089
155188
|
/**
|
|
155090
|
-
* The hub's address for agents
|
|
155091
|
-
*
|
|
155189
|
+
* The hub's address for agents and LAN devices
|
|
155190
|
+
* (`local-network.getAddresses().roles.agents`: the address flagged
|
|
155191
|
+
* "Agents" on the Network page, else the detected LAN address). A failed
|
|
155092
155192
|
* read is `null` — `advertisedRfcHost` then answers loopback, which this
|
|
155093
155193
|
* node's own broker can still dial.
|
|
155094
155194
|
*/
|
|
155095
155195
|
async hubClusterAddress() {
|
|
155096
155196
|
try {
|
|
155097
|
-
return (await this.ctx.api.localNetwork.
|
|
155197
|
+
return (await this.ctx.api.localNetwork.getAddresses.query()).roles.agents.resolved;
|
|
155098
155198
|
} catch (err) {
|
|
155099
155199
|
this.ctx.logger.warn("robot camera: hub address unavailable — advertising loopback", {
|
|
155100
155200
|
tags: { deviceId: this.id },
|
package/dist/addon.mjs
CHANGED
|
@@ -58279,7 +58279,7 @@ var ZodIssueCode = {
|
|
|
58279
58279
|
var ZodFirstPartyTypeKind;
|
|
58280
58280
|
ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
|
|
58281
58281
|
//#endregion
|
|
58282
|
-
//#region ../types/dist/sleep-
|
|
58282
|
+
//#region ../types/dist/sleep-C16NCZR2.mjs
|
|
58283
58283
|
/**
|
|
58284
58284
|
* The audio chunk plane's byte format, and the ONE expansion from a coded
|
|
58285
58285
|
* window to float samples (D455).
|
|
@@ -81191,6 +81191,14 @@ DeviceType.Camera, method(object({ deviceId: number().int().nonnegative() }), ar
|
|
|
81191
81191
|
*/
|
|
81192
81192
|
alive: boolean()
|
|
81193
81193
|
})), method(object({
|
|
81194
|
+
deviceId: number().int().nonnegative(),
|
|
81195
|
+
sessionId: string(),
|
|
81196
|
+
downlinkMbps: number().nonnegative()
|
|
81197
|
+
}), object({
|
|
81198
|
+
outcome: _enum(["switching", "held"]),
|
|
81199
|
+
tier: CamProfileSchema.nullable(),
|
|
81200
|
+
reason: string()
|
|
81201
|
+
}), { kind: "mutation" }), method(object({
|
|
81194
81202
|
deviceId: number().int().nonnegative(),
|
|
81195
81203
|
sessionId: string()
|
|
81196
81204
|
}), WebrtcSessionDebugSchema, { kind: "query" });
|
|
@@ -85027,7 +85035,8 @@ var ConnectionEndpointSchema = object({
|
|
|
85027
85035
|
"lan-ipv6",
|
|
85028
85036
|
"public",
|
|
85029
85037
|
"loopback",
|
|
85030
|
-
"app-link"
|
|
85038
|
+
"app-link",
|
|
85039
|
+
"custom"
|
|
85031
85040
|
]),
|
|
85032
85041
|
/**
|
|
85033
85042
|
* Originating-interface kind — `lan`/`wifi`/`docker`/`vpn`/`other`/
|
|
@@ -85130,13 +85139,12 @@ var ViewerEndpointsSchema = object({
|
|
|
85130
85139
|
resolved: array(string()).readonly()
|
|
85131
85140
|
});
|
|
85132
85141
|
/**
|
|
85133
|
-
*
|
|
85134
|
-
*
|
|
85142
|
+
* DEPRECATED compatibility shape of `getHubAddresses` (D729 amendment, kept
|
|
85143
|
+
* one release for addons built against it): `cluster` is the `agents` role,
|
|
85144
|
+
* `browser` the `signIn` role; `override` is the flagged address.
|
|
85135
85145
|
*/
|
|
85136
85146
|
var HubAddressSnapshotSchema = object({
|
|
85137
|
-
/** The operator's override, or null for automatic. */
|
|
85138
85147
|
override: string().nullable(),
|
|
85139
|
-
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
85140
85148
|
resolved: string().nullable(),
|
|
85141
85149
|
source: _enum([
|
|
85142
85150
|
"override",
|
|
@@ -85145,11 +85153,61 @@ var HubAddressSnapshotSchema = object({
|
|
|
85145
85153
|
])
|
|
85146
85154
|
});
|
|
85147
85155
|
var HubAddressesSchema = object({
|
|
85148
|
-
/** "Hub address for agents" — agents' bundle/model pulls, LAN devices. */
|
|
85149
85156
|
cluster: HubAddressSnapshotSchema,
|
|
85150
|
-
/** "Public address for sign-in links" — e-mail links, OIDC, WebAuthn, OAuth2. */
|
|
85151
85157
|
browser: HubAddressSnapshotSchema
|
|
85152
85158
|
});
|
|
85159
|
+
/**
|
|
85160
|
+
* What an address is used for (`hub-address.ts`). `viewer` is many-valued;
|
|
85161
|
+
* `notifications`, `agents` and `signIn` are carried by at most one address.
|
|
85162
|
+
*/
|
|
85163
|
+
var HubAddressRoleSchema = _enum([
|
|
85164
|
+
"viewer",
|
|
85165
|
+
"notifications",
|
|
85166
|
+
"agents",
|
|
85167
|
+
"signIn"
|
|
85168
|
+
]);
|
|
85169
|
+
var RoleSourceSchema = _enum([
|
|
85170
|
+
"flagged",
|
|
85171
|
+
"auto",
|
|
85172
|
+
"none"
|
|
85173
|
+
]);
|
|
85174
|
+
/** One single-valued role: the flagged address, the one in use, and why. */
|
|
85175
|
+
var HubAddressRoleResolutionSchema = object({
|
|
85176
|
+
/** The address carrying the flag, or null = automatic. */
|
|
85177
|
+
flagged: string().nullable(),
|
|
85178
|
+
/** The address in use, or null when nothing qualifies (never loopback). */
|
|
85179
|
+
resolved: string().nullable(),
|
|
85180
|
+
source: RoleSourceSchema
|
|
85181
|
+
});
|
|
85182
|
+
var HubViewerResolutionSchema = object({
|
|
85183
|
+
/** The addresses flagged `viewer`, or empty = automatic. */
|
|
85184
|
+
flagged: array(string()).readonly(),
|
|
85185
|
+
/** What the apps race right now. */
|
|
85186
|
+
resolved: array(string()).readonly(),
|
|
85187
|
+
source: RoleSourceSchema
|
|
85188
|
+
});
|
|
85189
|
+
var HubAddressBookSchema = object({
|
|
85190
|
+
rows: array(ConnectionEndpointSchema.extend({
|
|
85191
|
+
/** In the hub's detected palette right now. */
|
|
85192
|
+
detected: boolean(),
|
|
85193
|
+
/** Entered by the operator (removable). */
|
|
85194
|
+
custom: boolean(),
|
|
85195
|
+
/** The roles explicitly flagged on this address. */
|
|
85196
|
+
flags: array(HubAddressRoleSchema).readonly(),
|
|
85197
|
+
/** The roles this address serves right now — flagged or automatic. */
|
|
85198
|
+
inUse: array(HubAddressRoleSchema).readonly(),
|
|
85199
|
+
/** The roles this address may be flagged with. */
|
|
85200
|
+
eligible: array(HubAddressRoleSchema).readonly()
|
|
85201
|
+
})).readonly(),
|
|
85202
|
+
roles: object({
|
|
85203
|
+
viewer: HubViewerResolutionSchema,
|
|
85204
|
+
notifications: HubAddressRoleResolutionSchema,
|
|
85205
|
+
agents: HubAddressRoleResolutionSchema,
|
|
85206
|
+
signIn: HubAddressRoleResolutionSchema
|
|
85207
|
+
}),
|
|
85208
|
+
/** The `hub=` an app link carries (D709), or null. */
|
|
85209
|
+
appLinkHub: string().nullable()
|
|
85210
|
+
});
|
|
85153
85211
|
var AllowedAddressesSchema = object({
|
|
85154
85212
|
/**
|
|
85155
85213
|
* Allowlist of interface addresses operators have explicitly opted
|
|
@@ -85196,13 +85254,24 @@ method(_void(), ListResultSchema), method(_void(), PreferredSchema), method(obje
|
|
|
85196
85254
|
* an address notification links can be flagged with, not a hub
|
|
85197
85255
|
* route. Default `false`: racers and rankers never see it. */
|
|
85198
85256
|
includeAppLink: boolean().optional()
|
|
85199
|
-
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(
|
|
85200
|
-
|
|
85201
|
-
|
|
85202
|
-
}),
|
|
85257
|
+
}), GetConnectionEndpointsResultSchema), method(_void(), NotificationEndpointSchema), method(object({ baseUrl: string().nullable() }), NotificationEndpointSchema, { kind: "mutation" }), method(_void(), ViewerEndpointsSchema), method(object({ baseUrls: array(string()).readonly() }), ViewerEndpointsSchema, { kind: "mutation" }), method(object({ scheme: _enum(["http", "https"]).optional() }).optional(), HubAddressBookSchema), method(object({
|
|
85258
|
+
baseUrl: string(),
|
|
85259
|
+
label: string().max(80)
|
|
85260
|
+
}), HubAddressBookSchema, {
|
|
85261
|
+
kind: "mutation",
|
|
85262
|
+
auth: "admin"
|
|
85263
|
+
}), method(object({ baseUrl: string() }), HubAddressBookSchema, {
|
|
85264
|
+
kind: "mutation",
|
|
85265
|
+
auth: "admin"
|
|
85266
|
+
}), method(object({
|
|
85267
|
+
role: HubAddressRoleSchema,
|
|
85268
|
+
baseUrl: string().nullable(),
|
|
85269
|
+
enabled: boolean(),
|
|
85270
|
+
acceptInsecureHttp: boolean().optional()
|
|
85271
|
+
}), HubAddressBookSchema, {
|
|
85203
85272
|
kind: "mutation",
|
|
85204
85273
|
auth: "admin"
|
|
85205
|
-
}), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
85274
|
+
}), method(_void(), HubAddressesSchema), method(_void(), AllowedAddressesSchema), method(AllowedAddressesSchema, object({ success: literal(true) }), { kind: "mutation" }), method(_void(), AllowedAddressesSchema, { kind: "mutation" }), method(_void(), TlsStatusSchema), method(object({ reason: string().optional() }), TlsStatusSchema, {
|
|
85206
85275
|
kind: "mutation",
|
|
85207
85276
|
auth: "admin"
|
|
85208
85277
|
}), method(object({
|
|
@@ -96808,12 +96877,24 @@ Object.freeze({
|
|
|
96808
96877
|
addonId: null,
|
|
96809
96878
|
access: "view"
|
|
96810
96879
|
},
|
|
96880
|
+
"localNetwork.addCustomAddress": {
|
|
96881
|
+
capName: "local-network",
|
|
96882
|
+
capScope: "system",
|
|
96883
|
+
addonId: null,
|
|
96884
|
+
access: "create"
|
|
96885
|
+
},
|
|
96811
96886
|
"localNetwork.downloadCa": {
|
|
96812
96887
|
capName: "local-network",
|
|
96813
96888
|
capScope: "system",
|
|
96814
96889
|
addonId: null,
|
|
96815
96890
|
access: "view"
|
|
96816
96891
|
},
|
|
96892
|
+
"localNetwork.getAddresses": {
|
|
96893
|
+
capName: "local-network",
|
|
96894
|
+
capScope: "system",
|
|
96895
|
+
addonId: null,
|
|
96896
|
+
access: "view"
|
|
96897
|
+
},
|
|
96817
96898
|
"localNetwork.getAllowedAddresses": {
|
|
96818
96899
|
capName: "local-network",
|
|
96819
96900
|
capScope: "system",
|
|
@@ -96868,6 +96949,12 @@ Object.freeze({
|
|
|
96868
96949
|
addonId: null,
|
|
96869
96950
|
access: "create"
|
|
96870
96951
|
},
|
|
96952
|
+
"localNetwork.removeCustomAddress": {
|
|
96953
|
+
capName: "local-network",
|
|
96954
|
+
capScope: "system",
|
|
96955
|
+
addonId: null,
|
|
96956
|
+
access: "delete"
|
|
96957
|
+
},
|
|
96871
96958
|
"localNetwork.resetAllowlistToBestMatch": {
|
|
96872
96959
|
capName: "local-network",
|
|
96873
96960
|
capScope: "system",
|
|
@@ -96880,13 +96967,13 @@ Object.freeze({
|
|
|
96880
96967
|
addonId: null,
|
|
96881
96968
|
access: "create"
|
|
96882
96969
|
},
|
|
96883
|
-
"localNetwork.
|
|
96970
|
+
"localNetwork.setAddressRole": {
|
|
96884
96971
|
capName: "local-network",
|
|
96885
96972
|
capScope: "system",
|
|
96886
96973
|
addonId: null,
|
|
96887
96974
|
access: "create"
|
|
96888
96975
|
},
|
|
96889
|
-
"localNetwork.
|
|
96976
|
+
"localNetwork.setAllowedAddresses": {
|
|
96890
96977
|
capName: "local-network",
|
|
96891
96978
|
capScope: "system",
|
|
96892
96979
|
addonId: null,
|
|
@@ -101140,6 +101227,12 @@ Object.freeze({
|
|
|
101140
101227
|
addonId: null,
|
|
101141
101228
|
access: "create"
|
|
101142
101229
|
},
|
|
101230
|
+
"webrtcSession.applyDownlinkProbe": {
|
|
101231
|
+
capName: "webrtc-session",
|
|
101232
|
+
capScope: "device",
|
|
101233
|
+
addonId: null,
|
|
101234
|
+
access: "create"
|
|
101235
|
+
},
|
|
101143
101236
|
"webrtcSession.closeSession": {
|
|
101144
101237
|
capName: "webrtc-session",
|
|
101145
101238
|
capScope: "device",
|
|
@@ -105062,6 +105155,11 @@ Object.freeze({
|
|
|
105062
105155
|
form: "single",
|
|
105063
105156
|
optional: false
|
|
105064
105157
|
}],
|
|
105158
|
+
"webrtcSession.applyDownlinkProbe": [{
|
|
105159
|
+
name: "deviceId",
|
|
105160
|
+
form: "single",
|
|
105161
|
+
optional: false
|
|
105162
|
+
}],
|
|
105065
105163
|
"webrtcSession.closeSession": [{
|
|
105066
105164
|
name: "deviceId",
|
|
105067
105165
|
form: "single",
|
|
@@ -108687,8 +108785,9 @@ function cameraStreamCatalog(session) {
|
|
|
108687
108785
|
/**
|
|
108688
108786
|
* The host the broker is told to dial. The provider and the ingest owner
|
|
108689
108787
|
* share the hub today, but a broker on another node reaches the hub only
|
|
108690
|
-
* through the hub's address for agents — `local-network.
|
|
108691
|
-
* .
|
|
108788
|
+
* through the hub's address for agents — `local-network.getAddresses()
|
|
108789
|
+
* .roles.agents` (the address flagged "Agents" on the Network page, else the
|
|
108790
|
+
* detected LAN address).
|
|
108692
108791
|
* Loopback when that names nothing: then the only broker that can dial at
|
|
108693
108792
|
* all is this node's own.
|
|
108694
108793
|
*/
|
|
@@ -155084,14 +155183,15 @@ var DreameCameraDevice = class extends DreameChildDevice {
|
|
|
155084
155183
|
unsubscribeRefresh = null;
|
|
155085
155184
|
/** Register the stream on the broker — the server, or the lazy sentinel (push semantics; the catalog is the durable copy). */
|
|
155086
155185
|
/**
|
|
155087
|
-
* The hub's address for agents
|
|
155088
|
-
*
|
|
155186
|
+
* The hub's address for agents and LAN devices
|
|
155187
|
+
* (`local-network.getAddresses().roles.agents`: the address flagged
|
|
155188
|
+
* "Agents" on the Network page, else the detected LAN address). A failed
|
|
155089
155189
|
* read is `null` — `advertisedRfcHost` then answers loopback, which this
|
|
155090
155190
|
* node's own broker can still dial.
|
|
155091
155191
|
*/
|
|
155092
155192
|
async hubClusterAddress() {
|
|
155093
155193
|
try {
|
|
155094
|
-
return (await this.ctx.api.localNetwork.
|
|
155194
|
+
return (await this.ctx.api.localNetwork.getAddresses.query()).roles.agents.resolved;
|
|
155095
155195
|
} catch (err) {
|
|
155096
155196
|
this.ctx.logger.warn("robot camera: hub address unavailable — advertising loopback", {
|
|
155097
155197
|
tags: { deviceId: this.id },
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-provider-dreame",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.125",
|
|
4
4
|
"description": "Dreame robot-vacuum / lawn-mower device-provider addon for CamStack — wraps the @apocaliss92/nodedreame Dreamehome cloud client",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|