seam 2.164.0 → 2.165.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.
@@ -4,16 +4,316 @@ module Seam
4
4
  module Resources
5
5
  # Represents an app user's mobile phone.
6
6
  class Phone < BaseResource
7
+ # Known `error_code` values load as subclasses; unknown values remain Errors instances for forward compatibility.
7
8
  class Errors < BaseResource
8
- # Unique identifier of the type of error.
9
+ # Indicates that the account is disconnected.
10
+ class AccountDisconnected < Errors
11
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
12
+ # @return [String]
13
+ # Known values:
14
+ # - `account_disconnected`
15
+ attr_accessor :error_code
16
+ # Indicates that the error is a [connected account](https://www.seam.co/docs/api/connected_accounts/object) error.
17
+ # @return [TrueClass]
18
+ attr_accessor :is_connected_account_error
19
+ # Indicates that the error is not a device error.
20
+ # @return [FalseClass]
21
+ attr_accessor :is_device_error
22
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
23
+ # @return [String]
24
+ attr_accessor :message
25
+ # Date and time at which Seam created the error.
26
+ # @return [Time]
27
+ date_accessor :created_at
28
+ end
29
+
30
+ # Indicates that the Salto site user limit has been reached.
31
+ class SaltoKsSubscriptionLimitExceeded < Errors
32
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
33
+ # @return [String]
34
+ # Known values:
35
+ # - `salto_ks_subscription_limit_exceeded`
36
+ attr_accessor :error_code
37
+ # Indicates that the error is a [connected account](https://www.seam.co/docs/api/connected_accounts/object) error.
38
+ # @return [TrueClass]
39
+ attr_accessor :is_connected_account_error
40
+ # Indicates that the error is not a device error.
41
+ # @return [FalseClass]
42
+ attr_accessor :is_device_error
43
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
44
+ # @return [String]
45
+ attr_accessor :message
46
+ # Date and time at which Seam created the error.
47
+ # @return [Time]
48
+ date_accessor :created_at
49
+ end
50
+
51
+ # Indicates that the provider's system to which this device belongs is not letting Seam act on it, so Seam cannot manage access codes or unlock the device. The error message says which of three causes applies. Seam's integration user may not have sufficient permissions on the provider's system, or may have been suspended there: grant the integration user the required permissions in the provider's system, or reauthorize the connected account in Seam. The provider account or site may not have a valid subscription with the provider: set up or renew that subscription with the provider. Or the provider may have rejected the credential Seam uses to operate the device's hub: contact Seam support to re-activate it.
52
+ class InsufficientPermissions < Errors
53
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
54
+ # @return [String]
55
+ # Known values:
56
+ # - `insufficient_permissions`
57
+ attr_accessor :error_code
58
+ # Indicates that the error is a [connected account](https://www.seam.co/docs/api/connected_accounts/object) error.
59
+ # @return [TrueClass]
60
+ attr_accessor :is_connected_account_error
61
+ # Indicates that the error is not a device error.
62
+ # @return [FalseClass]
63
+ attr_accessor :is_device_error
64
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
65
+ # @return [String]
66
+ attr_accessor :message
67
+ # Date and time at which Seam created the error.
68
+ # @return [Time]
69
+ date_accessor :created_at
70
+ end
71
+
72
+ # Indicates that one or more dormakaba sites associated with the connected account could not be connected. Contact dormakaba support.
73
+ class DormakabaSitesDisconnected < Errors
74
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
75
+ # @return [String]
76
+ # Known values:
77
+ # - `dormakaba_sites_disconnected`
78
+ attr_accessor :error_code
79
+ # Indicates that the error is a [connected account](https://www.seam.co/docs/api/connected_accounts/object) error.
80
+ # @return [TrueClass]
81
+ attr_accessor :is_connected_account_error
82
+ # Indicates that the error is not a device error.
83
+ # @return [FalseClass]
84
+ attr_accessor :is_device_error
85
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
86
+ # @return [String]
87
+ attr_accessor :message
88
+ # Date and time at which Seam created the error.
89
+ # @return [Time]
90
+ date_accessor :created_at
91
+ end
92
+
93
+ # Indicates that the device is offline.
94
+ class DeviceOffline < Errors
95
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
96
+ # @return [String]
97
+ # Known values:
98
+ # - `device_offline`
99
+ attr_accessor :error_code
100
+ # Indicates that the error is a device error.
101
+ # @return [TrueClass]
102
+ attr_accessor :is_device_error
103
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
104
+ # @return [String]
105
+ attr_accessor :message
106
+ # Date and time at which Seam created the error.
107
+ # @return [Time]
108
+ date_accessor :created_at
109
+ end
110
+
111
+ # Indicates that the device has been removed.
112
+ class DeviceRemoved < Errors
113
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
114
+ # @return [String]
115
+ # Known values:
116
+ # - `device_removed`
117
+ attr_accessor :error_code
118
+ # Indicates that the error is a device error.
119
+ # @return [TrueClass]
120
+ attr_accessor :is_device_error
121
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
122
+ # @return [String]
123
+ attr_accessor :message
124
+ # Date and time at which Seam created the error.
125
+ # @return [Time]
126
+ date_accessor :created_at
127
+ end
128
+
129
+ # Indicates that the hub is disconnected.
130
+ class HubDisconnected < Errors
131
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
132
+ # @return [String]
133
+ # Known values:
134
+ # - `hub_disconnected`
135
+ attr_accessor :error_code
136
+ # Indicates that the error is a device error.
137
+ # @return [TrueClass]
138
+ attr_accessor :is_device_error
139
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
140
+ # @return [String]
141
+ attr_accessor :message
142
+ # Date and time at which Seam created the error.
143
+ # @return [Time]
144
+ date_accessor :created_at
145
+ end
146
+
147
+ # Indicates that the device is disconnected.
148
+ class DeviceDisconnected < Errors
149
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
150
+ # @return [String]
151
+ # Known values:
152
+ # - `device_disconnected`
153
+ attr_accessor :error_code
154
+ # Indicates that the error is a device error.
155
+ # @return [TrueClass]
156
+ attr_accessor :is_device_error
157
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
158
+ # @return [String]
159
+ attr_accessor :message
160
+ # Date and time at which Seam created the error.
161
+ # @return [Time]
162
+ date_accessor :created_at
163
+ end
164
+
165
+ # Indicates that the [backup access code pool](https://www.seam.co/docs/low-level-apis/smart-locks/access-codes/backup-access-codes) is empty.
166
+ class EmptyBackupAccessCodePool < Errors
167
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
168
+ # @return [String]
169
+ # Known values:
170
+ # - `empty_backup_access_code_pool`
171
+ attr_accessor :error_code
172
+ # Indicates that the error is a device error.
173
+ # @return [TrueClass]
174
+ attr_accessor :is_device_error
175
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
176
+ # @return [String]
177
+ attr_accessor :message
178
+ # Date and time at which Seam created the error.
179
+ # @return [Time]
180
+ date_accessor :created_at
181
+ end
182
+
183
+ # Indicates that the user is not authorized to use the August lock.
184
+ class AugustLockNotAuthorized < Errors
185
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
186
+ # @return [String]
187
+ # Known values:
188
+ # - `august_lock_not_authorized`
189
+ attr_accessor :error_code
190
+ # Indicates that the error is a device error.
191
+ # @return [TrueClass]
192
+ attr_accessor :is_device_error
193
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
194
+ # @return [String]
195
+ attr_accessor :message
196
+ # Date and time at which Seam created the error.
197
+ # @return [Time]
198
+ date_accessor :created_at
199
+ end
200
+
201
+ # Indicates that device credentials are missing.
202
+ class MissingDeviceCredentials < Errors
203
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
204
+ # @return [String]
205
+ # Known values:
206
+ # - `missing_device_credentials`
207
+ attr_accessor :error_code
208
+ # Indicates that the error is a device error.
209
+ # @return [TrueClass]
210
+ attr_accessor :is_device_error
211
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
212
+ # @return [String]
213
+ attr_accessor :message
214
+ # Date and time at which Seam created the error.
215
+ # @return [Time]
216
+ date_accessor :created_at
217
+ end
218
+
219
+ # Indicates that the auxiliary heat is running.
220
+ class AuxiliaryHeatRunning < Errors
221
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
222
+ # @return [String]
223
+ # Known values:
224
+ # - `auxiliary_heat_running`
225
+ attr_accessor :error_code
226
+ # Indicates that the error is a device error.
227
+ # @return [TrueClass]
228
+ attr_accessor :is_device_error
229
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
230
+ # @return [String]
231
+ attr_accessor :message
232
+ # Date and time at which Seam created the error.
233
+ # @return [Time]
234
+ date_accessor :created_at
235
+ end
236
+
237
+ # Indicates that a subscription is required to connect.
238
+ class SubscriptionRequired < Errors
239
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
240
+ # @return [String]
241
+ # Known values:
242
+ # - `subscription_required`
243
+ attr_accessor :error_code
244
+ # Indicates that the error is a device error.
245
+ # @return [TrueClass]
246
+ attr_accessor :is_device_error
247
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
248
+ # @return [String]
249
+ attr_accessor :message
250
+ # Date and time at which Seam created the error.
251
+ # @return [Time]
252
+ date_accessor :created_at
253
+ end
254
+
255
+ # Indicates that the Seam API cannot communicate with [Seam Bridge](https://www.seam.co/docs/capability-guides/seam-bridge), for example, if the Seam Bridge executable has stopped or if the computer running the Seam Bridge executable is offline. See also [Troubleshooting Your Access Control System](https://www.seam.co/docs/low-level-apis/access-systems/troubleshooting-your-access-control-system#acs_system-errors-seam_bridge_disconnected).
256
+ class BridgeDisconnected < Errors
257
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
258
+ # @return [String]
259
+ # Known values:
260
+ # - `bridge_disconnected`
261
+ attr_accessor :error_code
262
+ # Indicates whether the error is related to [Seam Bridge](https://www.seam.co/docs/capability-guides/seam-bridge).
263
+ # @return [Boolean, nil]
264
+ attr_accessor :is_bridge_error
265
+ # Indicates whether the error is related specifically to the connected account.
266
+ # @return [Boolean, nil]
267
+ attr_accessor :is_connected_account_error
268
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
269
+ # @return [String]
270
+ attr_accessor :message
271
+ # Date and time at which Seam created the error.
272
+ # @return [Time]
273
+ date_accessor :created_at
274
+ end
275
+
276
+ # Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
9
277
  # @return [String]
