seam 2.41.0 → 2.43.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2280bedae3810a10cd7c20285fa6797ba72b3220e734d2de50f1d21213b718eb
4
- data.tar.gz: c52808aa99ecf89b45293107c73272c506afcc9857e89cec9a417a59cf41d9de
3
+ metadata.gz: 0be52f5adaca4c438e5d0f38b2c94a8689e6c97b8bd3f6507a6d4e8287195f5d
4
+ data.tar.gz: 19ed2bf1aac152b796d6088a0f115b979d750db2050cd0c47f0c1d4e237e3a6e
5
5
  SHA512:
6
- metadata.gz: 621981352c6a4a91bb5900be112d7de28e3f0555ca8811d6d4c723961cf83850737fc6ca9ce525f6706de8c1e721a7309213494dfc7d6f7bb045eb3f4da68512
7
- data.tar.gz: e1e9403e299570d6e53a578bbf5c79d4cd77cad62a7f650bf3959cd5045d83bc680f2f39fc71091b53f0131f03bc8a8763202794ffdd8b874eac4ba63a86d74b
6
+ metadata.gz: 02367f578ee63119ea211ea2f7fa3c8109592b281b1ebde28f023f40062f867a7334ffa38d6a07657e7b41da33cf259930380001a4792b55e6e49392bab921d6
7
+ data.tar.gz: 7ddfe8e936bf17fc49aabbc09ad638498bc59a68989d074ea9ba05e21158a9daedf763bc6e3d4378aa479cc017c5d5822571ae39fdba9f91482b8a6a62351aef
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- seam (2.41.0)
4
+ seam (2.43.0)
5
5
  faraday (~> 2.7)
6
6
  faraday-retry (~> 2.2)
7
7
  svix (~> 1.30)
@@ -20,8 +20,8 @@ module Seam
20
20
  nil
21
21
  end
22
22
 
23
- def list(access_grant_id: nil, access_method_id: nil, acs_credential_id: nil, acs_system_id: nil, connected_account_id: nil, location_id: nil, space_id: nil)
24
- res = @client.post("/acs/entrances/list", {access_grant_id: access_grant_id, access_method_id: access_method_id, acs_credential_id: acs_credential_id, acs_system_id: acs_system_id, connected_account_id: connected_account_id, location_id: location_id, space_id: space_id}.compact)
23
+ def list(access_grant_id: nil, access_method_id: nil, acs_credential_id: nil, acs_entrance_ids: nil, acs_system_id: nil, connected_account_id: nil, location_id: nil, space_id: nil)
24
+ res = @client.post("/acs/entrances/list", {access_grant_id: access_grant_id, access_method_id: access_method_id, acs_credential_id: acs_credential_id, acs_entrance_ids: acs_entrance_ids, acs_system_id: acs_system_id, connected_account_id: connected_account_id, location_id: location_id, space_id: space_id}.compact)
25
25
 
26
26
  Seam::Resources::AcsEntrance.load_from_response(res.body["acs_entrances"])
27
27
  end
@@ -14,12 +14,24 @@ module Seam
14
14
  nil
15
15
  end
16
16
 
17
+ def connect_to_hub(device_id:)
18
+ @client.post("/devices/simulate/connect_to_hub", {device_id: device_id}.compact)
19
+
20
+ nil
21
+ end
22
+
17
23
  def disconnect(device_id:)
18
24
  @client.post("/devices/simulate/disconnect", {device_id: device_id}.compact)
19
25
 
20
26
  nil
21
27
  end
22
28
 
29
+ def disconnect_from_hub(device_id:)
30
+ @client.post("/devices/simulate/disconnect_from_hub", {device_id: device_id}.compact)
31
+
32
+ nil
33
+ end
34
+
23
35
  def remove(device_id:)
24
36
  @client.post("/devices/simulate/remove", {device_id: device_id}.compact)
25
37
 
@@ -23,6 +23,7 @@ require_relative "devices_simulate"
23
23
  require_relative "devices_unmanaged"
24
24
  require_relative "events"
25
25
  require_relative "locks"
26
+ require_relative "locks_simulate"
26
27
  require_relative "noise_sensors"
27
28
  require_relative "noise_sensors_noise_thresholds"
