@blueid/access-proto 0.19.0 → 0.22.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/BlueCore.proto CHANGED
@@ -178,23 +178,23 @@ enum BlueReturnCode {
178
178
 
179
179
  message BlueVersionInfo {
180
180
  required uint32 buildTime = 1;
181
- required uint32 version = 2;
181
+ required uint32 version = 2 [ (nanopb).int_size = IS_16 ];
182
182
  }
183
183
 
184
184
  message BlueLocalTimestamp {
185
- required uint32 year = 1;
186
- required uint32 month = 2;
187
- required uint32 date = 3;
188
- required uint32 hours = 4;
189
- required uint32 minutes = 5;
190
- required uint32 seconds = 6 [ default = 0 ];
185
+ required uint32 year = 1 [ (nanopb).int_size = IS_16 ];
186
+ required uint32 month = 2 [ (nanopb).int_size = IS_8 ];
187
+ required uint32 date = 3 [ (nanopb).int_size = IS_8 ];
188
+ required uint32 hours = 4 [ (nanopb).int_size = IS_8 ];
189
+ required uint32 minutes = 5 [ (nanopb).int_size = IS_8 ];
190
+ required uint32 seconds = 6 [ (nanopb).int_size = IS_8, default = 0 ];
191
191
  }
192
192
 
193
193
  message BlueLocalTimeperiod {
194
- required uint32 hoursFrom = 1;
195
- required uint32 minutesFrom = 2;
196
- required uint32 hoursTo = 3;
197
- required uint32 minutesTo = 4;
194
+ required uint32 hoursFrom = 1 [ (nanopb).int_size = IS_8 ];
195
+ required uint32 minutesFrom = 2 [ (nanopb).int_size = IS_8 ];
196
+ required uint32 hoursTo = 3 [ (nanopb).int_size = IS_8 ];
197
+ required uint32 minutesTo = 4 [ (nanopb).int_size = IS_8 ];
198
198
  }
199
199
 
200
200
  enum BlueTimeUnit {
@@ -219,11 +219,11 @@ enum BlueWeekday {
219
219
 
220
220
  message BlueLocalTimeSchedule {
221
221
  // Day of year is always 1-366, to spawn whole year make 1->366
222
- required uint32 dayOfYearStart = 1;
223
- required uint32 dayOfYearEnd = 2;
222
+ required uint32 dayOfYearStart = 1 [ (nanopb).int_size = IS_16 ];
223
+ required uint32 dayOfYearEnd = 2 [ (nanopb).int_size = IS_16 ];
224
224
  // See BlueWeekday -> byte 0 = Monday, etc.
225
- required bytes weekdays = 3
226
- [ (nanopb).max_size = 7, (nanopb).fixed_length = true ];
225
+ repeated bool weekdays = 3
226
+ [ (nanopb).max_count = 7, (nanopb).fixed_length = true ];
227
227
  required BlueLocalTimeperiod timePeriod = 4;
228
228
  }
229
229
 
@@ -285,15 +285,16 @@ enum BlueBatteryLevel {
285
285
  message BlueBleManufacturerInfo {
286
286
  required BlueHardwareType hardwareType = 1;
287
287
  required BlueBatteryLevel batteryLevel = 2;
288
- required uint32 applicationVersion = 3;
288
+ required uint32 applicationVersion = 3 [ (nanopb).int_size = IS_16 ];
289
289
  required uint32 localMidnightTimeEpoch = 4;
290
+ required bool isFactory = 5;
290
291
  }
291
292
 
292
293
  message BlueBleAdvertisementInfo {
293
294
  // Unique device id becomes the local name
294
295
  required string deviceId = 1 [ (nanopb).max_length = 8 ];
295
296
  // The advertised tx power level at 1 meter in decibel (-XX - +XX)
296
- required int32 txPower1Meter = 2;
297
+ required int32 txPower1Meter = 2 [ (nanopb).int_size = IS_8 ];
297
298
  // If set generates iBeacon format otherwise generates regular ble adv data
298
299
  required bool isIBeacon = 3;
299
300
  // The manufacturer information
@@ -416,7 +417,7 @@ message BlueSPHandshakeReply {
416
417
  required bytes terminalSignature = 2 [ (nanopb).max_size = 74 ];
417
418
  }
418
419
 
419
- message BlueSPDataCommand {
420
+ message BlueSPTokenCommand {
420
421
  required BlueCredentialId credentialId = 1;
421
422
  required BlueLocalTimestamp validityStart = 2;
422
423
  required BlueLocalTimestamp validityEnd = 3;
@@ -425,11 +426,11 @@ message BlueSPDataCommand {
425
426
  [ (nanopb).max_size = 1792 ]; // we'll add 256b for add. data
426
427
  }
427
428
 
428
- message BlueSPData {
429
+ message BlueSPToken {
429
430
  required bytes signature = 1 [ (nanopb).max_size = 74 ];
430
431
 
431
432
  oneof payload {
432
- BlueSPDataCommand command = 2;
433
+ BlueSPTokenCommand command = 2;
433
434
  BlueOssSoMobile ossSo = 3;
434
435
  BlueOssSidMobile ossSid = 4;
435
436
  }
@@ -604,9 +605,9 @@ message BlueOssSoCredentialType {
604
605
  }
605
606
 
606
607
  message BlueOssSoDTScheduleDay {
607
- // 0 = Monday -> 6 = Sunday (Matches BlueWeekday)
608
- repeated bool weekdays = 1
609
- [ (nanopb).max_count = 7, (nanopb).fixed_count = true ];
608
+ // See BlueWeekday -> byte 0 = Monday, etc.
609
+ repeated bool weekdays = 3
610
+ [ (nanopb).max_count = 7, (nanopb).fixed_length = true ];
610
611
 
611
612
  repeated BlueLocalTimeperiod timePeriods = 8 [ (nanopb).max_count = 4 ];
612
613
  }
package/BlueSystem.proto CHANGED
@@ -9,22 +9,17 @@ import "nanopb.proto";
9
9
  // System types
10
10
  ///////////////////////////////////////////////////////////////////////
11
11
 
12
- message BlueTimeOffsetPeriod {
13
- // UTC-epoch when this shift occurs
14
- required uint32 epoch = 1;
15
- // The time offset in minutes, negative or positive
16
- required int32 offset = 2;
17
- }
18
-
19
12
  message BlueBaseConfig {
20
- // The time offsets that get shifted automatically
21
- repeated BlueTimeOffsetPeriod timeOffsetPeriods = 1
22
- [ (nanopb).max_count = 12 ];
13
+ required string isoCountry = 1 [ (nanopb).max_length = 2 ];
14
+ required string isoState = 2 [ (nanopb).max_length = 3 ];
15
+
16
+ required int32 utcOffsetMinutes = 3
17
+ [ (nanopb).int_size = IS_16, default = 0 ];
23
18
 
24
19
  // If enabled this will check the system-status every 24-hours and
25
20
  // react accordingly ie like when battery is running low opening the lock
26
21
  // and logging accordingly etc
27
- required bool autoCheckSystemStatus = 2 [ default = false ];
22
+ required bool autoCheckSystemStatus = 4 [ default = false ];
28
23
  }
29
24
 
30
25
  message BlueBleConfig {
@@ -39,64 +34,59 @@ message BlueBleConfig {
39
34
  // Index of advertising schedules (starting at zero) where it should
40
35
  // use the max power level available for broader reach
41
36
  repeated uint32 maxPowerAdvertisingSchedulesIndices = 3
42
- [ (nanopb).max_count = 4 ];
37
+ [ (nanopb).int_size = IS_8, (nanopb).max_count = 4 ];
43
38
 
44
39
  // The desired advertising interval in ms
45
- required uint32 advertisingIntervalMs = 4 [ default = 500 ];
40
+ required uint32 advertisingIntervalMs = 4
41
+ [ (nanopb).int_size = IS_16, default = 500 ];
46
42
 
47
43
  // The maximal connection timeout per connection in milliseconds
48
- required uint32 maxConnectionTimeoutMs = 5 [ default = 3000 ];
44
+ required uint32 maxConnectionTimeoutMs = 5
45
+ [ (nanopb).int_size = IS_16, default = 3000 ];
49
46
 
50
47
  // The actual tx power level used for bluetooth from (0 - lowest) to 7
51
48
  // (highest)
52
- required uint32 txPowerLevel = 6 [ default = 3 ];
49
+ required uint32 txPowerLevel = 6 [ (nanopb).int_size = IS_8, default = 3 ];
53
50
 
54
51
  // The advertised tx power level at 1 meter in decibel (-XX - +XX)
55
- required int32 advertisedTxPower1Meter = 7 [ default = -77 ];
52
+ required int32 advertisedTxPower1Meter = 7
53
+ [ (nanopb).int_size = IS_8, default = -77 ];
56
54
 
57
55
  // If set then advertises as IBeacon otherwise uses regular advertising
58
56
  required bool isIBeaconAdvertisement = 8;
59
57
  }
60
58
 
61
- enum BlueOnlineMode {
62
- // Offline mode
63
- OfflineMode = 0;
64
- // Wifi is manually re-connected whenever required
65
- ManualWifi = 1;
66
- // Wifi is always connected and re-connects automatically
67
- AlwaysOnWifi = 2;
68
- // A LAN connection is available that shall be used
69
- UseLan = 3;
70
- }
71
-
72
59
  message BlueOnlineConfig {
73
- // The online mode
74
- required BlueOnlineMode mode = 1 [ default = OfflineMode ];
75
-
76
- // Schedules when it should go online for updating. Only takes effect if
77
- // online mode is set to manual wifi. The end time is not used.
78
- repeated BlueLocalTimeSchedule connectSchedules = 2
60
+ // Schedules when it should go online for updating. Only applies to
61
+ // battery-powered devices with wifi or gsm module. If no schedule is set will
62
+ // never go online. The end time is not used.
63
+ repeated BlueLocalTimeSchedule connectSchedules = 1
79
64
  [ (nanopb).max_count = 4 ];
80
65
 
81
66
  // The SSID of the wifi network
82
- required string wifiSSID = 3 [ (nanopb).max_length = 32 ];
67
+ required string wifiSSID = 2 [ (nanopb).max_length = 32 ];
83
68
 
84
69
  // The wifi password
85
- required string wifiPassword = 4 [ (nanopb).max_length = 32 ];
70
+ required string wifiPassword = 3 [ (nanopb).max_length = 32 ];
86
71
 
87
72
  // Default timeout for online connections
88
- required uint32 timeoutSec = 5 [ default = 30 ];
73
+ required uint32 timeoutSec = 4 [ (nanopb).int_size = IS_16, default = 30 ];
74
+ }
75
+
76
+ message BlueAccessConfigGroup {
77
+ required uint32 groupId = 1 [ (nanopb).int_size = IS_8 ];
78
+ repeated BlueLocalTimeSchedule schedules = 2 [ (nanopb).max_count = 2 ];
89
79
  }
90
80
 
91
81
  message BlueAccessConfig {
92
82
  // The device's unique access id
93
- required uint32 id = 1 [ default = 1 ];
83
+ required uint32 id = 1 [ (nanopb).int_size = IS_8, default = 1 ];
94
84
 
95
85
  // The site id bound to this device
96
- required uint32 siteId = 2 [ default = 1 ];
86
+ required uint32 siteId = 2 [ (nanopb).int_size = IS_8, default = 1 ];
97
87
 
98
88
  // The access groups this device is part of
99
- repeated uint32 groupIds = 3 [ (nanopb).max_count = 16 ];
89
+ repeated BlueAccessConfigGroup groups = 3 [ (nanopb).max_count = 10 ];
100
90
  }
101
91
 
102
92
  message BlueOssConfig {
@@ -149,7 +139,7 @@ message BlueOssConfig {
149
139
  }
150
140
 
151
141
  message BlueSystemConfig {
152
- required uint32 version = 1;
142
+ required string configId = 1 [ (nanopb).max_length = 8 ];
153
143
  // -- Base
154
144
  required BlueBaseConfig base = 2;
155
145
  required BlueBleConfig ble = 3;
@@ -168,18 +158,25 @@ message BlueSystemUpdate {
168
158
  }
169
159
 
170
160
  message BlueSystemSettings {
171
- required uint32 blacklistMaxEntriesCount = 1 [ default = 0 ];
172
- required uint32 blacklistEntriesCount = 2 [ default = 0 ];
173
-
174
- required uint32 eventLogMaxEntriesCount = 3 [ default = 0 ];
175
- required uint32 eventLogEntriesCount = 4 [ default = 0 ];
161
+ required uint32 blacklistMaxEntriesCount = 1
162
+ [ (nanopb).int_size = IS_16, default = 0 ];
163
+ required uint32 blacklistEntriesCount = 2
164
+ [ (nanopb).int_size = IS_16, default = 0 ];
165
+
166
+ required uint32 eventLogMaxEntriesCount = 3
167
+ [ (nanopb).int_size = IS_16, default = 0 ];
168
+ required uint32 eventLogEntriesCount = 4
169
+ [ (nanopb).int_size = IS_16, default = 0 ];
176
170
  required uint32 eventLogSequenceId = 5 [ default = 0 ];
177
- required uint32 eventLogIndex = 6 [ default = 0 ];
171
+ required uint32 eventLogIndex = 6 [ (nanopb).int_size = IS_16, default = 0 ];
178
172
 
179
- required uint32 systemLogMaxEntriesCount = 7 [ default = 0 ];
180
- required uint32 systemLogEntriesCount = 8 [ default = 0 ];
173
+ required uint32 systemLogMaxEntriesCount = 7
174
+ [ (nanopb).int_size = IS_16, default = 0 ];
175
+ required uint32 systemLogEntriesCount = 8
176
+ [ (nanopb).int_size = IS_16, default = 0 ];
181
177
  required uint32 systemLogSequenceId = 9 [ default = 0 ];
182
- required uint32 systemLogIndex = 10 [ default = 0 ];
178
+ required uint32 systemLogIndex = 10
179
+ [ (nanopb).int_size = IS_16, default = 0 ];
183
180
 
184
181
  required bool timeWasSet = 11;
185
182
 
@@ -203,7 +200,7 @@ message BlueSystemProvisioning {
203
200
  }
204
201
 
205
202
  message BlueSystemStatus {
206
- required uint32 configVersion = 1;
203
+ required string configId = 1 [ (nanopb).max_length = 8 ];
207
204
  required string deviceId = 2 [ (nanopb).max_length = 8 ];
208
205
  required string serialNumber = 3 [ (nanopb).max_length = 20 ];
209
206
  required BlueHardwareType hardwareType = 4;
@@ -211,10 +208,10 @@ message BlueSystemStatus {
211
208
  required uint32 applicationVersion = 6;
212
209
  required BlueLocalTimestamp localTime = 7;
213
210
  required BlueSystemSettings settings = 8;
214
- required uint32 blacklistEntriesCount = 9;
215
- required uint32 eventLogEntriesCount = 10;
211
+ required uint32 blacklistEntriesCount = 9 [ (nanopb).int_size = IS_16 ];
212
+ required uint32 eventLogEntriesCount = 10 [ (nanopb).int_size = IS_16 ];
216
213
  required uint32 eventLogSequenceId = 11;
217
- required uint32 systemLogEntriesCount = 12;
214
+ required uint32 systemLogEntriesCount = 12 [ (nanopb).int_size = IS_16 ];
218
215
  required uint32 systemLogSequenceId = 13;
219
216
 
220
217
  // -- Custom
@@ -226,7 +223,7 @@ message BlueSystemStatus {
226
223
  ///////////////////////////////////////////////////////////////////////
227
224
 
228
225
  message BlueSystemLogQuery {
229
- required uint32 maxCount = 1;
226
+ required uint32 maxCount = 1 [ (nanopb).int_size = IS_8 ];
230
227
 
231
228
  oneof start {
232
229
  uint32 sequenceId = 2;
@@ -239,9 +236,10 @@ message BlueSystemLogEntry {
239
236
 
240
237
  required BlueLocalTimestamp time = 2;
241
238
 
242
- required uint32 severity = 3;
239
+ required uint32 severity = 3 [ (nanopb).int_size = IS_8 ];
243
240
 
244
- required uint32 line = 4;
241
+ required uint32 line = 4 [ (nanopb).int_size = IS_16 ];
242
+ ;
245
243
 
246
244
  required string file = 5 [ (nanopb).max_length = 20 ];
247
245