278
+ # Known values:
279
+ # - `account_disconnected`
280
+ # - `salto_ks_subscription_limit_exceeded`
281
+ # - `insufficient_permissions`
282
+ # - `dormakaba_sites_disconnected`
283
+ # - `device_offline`
284
+ # - `device_removed`
285
+ # - `hub_disconnected`
286
+ # - `device_disconnected`
287
+ # - `empty_backup_access_code_pool`
288
+ # - `august_lock_not_authorized`
289
+ # - `missing_device_credentials`
290
+ # - `auxiliary_heat_running`
291
+ # - `subscription_required`
292
+ # - `bridge_disconnected`
10
293
  attr_accessor :error_code
11
- # Detailed description of the error.
294
+ # Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
12
295
  # @return [String]
13
296
  attr_accessor :message
14
297
  # Date and time at which Seam created the error.
15
298
  # @return [Time]
16
299
  date_accessor :created_at
300
+
301
+ discriminated_by :error_code, {
302
+ "account_disconnected" => AccountDisconnected,
303
+ "salto_ks_subscription_limit_exceeded" => SaltoKsSubscriptionLimitExceeded,
304
+ "insufficient_permissions" => InsufficientPermissions,
305
+ "dormakaba_sites_disconnected" => DormakabaSitesDisconnected,
306
+ "device_offline" => DeviceOffline,
307
+ "device_removed" => DeviceRemoved,
308
+ "hub_disconnected" => HubDisconnected,
309
+ "device_disconnected" => DeviceDisconnected,
310
+ "empty_backup_access_code_pool" => EmptyBackupAccessCodePool,
311
+ "august_lock_not_authorized" => AugustLockNotAuthorized,
312
+ "missing_device_credentials" => MissingDeviceCredentials,
313
+ "auxiliary_heat_running" => AuxiliaryHeatRunning,
314
+ "subscription_required" => SubscriptionRequired,
315
+ "bridge_disconnected" => BridgeDisconnected
316
+ }.freeze
17
317
  end