28
29
  require_relative "noise_sensors_simulate"
@@ -10,6 +10,10 @@ module Seam
10
10
  @defaults = defaults
11
11
  end
12
12
 
13
+ def simulate
14
+ @simulate ||= Seam::Clients::LocksSimulate.new(client: @client, defaults: @defaults)
15
+ end
16
+
13
17
  def get(device_id: nil, name: nil)
14
18
  res = @client.post("/locks/get", {device_id: device_id, name: name}.compact)
15
19
 
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "seam/helpers/action_attempt"
4
+
5
+ module Seam
6
+ module Clients
7
+ class LocksSimulate
8
+ def initialize(client:, defaults:)
9
+ @client = client
10
+ @defaults = defaults
11
+ end
12
+
13
+ def keypad_code_entry(code:, device_id:, wait_for_action_attempt: nil)
14
+ res = @client.post("/locks/simulate/keypad_code_entry", {code: code, device_id: device_id}.compact)
15
+
16
+ wait_for_action_attempt = wait_for_action_attempt.nil? ? @defaults.wait_for_action_attempt : wait_for_action_attempt
17
+
18
+ Helpers::ActionAttempt.decide_and_wait(Seam::Resources::ActionAttempt.load_from_response(res.body["action_attempt"]), @client, wait_for_action_attempt)
19
+ end
20
+
21
+ def manual_lock_via_keypad(device_id:, wait_for_action_attempt: nil)
22
+ res = @client.post("/locks/simulate/manual_lock_via_keypad", {device_id: device_id}.compact)
23
+
24
+ wait_for_action_attempt = wait_for_action_attempt.nil? ? @defaults.wait_for_action_attempt : wait_for_action_attempt
25
+
26
+ Helpers::ActionAttempt.decide_and_wait(Seam::Resources::ActionAttempt.load_from_response(res.body["action_attempt"]), @client, wait_for_action_attempt)
27
+ end
28
+ end
29
+ end
30
+ end
@@ -38,6 +38,12 @@ module Seam
38
38
  Seam::Resources::Space.load_from_response(res.body["space"])
39
39
  end
40
40
 
41
+ def get_related(space_ids:, exclude: nil, include: nil)
42
+ @client.post("/spaces/get_related", {space_ids: space_ids, exclude: exclude, include: include}.compact)
43
+
44
+ nil
45
+ end
46
+
41
47
  def list
42
48
  res = @client.post("/spaces/list")
43
49
 
@@ -38,8 +38,8 @@ module Seam
38
38
  Helpers::ActionAttempt.decide_and_wait(Seam::Resources::ActionAttempt.load_from_response(res.body["action_attempt"]), @client, wait_for_action_attempt)
39
39
  end
40
40
 
41
- def create_climate_preset(climate_preset_key:, device_id:, climate_preset_mode: nil, cooling_set_point_celsius: nil, cooling_set_point_fahrenheit: nil, fan_mode_setting: nil, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil, hvac_mode_setting: nil, manual_override_allowed: nil, name: nil)
42
- @client.post("/thermostats/create_climate_preset", {climate_preset_key: climate_preset_key, device_id: device_id, climate_preset_mode: climate_preset_mode, cooling_set_point_celsius: cooling_set_point_celsius, cooling_set_point_fahrenheit: cooling_set_point_fahrenheit, fan_mode_setting: fan_mode_setting, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit, hvac_mode_setting: hvac_mode_setting, manual_override_allowed: manual_override_allowed, name: name}.compact)
41
+ def create_climate_preset(climate_preset_key:, device_id:, climate_preset_mode: nil, cooling_set_point_celsius: nil, cooling_set_point_fahrenheit: nil, ecobee_metadata: nil, fan_mode_setting: nil, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil, hvac_mode_setting: nil, manual_override_allowed: nil, name: nil)
42
+ @client.post("/thermostats/create_climate_preset", {climate_preset_key: climate_preset_key, device_id: device_id, climate_preset_mode: climate_preset_mode, cooling_set_point_celsius: cooling_set_point_celsius, cooling_set_point_fahrenheit: cooling_set_point_fahrenheit, ecobee_metadata: ecobee_metadata, fan_mode_setting: fan_mode_setting, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit, hvac_mode_setting: hvac_mode_setting, manual_override_allowed: manual_override_allowed, name: name}.compact)
43
43
 
