seam 2.3.2 → 2.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile.lock +1 -1
- data/lib/seam/routes/clients/access_codes.rb +1 -1
- data/lib/seam/routes/clients/acs.rb +0 -8
- data/lib/seam/routes/clients/acs_credentials.rb +2 -2
- data/lib/seam/routes/clients/acs_encoders.rb +4 -4
- data/lib/seam/routes/clients/acs_encoders_simulate.rb +36 -0
- data/lib/seam/routes/clients/acs_users.rb +4 -4
- data/lib/seam/routes/clients/bridges.rb +24 -0
- data/lib/seam/routes/clients/devices.rb +0 -6
- data/lib/seam/routes/clients/events.rb +2 -2
- data/lib/seam/routes/clients/index.rb +3 -5
- data/lib/seam/routes/clients/phones.rb +6 -0
- data/lib/seam/routes/clients/thermostats.rb +4 -6
- data/lib/seam/routes/clients/thermostats_simulate.rb +24 -0
- data/lib/seam/routes/resources/acs_access_group.rb +2 -0
- data/lib/seam/routes/resources/acs_credential.rb +1 -1
- data/lib/seam/routes/resources/acs_encoder.rb +13 -0
- data/lib/seam/routes/resources/acs_entrance.rb +1 -1
- data/lib/seam/routes/resources/acs_system.rb +1 -1
- data/lib/seam/routes/resources/client_session.rb +1 -1
- data/lib/seam/routes/resources/event.rb +1 -1
- data/lib/seam/routes/resources/index.rb +4 -1
- data/lib/seam/routes/resources/phone.rb +1 -1
- data/lib/seam/routes/resources/unmanaged_acs_access_group.rb +13 -0
- data/lib/seam/routes/resources/unmanaged_acs_credential.rb +14 -0
- data/lib/seam/routes/resources/unmanaged_acs_user.rb +14 -0
- data/lib/seam/routes/routes.rb +4 -0
- data/lib/seam/version.rb +1 -1
- metadata +12 -11
- data/lib/seam/routes/clients/acs_access_groups_unmanaged.rb +0 -24
- data/lib/seam/routes/clients/acs_credential_pools.rb +0 -18
- data/lib/seam/routes/clients/acs_credential_provisioning_automations.rb +0 -18
- data/lib/seam/routes/clients/acs_credentials_unmanaged.rb +0 -24
- data/lib/seam/routes/clients/acs_users_unmanaged.rb +0 -24
- data/lib/seam/routes/resources/service_health.rb +0 -9
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d1a9acf167dd32f5024266d7d21bdd99b425039f6ee9b732940fcdb82f78833e
|
4
|
+
data.tar.gz: ea34a8913c7b374f84fbeaa406e72f883df2a6f51d2d6b1f6bfe6d85aea21531
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: da01602a094fcaa3af47382d0a135a8658ed4e2396f71e9da2d8ee4e941f81dc92b2bbb6d55c6369e71e697318794fb7a08df8869183bb06ea77139c7bc60cdf
|
7
|
+
data.tar.gz: 53a962f30990925a88f28d520cca2873a4c42fb37d03315cc761ef561c9f4dcc720ce036f98fd1fdf2ed2a393fb912fa20619833cf13c1289639d98aa0710a96
|
data/Gemfile.lock
CHANGED
@@ -55,7 +55,7 @@ module Seam
|
|
55
55
|
def pull_backup_access_code(access_code_id:)
|
56
56
|
res = @client.post("/access_codes/pull_backup_access_code", {access_code_id: access_code_id}.compact)
|
57
57
|
|
58
|
-
Seam::Resources::AccessCode.load_from_response(res.body["
|
58
|
+
Seam::Resources::AccessCode.load_from_response(res.body["access_code"])
|
59
59
|
end
|
60
60
|
|
61
61
|
def update(access_code_id:, allow_external_modification: nil, attempt_for_offline_device: nil, code: nil, device_id: nil, ends_at: nil, is_external_modification_allowed: nil, is_managed: nil, is_offline_access_code: nil, is_one_time_use: nil, max_time_rounding: nil, name: nil, prefer_native_scheduling: nil, preferred_code_length: nil, starts_at: nil, sync: nil, type: nil, use_backup_access_code_pool: nil, use_offline_access_code: nil)
|
@@ -12,14 +12,6 @@ module Seam
|
|
12
12
|
@access_groups ||= Seam::Clients::AcsAccessGroups.new(client: @client, defaults: @defaults)
|
13
13
|
end
|
14
14
|
|
15
|
-
def credential_pools
|
16
|
-
@credential_pools ||= Seam::Clients::AcsCredentialPools.new(client: @client, defaults: @defaults)
|
17
|
-
end
|
18
|
-
|
19
|
-
def credential_provisioning_automations
|
20
|
-
@credential_provisioning_automations ||= Seam::Clients::AcsCredentialProvisioningAutomations.new(client: @client, defaults: @defaults)
|
21
|
-
end
|
22
|
-
|
23
15
|
def credentials
|
24
16
|
@credentials ||= Seam::Clients::AcsCredentials.new(client: @client, defaults: @defaults)
|
25
17
|
end
|
@@ -14,8 +14,8 @@ module Seam
|
|
14
14
|
nil
|
15
15
|
end
|
16
16
|
|
17
|
-
def create(access_method:, acs_user_id:, allowed_acs_entrance_ids: nil, assa_abloy_vostio_metadata: nil, code: nil, credential_manager_acs_system_id: nil, ends_at: nil, is_multi_phone_sync_credential: nil, starts_at: nil, visionline_metadata: nil)
|
18
|
-
res = @client.post("/acs/credentials/create", {access_method: access_method, acs_user_id: acs_user_id, allowed_acs_entrance_ids: allowed_acs_entrance_ids, assa_abloy_vostio_metadata: assa_abloy_vostio_metadata, code: code, credential_manager_acs_system_id: credential_manager_acs_system_id, ends_at: ends_at, is_multi_phone_sync_credential: is_multi_phone_sync_credential, starts_at: starts_at, visionline_metadata: visionline_metadata}.compact)
|
17
|
+
def create(access_method:, acs_user_id:, allowed_acs_entrance_ids: nil, assa_abloy_vostio_metadata: nil, code: nil, credential_manager_acs_system_id: nil, ends_at: nil, is_multi_phone_sync_credential: nil, salto_space_metadata: nil, starts_at: nil, visionline_metadata: nil)
|
18
|
+
res = @client.post("/acs/credentials/create", {access_method: access_method, acs_user_id: acs_user_id, allowed_acs_entrance_ids: allowed_acs_entrance_ids, assa_abloy_vostio_metadata: assa_abloy_vostio_metadata, code: code, credential_manager_acs_system_id: credential_manager_acs_system_id, ends_at: ends_at, is_multi_phone_sync_credential: is_multi_phone_sync_credential, salto_space_metadata: salto_space_metadata, starts_at: starts_at, visionline_metadata: visionline_metadata}.compact)
|
19
19
|
|
20
20
|
Seam::Resources::AcsCredential.load_from_response(res.body["acs_credential"])
|
21
21
|
end
|
@@ -19,13 +19,13 @@ module Seam
|
|
19
19
|
end
|
20
20
|
|
21
21
|
def list(acs_system_id: nil, limit: nil, acs_system_ids: nil, acs_encoder_ids: nil)
|
22
|
-
@client.post("/acs/encoders/list", {acs_system_id: acs_system_id, limit: limit, acs_system_ids: acs_system_ids, acs_encoder_ids: acs_encoder_ids}.compact)
|
22
|
+
res = @client.post("/acs/encoders/list", {acs_system_id: acs_system_id, limit: limit, acs_system_ids: acs_system_ids, acs_encoder_ids: acs_encoder_ids}.compact)
|
23
23
|
|
24
|
-
|
24
|
+
Seam::Resources::AcsEncoder.load_from_response(res.body["acs_encoders"])
|
25
25
|
end
|
26
26
|
|
27
|
-
def scan_credential(acs_encoder_id:,
|
28
|
-
res = @client.post("/acs/encoders/scan_credential", {acs_encoder_id: acs_encoder_id
|
27
|
+
def scan_credential(acs_encoder_id:, wait_for_action_attempt: nil)
|
28
|
+
res = @client.post("/acs/encoders/scan_credential", {acs_encoder_id: acs_encoder_id}.compact)
|
29
29
|
|
30
30
|
wait_for_action_attempt = wait_for_action_attempt.nil? ? @defaults.wait_for_action_attempt : wait_for_action_attempt
|
31
31
|
|
@@ -0,0 +1,36 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Clients
|
5
|
+
class AcsEncodersSimulate
|
6
|
+
def initialize(client:, defaults:)
|
7
|
+
@client = client
|
8
|
+
@defaults = defaults
|
9
|
+
end
|
10
|
+
|
11
|
+
def next_credential_encode_will_fail(acs_encoder_id:, error_code: nil, acs_credential_id: nil)
|
12
|
+
@client.post("/acs/encoders/simulate/next_credential_encode_will_fail", {acs_encoder_id: acs_encoder_id, error_code: error_code, acs_credential_id: acs_credential_id}.compact)
|
13
|
+
|
14
|
+
nil
|
15
|
+
end
|
16
|
+
|
17
|
+
def next_credential_encode_will_succeed(acs_encoder_id:, scenario: nil)
|
18
|
+
@client.post("/acs/encoders/simulate/next_credential_encode_will_succeed", {acs_encoder_id: acs_encoder_id, scenario: scenario}.compact)
|
19
|
+
|
20
|
+
nil
|
21
|
+
end
|
22
|
+
|
23
|
+
def next_credential_scan_will_fail(acs_encoder_id:, error_code: nil, acs_credential_id_on_seam: nil)
|
24
|
+
@client.post("/acs/encoders/simulate/next_credential_scan_will_fail", {acs_encoder_id: acs_encoder_id, error_code: error_code, acs_credential_id_on_seam: acs_credential_id_on_seam}.compact)
|
25
|
+
|
26
|
+
nil
|
27
|
+
end
|
28
|
+
|
29
|
+
def next_credential_scan_will_succeed(acs_encoder_id:, acs_credential_id_on_seam: nil, scenario: nil)
|
30
|
+
@client.post("/acs/encoders/simulate/next_credential_scan_will_succeed", {acs_encoder_id: acs_encoder_id, acs_credential_id_on_seam: acs_credential_id_on_seam, scenario: scenario}.compact)
|
31
|
+
|
32
|
+
nil
|
33
|
+
end
|
34
|
+
end
|
35
|
+
end
|
36
|
+
end
|
@@ -14,8 +14,8 @@ module Seam
|
|
14
14
|
nil
|
15
15
|
end
|
16
16
|
|
17
|
-
def create(acs_system_id:, access_schedule: nil, acs_access_group_ids: nil, email: nil, email_address: nil,
|
18
|
-
res = @client.post("/acs/users/create", {acs_system_id: acs_system_id, access_schedule: access_schedule, acs_access_group_ids: acs_access_group_ids, email: email, email_address: email_address,
|
17
|
+
def create(acs_system_id:, full_name:, access_schedule: nil, acs_access_group_ids: nil, email: nil, email_address: nil, phone_number: nil, user_identity_id: nil)
|
18
|
+
res = @client.post("/acs/users/create", {acs_system_id: acs_system_id, full_name: full_name, access_schedule: access_schedule, acs_access_group_ids: acs_access_group_ids, email: email, email_address: email_address, phone_number: phone_number, user_identity_id: user_identity_id}.compact)
|
19
19
|
|
20
20
|
Seam::Resources::AcsUser.load_from_response(res.body["acs_user"])
|
21
21
|
end
|
@@ -32,8 +32,8 @@ module Seam
|
|
32
32
|
Seam::Resources::AcsUser.load_from_response(res.body["acs_user"])
|
33
33
|
end
|
34
34
|
|
35
|
-
def list(acs_system_id: nil, created_before: nil, limit: nil, user_identity_email_address: nil, user_identity_id: nil, user_identity_phone_number: nil)
|
36
|
-
res = @client.post("/acs/users/list", {acs_system_id: acs_system_id, created_before: created_before, limit: limit, user_identity_email_address: user_identity_email_address, user_identity_id: user_identity_id, user_identity_phone_number: user_identity_phone_number}.compact)
|
35
|
+
def list(acs_system_id: nil, created_before: nil, limit: nil, page_cursor: nil, user_identity_email_address: nil, user_identity_id: nil, user_identity_phone_number: nil)
|
36
|
+
res = @client.post("/acs/users/list", {acs_system_id: acs_system_id, created_before: created_before, limit: limit, page_cursor: page_cursor, user_identity_email_address: user_identity_email_address, user_identity_id: user_identity_id, user_identity_phone_number: user_identity_phone_number}.compact)
|
37
37
|
|
38
38
|
Seam::Resources::AcsUser.load_from_response(res.body["acs_users"])
|
39
39
|
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Clients
|
5
|
+
class Bridges
|
6
|
+
def initialize(client:, defaults:)
|
7
|
+
@client = client
|
8
|
+
@defaults = defaults
|
9
|
+
end
|
10
|
+
|
11
|
+
def get(bridge_id:)
|
12
|
+
@client.post("/bridges/get", {bridge_id: bridge_id}.compact)
|
13
|
+
|
14
|
+
nil
|
15
|
+
end
|
16
|
+
|
17
|
+
def list
|
18
|
+
@client.post("/bridges/list")
|
19
|
+
|
20
|
+
nil
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -16,12 +16,6 @@ module Seam
|
|
16
16
|
@unmanaged ||= Seam::Clients::DevicesUnmanaged.new(client: @client, defaults: @defaults)
|
17
17
|
end
|
18
18
|
|
19
|
-
def delete(device_id:)
|
20
|
-
@client.post("/devices/delete", {device_id: device_id}.compact)
|
21
|
-
|
22
|
-
nil
|
23
|
-
end
|
24
|
-
|
25
19
|
def get(device_id: nil, name: nil)
|
26
20
|
res = @client.post("/devices/get", {device_id: device_id, name: name}.compact)
|
27
21
|
|
@@ -14,8 +14,8 @@ module Seam
|
|
14
14
|
Seam::Resources::SeamEvent.load_from_response(res.body["event"])
|
15
15
|
end
|
16
16
|
|
17
|
-
def list(access_code_id: nil, access_code_ids: nil, acs_system_id: nil, acs_system_ids: nil, between: nil, connect_webview_id: nil, connected_account_id: nil, device_id: nil, device_ids: nil, event_type: nil, event_types: nil, limit: nil, since: nil, unstable_offset: nil)
|
18
|
-
res = @client.post("/events/list", {access_code_id: access_code_id, access_code_ids: access_code_ids, acs_system_id: acs_system_id, acs_system_ids: acs_system_ids, between: between, connect_webview_id: connect_webview_id, connected_account_id: connected_account_id, device_id: device_id, device_ids: device_ids, event_type: event_type, event_types: event_types, limit: limit, since: since, unstable_offset: unstable_offset}.compact)
|
17
|
+
def list(access_code_id: nil, access_code_ids: nil, acs_system_id: nil, acs_system_ids: nil, between: nil, connect_webview_id: nil, connected_account_id: nil, device_id: nil, device_ids: nil, event_ids: nil, event_type: nil, event_types: nil, limit: nil, since: nil, unstable_offset: nil)
|
18
|
+
res = @client.post("/events/list", {access_code_id: access_code_id, access_code_ids: access_code_ids, acs_system_id: acs_system_id, acs_system_ids: acs_system_ids, between: between, connect_webview_id: connect_webview_id, connected_account_id: connected_account_id, device_id: device_id, device_ids: device_ids, event_ids: event_ids, event_type: event_type, event_types: event_types, limit: limit, since: since, unstable_offset: unstable_offset}.compact)
|
19
19
|
|
20
20
|
Seam::Resources::SeamEvent.load_from_response(res.body["events"])
|
21
21
|
end
|
@@ -5,17 +5,14 @@ require_relative "access_codes_simulate"
|
|
5
5
|
require_relative "access_codes_unmanaged"
|
6
6
|
require_relative "acs_access_groups"
|
7
7
|
require_relative "acs"
|
8
|
-
require_relative "acs_access_groups_unmanaged"
|
9
|
-
require_relative "acs_credential_pools"
|
10
|
-
require_relative "acs_credential_provisioning_automations"
|
11
8
|
require_relative "acs_credentials"
|
12
|
-
require_relative "acs_credentials_unmanaged"
|
13
9
|
require_relative "acs_encoders"
|
10
|
+
require_relative "acs_encoders_simulate"
|
14
11
|
require_relative "acs_entrances"
|
15
12
|
require_relative "acs_systems"
|
16
13
|
require_relative "acs_users"
|
17
|
-
require_relative "acs_users_unmanaged"
|
18
14
|
require_relative "action_attempts"
|
15
|
+
require_relative "bridges"
|
19
16
|
require_relative "client_sessions"
|
20
17
|
require_relative "connect_webviews"
|
21
18
|
require_relative "connected_accounts"
|
@@ -32,6 +29,7 @@ require_relative "phones"
|
|
32
29
|
require_relative "phones_simulate"
|
33
30
|
require_relative "thermostats"
|
34
31
|
require_relative "thermostats_schedules"
|
32
|
+
require_relative "thermostats_simulate"
|
35
33
|
require_relative "user_identities"
|
36
34
|
require_relative "user_identities_enrollment_automations"
|
37
35
|
require_relative "webhooks"
|
@@ -18,6 +18,12 @@ module Seam
|
|
18
18
|
nil
|
19
19
|
end
|
20
20
|
|
21
|
+
def get(device_id:)
|
22
|
+
res = @client.post("/phones/get", {device_id: device_id}.compact)
|
23
|
+
|
24
|
+
Seam::Resources::Phone.load_from_response(res.body["phone"])
|
25
|
+
end
|
26
|
+
|
21
27
|
def list(acs_credential_id: nil, owner_user_identity_id: nil)
|
22
28
|
res = @client.post("/phones/list", {acs_credential_id: acs_credential_id, owner_user_identity_id: owner_user_identity_id}.compact)
|
23
29
|
|
@@ -14,6 +14,10 @@ module Seam
|
|
14
14
|
@schedules ||= Seam::Clients::ThermostatsSchedules.new(client: @client, defaults: @defaults)
|
15
15
|
end
|
16
16
|
|
17
|
+
def simulate
|
18
|
+
@simulate ||= Seam::Clients::ThermostatsSimulate.new(client: @client, defaults: @defaults)
|
19
|
+
end
|
20
|
+
|
17
21
|
def activate_climate_preset(climate_preset_key:, device_id:, wait_for_action_attempt: nil)
|
18
22
|
res = @client.post("/thermostats/activate_climate_preset", {climate_preset_key: climate_preset_key, device_id: device_id}.compact)
|
19
23
|
|
@@ -42,12 +46,6 @@ module Seam
|
|
42
46
|
nil
|
43
47
|
end
|
44
48
|
|
45
|
-
def get(device_id: nil, name: nil)
|
46
|
-
res = @client.post("/thermostats/get", {device_id: device_id, name: name}.compact)
|
47
|
-
|
48
|
-
Seam::Resources::Device.load_from_response(res.body["thermostat"])
|
49
|
-
end
|
50
|
-
|
51
49
|
def heat(device_id:, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil, sync: nil, wait_for_action_attempt: nil)
|
52
50
|
res = @client.post("/thermostats/heat", {device_id: device_id, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit, sync: sync}.compact)
|
53
51
|
|
@@ -0,0 +1,24 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Clients
|
5
|
+
class ThermostatsSimulate
|
6
|
+
def initialize(client:, defaults:)
|
7
|
+
@client = client
|
8
|
+
@defaults = defaults
|
9
|
+
end
|
10
|
+
|
11
|
+
def hvac_mode_adjusted(device_id:, hvac_mode:, cooling_set_point_celsius: nil, cooling_set_point_fahrenheit: nil, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil)
|
12
|
+
@client.post("/thermostats/simulate/hvac_mode_adjusted", {device_id: device_id, hvac_mode: hvac_mode, cooling_set_point_celsius: cooling_set_point_celsius, cooling_set_point_fahrenheit: cooling_set_point_fahrenheit, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit}.compact)
|
13
|
+
|
14
|
+
nil
|
15
|
+
end
|
16
|
+
|
17
|
+
def temperature_reached(device_id:, temperature_celsius: nil, temperature_fahrenheit: nil)
|
18
|
+
@client.post("/thermostats/simulate/temperature_reached", {device_id: device_id, temperature_celsius: temperature_celsius, temperature_fahrenheit: temperature_fahrenheit}.compact)
|
19
|
+
|
20
|
+
nil
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -6,6 +6,8 @@ module Seam
|
|
6
6
|
attr_accessor :access_group_type, :access_group_type_display_name, :acs_access_group_id, :acs_system_id, :display_name, :external_type, :external_type_display_name, :is_managed, :name, :workspace_id
|
7
7
|
|
8
8
|
date_accessor :created_at
|
9
|
+
|
10
|
+
include Seam::Resources::ResourceWarningsSupport
|
9
11
|
end
|
10
12
|
end
|
11
13
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Seam
|
4
4
|
module Resources
|
5
5
|
class AcsCredential < BaseResource
|
6
|
-
attr_accessor :access_method, :acs_credential_id, :acs_credential_pool_id, :acs_system_id, :acs_user_id, :card_number, :code, :display_name, :ends_at, :external_type, :external_type_display_name, :is_issued, :is_latest_desired_state_synced_with_provider, :is_managed, :is_multi_phone_sync_credential, :parent_acs_credential_id, :starts_at, :visionline_metadata, :workspace_id
|
6
|
+
attr_accessor :access_method, :acs_credential_id, :acs_credential_pool_id, :acs_system_id, :acs_user_id, :assa_abloy_vostio_metadata, :card_number, :code, :display_name, :ends_at, :external_type, :external_type_display_name, :is_issued, :is_latest_desired_state_synced_with_provider, :is_managed, :is_multi_phone_sync_credential, :is_one_time_use, :parent_acs_credential_id, :starts_at, :visionline_metadata, :workspace_id
|
7
7
|
|
8
8
|
date_accessor :created_at, :issued_at, :latest_desired_state_synced_with_provider_at
|
9
9
|
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Resources
|
5
|
+
class AcsEncoder < BaseResource
|
6
|
+
attr_accessor :acs_encoder_id, :acs_system_id, :display_name, :workspace_id
|
7
|
+
|
8
|
+
date_accessor :created_at
|
9
|
+
|
10
|
+
include Seam::Resources::ResourceErrorsSupport
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Seam
|
4
4
|
module Resources
|
5
5
|
class AcsEntrance < BaseResource
|
6
|
-
attr_accessor :acs_entrance_id, :acs_system_id, :assa_abloy_vostio_metadata, :display_name, :dormakaba_community_metadata, :latch_metadata, :salto_ks_metadata, :visionline_metadata
|
6
|
+
attr_accessor :acs_entrance_id, :acs_system_id, :assa_abloy_vostio_metadata, :display_name, :dormakaba_community_metadata, :latch_metadata, :salto_ks_metadata, :salto_space_metadata, :visionline_metadata
|
7
7
|
|
8
8
|
date_accessor :created_at
|
9
9
|
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Seam
|
4
4
|
module Resources
|
5
5
|
class AcsSystem < BaseResource
|
6
|
-
attr_accessor :acs_system_id, :can_add_acs_users_to_acs_access_groups, :can_automate_enrollment, :can_create_acs_access_groups, :can_remove_acs_users_from_acs_access_groups, :connected_account_ids, :default_credential_manager_acs_system_id, :external_type, :external_type_display_name, :image_alt_text, :image_url, :is_credential_manager, :location, :name, :system_type, :system_type_display_name, :visionline_metadata, :workspace_id
|
6
|
+
attr_accessor :acs_system_id, :can_add_acs_users_to_acs_access_groups, :can_automate_enrollment, :can_create_acs_access_groups, :can_remove_acs_users_from_acs_access_groups, :connected_account_id, :connected_account_ids, :default_credential_manager_acs_system_id, :external_type, :external_type_display_name, :image_alt_text, :image_url, :is_credential_manager, :location, :name, :system_type, :system_type_display_name, :visionline_metadata, :workspace_id
|
7
7
|
|
8
8
|
date_accessor :created_at
|
9
9
|
|
@@ -5,7 +5,7 @@ module Seam
|
|
5
5
|
class ClientSession < BaseResource
|
6
6
|
attr_accessor :client_session_id, :connect_webview_ids, :connected_account_ids, :device_count, :token, :user_identifier_key, :user_identity_ids, :workspace_id
|
7
7
|
|
8
|
-
date_accessor :created_at
|
8
|
+
date_accessor :created_at, :expires_at
|
9
9
|
end
|
10
10
|
end
|
11
11
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Seam
|
4
4
|
module Resources
|
5
5
|
class SeamEvent < BaseResource
|
6
|
-
attr_accessor :
|
6
|
+
attr_accessor :access_code_id, :connected_account_id, :device_id, :event_id, :event_type, :workspace_id, :code, :backup_access_code_id, :acs_system_id, :acs_credential_id, :acs_user_id, :acs_encoder_id, :acs_access_group_id, :client_session_id, :connect_webview_id, :action_attempt_id, :action_type, :status, :error_code, :battery_level, :battery_status, :minut_metadata, :noise_level_decibels, :noise_level_nrs, :noise_threshold_id, :noise_threshold_name, :noiseaware_metadata, :method, :climate_preset_key, :is_fallback_climate_preset, :thermostat_schedule_id, :cooling_set_point_celsius, :cooling_set_point_fahrenheit, :fan_mode_setting, :heating_set_point_celsius, :heating_set_point_fahrenheit, :hvac_mode_setting, :lower_limit_celsius, :lower_limit_fahrenheit, :temperature_celsius, :temperature_fahrenheit, :upper_limit_celsius, :upper_limit_fahrenheit, :desired_temperature_celsius, :desired_temperature_fahrenheit, :enrollment_automation_id
|
7
7
|
|
8
8
|
date_accessor :created_at, :occurred_at
|
9
9
|
end
|
@@ -10,6 +10,7 @@ require_relative "acs_access_group"
|
|
10
10
|
require_relative "acs_credential"
|
11
11
|
require_relative "acs_credential_pool"
|
12
12
|
require_relative "acs_credential_provisioning_automation"
|
13
|
+
require_relative "acs_encoder"
|
13
14
|
require_relative "acs_entrance"
|
14
15
|
require_relative "acs_system"
|
15
16
|
require_relative "acs_user"
|
@@ -24,9 +25,11 @@ require_relative "event"
|
|
24
25
|
require_relative "network"
|
25
26
|
require_relative "noise_threshold"
|
26
27
|
require_relative "phone"
|
27
|
-
require_relative "service_health"
|
28
28
|
require_relative "thermostat_schedule"
|
29
29
|
require_relative "unmanaged_access_code"
|
30
|
+
require_relative "unmanaged_acs_access_group"
|
31
|
+
require_relative "unmanaged_acs_credential"
|
32
|
+
require_relative "unmanaged_acs_user"
|
30
33
|
require_relative "unmanaged_device"
|
31
34
|
require_relative "user_identity"
|
32
35
|
require_relative "webhook"
|
@@ -3,7 +3,7 @@
|
|
3
3
|
module Seam
|
4
4
|
module Resources
|
5
5
|
class Phone < BaseResource
|
6
|
-
attr_accessor :
|
6
|
+
attr_accessor :custom_metadata, :device_id, :device_type, :display_name, :nickname, :properties, :workspace_id
|
7
7
|
|
8
8
|
date_accessor :created_at
|
9
9
|
|
@@ -0,0 +1,13 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Resources
|
5
|
+
class UnmanagedAcsAccessGroup < BaseResource
|
6
|
+
attr_accessor :access_group_type, :access_group_type_display_name, :acs_access_group_id, :acs_system_id, :display_name, :external_type, :external_type_display_name, :is_managed, :name, :workspace_id
|
7
|
+
|
8
|
+
date_accessor :created_at
|
9
|
+
|
10
|
+
include Seam::Resources::ResourceWarningsSupport
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Resources
|
5
|
+
class UnmanagedAcsCredential < BaseResource
|
6
|
+
attr_accessor :access_method, :acs_credential_id, :acs_credential_pool_id, :acs_system_id, :acs_user_id, :assa_abloy_vostio_metadata, :card_number, :code, :display_name, :ends_at, :external_type, :external_type_display_name, :is_issued, :is_latest_desired_state_synced_with_provider, :is_managed, :is_multi_phone_sync_credential, :is_one_time_use, :parent_acs_credential_id, :starts_at, :visionline_metadata, :workspace_id
|
7
|
+
|
8
|
+
date_accessor :created_at, :issued_at, :latest_desired_state_synced_with_provider_at
|
9
|
+
|
10
|
+
include Seam::Resources::ResourceErrorsSupport
|
11
|
+
include Seam::Resources::ResourceWarningsSupport
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -0,0 +1,14 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
module Seam
|
4
|
+
module Resources
|
5
|
+
class UnmanagedAcsUser < BaseResource
|
6
|
+
attr_accessor :access_schedule, :acs_system_id, :acs_user_id, :display_name, :email, :email_address, :external_type, :external_type_display_name, :full_name, :hid_acs_system_id, :is_latest_desired_state_synced_with_provider, :is_managed, :is_suspended, :phone_number, :user_identity_email_address, :user_identity_full_name, :user_identity_id, :user_identity_phone_number, :workspace_id
|
7
|
+
|
8
|
+
date_accessor :created_at, :latest_desired_state_synced_with_provider_at
|
9
|
+
|
10
|
+
include Seam::Resources::ResourceErrorsSupport
|
11
|
+
include Seam::Resources::ResourceWarningsSupport
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
data/lib/seam/routes/routes.rb
CHANGED
@@ -14,6 +14,10 @@ module Seam
|
|
14
14
|
@action_attempts ||= Seam::Clients::ActionAttempts.new(client: @client, defaults: @defaults)
|
15
15
|
end
|
16
16
|
|
17
|
+
def bridges
|
18
|
+
@bridges ||= Seam::Clients::Bridges.new(client: @client, defaults: @defaults)
|
19
|
+
end
|
20
|
+
|
17
21
|
def client_sessions
|
18
22
|
@client_sessions ||= Seam::Clients::ClientSessions.new(client: @client, defaults: @defaults)
|
19
23
|
end
|
data/lib/seam/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: seam
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.
|
4
|
+
version: 2.5.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Seam Labs, Inc.
|
8
|
-
autorequire:
|
8
|
+
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-02-17 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|
@@ -207,17 +207,14 @@ files:
|
|
207
207
|
- lib/seam/routes/clients/access_codes_unmanaged.rb
|
208
208
|
- lib/seam/routes/clients/acs.rb
|
209
209
|
- lib/seam/routes/clients/acs_access_groups.rb
|
210
|
-
- lib/seam/routes/clients/acs_access_groups_unmanaged.rb
|
211
|
-
- lib/seam/routes/clients/acs_credential_pools.rb
|
212
|
-
- lib/seam/routes/clients/acs_credential_provisioning_automations.rb
|
213
210
|
- lib/seam/routes/clients/acs_credentials.rb
|
214
|
-
- lib/seam/routes/clients/acs_credentials_unmanaged.rb
|
215
211
|
- lib/seam/routes/clients/acs_encoders.rb
|
212
|
+
- lib/seam/routes/clients/acs_encoders_simulate.rb
|
216
213
|
- lib/seam/routes/clients/acs_entrances.rb
|
217
214
|
- lib/seam/routes/clients/acs_systems.rb
|
218
215
|
- lib/seam/routes/clients/acs_users.rb
|
219
|
-
- lib/seam/routes/clients/acs_users_unmanaged.rb
|
220
216
|
- lib/seam/routes/clients/action_attempts.rb
|
217
|
+
- lib/seam/routes/clients/bridges.rb
|
221
218
|
- lib/seam/routes/clients/client_sessions.rb
|
222
219
|
- lib/seam/routes/clients/connect_webviews.rb
|
223
220
|
- lib/seam/routes/clients/connected_accounts.rb
|
@@ -235,6 +232,7 @@ files:
|
|
235
232
|
- lib/seam/routes/clients/phones_simulate.rb
|
236
233
|
- lib/seam/routes/clients/thermostats.rb
|
237
234
|
- lib/seam/routes/clients/thermostats_schedules.rb
|
235
|
+
- lib/seam/routes/clients/thermostats_simulate.rb
|
238
236
|
- lib/seam/routes/clients/user_identities.rb
|
239
237
|
- lib/seam/routes/clients/user_identities_enrollment_automations.rb
|
240
238
|
- lib/seam/routes/clients/webhooks.rb
|
@@ -244,6 +242,7 @@ files:
|
|
244
242
|
- lib/seam/routes/resources/acs_credential.rb
|
245
243
|
- lib/seam/routes/resources/acs_credential_pool.rb
|
246
244
|
- lib/seam/routes/resources/acs_credential_provisioning_automation.rb
|
245
|
+
- lib/seam/routes/resources/acs_encoder.rb
|
247
246
|
- lib/seam/routes/resources/acs_entrance.rb
|
248
247
|
- lib/seam/routes/resources/acs_system.rb
|
249
248
|
- lib/seam/routes/resources/acs_user.rb
|
@@ -263,9 +262,11 @@ files:
|
|
263
262
|
- lib/seam/routes/resources/resource_errors_support.rb
|
264
263
|
- lib/seam/routes/resources/resource_warning.rb
|
265
264
|
- lib/seam/routes/resources/resource_warnings_support.rb
|
266
|
-
- lib/seam/routes/resources/service_health.rb
|
267
265
|
- lib/seam/routes/resources/thermostat_schedule.rb
|
268
266
|
- lib/seam/routes/resources/unmanaged_access_code.rb
|
267
|
+
- lib/seam/routes/resources/unmanaged_acs_access_group.rb
|
268
|
+
- lib/seam/routes/resources/unmanaged_acs_credential.rb
|
269
|
+
- lib/seam/routes/resources/unmanaged_acs_user.rb
|
269
270
|
- lib/seam/routes/resources/unmanaged_device.rb
|
270
271
|
- lib/seam/routes/resources/user_identity.rb
|
271
272
|
- lib/seam/routes/resources/webhook.rb
|
@@ -284,7 +285,7 @@ metadata:
|
|
284
285
|
bug_tracker_uri: https://github.com/seamapi/ruby-next/issues
|
285
286
|
changelog_uri: https://github.com/seamapi/ruby-next/blob/main/CHANGELOG.md
|
286
287
|
github_repo: git@github.com:seamapi/ruby-next.git
|
287
|
-
post_install_message:
|
288
|
+
post_install_message:
|
288
289
|
rdoc_options: []
|
289
290
|
require_paths:
|
290
291
|
- lib
|
@@ -300,7 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
300
301
|
version: '0'
|
301
302
|
requirements: []
|
302
303
|
rubygems_version: 3.5.3
|
303
|
-
signing_key:
|
304
|
+
signing_key:
|
304
305
|
specification_version: 4
|
305
306
|
summary: Seam Ruby SDK
|
306
307
|
test_files: []
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Seam
|
4
|
-
module Clients
|
5
|
-
class AcsAccessGroupsUnmanaged
|
6
|
-
def initialize(client:, defaults:)
|
7
|
-
@client = client
|
8
|
-
@defaults = defaults
|
9
|
-
end
|
10
|
-
|
11
|
-
def get(acs_access_group_id:)
|
12
|
-
@client.post("/acs/access_groups/unmanaged/get", {acs_access_group_id: acs_access_group_id}.compact)
|
13
|
-
|
14
|
-
nil
|
15
|
-
end
|
16
|
-
|
17
|
-
def list(acs_system_id: nil, acs_user_id: nil)
|
18
|
-
@client.post("/acs/access_groups/unmanaged/list", {acs_system_id: acs_system_id, acs_user_id: acs_user_id}.compact)
|
19
|
-
|
20
|
-
nil
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Seam
|
4
|
-
module Clients
|
5
|
-
class AcsCredentialPools
|
6
|
-
def initialize(client:, defaults:)
|
7
|
-
@client = client
|
8
|
-
@defaults = defaults
|
9
|
-
end
|
10
|
-
|
11
|
-
def list(acs_system_id:)
|
12
|
-
res = @client.post("/acs/credential_pools/list", {acs_system_id: acs_system_id}.compact)
|
13
|
-
|
14
|
-
Seam::Resources::AcsCredentialPool.load_from_response(res.body["acs_credential_pools"])
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
@@ -1,18 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Seam
|
4
|
-
module Clients
|
5
|
-
class AcsCredentialProvisioningAutomations
|
6
|
-
def initialize(client:, defaults:)
|
7
|
-
@client = client
|
8
|
-
@defaults = defaults
|
9
|
-
end
|
10
|
-
|
11
|
-
def launch(credential_manager_acs_system_id:, user_identity_id:, acs_credential_pool_id: nil, create_credential_manager_user: nil, credential_manager_acs_user_id: nil)
|
12
|
-
res = @client.post("/acs/credential_provisioning_automations/launch", {credential_manager_acs_system_id: credential_manager_acs_system_id, user_identity_id: user_identity_id, acs_credential_pool_id: acs_credential_pool_id, create_credential_manager_user: create_credential_manager_user, credential_manager_acs_user_id: credential_manager_acs_user_id}.compact)
|
13
|
-
|
14
|
-
Seam::Resources::AcsCredentialProvisioningAutomation.load_from_response(res.body["acs_credential_provisioning_automation"])
|
15
|
-
end
|
16
|
-
end
|
17
|
-
end
|
18
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Seam
|
4
|
-
module Clients
|
5
|
-
class AcsCredentialsUnmanaged
|
6
|
-
def initialize(client:, defaults:)
|
7
|
-
@client = client
|
8
|
-
@defaults = defaults
|
9
|
-
end
|
10
|
-
|
11
|
-
def get(acs_credential_id:)
|
12
|
-
@client.post("/acs/credentials/unmanaged/get", {acs_credential_id: acs_credential_id}.compact)
|
13
|
-
|
14
|
-
nil
|
15
|
-
end
|
16
|
-
|
17
|
-
def list(acs_user_id: nil, acs_system_id: nil, user_identity_id: nil)
|
18
|
-
@client.post("/acs/credentials/unmanaged/list", {acs_user_id: acs_user_id, acs_system_id: acs_system_id, user_identity_id: user_identity_id}.compact)
|
19
|
-
|
20
|
-
nil
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|
@@ -1,24 +0,0 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
module Seam
|
4
|
-
module Clients
|
5
|
-
class AcsUsersUnmanaged
|
6
|
-
def initialize(client:, defaults:)
|
7
|
-
@client = client
|
8
|
-
@defaults = defaults
|
9
|
-
end
|
10
|
-
|
11
|
-
def get(acs_user_id:)
|
12
|
-
@client.post("/acs/users/unmanaged/get", {acs_user_id: acs_user_id}.compact)
|
13
|
-
|
14
|
-
nil
|
15
|
-
end
|
16
|
-
|
17
|
-
def list(acs_system_id: nil, limit: nil, user_identity_email_address: nil, user_identity_id: nil, user_identity_phone_number: nil)
|
18
|
-
@client.post("/acs/users/unmanaged/list", {acs_system_id: acs_system_id, limit: limit, user_identity_email_address: user_identity_email_address, user_identity_id: user_identity_id, user_identity_phone_number: user_identity_phone_number}.compact)
|
19
|
-
|
20
|
-
nil
|
21
|
-
end
|
22
|
-
end
|
23
|
-
end
|
24
|
-
end
|