@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.
- package/README.md +8 -7
- package/dist/device-schema.d.ts +83 -78
- package/dist/device-schema.js +55 -59
- package/dist/generated/index.d.ts +1 -1
- package/dist/generated/sdk.gen.js +94 -1
- package/dist/generated/types.gen.d.ts +69 -72
- package/dist/generated/zod.gen.d.ts +137 -137
- package/dist/generated/zod.gen.js +45 -45
- package/dist/index.d.ts +1 -1
- package/dist/workflow-schema.d.ts +4 -4
- package/dist/workflow-schema.js +4 -4
- package/openapi/api.json +70 -63
- package/package.json +2 -2
package/README.md
CHANGED
|
@@ -50,9 +50,9 @@ The application owns subscription sharing, retained data and account scope. Subs
|
|
|
50
50
|
|
|
51
51
|
The application's Auth0 SDK supplies tokens and handles refresh. Create a new client for a new account session. `dispose()` aborts HTTP requests and stops both connections. Requests use bearer authentication, omit cookies and reject redirects. Network/validation failures reject; HTTP Problem Details are available as `result.error` by default. Writes are never automatically retried; a `503 operation_unconfirmed` may already have committed.
|
|
52
52
|
|
|
53
|
-
REST calls
|
|
53
|
+
REST calls automatically validate response structure without transforming response JSON. The API validates and converts stored data before responding; `readIssues` identifies unusable stored fields. Stream values use the native SignalR decoder; import `zTrackerDocument` from `@bikefinder/sdk/schemas` and call `.parse(value)` for the same runtime boundary check on a stream message. Both transports reference the same generated payload types. Firestore responses come from the actual C# DTOs in `Firestore/TrackerData.cs` and `Firestore/ResourceData.cs`. Additional metadata remains in explicit JSON extension fields. Server-serialized response fixtures are validated by both API and generated-client tests. IDs are exact Firestore IDs.
|
|
54
54
|
|
|
55
|
-
Other native resources expose their known fields through resource-specific document types. Their C# contracts expose only interpreted fields; unrelated stored fields stay inside the API. Tracker reports and statistics have concrete models, and access-code storage is omitted from responses. Observation values are generated unions: after `observation.definitionId === 5`, `observation.value.percent` is a number. Current readings expose the same discriminator; check `observationId !== null` before using a present reading. Device settings, the built-in workflow descriptor and command argument tuples are generated from the canonical protocol JSON contracts. Bike and preference patches expose supported properties and distinguish omission from explicit null.
|
|
55
|
+
Other native resources expose their known fields through resource-specific document types. Their C# contracts expose only interpreted fields; unrelated stored fields stay inside the API. Tracker reports and statistics have concrete models, and access-code storage is omitted from responses. Observation values are generated unions: after `observation.definitionId === 5`, `observation.value.percent` is a number. Current readings expose the same discriminator; check `observationId !== null` before using a present reading. Device settings, the built-in workflow descriptor and command argument tuples are generated from the canonical protocol JSON contracts. Bike and preference patches expose supported properties and distinguish omission from explicit null. Response validators preserve additional API fields while checking known values and required properties. Workflow diagnostic states are extensible strings, including `idle` and `rest`; display or preserve unfamiliar states. Request models retain their declared constraints and closed objects reject unknown write fields. Shared payloads have generated read variants so a tolerant response never weakens a request schema.
|
|
56
56
|
|
|
57
57
|
The handwritten entry point only configures clients, authentication and disposal. Hub methods, wire names and streaming signatures are generated. A generated type-only bridge reuses OpenAPI payload definitions instead of publishing a second set of models. There is no RxJS or MQTT dependency.
|
|
58
58
|
|
|
@@ -117,9 +117,10 @@ Command reads validate stored identity, catalog arguments, artifacts, and execut
|
|
|
117
117
|
|
|
118
118
|
## Supported API consumers
|
|
119
119
|
|
|
120
|
-
`@bikefinder/sdk@0.1.
|
|
121
|
-
|
|
122
|
-
|
|
120
|
+
`@bikefinder/sdk@0.1.7` is the supported baseline for the 2026-11-07 minimum-rest
|
|
121
|
+
release with automatic response validation and extensible diagnostic strings.
|
|
122
|
+
Older closed-state readers should upgrade for the extensible diagnostic contract.
|
|
123
|
+
SDK 0.1.6 disables automatic response validation; upgrade to 0.1.7 to retain it.
|
|
123
124
|
The preceding prelaunch cutover retired experimental `@bikefinder/api-client`
|
|
124
125
|
releases and their older AWS contracts. The `/v1` route version is unchanged.
|
|
125
126
|
Future breaking changes still require an explicit retirement decision or a
|
|
@@ -144,7 +145,7 @@ version for breaking changes and retain the supported v1 routes. Raising the
|
|
|
144
145
|
oldest supported SDK version is an explicit retirement decision, not a routine
|
|
145
146
|
way to pass CI. Dev deployment and production promotion both require this job.
|
|
146
147
|
|
|
147
|
-
|
|
148
|
-
|
|
148
|
+
Runtime validation rejects malformed known data. Stream consumers should retain
|
|
149
|
+
last valid messages and isolate failures per resource. When patching
|
|
149
150
|
settings, send only changed supported fields; preserve unfamiliar response fields
|
|
150
151
|
and do not copy a full response into a write payload.
|
package/dist/device-schema.d.ts
CHANGED
|
@@ -595,7 +595,7 @@ export declare const observationValueSchema: {
|
|
|
595
595
|
readonly required: readonly ["pci", "earfcn", "rsrp", "rsrq"];
|
|
596
596
|
readonly additionalProperties: false;
|
|
597
597
|
};
|
|
598
|
-
readonly
|
|
598
|
+
readonly CellularEnvironment: {
|
|
599
599
|
readonly type: "object";
|
|
600
600
|
readonly properties: {
|
|
601
601
|
readonly serving: {
|
|
@@ -5216,13 +5216,13 @@ export declare const observationValueSchema: {
|
|
|
5216
5216
|
};
|
|
5217
5217
|
};
|
|
5218
5218
|
};
|
|
5219
|
-
readonly "radio.
|
|
5219
|
+
readonly "radio.bleDevices": {
|
|
5220
5220
|
readonly type: "array";
|
|
5221
5221
|
readonly items: {
|
|
5222
5222
|
readonly $ref: "#/$defs/BleDevice";
|
|
5223
5223
|
};
|
|
5224
5224
|
readonly maxItems: 20;
|
|
5225
|
-
readonly title: "
|
|
5225
|
+
readonly title: "Nearby BLE devices";
|
|
5226
5226
|
readonly description: "BLE scan evidence is distinct from BLE enabled/unlocked status.";
|
|
5227
5227
|
readonly "x-bf": {
|
|
5228
5228
|
readonly definitionId: 151;
|
|
@@ -5230,37 +5230,37 @@ export declare const observationValueSchema: {
|
|
|
5230
5230
|
readonly subject: "device";
|
|
5231
5231
|
readonly producer: "device";
|
|
5232
5232
|
readonly presentation: {
|
|
5233
|
-
readonly displayName: "
|
|
5233
|
+
readonly displayName: "Nearby BLE devices";
|
|
5234
5234
|
readonly description: "BLE scan evidence is distinct from BLE enabled/unlocked status.";
|
|
5235
5235
|
readonly hiddenByDefault: false;
|
|
5236
5236
|
readonly formatter: "bleScan";
|
|
5237
5237
|
};
|
|
5238
5238
|
};
|
|
5239
5239
|
};
|
|
5240
|
-
readonly "radio.
|
|
5241
|
-
readonly $ref: "#/$defs/
|
|
5242
|
-
readonly title: "
|
|
5243
|
-
readonly description: "
|
|
5240
|
+
readonly "radio.cellularEnvironment": {
|
|
5241
|
+
readonly $ref: "#/$defs/CellularEnvironment";
|
|
5242
|
+
readonly title: "Cellular environment";
|
|
5243
|
+
readonly 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.";
|
|
5244
5244
|
readonly "x-bf": {
|
|
5245
5245
|
readonly definitionId: 152;
|
|
5246
5246
|
readonly role: "measurement";
|
|
5247
5247
|
readonly subject: "device";
|
|
5248
5248
|
readonly producer: "device";
|
|
5249
5249
|
readonly presentation: {
|
|
5250
|
-
readonly displayName: "
|
|
5251
|
-
readonly description: "
|
|
5250
|
+
readonly displayName: "Cellular environment";
|
|
5251
|
+
readonly 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.";
|
|
5252
5252
|
readonly hiddenByDefault: false;
|
|
5253
5253
|
readonly formatter: "cellScan";
|
|
5254
5254
|
};
|
|
5255
5255
|
};
|
|
5256
5256
|
};
|
|
5257
|
-
readonly "radio.
|
|
5257
|
+
readonly "radio.wifiAccessPoints": {
|
|
5258
5258
|
readonly type: "array";
|
|
5259
5259
|
readonly items: {
|
|
5260
5260
|
readonly $ref: "#/$defs/WifiAccessPoint";
|
|
5261
5261
|
};
|
|
5262
5262
|
readonly maxItems: 20;
|
|
5263
|
-
readonly title: "
|
|
5263
|
+
readonly title: "Wi-Fi access points";
|
|
5264
5264
|
readonly description: "The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.";
|
|
5265
5265
|
readonly "x-bf": {
|
|
5266
5266
|
readonly definitionId: 153;
|
|
@@ -5268,7 +5268,7 @@ export declare const observationValueSchema: {
|
|
|
5268
5268
|
readonly subject: "device";
|
|
5269
5269
|
readonly producer: "device";
|
|
5270
5270
|
readonly presentation: {
|
|
5271
|
-
readonly displayName: "
|
|
5271
|
+
readonly displayName: "Wi-Fi access points";
|
|
5272
5272
|
readonly description: "The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.";
|
|
5273
5273
|
readonly hiddenByDefault: false;
|
|
5274
5274
|
readonly formatter: "wifiScan";
|
|
@@ -5384,7 +5384,9 @@ export declare const observationValueSchema: {
|
|
|
5384
5384
|
readonly type: "boolean";
|
|
5385
5385
|
};
|
|
5386
5386
|
readonly mode: {
|
|
5387
|
-
readonly type: "
|
|
5387
|
+
readonly type: "integer";
|
|
5388
|
+
readonly minimum: 0;
|
|
5389
|
+
readonly maximum: 2;
|
|
5388
5390
|
};
|
|
5389
5391
|
};
|
|
5390
5392
|
readonly required: readonly ["completedCount", "trigger", "outcome", "elapsedMs", "activeMs", "activityMs", "activityEntries", "recoveries", "saturated", "mode"];
|
|
@@ -5428,11 +5430,12 @@ export declare const observationValueSchema: {
|
|
|
5428
5430
|
readonly maximum: 65535;
|
|
5429
5431
|
};
|
|
5430
5432
|
readonly mode: {
|
|
5431
|
-
readonly type: "
|
|
5433
|
+
readonly type: "integer";
|
|
5434
|
+
readonly minimum: 0;
|
|
5435
|
+
readonly maximum: 2;
|
|
5432
5436
|
};
|
|
5433
5437
|
readonly state: {
|
|
5434
5438
|
readonly type: "string";
|
|
5435
|
-
readonly enum: readonly ["idle", "battery", "connect", "cell", "wifi", "publish", "listen", "gps", "gpsPublish", "rest"];
|
|
5436
5439
|
};
|
|
5437
5440
|
readonly owner: {
|
|
5438
5441
|
readonly type: "string";
|
|
@@ -5515,7 +5518,7 @@ export declare const observationValueSchema: {
|
|
|
5515
5518
|
readonly label: "Duration";
|
|
5516
5519
|
readonly format: "duration";
|
|
5517
5520
|
}];
|
|
5518
|
-
readonly extensibleEnumFields: readonly ["mode"];
|
|
5521
|
+
readonly extensibleEnumFields: readonly ["mode", "state"];
|
|
5519
5522
|
};
|
|
5520
5523
|
};
|
|
5521
5524
|
};
|
|
@@ -6112,9 +6115,11 @@ export declare const settingsValueSchema: {
|
|
|
6112
6115
|
readonly description: "Advertising interval in 0.625 millisecond units. Applied by the peripheral owner independently of LTE connection work.";
|
|
6113
6116
|
};
|
|
6114
6117
|
readonly mode: {
|
|
6115
|
-
readonly type: "
|
|
6116
|
-
readonly
|
|
6117
|
-
readonly
|
|
6118
|
+
readonly type: "integer";
|
|
6119
|
+
readonly minimum: 0;
|
|
6120
|
+
readonly maximum: 2;
|
|
6121
|
+
readonly title: "Firmware mode ID";
|
|
6122
|
+
readonly 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.";
|
|
6118
6123
|
};
|
|
6119
6124
|
readonly poweredReportIntervalSeconds: {
|
|
6120
6125
|
readonly type: "integer";
|
|
@@ -6123,47 +6128,47 @@ export declare const settingsValueSchema: {
|
|
|
6123
6128
|
readonly title: "Powered report interval";
|
|
6124
6129
|
readonly description: "Period between tracking reports on confirmed external power.";
|
|
6125
6130
|
};
|
|
6126
|
-
readonly
|
|
6131
|
+
readonly mode0IdleSeconds: {
|
|
6127
6132
|
readonly type: "integer";
|
|
6128
6133
|
readonly minimum: 60;
|
|
6129
6134
|
readonly maximum: 604800;
|
|
6130
|
-
readonly title: "
|
|
6131
|
-
readonly description: "Maximum battery idle duration after a
|
|
6135
|
+
readonly title: "Mode 0 idle duration";
|
|
6136
|
+
readonly description: "Maximum battery idle duration after a mode 0 cycle, measured from the end of work.";
|
|
6132
6137
|
};
|
|
6133
|
-
readonly
|
|
6138
|
+
readonly mode1IdleSeconds: {
|
|
6134
6139
|
readonly type: "integer";
|
|
6135
6140
|
readonly minimum: 60;
|
|
6136
6141
|
readonly maximum: 604800;
|
|
6137
|
-
readonly title: "
|
|
6138
|
-
readonly description: "Maximum battery idle duration after a
|
|
6142
|
+
readonly title: "Mode 1 idle duration";
|
|
6143
|
+
readonly description: "Maximum battery idle duration after a mode 1 cycle, measured from the end of work.";
|
|
6139
6144
|
};
|
|
6140
|
-
readonly
|
|
6145
|
+
readonly mode2IdleSeconds: {
|
|
6141
6146
|
readonly type: "integer";
|
|
6142
6147
|
readonly minimum: 10;
|
|
6143
6148
|
readonly maximum: 86400;
|
|
6144
|
-
readonly title: "
|
|
6145
|
-
readonly description: "Maximum battery idle duration after a
|
|
6149
|
+
readonly title: "Mode 2 idle duration";
|
|
6150
|
+
readonly description: "Maximum battery idle duration after a mode 2 cycle, measured from the end of work.";
|
|
6146
6151
|
};
|
|
6147
|
-
readonly
|
|
6152
|
+
readonly mode0MinimumRestSeconds: {
|
|
6148
6153
|
readonly type: "integer";
|
|
6149
6154
|
readonly minimum: 0;
|
|
6150
6155
|
readonly maximum: 86400;
|
|
6151
|
-
readonly title: "
|
|
6152
|
-
readonly description: "
|
|
6156
|
+
readonly title: "Mode 0 minimum rest";
|
|
6157
|
+
readonly description: "Duration after a mode 0 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.";
|
|
6153
6158
|
};
|
|
6154
|
-
readonly
|
|
6159
|
+
readonly mode1MinimumRestSeconds: {
|
|
6155
6160
|
readonly type: "integer";
|
|
6156
6161
|
readonly minimum: 0;
|
|
6157
6162
|
readonly maximum: 86400;
|
|
6158
|
-
readonly title: "
|
|
6159
|
-
readonly description: "
|
|
6163
|
+
readonly title: "Mode 1 minimum rest";
|
|
6164
|
+
readonly description: "Duration after a mode 1 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.";
|
|
6160
6165
|
};
|
|
6161
|
-
readonly
|
|
6166
|
+
readonly mode2MinimumRestSeconds: {
|
|
6162
6167
|
readonly type: "integer";
|
|
6163
6168
|
readonly minimum: 0;
|
|
6164
6169
|
readonly maximum: 86400;
|
|
6165
|
-
readonly title: "
|
|
6166
|
-
readonly description: "
|
|
6170
|
+
readonly title: "Mode 2 minimum rest";
|
|
6171
|
+
readonly description: "Duration after a mode 2 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.";
|
|
6167
6172
|
};
|
|
6168
6173
|
readonly psmResidenceSeconds: {
|
|
6169
6174
|
readonly type: "integer";
|
|
@@ -6363,7 +6368,7 @@ export declare const settingsValueSchema: {
|
|
|
6363
6368
|
readonly "x-bf": {
|
|
6364
6369
|
readonly domain: "settings";
|
|
6365
6370
|
readonly version: 1;
|
|
6366
|
-
readonly settingsSchemaVersion:
|
|
6371
|
+
readonly settingsSchemaVersion: 33;
|
|
6367
6372
|
};
|
|
6368
6373
|
};
|
|
6369
6374
|
export declare const observationDefinitions: readonly [{
|
|
@@ -8253,36 +8258,36 @@ export declare const observationDefinitions: readonly [{
|
|
|
8253
8258
|
};
|
|
8254
8259
|
}, {
|
|
8255
8260
|
readonly id: 151;
|
|
8256
|
-
readonly name: "radio.
|
|
8261
|
+
readonly name: "radio.bleDevices";
|
|
8257
8262
|
readonly role: "measurement";
|
|
8258
8263
|
readonly subject: "device";
|
|
8259
8264
|
readonly producer: "device";
|
|
8260
8265
|
readonly presentation: {
|
|
8261
|
-
readonly displayName: "
|
|
8266
|
+
readonly displayName: "Nearby BLE devices";
|
|
8262
8267
|
readonly description: "BLE scan evidence is distinct from BLE enabled/unlocked status.";
|
|
8263
8268
|
readonly hiddenByDefault: false;
|
|
8264
8269
|
readonly formatter: "bleScan";
|
|
8265
8270
|
};
|
|
8266
8271
|
}, {
|
|
8267
8272
|
readonly id: 152;
|
|
8268
|
-
readonly name: "radio.
|
|
8273
|
+
readonly name: "radio.cellularEnvironment";
|
|
8269
8274
|
readonly role: "measurement";
|
|
8270
8275
|
readonly subject: "device";
|
|
8271
8276
|
readonly producer: "device";
|
|
8272
8277
|
readonly presentation: {
|
|
8273
|
-
readonly displayName: "
|
|
8274
|
-
readonly description: "
|
|
8278
|
+
readonly displayName: "Cellular environment";
|
|
8279
|
+
readonly 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.";
|
|
8275
8280
|
readonly hiddenByDefault: false;
|
|
8276
8281
|
readonly formatter: "cellScan";
|
|
8277
8282
|
};
|
|
8278
8283
|
}, {
|
|
8279
8284
|
readonly id: 153;
|
|
8280
|
-
readonly name: "radio.
|
|
8285
|
+
readonly name: "radio.wifiAccessPoints";
|
|
8281
8286
|
readonly role: "measurement";
|
|
8282
8287
|
readonly subject: "device";
|
|
8283
8288
|
readonly producer: "device";
|
|
8284
8289
|
readonly presentation: {
|
|
8285
|
-
readonly displayName: "
|
|
8290
|
+
readonly displayName: "Wi-Fi access points";
|
|
8286
8291
|
readonly description: "The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.";
|
|
8287
8292
|
readonly hiddenByDefault: false;
|
|
8288
8293
|
readonly formatter: "wifiScan";
|
|
@@ -8386,7 +8391,7 @@ export declare const observationDefinitions: readonly [{
|
|
|
8386
8391
|
readonly label: "Duration";
|
|
8387
8392
|
readonly format: "duration";
|
|
8388
8393
|
}];
|
|
8389
|
-
readonly extensibleEnumFields: readonly ["mode"];
|
|
8394
|
+
readonly extensibleEnumFields: readonly ["mode", "state"];
|
|
8390
8395
|
};
|
|
8391
8396
|
}, {
|
|
8392
8397
|
readonly id: 159;
|
|
@@ -8957,13 +8962,13 @@ export type WiFiTimeoutCount = number;
|
|
|
8957
8962
|
*
|
|
8958
8963
|
* @maxItems 20
|
|
8959
8964
|
*/
|
|
8960
|
-
export type
|
|
8965
|
+
export type NearbyBLEDevices = BleDevice[];
|
|
8961
8966
|
/**
|
|
8962
8967
|
* The coherent Wi-Fi scan is positioning evidence; retain an empty successful scan separately from a failed scan.
|
|
8963
8968
|
*
|
|
8964
8969
|
* @maxItems 20
|
|
8965
8970
|
*/
|
|
8966
|
-
export type
|
|
8971
|
+
export type WiFiAccessPoints = WifiAccessPoint[];
|
|
8967
8972
|
export interface ObservationValues {
|
|
8968
8973
|
"agnss.completed"?: AgnssCompleted;
|
|
8969
8974
|
"agnss.transferTrace"?: AgnssTransferTrace;
|
|
@@ -9100,9 +9105,9 @@ export interface ObservationValues {
|
|
|
9100
9105
|
"power.wifiScanEntries"?: WiFiScanningEntryCount;
|
|
9101
9106
|
"power.wifiScanMs"?: WiFiScanningTotalTime;
|
|
9102
9107
|
"power.wifiTimeouts"?: WiFiTimeoutCount;
|
|
9103
|
-
"radio.
|
|
9104
|
-
"radio.
|
|
9105
|
-
"radio.
|
|
9108
|
+
"radio.bleDevices"?: NearbyBLEDevices;
|
|
9109
|
+
"radio.cellularEnvironment"?: CellularEnvironment;
|
|
9110
|
+
"radio.wifiAccessPoints"?: WiFiAccessPoints;
|
|
9106
9111
|
"system.booted"?: SystemBooted;
|
|
9107
9112
|
"wifi.scanCompleted"?: WifiScanCompleted;
|
|
9108
9113
|
"work.completed"?: WorkCompleted;
|
|
@@ -9605,9 +9610,9 @@ export interface BleDevice {
|
|
|
9605
9610
|
companyId: number;
|
|
9606
9611
|
}
|
|
9607
9612
|
/**
|
|
9608
|
-
*
|
|
9613
|
+
* 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.
|
|
9609
9614
|
*/
|
|
9610
|
-
export interface
|
|
9615
|
+
export interface CellularEnvironment {
|
|
9611
9616
|
serving: CellReading;
|
|
9612
9617
|
rat: "lteM" | "nbIot";
|
|
9613
9618
|
/**
|
|
@@ -9690,7 +9695,7 @@ export interface WorkCompleted {
|
|
|
9690
9695
|
activityEntries: ActivityEntries;
|
|
9691
9696
|
recoveries: RecoveryCounts;
|
|
9692
9697
|
saturated: boolean;
|
|
9693
|
-
mode:
|
|
9698
|
+
mode: number;
|
|
9694
9699
|
}
|
|
9695
9700
|
export interface ActivityDurations {
|
|
9696
9701
|
rrc: number;
|
|
@@ -9723,8 +9728,8 @@ export interface RecoveryCounts {
|
|
|
9723
9728
|
*/
|
|
9724
9729
|
export interface WorkflowExecution {
|
|
9725
9730
|
workflowVersion: number;
|
|
9726
|
-
mode:
|
|
9727
|
-
state:
|
|
9731
|
+
mode: number;
|
|
9732
|
+
state: string;
|
|
9728
9733
|
owner: "workflow" | "command" | "update" | "recovery" | "shutdown" | "fault" | "settings" | "charging" | "ble" | "network";
|
|
9729
9734
|
phase: "entered" | "completed" | "cancelled" | "ownerChanged" | "snapshot";
|
|
9730
9735
|
outcome: ("done" | "unavailable" | "failed" | "timeout" | "cancelled") | null;
|
|
@@ -9941,37 +9946,37 @@ export type BLEAdvertisingRequiresExternalPower = boolean;
|
|
|
9941
9946
|
*/
|
|
9942
9947
|
export type BLEAdvertisingInterval = number;
|
|
9943
9948
|
/**
|
|
9944
|
-
*
|
|
9949
|
+
* 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.
|
|
9945
9950
|
*/
|
|
9946
|
-
export type
|
|
9951
|
+
export type FirmwareModeID = number;
|
|
9947
9952
|
/**
|
|
9948
9953
|
* Period between tracking reports on confirmed external power.
|
|
9949
9954
|
*/
|
|
9950
9955
|
export type PoweredReportInterval = number;
|
|
9951
9956
|
/**
|
|
9952
|
-
* Maximum battery idle duration after a
|
|
9957
|
+
* Maximum battery idle duration after a mode 0 cycle, measured from the end of work.
|
|
9953
9958
|
*/
|
|
9954
|
-
export type
|
|
9959
|
+
export type Mode0IdleDuration = number;
|
|
9955
9960
|
/**
|
|
9956
|
-
* Maximum battery idle duration after a
|
|
9961
|
+
* Maximum battery idle duration after a mode 1 cycle, measured from the end of work.
|
|
9957
9962
|
*/
|
|
9958
|
-
export type
|
|
9963
|
+
export type Mode1IdleDuration = number;
|
|
9959
9964
|
/**
|
|
9960
|
-
* Maximum battery idle duration after a
|
|
9965
|
+
* Maximum battery idle duration after a mode 2 cycle, measured from the end of work.
|
|
9961
9966
|
*/
|
|
9962
|
-
export type
|
|
9967
|
+
export type Mode2IdleDuration = number;
|
|
9963
9968
|
/**
|
|
9964
|
-
*
|
|
9969
|
+
* Duration after a mode 0 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.
|
|
9965
9970
|
*/
|
|
9966
|
-
export type
|
|
9971
|
+
export type Mode0MinimumRest = number;
|
|
9967
9972
|
/**
|
|
9968
|
-
*
|
|
9973
|
+
* Duration after a mode 1 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.
|
|
9969
9974
|
*/
|
|
9970
|
-
export type
|
|
9975
|
+
export type Mode1MinimumRest = number;
|
|
9971
9976
|
/**
|
|
9972
|
-
*
|
|
9977
|
+
* Duration after a mode 2 cycle with the accelerometer and its wake interrupt disabled. Firmware re-enables motion detection when this period ends.
|
|
9973
9978
|
*/
|
|
9974
|
-
export type
|
|
9979
|
+
export type Mode2MinimumRest = number;
|
|
9975
9980
|
/**
|
|
9976
9981
|
* Maximum idle time in PSM before setting the modem offline; capped by the existing idle deadline.
|
|
9977
9982
|
*/
|
|
@@ -10116,14 +10121,14 @@ export interface DeviceSettings {
|
|
|
10116
10121
|
bleAdvertisingEnabled?: BLEAdvertising;
|
|
10117
10122
|
bleAdvertisingRequiresExternalPower?: BLEAdvertisingRequiresExternalPower;
|
|
10118
10123
|
bleAdvertisingIntervalUnits?: BLEAdvertisingInterval;
|
|
10119
|
-
mode?:
|
|
10124
|
+
mode?: FirmwareModeID;
|
|
10120
10125
|
poweredReportIntervalSeconds?: PoweredReportInterval;
|
|
10121
|
-
|
|
10122
|
-
|
|
10123
|
-
|
|
10124
|
-
|
|
10125
|
-
|
|
10126
|
-
|
|
10126
|
+
mode0IdleSeconds?: Mode0IdleDuration;
|
|
10127
|
+
mode1IdleSeconds?: Mode1IdleDuration;
|
|
10128
|
+
mode2IdleSeconds?: Mode2IdleDuration;
|
|
10129
|
+
mode0MinimumRestSeconds?: Mode0MinimumRest;
|
|
10130
|
+
mode1MinimumRestSeconds?: Mode1MinimumRest;
|
|
10131
|
+
mode2MinimumRestSeconds?: Mode2MinimumRest;
|
|
10127
10132
|
psmResidenceSeconds?: PSMResidence;
|
|
10128
10133
|
commandListenSeconds?: TrackingCommandWindow;
|
|
10129
10134
|
gnssSearchTimeoutSeconds?: GNSSSearchTimeout;
|