@bikefinder/sdk 0.1.6 → 0.1.8

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.
@@ -5029,7 +5029,7 @@ export const zDeviceObservationValuesCellReading = z
5029
5029
  rsrq: z.number().gte(-60).lte(20).nullable(),
5030
5030
  })
5031
5031
  .catchall(z.unknown());
5032
- export const zDeviceObservationValuesCellScan = z
5032
+ export const zDeviceObservationValuesCellularEnvironment = z
5033
5033
  .object({
5034
5034
  serving: zDeviceObservationValuesCellReading,
5035
5035
  rat: z.enum(["lteM", "nbIot"]),
@@ -8888,25 +8888,25 @@ export const zAwsPowerWifiTimeoutsReading = z.union([
8888
8888
  .catchall(z.unknown()),
8889
8889
  ]);
8890
8890
  /**
8891
- * Radio ble scan
8891
+ * Nearby BLE devices
8892
8892
  *
8893
8893
  * BLE scan evidence is distinct from BLE enabled/unlocked status.
8894
8894
  */
8895
- export const zDeviceRadioBleScanValue = z
8895
+ export const zDeviceRadioBleDevicesValue = z
8896
8896
  .array(zDeviceObservationValuesBleDevice)
8897
8897
  .max(20);
8898
- export const zAwsRadioBleScanObservation = z
8898
+ export const zAwsRadioBleDevicesObservation = z
8899
8899
  .object({
8900
8900
  id: z.string(),
8901
8901
  definitionId: z.literal(151),
8902
8902
  subject: z.null(),
8903
- value: zDeviceRadioBleScanValue,
8903
+ value: zDeviceRadioBleDevicesValue,
8904
8904
  measuredAt: z.iso.datetime({ offset: true }),
8905
8905
  receivedAt: z.iso.datetime({ offset: true }),
8906
8906
  ageMs: z.int().gte(0).lte(9007199254740991),
8907
8907
  })
8908
8908
  .catchall(z.unknown());
8909
- export const zAwsRadioBleScanReading = z.union([
8909
+ export const zAwsRadioBleDevicesReading = z.union([
8910
8910
  z
8911
8911
  .object({
8912
8912
  series: z
@@ -8916,7 +8916,7 @@ export const zAwsRadioBleScanReading = z.union([
8916
8916
  })
8917
8917
  .catchall(z.unknown()),
8918
8918
  observationId: z.string(),
8919
- value: zDeviceRadioBleScanValue,
8919
+ value: zDeviceRadioBleDevicesValue,
8920
8920
  measuredAt: z.iso.datetime({ offset: true }),
8921
8921
  receivedAt: z.iso.datetime({ offset: true }),
8922
8922
  definitionId: z.literal(151),
@@ -8939,11 +8939,11 @@ export const zAwsRadioBleScanReading = z.union([
8939
8939
  .catchall(z.unknown()),
8940
8940
  ]);
8941
8941
  /**
8942
- * Radio cell scan
8942
+ * Cellular environment
8943
8943
  *
8944
- * Cell scan and registration latency are distinct facts; distinguish passive serving-cell updates from extended scans.
8944
+ * Coherent serving-cell identity, radio technology and signal evidence, with neighbouring or global cells when explicitly requested. Routine tracking reads serving-cell information without an extended cell search.
8945
8945
  */
8946
- export const zDeviceRadioCellScanValue = z
8946
+ export const zDeviceRadioCellularEnvironmentValue = z
8947
8947
  .object({
8948
8948
  serving: zDeviceObservationValuesCellReading,
8949
8949
  rat: z.enum(["lteM", "nbIot"]),
@@ -8951,18 +8951,18 @@ export const zDeviceRadioCellScanValue = z
8951
8951
  neighbours: z.array(zDeviceObservationValuesCellNeighbour).max(17),
8952
8952
  })
8953
8953
  .catchall(z.unknown());
8954
- export const zAwsRadioCellScanObservation = z
8954
+ export const zAwsRadioCellularEnvironmentObservation = z
8955
8955
  .object({
8956
8956
  id: z.string(),
8957
8957
  definitionId: z.literal(152),
8958
8958
  subject: z.null(),
8959
- value: zDeviceRadioCellScanValue,
8959
+ value: zDeviceRadioCellularEnvironmentValue,
8960
8960
  measuredAt: z.iso.datetime({ offset: true }),
8961
8961
  receivedAt: z.iso.datetime({ offset: true }),
8962
8962
  ageMs: z.int().gte(0).lte(9007199254740991),
8963
8963
  })
8964
8964
  .catchall(z.unknown());
8965
- export const zAwsRadioCellScanReading = z.union([
8965
+ export const zAwsRadioCellularEnvironmentReading = z.union([
8966
8966
  z
8967
8967
  .object({
8968
8968
  series: z
@@ -8972,7 +8972,7 @@ export const zAwsRadioCellScanReading = z.union([
8972
8972
  })
8973
8973
  .catchall(z.unknown()),
8974
8974
  observationId: z.string(),
8975
- value: zDeviceRadioCellScanValue,
8975
+ value: zDeviceRadioCellularEnvironmentValue,
8976
8976
  measuredAt: z.iso.datetime({ offset: true }),
8977
8977
  receivedAt: z.iso.datetime({ offset: true }),
8978
8978
  definitionId: z.literal(152),
@@ -8995,25 +8995,25 @@ export const zAwsRadioCellScanReading = z.union([
8995
8995
  .catchall(z.unknown()),
8996
8996
  ]);
8997
8997
  /**
8998
- * Radio wifi scan
8998
+ * Wi-Fi access points
8999
8999
  *
9000
9000
  * The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.
9001
9001
  */
9002
- export const zDeviceRadioWifiScanValue = z
9002
+ export const zDeviceRadioWifiAccessPointsValue = z
9003
9003
  .array(zDeviceObservationValuesWifiAccessPoint)
9004
9004
  .max(20);
9005
- export const zAwsRadioWifiScanObservation = z
9005
+ export const zAwsRadioWifiAccessPointsObservation = z
9006
9006
  .object({
9007
9007
  id: z.string(),
9008
9008
  definitionId: z.literal(153),
9009
9009
  subject: z.null(),
9010
- value: zDeviceRadioWifiScanValue,
9010
+ value: zDeviceRadioWifiAccessPointsValue,
9011
9011
  measuredAt: z.iso.datetime({ offset: true }),
9012
9012
  receivedAt: z.iso.datetime({ offset: true }),
9013
9013
  ageMs: z.int().gte(0).lte(9007199254740991),
9014
9014
  })
9015
9015
  .catchall(z.unknown());
9016
- export const zAwsRadioWifiScanReading = z.union([
9016
+ export const zAwsRadioWifiAccessPointsReading = z.union([
9017
9017
  z
9018
9018
  .object({
9019
9019
  series: z
@@ -9023,7 +9023,7 @@ export const zAwsRadioWifiScanReading = z.union([
9023
9023
  })
9024
9024
  .catchall(z.unknown()),
9025
9025
  observationId: z.string(),
9026
- value: zDeviceRadioWifiScanValue,
9026
+ value: zDeviceRadioWifiAccessPointsValue,
9027
9027
  measuredAt: z.iso.datetime({ offset: true }),
9028
9028
  receivedAt: z.iso.datetime({ offset: true }),
9029
9029
  definitionId: z.literal(153),
@@ -9094,14 +9094,14 @@ export const zDeviceSettings = z
9094
9094
  bleAdvertisingEnabled: z.boolean().optional(),
9095
9095
  bleAdvertisingRequiresExternalPower: z.boolean().optional(),
9096
9096
  bleAdvertisingIntervalUnits: z.int().gte(32).lte(16384).optional(),
9097
- mode: z.string().optional(),
9097
+ mode: z.int().gte(0).lte(2).optional(),
9098
9098
  poweredReportIntervalSeconds: z.int().gte(30).lte(86400).optional(),
9099
- standardIdleSeconds: z.int().gte(60).lte(604800).optional(),
9100
- securityIdleSeconds: z.int().gte(60).lte(604800).optional(),
9101
- trackingIdleSeconds: z.int().gte(10).lte(86400).optional(),
9102
- standardMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9103
- securityMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9104
- trackingMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9099
+ mode0IdleSeconds: z.int().gte(60).lte(604800).optional(),
9100
+ mode1IdleSeconds: z.int().gte(60).lte(604800).optional(),
9101
+ mode2IdleSeconds: z.int().gte(10).lte(86400).optional(),
9102
+ mode0MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9103
+ mode1MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9104
+ mode2MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
9105
9105
  psmResidenceSeconds: z.int().gte(0).lte(86400).optional(),
9106
9106
  commandListenSeconds: z.int().gte(0).lte(3600).optional(),
9107
9107
  gnssSearchTimeoutSeconds: z.int().gte(1).lte(3600).optional(),
@@ -9282,7 +9282,7 @@ export const zDeviceWorkCompletedValue = z
9282
9282
  activityEntries: zDeviceObservationValuesActivityEntries,
9283
9283
  recoveries: zDeviceObservationValuesRecoveryCounts,
9284
9284
  saturated: z.boolean(),
9285
- mode: z.string(),
9285
+ mode: z.int().gte(0).lte(2),
9286
9286
  })
9287
9287
  .catchall(z.unknown());
9288
9288
  export const zAwsWorkCompletedObservation = z
@@ -9336,7 +9336,7 @@ export const zAwsWorkCompletedReading = z.union([
9336
9336
  export const zDeviceWorkflowExecutionValue = z
9337
9337
  .object({
9338
9338
  workflowVersion: z.int().gte(1).lte(65535),
9339
- mode: z.string(),
9339
+ mode: z.int().gte(0).lte(2),
9340
9340
  state: z.string(),
9341
9341
  owner: z.enum([
9342
9342
  "workflow",
@@ -12636,9 +12636,9 @@ export const zAwsObservation = z.union([
12636
12636
  zAwsPowerWifiScanEntriesObservation,
12637
12637
  zAwsPowerWifiScanMsObservation,
12638
12638
  zAwsPowerWifiTimeoutsObservation,
12639
- zAwsRadioBleScanObservation,
12640
- zAwsRadioCellScanObservation,
12641
- zAwsRadioWifiScanObservation,
12639
+ zAwsRadioBleDevicesObservation,
12640
+ zAwsRadioCellularEnvironmentObservation,
12641
+ zAwsRadioWifiAccessPointsObservation,
12642
12642
  zAwsSystemBootedObservation,
12643
12643
  zAwsWifiScanCompletedObservation,
12644
12644
  zAwsWorkCompletedObservation,
@@ -12792,9 +12792,9 @@ export const zAwsObservationReading = z.union([
12792
12792
  zAwsPowerWifiScanEntriesReading,
12793
12793
  zAwsPowerWifiScanMsReading,
12794
12794
  zAwsPowerWifiTimeoutsReading,
12795
- zAwsRadioBleScanReading,
12796
- zAwsRadioCellScanReading,
12797
- zAwsRadioWifiScanReading,
12795
+ zAwsRadioBleDevicesReading,
12796
+ zAwsRadioCellularEnvironmentReading,
12797
+ zAwsRadioWifiAccessPointsReading,
12798
12798
  zAwsSystemBootedReading,
12799
12799
  zAwsWifiScanCompletedReading,
12800
12800
  zAwsWorkCompletedReading,
@@ -12943,9 +12943,9 @@ export const zDeviceObservationValues = z
12943
12943
  "power.wifiScanEntries": zDevicePowerWifiScanEntriesValue.optional(),
12944
12944
  "power.wifiScanMs": zDevicePowerWifiScanMsValue.optional(),
12945
12945
  "power.wifiTimeouts": zDevicePowerWifiTimeoutsValue.optional(),
12946
- "radio.bleScan": zDeviceRadioBleScanValue.optional(),
12947
- "radio.cellScan": zDeviceRadioCellScanValue.optional(),
12948
- "radio.wifiScan": zDeviceRadioWifiScanValue.optional(),
12946
+ "radio.bleDevices": zDeviceRadioBleDevicesValue.optional(),
12947
+ "radio.cellularEnvironment": zDeviceRadioCellularEnvironmentValue.optional(),
12948
+ "radio.wifiAccessPoints": zDeviceRadioWifiAccessPointsValue.optional(),
12949
12949
  "system.booted": zDeviceSystemBootedValue.optional(),
12950
12950
  "wifi.scanCompleted": zDeviceWifiScanCompletedValue.optional(),
12951
12951
  "work.completed": zDeviceWorkCompletedValue.optional(),
@@ -13007,14 +13007,14 @@ export const zReadDeviceSettings = z
13007
13007
  bleAdvertisingEnabled: z.boolean().optional(),
13008
13008
  bleAdvertisingRequiresExternalPower: z.boolean().optional(),
13009
13009
  bleAdvertisingIntervalUnits: z.int().gte(32).lte(16384).optional(),
13010
- mode: z.string().optional(),
13010
+ mode: z.int().gte(0).lte(2).optional(),
13011
13011
  poweredReportIntervalSeconds: z.int().gte(30).lte(86400).optional(),
13012
- standardIdleSeconds: z.int().gte(60).lte(604800).optional(),
13013
- securityIdleSeconds: z.int().gte(60).lte(604800).optional(),
13014
- trackingIdleSeconds: z.int().gte(10).lte(86400).optional(),
13015
- standardMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13016
- securityMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13017
- trackingMinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13012
+ mode0IdleSeconds: z.int().gte(60).lte(604800).optional(),
13013
+ mode1IdleSeconds: z.int().gte(60).lte(604800).optional(),
13014
+ mode2IdleSeconds: z.int().gte(10).lte(86400).optional(),
13015
+ mode0MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13016
+ mode1MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13017
+ mode2MinimumRestSeconds: z.int().gte(0).lte(86400).optional(),
13018
13018
  psmResidenceSeconds: z.int().gte(0).lte(86400).optional(),
13019
13019
  commandListenSeconds: z.int().gte(0).lte(3600).optional(),
13020
13020
  gnssSearchTimeoutSeconds: z.int().gte(1).lte(3600).optional(),
package/dist/index.d.ts CHANGED
@@ -23,6 +23,6 @@ export declare function createBikeFinderClient(options: ClientOptions): {
23
23
  };
24
24
  export type BikeFinderClient = ReturnType<typeof createBikeFinderClient>;
25
25
  export { workflowDefinition } from "./workflow-schema.js";
26
- export type { TrackingMode, WorkflowState } from "./workflow-schema.js";
26
+ export type { FirmwareMode, WorkflowState } from "./workflow-schema.js";
27
27
  export { observationValueSchema, observationDefinitions, settingsValueSchema } from "./device-schema.js";
28
28
  export type { ObservationFact, MetricName, DeviceSettings } from "./device-schema.js";
@@ -1,6 +1,6 @@
1
1
  export declare const workflowDefinition: {
2
- readonly version: 1;
3
- readonly modes: readonly ["standard", "security", "tracking"];
2
+ readonly version: 2;
3
+ readonly modes: readonly [0, 1, 2];
4
4
  readonly states: readonly ["idle", "battery", "connect", "cell", "wifi", "publish", "listen", "gps", "gpsPublish", "rest"];
5
5
  readonly outcomes: readonly ["done", "unavailable", "failed", "timeout", "cancelled"];
6
6
  readonly acquisition: {
@@ -194,5 +194,5 @@ export declare const workflowDefinition: {
194
194
  readonly name: "connect";
195
195
  }];
196
196
  };
197
- export type TrackingMode = (typeof workflowDefinition.modes)[number];
198
- export type WorkflowState = (typeof workflowDefinition.states)[number];
197
+ export type FirmwareMode = (typeof workflowDefinition.modes)[number];
198
+ export type WorkflowState = string;
@@ -1,10 +1,10 @@
1
1
  // Generated from protocol JSON Schemas by tools/generate-device-sdk.mjs. Do not edit.
2
2
  export const workflowDefinition = {
3
- "version": 1,
3
+ "version": 2,
4
4
  "modes": [
5
- "standard",
6
- "security",
7
- "tracking"
5
+ 0,
6
+ 1,
7
+ 2
8
8
  ],
9
9
  "states": [
10
10
  "idle",
package/openapi/api.json CHANGED
@@ -24466,13 +24466,13 @@
24466
24466
  "$ref": "#/components/schemas/AwsPowerWifiTimeoutsObservation"
24467
24467
  },
24468
24468
  {
24469
- "$ref": "#/components/schemas/AwsRadioBleScanObservation"
24469
+ "$ref": "#/components/schemas/AwsRadioBleDevicesObservation"
24470
24470
  },
24471
24471
  {
24472
- "$ref": "#/components/schemas/AwsRadioCellScanObservation"
24472
+ "$ref": "#/components/schemas/AwsRadioCellularEnvironmentObservation"
24473
24473
  },
24474
24474
  {
24475
- "$ref": "#/components/schemas/AwsRadioWifiScanObservation"
24475
+ "$ref": "#/components/schemas/AwsRadioWifiAccessPointsObservation"
24476
24476
  },
24477
24477
  {
24478
24478
  "$ref": "#/components/schemas/AwsSystemBootedObservation"
@@ -24936,13 +24936,13 @@
24936
24936
  "$ref": "#/components/schemas/AwsPowerWifiTimeoutsReading"
24937
24937
  },
24938
24938
  {
24939
- "$ref": "#/components/schemas/AwsRadioBleScanReading"
24939
+ "$ref": "#/components/schemas/AwsRadioBleDevicesReading"
24940
24940
  },
24941
24941
  {
24942
- "$ref": "#/components/schemas/AwsRadioCellScanReading"
24942
+ "$ref": "#/components/schemas/AwsRadioCellularEnvironmentReading"
24943
24943
  },
24944
24944
  {
24945
- "$ref": "#/components/schemas/AwsRadioWifiScanReading"
24945
+ "$ref": "#/components/schemas/AwsRadioWifiAccessPointsReading"
24946
24946
  },
24947
24947
  {
24948
24948
  "$ref": "#/components/schemas/AwsSystemBootedReading"
@@ -33011,7 +33011,7 @@
33011
33011
  }
33012
33012
  ]
33013
33013
  },
33014
- "AwsRadioBleScanObservation": {
33014
+ "AwsRadioBleDevicesObservation": {
33015
33015
  "required": [
33016
33016
  "id",
33017
33017
  "definitionId",
@@ -33036,7 +33036,7 @@
33036
33036
  "type": "null"
33037
33037
  },
33038
33038
  "value": {
33039
- "$ref": "#/components/schemas/DeviceRadioBleScanValue"
33039
+ "$ref": "#/components/schemas/DeviceRadioBleDevicesValue"
33040
33040
  },
33041
33041
  "measuredAt": {
33042
33042
  "type": "string",
@@ -33053,7 +33053,7 @@
33053
33053
  },
33054
33054
  "additionalProperties": false
33055
33055
  },
33056
- "AwsRadioBleScanReading": {
33056
+ "AwsRadioBleDevicesReading": {
33057
33057
  "oneOf": [
33058
33058
  {
33059
33059
  "required": [
@@ -33088,7 +33088,7 @@
33088
33088
  "type": "string"
33089
33089
  },
33090
33090
  "value": {
33091
- "$ref": "#/components/schemas/DeviceRadioBleScanValue"
33091
+ "$ref": "#/components/schemas/DeviceRadioBleDevicesValue"
33092
33092
  },
33093
33093
  "measuredAt": {
33094
33094
  "type": "string",
@@ -33159,7 +33159,7 @@
33159
33159
  }
33160
33160
  ]
33161
33161
  },
33162
- "AwsRadioCellScanObservation": {
33162
+ "AwsRadioCellularEnvironmentObservation": {
33163
33163
  "required": [
33164
33164
  "id",
33165
33165
  "definitionId",
@@ -33184,7 +33184,7 @@
33184
33184
  "type": "null"
33185
33185
  },
33186
33186
  "value": {
33187
- "$ref": "#/components/schemas/DeviceRadioCellScanValue"
33187
+ "$ref": "#/components/schemas/DeviceRadioCellularEnvironmentValue"
33188
33188
  },
33189
33189
  "measuredAt": {
33190
33190
  "type": "string",
@@ -33201,7 +33201,7 @@
33201
33201
  },
33202
33202
  "additionalProperties": false
33203
33203
  },
33204
- "AwsRadioCellScanReading": {
33204
+ "AwsRadioCellularEnvironmentReading": {
33205
33205
  "oneOf": [
33206
33206
  {
33207
33207
  "required": [
@@ -33236,7 +33236,7 @@
33236
33236
  "type": "string"
33237
33237
  },
33238
33238
  "value": {
33239
- "$ref": "#/components/schemas/DeviceRadioCellScanValue"
33239
+ "$ref": "#/components/schemas/DeviceRadioCellularEnvironmentValue"
33240
33240
  },
33241
33241
  "measuredAt": {
33242
33242
  "type": "string",
@@ -33307,7 +33307,7 @@
33307
33307
  }
33308
33308
  ]
33309
33309
  },
33310
- "AwsRadioWifiScanObservation": {
33310
+ "AwsRadioWifiAccessPointsObservation": {
33311
33311
  "required": [
33312
33312
  "id",
33313
33313
  "definitionId",
@@ -33332,7 +33332,7 @@
33332
33332
  "type": "null"
33333
33333
  },
33334
33334
  "value": {
33335
- "$ref": "#/components/schemas/DeviceRadioWifiScanValue"
33335
+ "$ref": "#/components/schemas/DeviceRadioWifiAccessPointsValue"
33336
33336
  },
33337
33337
  "measuredAt": {
33338
33338
  "type": "string",
@@ -33349,7 +33349,7 @@
33349
33349
  },
33350
33350
  "additionalProperties": false
33351
33351
  },
33352
- "AwsRadioWifiScanReading": {
33352
+ "AwsRadioWifiAccessPointsReading": {
33353
33353
  "oneOf": [
33354
33354
  {
33355
33355
  "required": [
@@ -33384,7 +33384,7 @@
33384
33384
  "type": "string"
33385
33385
  },
33386
33386
  "value": {
33387
- "$ref": "#/components/schemas/DeviceRadioWifiScanValue"
33387
+ "$ref": "#/components/schemas/DeviceRadioWifiAccessPointsValue"
33388
33388
  },
33389
33389
  "measuredAt": {
33390
33390
  "type": "string",
@@ -40250,14 +40250,14 @@
40250
40250
  "power.wifiTimeouts": {
40251
40251
  "$ref": "#/components/schemas/DevicePowerWifiTimeoutsValue"
40252
40252
  },
40253
- "radio.bleScan": {
40254
- "$ref": "#/components/schemas/DeviceRadioBleScanValue"
40253
+ "radio.bleDevices": {
40254
+ "$ref": "#/components/schemas/DeviceRadioBleDevicesValue"
40255
40255
  },
40256
- "radio.cellScan": {
40257
- "$ref": "#/components/schemas/DeviceRadioCellScanValue"
40256
+ "radio.cellularEnvironment": {
40257
+ "$ref": "#/components/schemas/DeviceRadioCellularEnvironmentValue"
40258
40258
  },
40259
- "radio.wifiScan": {
40260
- "$ref": "#/components/schemas/DeviceRadioWifiScanValue"
40259
+ "radio.wifiAccessPoints": {
40260
+ "$ref": "#/components/schemas/DeviceRadioWifiAccessPointsValue"
40261
40261
  },
40262
40262
  "system.booted": {
40263
40263
  "$ref": "#/components/schemas/DeviceSystemBootedValue"
@@ -40844,7 +40844,7 @@
40844
40844
  },
40845
40845
  "additionalProperties": false
40846
40846
  },
40847
- "DeviceObservationValues_CellScan": {
40847
+ "DeviceObservationValues_CellularEnvironment": {
40848
40848
  "uniqueItems": false,
40849
40849
  "required": [
40850
40850
  "serving",
@@ -43360,8 +43360,8 @@
43360
43360
  }
43361
43361
  }
43362
43362
  },
43363
- "DeviceRadioBleScanValue": {
43364
- "title": "Radio ble scan",
43363
+ "DeviceRadioBleDevicesValue": {
43364
+ "title": "Nearby BLE devices",
43365
43365
  "maxItems": 20,
43366
43366
  "uniqueItems": false,
43367
43367
  "type": "array",
@@ -43375,15 +43375,15 @@
43375
43375
  "subject": "device",
43376
43376
  "producer": "device",
43377
43377
  "presentation": {
43378
- "displayName": "Radio ble scan",
43378
+ "displayName": "Nearby BLE devices",
43379
43379
  "description": "BLE scan evidence is distinct from BLE enabled/unlocked status.",
43380
43380
  "hiddenByDefault": false,
43381
43381
  "formatter": "bleScan"
43382
43382
  }
43383
43383
  }
43384
43384
  },
43385
- "DeviceRadioCellScanValue": {
43386
- "title": "Radio cell scan",
43385
+ "DeviceRadioCellularEnvironmentValue": {
43386
+ "title": "Cellular environment",
43387
43387
  "uniqueItems": false,
43388
43388
  "required": [
43389
43389
  "serving",
@@ -43422,22 +43422,22 @@
43422
43422
  }
43423
43423
  },
43424
43424
  "additionalProperties": false,
43425
- "description": "Cell scan and registration latency are distinct facts; distinguish passive serving-cell updates from extended scans.",
43425
+ "description": "Coherent serving-cell identity, radio technology and signal evidence, with neighbouring or global cells when explicitly requested. Routine tracking reads serving-cell information without an extended cell search.",
43426
43426
  "x-bf": {
43427
43427
  "definitionId": 152,
43428
43428
  "role": "measurement",
43429
43429
  "subject": "device",
43430
43430
  "producer": "device",
43431
43431
  "presentation": {
43432
- "displayName": "Radio cell scan",
43433
- "description": "Cell scan and registration latency are distinct facts; distinguish passive serving-cell updates from extended scans.",
43432
+ "displayName": "Cellular environment",
43433
+ "description": "Coherent serving-cell identity, radio technology and signal evidence, with neighbouring or global cells when explicitly requested. Routine tracking reads serving-cell information without an extended cell search.",
43434
43434
  "hiddenByDefault": false,
43435
43435
  "formatter": "cellScan"
43436
43436
  }
43437
43437
  }
43438
43438
  },
43439
- "DeviceRadioWifiScanValue": {
43440
- "title": "Radio wifi scan",
43439
+ "DeviceRadioWifiAccessPointsValue": {
43440
+ "title": "Wi-Fi access points",
43441
43441
  "maxItems": 20,
43442
43442
  "uniqueItems": false,
43443
43443
  "type": "array",
@@ -43451,7 +43451,7 @@
43451
43451
  "subject": "device",
43452
43452
  "producer": "device",
43453
43453
  "presentation": {
43454
- "displayName": "Radio wifi scan",
43454
+ "displayName": "Wi-Fi access points",
43455
43455
  "description": "The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.",
43456
43456
  "hiddenByDefault": false,
43457
43457
  "formatter": "wifiScan"
@@ -43795,10 +43795,12 @@
43795
43795
  }
43796
43796
  },
43797
43797
  "mode": {
43798
- "title": "Tracking mode",
43798
+ "title": "Firmware mode ID",
43799
+ "maximum": 2,
43800
+ "minimum": 0,
43799
43801
  "uniqueItems": false,
43800
- "type": "string",
43801
- "description": "Underlying firmware behavior. Offered tracking modes are cloud-configurable profiles.",
43802
+ "type": "integer",
43803
+ "description": "Stable integer firmware mode ID: 0, 1 or 2. Each mode’s stages are defined in firmware. Public mode names are mapped to these IDs by the assigned tracking mode catalog.",
43802
43804
  "x-bf": {
43803
43805
  "unit": null
43804
43806
  }
@@ -43814,68 +43816,68 @@
43814
43816
  "unit": "s"
43815
43817
  }
43816
43818
  },
43817
- "standardIdleSeconds": {
43818
- "title": "Standard idle duration",
43819
+ "mode0IdleSeconds": {
43820
+ "title": "Mode 0 idle duration",
43819
43821
  "maximum": 604800,
43820
43822
  "minimum": 60,
43821
43823
  "uniqueItems": false,
43822
43824
  "type": "integer",
43823
- "description": "Maximum battery idle duration after a standard cycle.",
43825
+ "description": "Maximum battery idle duration after a mode 0 cycle, measured from the end of work.",
43824
43826
  "x-bf": {
43825
43827
  "unit": "s"
43826
43828
  }
43827
43829
  },
43828
- "securityIdleSeconds": {
43829
- "title": "Security idle duration",
43830
+ "mode1IdleSeconds": {
43831
+ "title": "Mode 1 idle duration",
43830
43832
  "maximum": 604800,
43831
43833
  "minimum": 60,
43832
43834
  "uniqueItems": false,
43833
43835
  "type": "integer",
43834
- "description": "Maximum battery idle duration after a security cycle.",
43836
+ "description": "Maximum battery idle duration after a mode 1 cycle, measured from the end of work.",
43835
43837
  "x-bf": {
43836
43838
  "unit": "s"
43837
43839
  }
43838
43840
  },
43839
- "trackingIdleSeconds": {
43840
- "title": "Tracking idle duration",
43841
+ "mode2IdleSeconds": {
43842
+ "title": "Mode 2 idle duration",
43841
43843
  "maximum": 86400,
43842
43844
  "minimum": 10,
43843
43845
  "uniqueItems": false,
43844
43846
  "type": "integer",
43845
- "description": "Maximum battery idle duration after a tracking cycle.",
43847
+ "description": "Maximum battery idle duration after a mode 2 cycle, measured from the end of work.",
43846
43848
  "x-bf": {
43847
43849
  "unit": "s"
43848
43850
  }
43849
43851
  },
43850
- "standardMinimumRestSeconds": {
43851
- "title": "Standard movement rest",
43852
+ "mode0MinimumRestSeconds": {
43853
+ "title": "Mode 0 minimum rest",
43852
43854
  "maximum": 86400,
43853
43855
  "minimum": 0,
43854
43856
  "uniqueItems": false,
43855
43857
  "type": "integer",
43856
- "description": "Minimum rest before movement starts another standard cycle.",
43858
+ "description": "Duration after a mode 0 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.",
43857
43859
  "x-bf": {
43858
43860
  "unit": "s"
43859
43861
  }
43860
43862
  },
43861
- "securityMinimumRestSeconds": {
43862
- "title": "Security movement rest",
43863
+ "mode1MinimumRestSeconds": {
43864
+ "title": "Mode 1 minimum rest",
43863
43865
  "maximum": 86400,
43864
43866
  "minimum": 0,
43865
43867
  "uniqueItems": false,
43866
43868
  "type": "integer",
43867
- "description": "Minimum rest before movement starts another security cycle.",
43869
+ "description": "Duration after a mode 1 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.",
43868
43870
  "x-bf": {
43869
43871
  "unit": "s"
43870
43872
  }
43871
43873
  },
43872
- "trackingMinimumRestSeconds": {
43873
- "title": "Tracking movement rest",
43874
+ "mode2MinimumRestSeconds": {
43875
+ "title": "Mode 2 minimum rest",
43874
43876
  "maximum": 86400,
43875
43877
  "minimum": 0,
43876
43878
  "uniqueItems": false,
43877
43879
  "type": "integer",
43878
- "description": "Minimum rest before movement starts another tracking cycle.",
43880
+ "description": "Duration after a mode 2 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.",
43879
43881
  "x-bf": {
43880
43882
  "unit": "s"
43881
43883
  }
@@ -44211,7 +44213,7 @@
44211
44213
  "x-bf": {
44212
44214
  "domain": "settings",
44213
44215
  "version": 1,
44214
- "settingsSchemaVersion": 28
44216
+ "settingsSchemaVersion": 33
44215
44217
  }
44216
44218
  },
44217
44219
  "DeviceSettingsAutomaticDiagnosticsPower": {
@@ -44408,8 +44410,10 @@
44408
44410
  "type": "boolean"
44409
44411
  },
44410
44412
  "mode": {
44413
+ "maximum": 2,
44414
+ "minimum": 0,
44411
44415
  "uniqueItems": false,
44412
- "type": "string"
44416
+ "type": "integer"
44413
44417
  }
44414
44418
  },
44415
44419
  "additionalProperties": false,
@@ -44471,12 +44475,14 @@
44471
44475
  "type": "integer"
44472
44476
  },
44473
44477
  "mode": {
44478
+ "maximum": 2,
44479
+ "minimum": 0,
44474
44480
  "uniqueItems": false,
44475
- "type": "string"
44481
+ "type": "integer"
44476
44482
  },
44477
44483
  "state": {
44478
- "type": "string",
44479
- "description": "Workflow diagnostic state, including idle and rest. New states may be added; callers must handle unfamiliar values."
44484
+ "uniqueItems": false,
44485
+ "type": "string"
44480
44486
  },
44481
44487
  "owner": {
44482
44488
  "uniqueItems": false,
@@ -44638,7 +44644,8 @@
44638
44644
  }
44639
44645
  ],
44640
44646
  "extensibleEnumFields": [
44641
- "mode"
44647
+ "mode",
44648
+ "state"
44642
44649
  ]
44643
44650
  }
44644
44651
  }