18
318
 
19
319
  class Properties < BaseResource
@@ -49,25 +349,512 @@ module Seam
49
349
  resource_accessor :salto_space_credential_service_metadata, SaltoSpaceCredentialServiceMetadata
50
350
  end
51
351
 
352
+ # Known `warning_code` values load as subclasses; unknown values remain Warnings instances for forward compatibility.
52
353
  class Warnings < BaseResource
53
- # Detailed description of the warning.
354
+ # Indicates that the backup access code is unhealthy.
355
+ class PartialBackupAccessCodePool < Warnings
356
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
357
+ # @return [String]
358
+ attr_accessor :message
359
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
360
+ # @return [String]
361
+ # Known values:
362
+ # - `partial_backup_access_code_pool`
363
+ attr_accessor :warning_code
364
+ # Date and time at which Seam created the warning.
365
+ # @return [Time]
366
+ date_accessor :created_at
367
+ end
368
+
369
+ # Indicates that there are too many backup codes.
370
+ class ManyActiveBackupCodes < Warnings
371
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
372
+ # @return [String]
373
+ attr_accessor :message
374
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
375
+ # @return [String]
376
+ # Known values:
377
+ # - `many_active_backup_codes`
378
+ attr_accessor :warning_code
379
+ # Date and time at which Seam created the warning.
380
+ # @return [Time]
381
+ date_accessor :created_at
382
+ end
383
+
384
+ # Indicates that a third-party integration has been detected.
385
+ class ThirdPartyIntegrationDetected < Warnings
386
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
387
+ # @return [String]
388
+ attr_accessor :message
389
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
390
+ # @return [String]
391
+ # Known values:
392
+ # - `third_party_integration_detected`
393
+ attr_accessor :warning_code
394
+ # Date and time at which Seam created the warning.
395
+ # @return [Time]
396
+ date_accessor :created_at
397
+ end
398
+
399
+ # Indicates that the Remote Unlock feature is not enabled in the settings."
400
+ class TtlockLockGatewayUnlockingNotEnabled < Warnings
401
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
402
+ # @return [String]
403
+ attr_accessor :message
404
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
405
+ # @return [String]
406
+ # Known values:
407
+ # - `ttlock_lock_gateway_unlocking_not_enabled`
408
+ attr_accessor :warning_code
409
+ # Date and time at which Seam created the warning.
410
+ # @return [Time]
411
+ date_accessor :created_at
412
+ end
413
+
414
+ # Indicates that the gateway signal is weak.
415
+ class TtlockWeakGatewaySignal < Warnings
416
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
417
+ # @return [String]
418
+ attr_accessor :message
419
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
420
+ # @return [String]
421
+ # Known values:
422
+ # - `ttlock_weak_gateway_signal`
423
+ attr_accessor :warning_code
424
+ # Date and time at which Seam created the warning.
425
+ # @return [Time]
426
+ date_accessor :created_at
427
+ end
428
+
429
+ # Indicates that the device is in power saving mode and may have limited functionality.
430
+ class PowerSavingMode < Warnings
431
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
432
+ # @return [String]
433
+ attr_accessor :message
434
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
435
+ # @return [String]
436
+ # Known values:
437
+ # - `power_saving_mode`
438
+ attr_accessor :warning_code
439
+ # Date and time at which Seam created the warning.
440
+ # @return [Time]
441
+ date_accessor :created_at
442
+ end
443
+
444
+ # Indicates that the temperature threshold has been exceeded.
445
+ class TemperatureThresholdExceeded < Warnings
446
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
447
+ # @return [String]
448
+ attr_accessor :message
449
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
450
+ # @return [String]
451
+ # Known values:
452
+ # - `temperature_threshold_exceeded`
453
+ attr_accessor :warning_code
454
+ # Date and time at which Seam created the warning.
455
+ # @return [Time]
456
+ date_accessor :created_at
457
+ end
458
+
459
+ # Indicates that the device appears to be unresponsive.
460
+ class DeviceCommunicationDegraded < Warnings
461
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
462
+ # @return [String]
463
+ attr_accessor :message
464
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
465
+ # @return [String]
466
+ # Known values:
467
+ # - `device_communication_degraded`
468
+ attr_accessor :warning_code
469
+ # Date and time at which Seam created the warning.
470
+ # @return [Time]
471
+ date_accessor :created_at
472
+ end
473
+
474
+ # Indicates that a scheduled maintenance window has been detected.
475
+ class ScheduledMaintenanceWindow < Warnings
476
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
477
+ # @return [String]
478
+ attr_accessor :message
479
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
480
+ # @return [String]
481
+ # Known values:
482
+ # - `scheduled_maintenance_window`
483
+ attr_accessor :warning_code
484
+ # Date and time at which Seam created the warning.
485
+ # @return [Time]
486
+ date_accessor :created_at
487
+ end
488
+
489
+ # Indicates that the device has a flaky connection.
490
+ class DeviceHasFlakyConnection < Warnings
491
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
492
+ # @return [String]
493
+ attr_accessor :message
494
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
495
+ # @return [String]
496
+ # Known values:
497
+ # - `device_has_flaky_connection`
498
+ attr_accessor :warning_code
499
+ # Date and time at which Seam created the warning.
500
+ # @return [Time]
501
+ date_accessor :created_at
502
+ end
503
+
504
+ # Indicates that the Salto KS lock is in Office Mode. Access Codes will not unlock doors.
505
+ class SaltoKsOfficeMode < Warnings
506
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
507
+ # @return [String]
508
+ attr_accessor :message
509
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
510
+ # @return [String]
511
+ # Known values:
512
+ # - `salto_ks_office_mode`
513
+ attr_accessor :warning_code
514
+ # Date and time at which Seam created the warning.
515
+ # @return [Time]
516
+ date_accessor :created_at
517
+ end
518
+
519
+ # Indicates that the Salto KS lock is in Privacy Mode. Access Codes will not unlock doors.
520
+ class SaltoKsPrivacyMode < Warnings
521
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
522
+ # @return [String]
523
+ attr_accessor :message
524
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
525
+ # @return [String]
526
+ # Known values:
527
+ # - `salto_ks_privacy_mode`
528
+ attr_accessor :warning_code
529
+ # Date and time at which Seam created the warning.
530
+ # @return [Time]
531
+ date_accessor :created_at
532
+ end
533
+
534
+ # Indicates that the lock is in Privacy Mode. Access codes and remote unlock are blocked until Privacy Mode is disabled.
535
+ class PrivacyMode < Warnings
536
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
537
+ # @return [String]
538
+ attr_accessor :message
539
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
540
+ # @return [String]
541
+ # Known values:
542
+ # - `privacy_mode`
543
+ attr_accessor :warning_code
544
+ # Date and time at which Seam created the warning.
545
+ # @return [Time]
546
+ date_accessor :created_at
547
+ end
548
+
549
+ # Indicates that the Salto KS site has exceeded 80% of the maximum number of allowed users. Increase your subscription limit or delete some users from your site.
550
+ class SaltoKsSubscriptionLimitAlmostReached < Warnings
551
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
552
+ # @return [String]
553
+ attr_accessor :message
554
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
555
+ # @return [String]
556
+ # Known values:
557
+ # - `salto_ks_subscription_limit_almost_reached`
558
+ attr_accessor :warning_code
559
+ # Date and time at which Seam created the warning.
560
+ # @return [Time]
561
+ date_accessor :created_at
562
+ end
563
+
564
+ # Indicates that a change in the reported device model has been detected for this Salto KS lock, which may occur after an IQ hub reset. Access code support may be affected. See https://help.getseam.com/articles/5098842588-salto-ks-lock-loses-access-code-support for troubleshooting steps.
565
+ class SaltoKsLockAccessCodeSupportRemoved < Warnings
566
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
567
+ # @return [String]
568
+ attr_accessor :message
569
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
570
+ # @return [String]
571
+ # Known values:
572
+ # - `salto_ks_lock_access_code_support_removed`
573
+ attr_accessor :warning_code
574
+ # Date and time at which Seam created the warning.
575
+ # @return [Time]
576
+ date_accessor :created_at
577
+ end
578
+
579
+ # Indicates that an unknown issue occurred while syncing the state of the phone with the provider. This issue may affect the proper functioning of the phone.
580
+ class UnknownIssueWithPhone < Warnings
581
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
582
+ # @return [String]
583
+ attr_accessor :message
584
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
585
+ # @return [String]
586
+ # Known values:
587
+ # - `unknown_issue_with_phone`
588
+ attr_accessor :warning_code
589
+ # Date and time at which Seam created the warning.
590
+ # @return [Time]
591
+ date_accessor :created_at
592
+ end
593
+
594
+ # Indicates that Seam detected that the Lockly device does not have a time zone configured. Time-bound codes may not work as expected.
595
+ class LocklyTimeZoneNotConfigured < Warnings
596
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
597
+ # @return [String]
598
+ attr_accessor :message
599
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
600
+ # @return [String]
601
+ # Known values:
602
+ # - `lockly_time_zone_not_configured`
603
+ attr_accessor :warning_code
604
+ # Date and time at which Seam created the warning.
605
+ # @return [Time]
606
+ date_accessor :created_at
607
+ end
608
+
609
+ # Indicates that Seam does not know the time zone of the Ultraloq device. Set a time zone to enable time-bound access codes.
610
+ class UltraloqTimeZoneUnknown < Warnings
611
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
612
+ # @return [String]
613
+ attr_accessor :message
614
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
615
+ # @return [String]
616
+ # Known values:
617
+ # - `ultraloq_time_zone_unknown`
618
+ attr_accessor :warning_code
619
+ # Date and time at which Seam created the warning.
620
+ # @return [Time]
621
+ date_accessor :created_at
622
+ end
623
+
624
+ # Indicates that Seam does not know the device's time zone. Set a time zone to enable time-bound access codes.
625
+ class TimeZoneUnknown < Warnings
626
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
627
+ # @return [String]
628
+ attr_accessor :message
629
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
630
+ # @return [String]
631
+ # Known values:
632
+ # - `time_zone_unknown`
633
+ attr_accessor :warning_code
634
+ # Date and time at which Seam created the warning.
635
+ # @return [Time]
636
+ date_accessor :created_at
637
+ end
638
+
639
+ # Indicates that the device's configured time zone does not match its hardware UTC offset. Time-bound access codes may activate at the wrong local time.
640
+ class TimeZoneMismatch < Warnings
641
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
642
+ # @return [String]
643
+ attr_accessor :message
644
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
645
+ # @return [String]
646
+ # Known values:
647
+ # - `time_zone_mismatch`
648
+ attr_accessor :warning_code
649
+ # Date and time at which Seam created the warning.
650
+ # @return [Time]
651
+ date_accessor :created_at
652
+ end
653
+
654
+ # Indicates that the 2N device does not have a time zone configured. Configure a time zone on the device to enable access codes.
655
+ class TwoNDeviceMissingTimezone < Warnings
656
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
657
+ # @return [String]
658
+ attr_accessor :message
659
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
660
+ # @return [String]
661
+ # Known values:
662
+ # - `two_n_device_missing_timezone`
663
+ attr_accessor :warning_code
664
+ # Date and time at which Seam created the warning.
665
+ # @return [Time]
666
+ date_accessor :created_at
667
+ end
668
+
669
+ # Indicates that a hub or relay must be connected to unlock additional capabilities such as remote unlock.
670
+ class HubRequiredForAdditionalCapabilities < Warnings
671
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
672
+ # @return [String]
673
+ attr_accessor :message
674
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
675
+ # @return [String]
676
+ # Known values:
677
+ # - `hub_required_for_additional_capabilities`
678
+ attr_accessor :warning_code
679
+ # Date and time at which Seam created the warning.
680
+ # @return [Time]
681
+ date_accessor :created_at
682
+ end
683
+
684
+ # Indicates a provider-specific issue that may affect device functionality.
685
+ class ProviderIssue < Warnings
686
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
687
+ # @return [String]
688
+ attr_accessor :message
689
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
690
+ # @return [String]
691
+ # Known values:
692
+ # - `provider_issue`
693
+ attr_accessor :warning_code
694
+ # Date and time at which Seam created the warning.
695
+ # @return [Time]
696
+ date_accessor :created_at
697
+ end
698
+
699
+ # Indicates that the key is in a locker that does not support the access codes API.
700
+ class KeynestUnsupportedLocker < Warnings
701
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
702
+ # @return [String]
703
+ attr_accessor :message
704
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
705
+ # @return [String]
706
+ # Known values:
707
+ # - `keynest_unsupported_locker`
708
+ attr_accessor :warning_code
709
+ # Date and time at which Seam created the warning.
710
+ # @return [Time]
711
+ date_accessor :created_at
712
+ end
713
+
714
+ # Indicates that the accessory keypad exists, but is not linked to the Igloohome Bridge. Online access code programming will fail until the keypad is linked to the Igloohome Bridge in the Igloohome app.
715
+ class AccessoryKeypadSetupRequired < Warnings
716
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
717
+ # @return [String]
718
+ attr_accessor :message
719
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
720
+ # @return [String]
721
+ # Known values:
722
+ # - `accessory_keypad_setup_required`
723
+ attr_accessor :warning_code
724
+ # Date and time at which Seam created the warning.
725
+ # @return [Time]
726
+ date_accessor :created_at
727
+ end
728
+
729
+ # Indicates that the accessory keypad paired with this lock has a low or critically low battery. Replace its batteries so guests can keep entering their access codes.
730
+ class AccessoryKeypadLowBattery < Warnings
731
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
732
+ # @return [String]
733
+ attr_accessor :message
734
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
735
+ # @return [String]
736
+ # Known values:
737
+ # - `accessory_keypad_low_battery`
738
+ attr_accessor :warning_code
739
+ # Date and time at which Seam created the warning.
740
+ # @return [Time]
741
+ date_accessor :created_at
742
+ end
743
+
744
+ # Indicates that the device may optimistically be reported as online because the provider does not reliably report its online status.
745
+ class UnreliableOnlineStatus < Warnings
746
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
747
+ # @return [String]
748
+ attr_accessor :message
749
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
750
+ # @return [String]
751
+ # Known values:
752
+ # - `unreliable_online_status`
753
+ attr_accessor :warning_code
754
+ # Date and time at which Seam created the warning.
755
+ # @return [Time]
756
+ date_accessor :created_at
757
+ end
758
+
759
+ # Indicates that the device has reached its maximum number of active access codes. Delete existing codes before creating new ones.
760
+ class MaxAccessCodesReached < Warnings
761
+ # Number of active access codes on the device when the warning was set.
762
+ # @return [Integer]
763
+ attr_accessor :active_access_code_count
764
+ # Maximum number of active access codes supported by the device.
765
+ # @return [Integer]
766
+ attr_accessor :max_active_access_code_count
767
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
768
+ # @return [String]
769
+ attr_accessor :message
770
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
771
+ # @return [String]
772
+ # Known values:
773
+ # - `max_access_codes_reached`
774
+ attr_accessor :warning_code
775
+ # Date and time at which Seam created the warning.
776
+ # @return [Time]
777
+ date_accessor :created_at
778
+ end
779
+
780
+ # Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
54
781
  # @return [String]
