seam 2.164.0 → 2.166.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.
- checksums.yaml +4 -4
- data/Gemfile.lock +2 -2
- data/lib/seam/resources/access_grant.rb +9 -4
- data/lib/seam/resources/access_method.rb +25 -2
- data/lib/seam/resources/acs_entrance.rb +22 -0
- data/lib/seam/resources/acs_system.rb +17 -0
- data/lib/seam/resources/action_attempt.rb +228 -4
- data/lib/seam/resources/connect_webview.rb +1 -0
- data/lib/seam/resources/connected_account.rb +1 -0
- data/lib/seam/resources/device.rb +98 -1
- data/lib/seam/resources/device_provider.rb +13 -0
- data/lib/seam/resources/event.rb +1 -0
- data/lib/seam/resources/phone.rb +793 -6
- data/lib/seam/resources/unmanaged_access_grant.rb +9 -4
- data/lib/seam/resources/unmanaged_access_method.rb +25 -2
- data/lib/seam/resources/unmanaged_device.rb +13 -0
- data/lib/seam/routes/customers.rb +4 -2
- data/lib/seam/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5a1766e6be523652f696d57db1da959002d72ffb446a531a0fc55a75e1a77d0d
|
|
4
|
+
data.tar.gz: 80591311035a9fde297bbd39e15f1c8d87685c9b3f2e117349d525476bc7c776
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0a911571db84e8e849bd2e5e7d20234fffadebdba4e116759e6a44a741e1ac607bd4631f7071df457e2cce8f75259b82191c7bb8a1a60a7d7e5caa0fccc57c50
|
|
7
|
+
data.tar.gz: 1eb9b6a9e35557ea83a9547e8a1349df079dbe60d74de7ba29ac17fc9ce67f03216b6a22be8db575d52ac4eef44ceb60f02d9e22e5aada590b2e84dc5db29fe8
|
data/Gemfile.lock
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
PATH
|
|
2
2
|
remote: .
|
|
3
3
|
specs:
|
|
4
|
-
seam (2.
|
|
4
|
+
seam (2.166.0)
|
|
5
5
|
faraday (~> 2.7)
|
|
6
6
|
faraday-retry (~> 2.2)
|
|
7
7
|
svix (~> 1.30)
|
|
@@ -171,7 +171,7 @@ CHECKSUMS
|
|
|
171
171
|
rubocop-ast (1.50.0) sha256=b9ca88300da0803ee222ad20cdb30494c0a784eed06fdc35d254b06d662788db
|
|
172
172
|
rubocop-performance (1.26.1) sha256=cd19b936ff196df85829d264b522fd4f98b6c89ad271fa52744a8c11b8f71834
|
|
173
173
|
ruby-progressbar (1.13.0) sha256=80fc9c47a9b640d6834e0dc7b3c94c9df37f08cb072b7761e4a71e22cff29b33
|
|
174
|
-
seam (2.
|
|
174
|
+
seam (2.166.0)
|
|
175
175
|
simplecov (1.1.1) sha256=25825ef13f0b2e74694d769817dad6ab8e90131dabdaa666e522fea105521e78
|
|
176
176
|
simplecov-console (0.9.5) sha256=b1108bcfff5f210143e2b8301698c367b01586f20d25a73e95475a5df6fc6ff6
|
|
177
177
|
standard (1.56.0) sha256=ae2af4d9669589162ac69ed5ef59dcf9f346d4afc81f7e62b84339310dfcb787
|
|
@@ -169,8 +169,10 @@ module Seam
|
|
|
169
169
|
# Device whose access code could not be revoked.
|
|
170
170
|
# @return [String]
|
|
171
171
|
attr_accessor :device_id
|
|
172
|
-
# Reason the access code could not be revoked
|
|
172
|
+
# Reason the access code could not be revoked.
|
|
173
173
|
# @return [String]
|
|
174
|
+
# Known values:
|
|
175
|
+
# - `offline_access_code_not_revocable`
|
|
174
176
|
attr_accessor :error_code
|
|
175
177
|
# Human-readable description of why revocation failed.
|
|
176
178
|
# @return [String]
|
|
@@ -211,10 +213,13 @@ module Seam
|
|
|
211
213
|
date_accessor :created_at
|
|
212
214
|
end
|
|
213
215
|
|
|
214
|
-
# Indicates that the requested PIN code was already in use on a device,
|
|
216
|
+
# Indicates that the requested PIN code could not be used, so a different code was assigned. For example, the code was already in use on a device, or the access system rejected it because it did not meet its PIN rules.
|
|
215
217
|
class RequestedCodeUnavailable < Warnings
|
|
216
|
-
# ID of the
|
|
217
|
-
# @return [String]
|
|
218
|
+
# ID of the access method whose requested code was unavailable. Present when an access system, such as Salto KS, assigned a different code.
|
|
219
|
+
# @return [String, nil]
|
|
220
|
+
attr_accessor :access_method_id
|
|
221
|
+
# ID of the device where the requested code was unavailable. Present when the code was set directly on a device.
|
|
222
|
+
# @return [String, nil]
|
|
218
223
|
attr_accessor :device_id
|
|
219
224
|
# Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
|
|
220
225
|
# @return [String]
|
|
@@ -189,6 +189,27 @@ module Seam
|
|
|
189
189
|
date_accessor :created_at
|
|
190
190
|
end
|
|
191
191
|
|
|
192
|
+
# Indicates that the access system could not use the PIN code requested for this [access method](https://www.seam.co/docs/use-cases/granting-access/creating-an-access-grant), for example because it did not meet the access system's PIN rules, so the access system assigned a different code. Give the recipient the assigned code.
|
|
193
|
+
class RequestedCodeUnavailable < Warnings
|
|
194
|
+
# Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
|
|
195
|
+
# @return [String]
|
|
196
|
+
attr_accessor :message
|
|
197
|
+
# The PIN code that was assigned instead.
|
|
198
|
+
# @return [String]
|
|
199
|
+
attr_accessor :new_code
|
|
200
|
+
# The originally requested PIN code that could not be used.
|
|
201
|
+
# @return [String]
|
|
202
|
+
attr_accessor :original_code
|
|
203
|
+
# Unique identifier of the type of warning. Enables quick recognition and categorization of the issue.
|
|
204
|
+
# @return [String]
|
|
205
|
+
# Known values:
|
|
206
|
+
# - `requested_code_unavailable`
|
|
207
|
+
attr_accessor :warning_code
|
|
208
|
+
# Date and time at which Seam created the warning.
|
|
209
|
+
# @return [Time]
|
|
210
|
+
date_accessor :created_at
|
|
211
|
+
end
|
|
212
|
+
|
|
192
213
|
# Detailed description of the warning. Provides insights into the issue and potentially how to rectify it.
|
|
193
214
|
# @return [String]
|
|
194
215
|
attr_accessor :message
|
|
@@ -201,6 +222,7 @@ module Seam
|
|
|
201
222
|
# - `delay_in_issuing`
|
|
202
223
|
# - `user_identity_missing_email_address`
|
|
203
224
|
# - `user_identity_missing_phone_number`
|
|
225
|
+
# - `requested_code_unavailable`
|
|
204
226
|
attr_accessor :warning_code
|
|
205
227
|
# Date and time at which Seam created the warning.
|
|
206
228
|
# @return [Time]
|
|
@@ -212,7 +234,8 @@ module Seam
|
|
|
212
234
|
"pulled_backup_access_code" => PulledBackupAccessCode,
|
|
213
235
|
"delay_in_issuing" => DelayInIssuing,
|
|
214
236
|
"user_identity_missing_email_address" => UserIdentityMissingEmailAddress,
|
|
215
|
-
"user_identity_missing_phone_number" => UserIdentityMissingPhoneNumber
|
|
237
|
+
"user_identity_missing_phone_number" => UserIdentityMissingPhoneNumber,
|
|
238
|
+
"requested_code_unavailable" => RequestedCodeUnavailable
|
|
216
239
|
}.freeze
|
|
217
240
|
end
|
|
218
241
|
|
|
@@ -258,7 +281,7 @@ module Seam
|
|
|
258
281
|
# Indicates whether the access method is ready for card assignment. This is true when the access method is in card mode, has not yet been issued, and the system supports credential assignment.
|
|
259
282
|
# @return [Boolean, nil]
|
|
260
283
|
attr_accessor :is_ready_for_assignment
|
|
261
|
-
# Indicates whether the access method is ready to be encoded. This is true when the
|
|
284
|
+
# Indicates whether the access method is ready to be encoded. This is true when the card has not yet been issued and the access system has received all the access the card needs. While it is false, `pending_mutations` contains `waiting_for_access_on_acs_system`.
|
|
262
285
|
# @return [Boolean, nil]
|
|
263
286
|
attr_accessor :is_ready_for_encoding
|
|
264
287
|
# Access method mode. Supported values: `code`, `card`, `mobile_key`, `cloud_key`.
|
|
@@ -101,9 +101,27 @@ module Seam
|
|
|
101
101
|
attr_accessor :access_point_profile
|
|
102
102
|
end
|
|
103
103
|
|
|
104
|
+
# Known `error_code` values load as subclasses; unknown values remain Errors instances for forward compatibility.
|
|
104
105
|
class Errors < BaseResource
|
|
106
|
+
# Indicates that the [entrance](https://www.seam.co/docs/low-level-apis/access-systems/retrieving-entrance-details) was removed from the connected account, so Seam can no longer sync it.
|
|
107
|
+
class EntranceRemoved < Errors
|
|
108
|
+
# Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
|
|
109
|
+
# @return [String]
|
|
110
|
+
# Known values:
|
|
111
|
+
# - `entrance_removed`
|
|
112
|
+
attr_accessor :error_code
|
|
113
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
114
|
+
# @return [String]
|
|
115
|
+
attr_accessor :message
|
|
116
|
+
# Date and time at which Seam created the error.
|
|
117
|
+
# @return [Time]
|
|
118
|
+
date_accessor :created_at
|
|
119
|
+
end
|
|
120
|
+
|
|
105
121
|
# Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
|
|
106
122
|
# @return [String]
|
|
123
|
+
# Known values:
|
|
124
|
+
# - `entrance_removed`
|
|
107
125
|
attr_accessor :error_code
|
|
108
126
|
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
109
127
|
# @return [String]
|
|
@@ -111,6 +129,10 @@ module Seam
|
|
|
111
129
|
# Date and time at which Seam created the error.
|
|
112
130
|
# @return [Time]
|
|
113
131
|
date_accessor :created_at
|
|
132
|
+
|
|
133
|
+
discriminated_by :error_code, {
|
|
134
|
+
"entrance_removed" => EntranceRemoved
|
|
135
|
+
}.freeze
|
|
114
136
|
end
|
|
115
137
|
|
|
116
138
|
class HotekMetadata < BaseResource
|
|
@@ -78,6 +78,21 @@ module Seam
|
|
|
78
78
|
date_accessor :created_at
|
|
79
79
|
end
|
|
80
80
|
|
|
81
|
+
# Indicates that the access control system has reached the maximum number of users its license allows, so Seam cannot create new users on it and access for new guests is not provisioned. Remove unused users from the access control system or increase its license. The error clears once Seam can create users again.
|
|
82
|
+
class UserLicenseLimitReached < Errors
|
|
83
|
+
# Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
|
|
84
|
+
# @return [String]
|
|
85
|
+
# Known values:
|
|
86
|
+
# - `user_license_limit_reached`
|
|
87
|
+
attr_accessor :error_code
|
|
88
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
89
|
+
# @return [String]
|
|
90
|
+
attr_accessor :message
|
|
91
|
+
# Date and time at which Seam created the error.
|
|
92
|
+
# @return [Time]
|
|
93
|
+
date_accessor :created_at
|
|
94
|
+
end
|
|
95
|
+
|
|
81
96
|
# Indicates that the provider's system backing this [access control system](https://www.seam.co/docs/low-level-apis/access-systems) is not letting Seam act on it, so access cannot be managed until this is resolved. The error message says which of two causes applies. Either Seam's integration user does not have sufficient permissions on the provider's system, or has been suspended there: grant the integration user the required permissions in the provider's system, or reauthorize the connected account in Seam. Or the provider account or site does not have a valid subscription with the provider: set up or renew that subscription with the provider.
|
|
82
97
|
class InsufficientPermissions < Errors
|
|
83
98
|
# Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
|
|
@@ -160,6 +175,7 @@ module Seam
|
|
|
160
175
|
# - `bridge_disconnected`
|
|
161
176
|
# - `visionline_instance_unreachable`
|
|
162
177
|
# - `salto_ks_subscription_limit_exceeded`
|
|
178
|
+
# - `user_license_limit_reached`
|
|
163
179
|
# - `insufficient_permissions`
|
|
164
180
|
# - `acs_system_disconnected`
|
|
165
181
|
# - `account_disconnected`
|
|
@@ -178,6 +194,7 @@ module Seam
|
|
|
178
194
|
"bridge_disconnected" => BridgeDisconnected,
|
|
179
195
|
"visionline_instance_unreachable" => VisionlineInstanceUnreachable,
|
|
180
196
|
"salto_ks_subscription_limit_exceeded" => SaltoKsSubscriptionLimitExceeded,
|
|
197
|
+
"user_license_limit_reached" => UserLicenseLimitReached,
|
|
181
198
|
"insufficient_permissions" => InsufficientPermissions,
|
|
182
199
|
"acs_system_disconnected" => AcsSystemDisconnected,
|
|
183
200
|
"account_disconnected" => AccountDisconnected,
|
|
@@ -974,20 +974,21 @@ module Seam
|
|
|
974
974
|
end
|
|
975
975
|
|
|
976
976
|
# Previous access time configuration.
|
|
977
|
-
# @return [From]
|
|
977
|
+
# @return [From, nil]
|
|
978
978
|
resource_accessor :from, From
|
|
979
979
|
# New access time configuration.
|
|
980
|
-
# @return [To]
|
|
980
|
+
# @return [To, nil]
|
|
981
981
|
resource_accessor :to, To
|
|
982
982
|
# Detailed description of the mutation.
|
|
983
983
|
# @return [String]
|
|
984
984
|
attr_accessor :message
|
|
985
|
-
# Mutation code to indicate that
|
|
985
|
+
# Mutation code to indicate that the access system has not yet received all the access this card needs, so the card is not ready to be encoded.
|
|
986
986
|
# @return [String]
|
|
987
987
|
# Known values:
|
|
988
988
|
# - `provisioning_access`
|
|
989
989
|
# - `revoking_access`
|
|
990
990
|
# - `updating_access_times`
|
|
991
|
+
# - `waiting_for_access_on_acs_system`
|
|
991
992
|
attr_accessor :mutation_code
|
|
992
993
|
# Date and time at which the mutation was created.
|
|
993
994
|
# @return [Time]
|
|
@@ -1007,10 +1008,17 @@ module Seam
|
|
|
1007
1008
|
# - `delay_in_issuing`
|
|
1008
1009
|
# - `user_identity_missing_email_address`
|
|
1009
1010
|
# - `user_identity_missing_phone_number`
|
|
1011
|
+
# - `requested_code_unavailable`
|
|
1010
1012
|
attr_accessor :warning_code
|
|
1011
1013
|
# ID of the original access method from which this backup access method was split, if applicable.
|
|
1012
1014
|
# @return [String, nil]
|
|
1013
1015
|
attr_accessor :original_access_method_id
|
|
1016
|
+
# The PIN code that was assigned instead.
|
|
1017
|
+
# @return [String, nil]
|
|
1018
|
+
attr_accessor :new_code
|
|
1019
|
+
# The originally requested PIN code that could not be used.
|
|
1020
|
+
# @return [String, nil]
|
|
1021
|
+
attr_accessor :original_code
|
|
1014
1022
|
# Date and time at which Seam created the warning.
|
|
1015
1023
|
# @return [Time]
|
|
1016
1024
|
date_accessor :created_at
|
|
@@ -1058,7 +1066,7 @@ module Seam
|
|
|
1058
1066
|
# Indicates whether the access method is ready for card assignment. This is true when the access method is in card mode, has not yet been issued, and the system supports credential assignment.
|
|
1059
1067
|
# @return [Boolean, nil]
|
|
1060
1068
|
attr_accessor :is_ready_for_assignment
|
|
1061
|
-
# Indicates whether the access method is ready to be encoded. This is true when the
|
|
1069
|
+
# Indicates whether the access method is ready to be encoded. This is true when the card has not yet been issued and the access system has received all the access the card needs. While it is false, `pending_mutations` contains `waiting_for_access_on_acs_system`.
|
|
1062
1070
|
# @return [Boolean, nil]
|
|
1063
1071
|
attr_accessor :is_ready_for_encoding
|
|
1064
1072
|
# Access method mode. Supported values: `code`, `card`, `mobile_key`, `cloud_key`.
|
|
@@ -1505,6 +1513,212 @@ module Seam
|
|
|
1505
1513
|
attr_accessor :status
|
|
1506
1514
|
end
|
|
1507
1515
|
|
|
1516
|
+
# Setting the speaker volume is pending.
|
|
1517
|
+
class SetSpeakerVolume < ActionAttempt
|
|
1518
|
+
class Error < BaseResource
|
|
1519
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
1520
|
+
# @return [String]
|
|
1521
|
+
attr_accessor :message
|
|
1522
|
+
# Type of the error.
|
|
1523
|
+
# @return [String]
|
|
1524
|
+
attr_accessor :type
|
|
1525
|
+
end
|
|
1526
|
+
|
|
1527
|
+
class Result < BaseResource
|
|
1528
|
+
end
|
|
1529
|
+
|
|
1530
|
+
# Error associated with the action.
|
|
1531
|
+
# @return [Error, nil]
|
|
1532
|
+
# Only present when `status` is `error`; `nil` otherwise.
|
|
1533
|
+
resource_accessor :error, Error
|
|
1534
|
+
available_only_for_statuses :error, ["error"]
|
|
1535
|
+
# Result of the action.
|
|
1536
|
+
# @return [Result, nil]
|
|
1537
|
+
# Only present when `status` is `success`; `nil` otherwise.
|
|
1538
|
+
resource_accessor :result, Result
|
|
1539
|
+
available_only_for_statuses :result, ["success"]
|
|
1540
|
+
# ID of the action attempt.
|
|
1541
|
+
# @return [String]
|
|
1542
|
+
attr_accessor :action_attempt_id
|
|
1543
|
+
# Action attempt to track the status of setting the volume on a speaker.
|
|
1544
|
+
# @return [String]
|
|
1545
|
+
# Known values:
|
|
1546
|
+
# - `SET_SPEAKER_VOLUME`
|
|
1547
|
+
attr_accessor :action_type
|
|
1548
|
+
# @return [String]
|
|
1549
|
+
# Known values:
|
|
1550
|
+
# - `success`
|
|
1551
|
+
# - `pending`
|
|
1552
|
+
# - `error`
|
|
1553
|
+
attr_accessor :status
|
|
1554
|
+
end
|
|
1555
|
+
|
|
1556
|
+
# Muting or unmuting the speaker is pending.
|
|
1557
|
+
class SetSpeakerMute < ActionAttempt
|
|
1558
|
+
class Error < BaseResource
|
|
1559
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
1560
|
+
# @return [String]
|
|
1561
|
+
attr_accessor :message
|
|
1562
|
+
# Type of the error.
|
|
1563
|
+
# @return [String]
|
|
1564
|
+
attr_accessor :type
|
|
1565
|
+
end
|
|
1566
|
+
|
|
1567
|
+
class Result < BaseResource
|
|
1568
|
+
end
|
|
1569
|
+
|
|
1570
|
+
# Error associated with the action.
|
|
1571
|
+
# @return [Error, nil]
|
|
1572
|
+
# Only present when `status` is `error`; `nil` otherwise.
|
|
1573
|
+
resource_accessor :error, Error
|
|
1574
|
+
available_only_for_statuses :error, ["error"]
|
|
1575
|
+
# Result of the action.
|
|
1576
|
+
# @return [Result, nil]
|
|
1577
|
+
# Only present when `status` is `success`; `nil` otherwise.
|
|
1578
|
+
resource_accessor :result, Result
|
|
1579
|
+
available_only_for_statuses :result, ["success"]
|
|
1580
|
+
# ID of the action attempt.
|
|
1581
|
+
# @return [String]
|
|
1582
|
+
attr_accessor :action_attempt_id
|
|
1583
|
+
# Action attempt to track the status of muting or unmuting a speaker.
|
|
1584
|
+
# @return [String]
|
|
1585
|
+
# Known values:
|
|
1586
|
+
# - `SET_SPEAKER_MUTE`
|
|
1587
|
+
attr_accessor :action_type
|
|
1588
|
+
# @return [String]
|
|
1589
|
+
# Known values:
|
|
1590
|
+
# - `success`
|
|
1591
|
+
# - `pending`
|
|
1592
|
+
# - `error`
|
|
1593
|
+
attr_accessor :status
|
|
1594
|
+
end
|
|
1595
|
+
|
|
1596
|
+
# Pausing playback on the speaker is pending.
|
|
1597
|
+
class PauseSpeakerPlayback < ActionAttempt
|
|
1598
|
+
class Error < BaseResource
|
|
1599
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
1600
|
+
# @return [String]
|
|
1601
|
+
attr_accessor :message
|
|
1602
|
+
# Type of the error.
|
|
1603
|
+
# @return [String]
|
|
1604
|
+
attr_accessor :type
|
|
1605
|
+
end
|
|
1606
|
+
|
|
1607
|
+
class Result < BaseResource
|
|
1608
|
+
# IDs of the speakers whose playback was paused, including speakers grouped with the requested speaker.
|
|
1609
|
+
# @return [Array<String>]
|
|
1610
|
+
attr_accessor :affected_device_ids
|
|
1611
|
+
end
|
|
1612
|
+
|
|
1613
|
+
# Error associated with the action.
|
|
1614
|
+
# @return [Error, nil]
|
|
1615
|
+
# Only present when `status` is `error`; `nil` otherwise.
|
|
1616
|
+
resource_accessor :error, Error
|
|
1617
|
+
available_only_for_statuses :error, ["error"]
|
|
1618
|
+
# Result of the action.
|
|
1619
|
+
# @return [Result, nil]
|
|
1620
|
+
# Only present when `status` is `success`; `nil` otherwise.
|
|
1621
|
+
resource_accessor :result, Result
|
|
1622
|
+
available_only_for_statuses :result, ["success"]
|
|
1623
|
+
# ID of the action attempt.
|
|
1624
|
+
# @return [String]
|
|
1625
|
+
attr_accessor :action_attempt_id
|
|
1626
|
+
# Action attempt to track the status of pausing playback on a speaker.
|
|
1627
|
+
# @return [String]
|
|
1628
|
+
# Known values:
|
|
1629
|
+
# - `PAUSE_SPEAKER_PLAYBACK`
|
|
1630
|
+
attr_accessor :action_type
|
|
1631
|
+
# @return [String]
|
|
1632
|
+
# Known values:
|
|
1633
|
+
# - `success`
|
|
1634
|
+
# - `pending`
|
|
1635
|
+
# - `error`
|
|
1636
|
+
attr_accessor :status
|
|
1637
|
+
end
|
|
1638
|
+
|
|
1639
|
+
# Resuming playback on the speaker is pending.
|
|
1640
|
+
class ResumeSpeakerPlayback < ActionAttempt
|
|
1641
|
+
class Error < BaseResource
|
|
1642
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
1643
|
+
# @return [String]
|
|
1644
|
+
attr_accessor :message
|
|
1645
|
+
# Type of the error.
|
|
1646
|
+
# @return [String]
|
|
1647
|
+
attr_accessor :type
|
|
1648
|
+
end
|
|
1649
|
+
|
|
1650
|
+
class Result < BaseResource
|
|
1651
|
+
# IDs of the speakers whose playback was resumed, including speakers grouped with the requested speaker.
|
|
1652
|
+
# @return [Array<String>]
|
|
1653
|
+
attr_accessor :affected_device_ids
|
|
1654
|
+
end
|
|
1655
|
+
|
|
1656
|
+
# Error associated with the action.
|
|
1657
|
+
# @return [Error, nil]
|
|
1658
|
+
# Only present when `status` is `error`; `nil` otherwise.
|
|
1659
|
+
resource_accessor :error, Error
|
|
1660
|
+
available_only_for_statuses :error, ["error"]
|
|
1661
|
+
# Result of the action.
|
|
1662
|
+
# @return [Result, nil]
|
|
1663
|
+
# Only present when `status` is `success`; `nil` otherwise.
|
|
1664
|
+
resource_accessor :result, Result
|
|
1665
|
+
available_only_for_statuses :result, ["success"]
|
|
1666
|
+
# ID of the action attempt.
|
|
1667
|
+
# @return [String]
|
|
1668
|
+
attr_accessor :action_attempt_id
|
|
1669
|
+
# Action attempt to track the status of resuming playback on a speaker.
|
|
1670
|
+
# @return [String]
|
|
1671
|
+
# Known values:
|
|
1672
|
+
# - `RESUME_SPEAKER_PLAYBACK`
|
|
1673
|
+
attr_accessor :action_type
|
|
1674
|
+
# @return [String]
|
|
1675
|
+
# Known values:
|
|
1676
|
+
# - `success`
|
|
1677
|
+
# - `pending`
|
|
1678
|
+
# - `error`
|
|
1679
|
+
attr_accessor :status
|
|
1680
|
+
end
|
|
1681
|
+
|
|
1682
|
+
# Playing a chime on the speaker is pending.
|
|
1683
|
+
class PlaySpeakerChime < ActionAttempt
|
|
1684
|
+
class Error < BaseResource
|
|
1685
|
+
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
1686
|
+
# @return [String]
|
|
1687
|
+
attr_accessor :message
|
|
1688
|
+
# Type of the error.
|
|
1689
|
+
# @return [String]
|
|
1690
|
+
attr_accessor :type
|
|
1691
|
+
end
|
|
1692
|
+
|
|
1693
|
+
class Result < BaseResource
|
|
1694
|
+
end
|
|
1695
|
+
|
|
1696
|
+
# Error associated with the action.
|
|
1697
|
+
# @return [Error, nil]
|
|
1698
|
+
# Only present when `status` is `error`; `nil` otherwise.
|
|
1699
|
+
resource_accessor :error, Error
|
|
1700
|
+
available_only_for_statuses :error, ["error"]
|
|
1701
|
+
# Result of the action.
|
|
1702
|
+
# @return [Result, nil]
|
|
1703
|
+
# Only present when `status` is `success`; `nil` otherwise.
|
|
1704
|
+
resource_accessor :result, Result
|
|
1705
|
+
available_only_for_statuses :result, ["success"]
|
|
1706
|
+
# ID of the action attempt.
|
|
1707
|
+
# @return [String]
|
|
1708
|
+
attr_accessor :action_attempt_id
|
|
1709
|
+
# Action attempt to track the status of playing a chime on a speaker.
|
|
1710
|
+
# @return [String]
|
|
1711
|
+
# Known values:
|
|
1712
|
+
# - `PLAY_SPEAKER_CHIME`
|
|
1713
|
+
attr_accessor :action_type
|
|
1714
|
+
# @return [String]
|
|
1715
|
+
# Known values:
|
|
1716
|
+
# - `success`
|
|
1717
|
+
# - `pending`
|
|
1718
|
+
# - `error`
|
|
1719
|
+
attr_accessor :status
|
|
1720
|
+
end
|
|
1721
|
+
|
|
1508
1722
|
class SyncAccessCodes < ActionAttempt
|
|
1509
1723
|
class Error < BaseResource
|
|
1510
1724
|
# Detailed description of the error. Provides insights into the issue and potentially how to rectify it.
|
|
@@ -1819,6 +2033,11 @@ module Seam
|
|
|
1819
2033
|
# - `PUSH_THERMOSTAT_PROGRAMS`
|
|
1820
2034
|
# - `CONFIGURE_AUTO_LOCK`
|
|
1821
2035
|
# - `CONVERT_ACCESS_CODE_TO_MANAGED`
|
|
2036
|
+
# - `SET_SPEAKER_VOLUME`
|
|
2037
|
+
# - `SET_SPEAKER_MUTE`
|
|
2038
|
+
# - `PAUSE_SPEAKER_PLAYBACK`
|
|
2039
|
+
# - `RESUME_SPEAKER_PLAYBACK`
|
|
2040
|
+
# - `PLAY_SPEAKER_CHIME`
|
|
1822
2041
|
# - `SYNC_ACCESS_CODES`
|
|
1823
2042
|
# - `CREATE_ACCESS_CODE`
|
|
1824
2043
|
# - `DELETE_ACCESS_CODE`
|
|
@@ -1851,6 +2070,11 @@ module Seam
|
|
|
1851
2070
|
"PUSH_THERMOSTAT_PROGRAMS" => PushThermostatPrograms,
|
|
1852
2071
|
"CONFIGURE_AUTO_LOCK" => ConfigureAutoLock,
|
|
1853
2072
|
"CONVERT_ACCESS_CODE_TO_MANAGED" => ConvertAccessCodeToManaged,
|
|
2073
|
+
"SET_SPEAKER_VOLUME" => SetSpeakerVolume,
|
|
2074
|
+
"SET_SPEAKER_MUTE" => SetSpeakerMute,
|
|
2075
|
+
"PAUSE_SPEAKER_PLAYBACK" => PauseSpeakerPlayback,
|
|
2076
|
+
"RESUME_SPEAKER_PLAYBACK" => ResumeSpeakerPlayback,
|
|
2077
|
+
"PLAY_SPEAKER_CHIME" => PlaySpeakerChime,
|
|
1854
2078
|
"SYNC_ACCESS_CODES" => SyncAccessCodes,
|
|
1855
2079
|
"CREATE_ACCESS_CODE" => CreateAccessCode,
|
|
1856
2080
|
"DELETE_ACCESS_CODE" => DeleteAccessCode,
|
|
@@ -22,6 +22,7 @@ module Seam
|
|
|
22
22
|
# - `noise_sensor`
|
|
23
23
|
# - `access_control`
|
|
24
24
|
# - `camera`
|
|
25
|
+
# - `speaker`
|
|
25
26
|
attr_accessor :accepted_capabilities
|
|
26
27
|
# List of accepted [provider keys](https://www.seam.co/docs/core-concepts/connect-webviews/customizing-connect-webviews#customize-the-brands-to-display-in-your-connect-webviews).
|
|
27
28
|
# @return [Array<String>]
|
|
@@ -1135,7 +1135,7 @@ module Seam
|
|
|
1135
1135
|
# Device name for a Sensi device.
|
|
1136
1136
|
# @return [String, nil]
|
|
1137
1137
|
attr_accessor :device_name
|
|
1138
|
-
#
|
|
1138
|
+
# Deprecated. Seam no longer sets this field.
|
|
1139
1139
|
# @return [Boolean, nil]
|
|
1140
1140
|
attr_accessor :dual_setpoints_not_supported
|
|
1141
1141
|
# Product type for a Sensi device.
|
|
@@ -1158,6 +1158,30 @@ module Seam
|
|
|
1158
1158
|
attr_accessor :model
|
|
1159
1159
|
end
|
|
1160
1160
|
|
|
1161
|
+
class SonosMetadata < BaseResource
|
|
1162
|
+
# Models of the speakers bonded to this speaker, such as surrounds or a subwoofer.
|
|
1163
|
+
# @return [Array<String>]
|
|
1164
|
+
attr_accessor :bonded_member_models
|
|
1165
|
+
# Color of the speaker, as reported by Sonos.
|
|
1166
|
+
# @return [String, nil]
|
|
1167
|
+
attr_accessor :color
|
|
1168
|
+
# ID of the Sonos household that the speaker belongs to.
|
|
1169
|
+
# @return [String, nil]
|
|
1170
|
+
attr_accessor :household_id
|
|
1171
|
+
# Model name of the speaker, as reported by Sonos.
|
|
1172
|
+
# @return [String, nil]
|
|
1173
|
+
attr_accessor :model_display_name
|
|
1174
|
+
# ID of the Sonos player for the speaker.
|
|
1175
|
+
# @return [String, nil]
|
|
1176
|
+
attr_accessor :player_id
|
|
1177
|
+
# Name of the speaker, as set in the Sonos app.
|
|
1178
|
+
# @return [String, nil]
|
|
1179
|
+
attr_accessor :player_name
|
|
1180
|
+
# Software version running on the speaker.
|
|
1181
|
+
# @return [String, nil]
|
|
1182
|
+
attr_accessor :software_version
|
|
1183
|
+
end
|
|
1184
|
+
|
|
1161
1185
|
class TadoMetadata < BaseResource
|
|
1162
1186
|
# Device type for a tado° device.
|
|
1163
1187
|
# @return [String, nil]
|
|
@@ -1442,6 +1466,60 @@ module Seam
|
|
|
1442
1466
|
attr_accessor :time_zone
|
|
1443
1467
|
end
|
|
1444
1468
|
|
|
1469
|
+
class Speaker < BaseResource
|
|
1470
|
+
class NowPlaying < BaseResource
|
|
1471
|
+
# Album of the content that is currently playing.
|
|
1472
|
+
# @return [String, nil]
|
|
1473
|
+
attr_accessor :album
|
|
1474
|
+
# Artist of the content that is currently playing.
|
|
1475
|
+
# @return [String, nil]
|
|
1476
|
+
attr_accessor :artist
|
|
1477
|
+
# Title of the content that is currently playing.
|
|
1478
|
+
# @return [String, nil]
|
|
1479
|
+
attr_accessor :title
|
|
1480
|
+
end
|
|
1481
|
+
|
|
1482
|
+
# Content that is currently playing on the speaker.
|
|
1483
|
+
# @return [NowPlaying, nil]
|
|
1484
|
+
resource_accessor :now_playing, NowPlaying
|
|
1485
|
+
# IDs of the other speakers that are currently grouped with this speaker. Pausing or resuming playback on a speaker also affects the speakers in its group.
|
|
1486
|
+
# @return [Array<String>]
|
|
1487
|
+
attr_accessor :grouped_with_device_ids
|
|
1488
|
+
# Indicates whether the speaker's volume is fixed, for example, because the speaker's line-out level is controlled by an external amplifier. A speaker with a fixed volume cannot have its volume set through Seam.
|
|
1489
|
+
# @return [Boolean]
|
|
1490
|
+
attr_accessor :has_fixed_volume
|
|
1491
|
+
# Indicates whether the speaker is muted.
|
|
1492
|
+
# @return [Boolean]
|
|
1493
|
+
attr_accessor :is_muted
|
|
1494
|
+
# Maximum volume that you can set on the speaker. This is the ceiling of the speaker's native volume scale, not a limit configured for guests.
|
|
1495
|
+
# @return [Float]
|
|
1496
|
+
attr_accessor :max_volume
|
|
1497
|
+
# Minimum volume that you can set on the speaker.
|
|
1498
|
+
# @return [Float]
|
|
1499
|
+
attr_accessor :min_volume
|
|
1500
|
+
# Playback state of the speaker.
|
|
1501
|
+
# @return [String]
|
|
1502
|
+
# Known values:
|
|
1503
|
+
# - `playing`
|
|
1504
|
+
# - `paused`
|
|
1505
|
+
# - `idle`
|
|
1506
|
+
# - `buffering`
|
|
1507
|
+
# - `unknown`
|
|
1508
|
+
attr_accessor :playback_state
|
|
1509
|
+
# Indicates whether the speaker can play a chime.
|
|
1510
|
+
# @return [Boolean]
|
|
1511
|
+
attr_accessor :supports_chime
|
|
1512
|
+
# Current volume of the speaker, on the speaker's native volume scale from `min_volume` to `max_volume`. This is the native volume setting, not a decibel level.
|
|
1513
|
+
# @return [Float]
|
|
1514
|
+
attr_accessor :volume
|
|
1515
|
+
# Increment between the volume values that you can set on the speaker.
|
|
1516
|
+
# @return [Float]
|
|
1517
|
+
attr_accessor :volume_step
|
|
1518
|
+
# Date and time at which the speaker first reported its current volume.
|
|
1519
|
+
# @return [Time, nil]
|
|
1520
|
+
date_accessor :volume_reported_at
|
|
1521
|
+
end
|
|
1522
|
+
|
|
1445
1523
|
class ActiveThermostatSchedule < BaseResource
|
|
1446
1524
|
class Errors < BaseResource
|
|
1447
1525
|
# Unique identifier of the type of error. Enables quick recognition and categorization of the issue.
|
|
@@ -1925,6 +2003,9 @@ module Seam
|
|
|
1925
2003
|
# Metadata for a SmartThings device.
|
|
1926
2004
|
# @return [SmartthingsMetadata, nil]
|
|
1927
2005
|
resource_accessor :smartthings_metadata, SmartthingsMetadata
|
|
2006
|
+
# Metadata for a Sonos speaker.
|
|
2007
|
+
# @return [SonosMetadata, nil]
|
|
2008
|
+
resource_accessor :sonos_metadata, SonosMetadata
|
|
1928
2009
|
# Metadata for a tado° device.
|
|
1929
2010
|
# @return [TadoMetadata, nil]
|
|
1930
2011
|
resource_accessor :tado_metadata, TadoMetadata
|
|
@@ -1955,6 +2036,9 @@ module Seam
|
|
|
1955
2036
|
# Keypad battery status.
|
|
1956
2037
|
# @return [KeypadBattery, nil]
|
|
1957
2038
|
resource_accessor :keypad_battery, KeypadBattery
|
|
2039
|
+
# Audio state and capabilities of the speaker.
|
|
2040
|
+
# @return [Speaker, nil]
|
|
2041
|
+
resource_accessor :speaker, Speaker
|
|
1958
2042
|
# Active [thermostat schedule](https://www.seam.co/docs/capability-guides/thermostats/creating-and-managing-thermostat-schedules).
|
|
1959
2043
|
# @return [ActiveThermostatSchedule, nil]
|
|
1960
2044
|
resource_accessor :active_thermostat_schedule, ActiveThermostatSchedule
|
|
@@ -2689,6 +2773,15 @@ module Seam
|
|
|
2689
2773
|
# Indicates whether the thermostat supports simultaneous heating and cooling.
|
|
2690
2774
|
# @return [Boolean, nil]
|
|
2691
2775
|
attr_accessor :can_hvac_heat_cool
|
|
2776
|
+
# Indicates whether the speaker supports muting and unmuting.
|
|
2777
|
+
# @return [Boolean, nil]
|
|
2778
|
+
attr_accessor :can_mute_speaker
|
|
2779
|
+
# Indicates whether the speaker supports pausing and resuming playback.
|
|
2780
|
+
# @return [Boolean, nil]
|
|
2781
|
+
attr_accessor :can_pause_speaker_playback
|
|
2782
|
+
# Indicates whether the speaker supports playing a chime.
|
|
2783
|
+
# @return [Boolean, nil]
|
|
2784
|
+
attr_accessor :can_play_speaker_chime
|
|
2692
2785
|
# Indicates whether the device supports programming offline access codes.
|
|
2693
2786
|
# @return [Boolean, nil]
|
|
2694
2787
|
attr_accessor :can_program_offline_access_codes
|
|
@@ -2713,6 +2806,9 @@ module Seam
|
|
|
2713
2806
|
# Indicates whether the thermostat supports running climate programs.
|
|
2714
2807
|
# @return [Boolean, nil]
|
|
2715
2808
|
attr_accessor :can_run_thermostat_programs
|
|
2809
|
+
# Indicates whether the speaker supports setting its volume.
|
|
2810
|
+
# @return [Boolean, nil]
|
|
2811
|
+
attr_accessor :can_set_speaker_volume
|
|
2716
2812
|
# Indicates whether the device supports simulating connection in a sandbox.
|
|
2717
2813
|
# @return [Boolean, nil]
|
|
2718
2814
|
attr_accessor :can_simulate_connection
|
|
@@ -2808,6 +2904,7 @@ module Seam
|
|
|
2808
2904
|
# - `tapo_camera`
|
|
2809
2905
|
# - `arlo_camera`
|
|
2810
2906
|
# - `reolink_camera`
|
|
2907
|
+
# - `sonos_speaker`
|
|
2811
2908
|
attr_accessor :device_type
|
|
2812
2909
|
# Display name of the device, defaults to nickname (if it is set) or `properties.appearance.name`, otherwise. Enables administrators and users to identify the device easily, especially when there are numerous devices.
|
|
2813
2910
|
# @return [String]
|