44
44
  nil
45
45
  end
@@ -108,8 +108,8 @@ module Seam
108
108
  nil
109
109
  end
110
110
 
111
- def update_climate_preset(climate_preset_key:, device_id:, climate_preset_mode: nil, cooling_set_point_celsius: nil, cooling_set_point_fahrenheit: nil, fan_mode_setting: nil, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil, hvac_mode_setting: nil, manual_override_allowed: nil, name: nil)
112
- @client.post("/thermostats/update_climate_preset", {climate_preset_key: climate_preset_key, device_id: device_id, climate_preset_mode: climate_preset_mode, cooling_set_point_celsius: cooling_set_point_celsius, cooling_set_point_fahrenheit: cooling_set_point_fahrenheit, fan_mode_setting: fan_mode_setting, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit, hvac_mode_setting: hvac_mode_setting, manual_override_allowed: manual_override_allowed, name: name}.compact)
111
+ def update_climate_preset(climate_preset_key:, device_id:, climate_preset_mode: nil, cooling_set_point_celsius: nil, cooling_set_point_fahrenheit: nil, ecobee_metadata: nil, fan_mode_setting: nil, heating_set_point_celsius: nil, heating_set_point_fahrenheit: nil, hvac_mode_setting: nil, manual_override_allowed: nil, name: nil)
112
+ @client.post("/thermostats/update_climate_preset", {climate_preset_key: climate_preset_key, device_id: device_id, climate_preset_mode: climate_preset_mode, cooling_set_point_celsius: cooling_set_point_celsius, cooling_set_point_fahrenheit: cooling_set_point_fahrenheit, ecobee_metadata: ecobee_metadata, fan_mode_setting: fan_mode_setting, heating_set_point_celsius: heating_set_point_celsius, heating_set_point_fahrenheit: heating_set_point_fahrenheit, hvac_mode_setting: hvac_mode_setting, manual_override_allowed: manual_override_allowed, name: name}.compact)
113
113
 
114
114
  nil
115
115
  end
@@ -3,7 +3,7 @@
3
3
  module Seam
4
4
  module Resources
5
5
  class SeamEvent < BaseResource
6
- attr_accessor :access_code_id, :connected_account_id, :device_id, :event_id, :event_type, :workspace_id, :code, :backup_access_code_id, :access_grant_id, :acs_entrance_id, :access_method_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, :device_name, :enrollment_automation_id
6
+ attr_accessor :access_code_id, :connected_account_custom_metadata, :connected_account_id, :device_custom_metadata, :device_id, :event_id, :event_type, :workspace_id, :code, :backup_access_code_id, :access_grant_id, :acs_entrance_id, :access_method_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, :device_name, :enrollment_automation_id
7
7
 
8
8
  date_accessor :created_at, :occurred_at
9
9
  end
@@ -3,7 +3,7 @@
3
3
  module Seam
4
4
  module Resources
5
5
  class UserIdentity < BaseResource
6
- attr_accessor :display_name, :email_address, :full_name, :phone_number, :user_identity_id, :user_identity_key, :workspace_id
6
+ attr_accessor :acs_user_ids, :display_name, :email_address, :full_name, :phone_number, :user_identity_id, :user_identity_key, :workspace_id
7
7
 
8
8
  date_accessor :created_at
9
9
 
data/lib/seam/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Seam
4
- VERSION = "2.41.0"
4
+ VERSION = "2.43.0"
5
5
  end
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.41.0
4
+ version: 2.43.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Seam Labs, Inc.
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2025-07-02 00:00:00.000000000 Z
11
+ date: 2025-07-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -227,6 +227,7 @@ files:
227
227
  - lib/seam/routes/clients/events.rb
228
228
  - lib/seam/routes/clients/index.rb
229
229
  - lib/seam/routes/clients/locks.rb
230
+ - lib/seam/routes/clients/locks_simulate.rb
230
231
  - lib/seam/routes/clients/noise_sensors.rb
231
232
  - lib/seam/routes/clients/noise_sensors_noise_thresholds.rb
232
233
  - lib/seam/routes/clients/noise_sensors_simulate.rb