55
782
  attr_accessor :message
56
- # Unique identifier of the type of warning.
783
+ # Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
57
784
  # @return [String]
785
+ # Known values:
786
+ # - `partial_backup_access_code_pool`
787
+ # - `many_active_backup_codes`
788
+ # - `third_party_integration_detected`
789
+ # - `ttlock_lock_gateway_unlocking_not_enabled`
790
+ # - `ttlock_weak_gateway_signal`
791
+ # - `power_saving_mode`
792
+ # - `temperature_threshold_exceeded`
793
+ # - `device_communication_degraded`
794
+ # - `scheduled_maintenance_window`
795
+ # - `device_has_flaky_connection`
796
+ # - `salto_ks_office_mode`
797
+ # - `salto_ks_privacy_mode`
798
+ # - `privacy_mode`
799
+ # - `salto_ks_subscription_limit_almost_reached`
800
+ # - `salto_ks_lock_access_code_support_removed`
801
+ # - `unknown_issue_with_phone`
802
+ # - `lockly_time_zone_not_configured`
803
+ # - `ultraloq_time_zone_unknown`
804
+ # - `time_zone_unknown`
805
+ # - `time_zone_mismatch`
806
+ # - `two_n_device_missing_timezone`
807
+ # - `hub_required_for_additional_capabilities`
808
+ # - `provider_issue`
809
+ # - `keynest_unsupported_locker`
810
+ # - `accessory_keypad_setup_required`
811
+ # - `accessory_keypad_low_battery`
812
+ # - `unreliable_online_status`
813
+ # - `max_access_codes_reached`
58
814
  attr_accessor :warning_code
