@camstack/addon-export-alexa 1.2.65 → 1.2.67

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.
@@ -12842,7 +12842,26 @@ var DiscoveryCandidateSchema = object({
12842
12842
  * identity ahead of adoption. Rendering metadata (unit, precision)
12843
12843
  * flows live through the cap STATUS SLICE after adoption.
12844
12844
  */
12845
- sourceInfo: SourceInfoSchema.optional()
12845
+ sourceInfo: SourceInfoSchema.optional(),
12846
+ /**
12847
+ * Set when this candidate is a device the provider ALREADY owns.
12848
+ *
12849
+ * A scan cannot generally produce the identity a device was onboarded under
12850
+ * (Reolink keys on `mac-<mac>`, learned at adopt time), so a stableId
12851
+ * comparison never matches and an owned device looks addable. Re-adopting one
12852
+ * overwrites its config with scan-derived values — that is how a Home Hub's
12853
+ * Baichuan port was overwritten with its ONVIF port, taking the hub and its
12854
+ * three child cameras offline for four hours.
12855
+ *
12856
+ * A provider that can recognise its own devices says so here. Absent means
12857
+ * "not recognised", which is not the same as "known to be new" — a provider
12858
+ * that cannot tell simply never sets it.
12859
+ */
12860
+ alreadyOnboarded: boolean().optional(),
12861
+ /** Numeric id of the device this candidate was matched to. Set with `alreadyOnboarded`. */
12862
+ onboardedDeviceId: number().optional(),
12863
+ /** Operator-facing name of the matched device, so the UI can say WHICH one it is. */
12864
+ onboardedName: string().optional()
12846
12865
  });
12847
12866
  /**
12848
12867
  * Flat device summary returned by `createDevice` / `adoptDiscoveredDevice`.
@@ -12889,7 +12908,10 @@ method(_void(), _void(), { kind: "mutation" }), method(_void(), _void(), { kind:
12889
12908
  id: string(),
12890
12909
  name: string(),
12891
12910
  type: string()
12892
- }))), method(object({}), boolean()), method(object({ params: record(string(), unknown()).optional() }), array(DiscoveryCandidateSchema), {
12911
+ }))), method(object({ stableId: string() }), object({ deviceId: number() }), {
12912
+ kind: "mutation",
12913
+ timeoutMs: 3 * 6e4
12914
+ }), method(object({}), boolean()), method(object({ params: record(string(), unknown()).optional() }), array(DiscoveryCandidateSchema), {
12893
12915
  kind: "mutation",
12894
12916
  auth: "admin"
12895
12917
  }), method(object({}), CreationSchemaOutputSchema), method(object({}), object({ deviceType: _enum(DeviceType).nullable() })), method(object({ candidate: DiscoveryCandidateSchema }), DeviceSummarySchema, {
@@ -13170,7 +13192,8 @@ method(object({
13170
13192
  targetId: number()
13171
13193
  }), MigrateDeviceResultSchema, {
13172
13194
  kind: "mutation",
13173
- auth: "admin"
13195
+ auth: "admin",
13196
+ timeoutMs: 12 * 6e4
13174
13197
  }), method(DeviceRegisterPayloadSchema, _void(), { kind: "mutation" }), method(DeviceRemovePayloadSchema, _void(), { kind: "mutation" }), method(DevicePersistConfigPayloadSchema, _void(), { kind: "mutation" }), method(object({ deviceId: number() }), record(string(), unknown())), method(object({ deviceId: number() }), record(string(), unknown())), method(object({ deviceId: number() }), DeviceMetaSchema.nullable()), method(object({
13175
13198
  deviceId: number(),
13176
13199
  name: string()
@@ -31045,6 +31068,12 @@ Object.freeze({
31045
31068
  addonId: null,
31046
31069
  access: "view"
31047
31070
  },
31071
+ "deviceProvider.reloadDevice": {
31072
+ capName: "device-provider",
31073
+ capScope: "system",
31074
+ addonId: null,
31075
+ access: "create"
31076
+ },
31048
31077
  "deviceProvider.start": {
31049
31078
  capName: "device-provider",
31050
31079
  capScope: "system",
@@ -12815,7 +12815,26 @@ var DiscoveryCandidateSchema = object({
12815
12815
  * identity ahead of adoption. Rendering metadata (unit, precision)
12816
12816
  * flows live through the cap STATUS SLICE after adoption.
12817
12817
  */