59
815
  # Date and time at which Seam created the warning.
60
816
  # @return [Time]
61
817
  date_accessor :created_at
818
+
819
+ discriminated_by :warning_code, {
820
+ "partial_backup_access_code_pool" => PartialBackupAccessCodePool,
821
+ "many_active_backup_codes" => ManyActiveBackupCodes,
822
+ "third_party_integration_detected" => ThirdPartyIntegrationDetected,
823
+ "ttlock_lock_gateway_unlocking_not_enabled" => TtlockLockGatewayUnlockingNotEnabled,
824
+ "ttlock_weak_gateway_signal" => TtlockWeakGatewaySignal,
825
+ "power_saving_mode" => PowerSavingMode,
826
+ "temperature_threshold_exceeded" => TemperatureThresholdExceeded,
827
+ "device_communication_degraded" => DeviceCommunicationDegraded,
828
+ "scheduled_maintenance_window" => ScheduledMaintenanceWindow,
829
+ "device_has_flaky_connection" => DeviceHasFlakyConnection,
830
+ "salto_ks_office_mode" => SaltoKsOfficeMode,
831
+ "salto_ks_privacy_mode" => SaltoKsPrivacyMode,
832
+ "privacy_mode" => PrivacyMode,
833
+ "salto_ks_subscription_limit_almost_reached" => SaltoKsSubscriptionLimitAlmostReached,
834
+ "salto_ks_lock_access_code_support_removed" => SaltoKsLockAccessCodeSupportRemoved,
835
+ "unknown_issue_with_phone" => UnknownIssueWithPhone,
836
+ "lockly_time_zone_not_configured" => LocklyTimeZoneNotConfigured,
837
+ "ultraloq_time_zone_unknown" => UltraloqTimeZoneUnknown,
838
+ "time_zone_unknown" => TimeZoneUnknown,
839
+ "time_zone_mismatch" => TimeZoneMismatch,
840
+ "two_n_device_missing_timezone" => TwoNDeviceMissingTimezone,
841
+ "hub_required_for_additional_capabilities" => HubRequiredForAdditionalCapabilities,
842
+ "provider_issue" => ProviderIssue,
843
+ "keynest_unsupported_locker" => KeynestUnsupportedLocker,
844
+ "accessory_keypad_setup_required" => AccessoryKeypadSetupRequired,
845
+ "accessory_keypad_low_battery" => AccessoryKeypadLowBattery,
846
+ "unreliable_online_status" => UnreliableOnlineStatus,
847
+ "max_access_codes_reached" => MaxAccessCodesReached
848
+ }.freeze
62
849
  end
63
850
 
64
851
  # Properties of the phone.
65
852
  # @return [Properties]
66
853
  resource_accessor :properties, Properties
67
- # Errors associated with the phone.
854
+ # Array of errors associated with the device. Each error object within the array contains two fields: `error_code` and `message`. `error_code` is a string that uniquely identifies the type of error, enabling quick recognition and categorization of the issue. `message` provides a more detailed description of the error, offering insights into the issue and potentially how to rectify it.
68
855
  # @return [Array<Errors>]
69
856
  resource_list_accessor :errors, Errors
70
- # Warnings associated with the phone.
857
+ # Array of warnings associated with the device. Each warning object within the array contains two fields: `warning_code` and `message`. `warning_code` is a string that uniquely identifies the type of warning, enabling quick recognition and categorization of the issue. `message` provides a more detailed description of the warning, offering insights into the issue and potentially how to rectify it.
71
858
  # @return [Array<Warnings>]
72
859
  resource_list_accessor :warnings, Warnings
73
860
  # Optional [custom metadata](https://www.seam.co/docs/core-concepts/devices/adding-custom-metadata-to-a-device) for the phone.