12818
- sourceInfo: SourceInfoSchema.optional()
12818
+ sourceInfo: SourceInfoSchema.optional(),
12819
+ /**
12820
+ * Set when this candidate is a device the provider ALREADY owns.
12821
+ *
12822
+ * A scan cannot generally produce the identity a device was onboarded under
12823
+ * (Reolink keys on `mac-<mac>`, learned at adopt time), so a stableId
12824
+ * comparison never matches and an owned device looks addable. Re-adopting one
12825
+ * overwrites its config with scan-derived values — that is how a Home Hub's
12826
+ * Baichuan port was overwritten with its ONVIF port, taking the hub and its
12827
+ * three child cameras offline for four hours.
12828
+ *
12829
+ * A provider that can recognise its own devices says so here. Absent means
12830
+ * "not recognised", which is not the same as "known to be new" — a provider
12831
+ * that cannot tell simply never sets it.
12832
+ */
12833
+ alreadyOnboarded: boolean().optional(),
12834
+ /** Numeric id of the device this candidate was matched to. Set with `alreadyOnboarded`. */
12835
+ onboardedDeviceId: number().optional(),
12836
+ /** Operator-facing name of the matched device, so the UI can say WHICH one it is. */
12837
+ onboardedName: string().optional()
12819
12838
  });
12820
12839
  /**
12821
12840
  * Flat device summary returned by `createDevice` / `adoptDiscoveredDevice`.
@@ -12862,7 +12881,10 @@ method(_void(), _void(), { kind: "mutation" }), method(_void(), _void(), { kind:
12862
12881
  id: string(),
12863
12882
  name: string(),
12864
12883
  type: string()
12865
- }))), method(object({}), boolean()), method(object({ params: record(string(), unknown()).optional() }), array(DiscoveryCandidateSchema), {
12884
+ }))), method(object({ stableId: string() }), object({ deviceId: number() }), {
12885
+ kind: "mutation",
12886
+ timeoutMs: 3 * 6e4
12887
+ }), method(object({}), boolean()), method(object({ params: record(string(), unknown()).optional() }), array(DiscoveryCandidateSchema), {
12866
12888
  kind: "mutation",
12867
12889
  auth: "admin"
12868
12890
  }), method(object({}), CreationSchemaOutputSchema), method(object({}), object({ deviceType: _enum(DeviceType).nullable() })), method(object({ candidate: DiscoveryCandidateSchema }), DeviceSummarySchema, {
@@ -13143,7 +13165,8 @@ method(object({
13143
13165
  targetId: number()
13144
13166
  }), MigrateDeviceResultSchema, {
13145
13167
  kind: "mutation",
13146
- auth: "admin"
13168
+ auth: "admin",
13169
+ timeoutMs: 12 * 6e4
13147
13170
  }), method(DeviceRegisterPayloadSchema, _void(), { kind: "mutation" }), method(DeviceRemovePayloadSchema, _void(), { kind: "mutation" }), method(DevicePersistConfigPayloadSchema, _void(), { kind: "mutation" }), method(object({ deviceId: number() }), record(string(), unknown())), method(object({ deviceId: number() }), record(string(), unknown())), method(object({ deviceId: number() }), DeviceMetaSchema.nullable()), method(object({
13148
13171
  deviceId: number(),
13149
13172
  name: string()
@@ -31018,6 +31041,12 @@ Object.freeze({
31018
31041
  addonId: null,
31019
31042
  access: "view"
31020
31043
  },
31044
+ "deviceProvider.reloadDevice": {
31045
+ capName: "device-provider",
31046
+ capScope: "system",
31047
+ addonId: null,
31048
+ access: "create"
31049
+ },
31021
31050
  "deviceProvider.start": {
31022
31051
  capName: "device-provider",
31023
31052
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-export-alexa",
3
- "version": "1.2.65",
3
+ "version": "1.2.67",
4
4
  "description": "Alexa Smart Home Skill export — hub-side OAuth provider + directive handler. The companion AWS Lambda forwards Alexa directives to this addon's /addon/export-alexa/directive endpoint.",
5
5
  "keywords": [
6
6
  "camstack",