Class: Seam::Resources::Device

Inherits:
BaseResource show all
Defined in:
lib/seam/resources/device.rb

Overview

Represents a device that has been connected to Seam.

Defined Under Namespace

Classes: DeviceManufacturer, DeviceProvider, Errors, Location, Properties, Warnings

Instance Attribute Summary collapse

Attributes inherited from BaseResource

#client, #data

Instance Method Summary collapse

Methods inherited from BaseResource

#[], date_accessor, #initialize, #inspect, load_from_response, resource_accessor, resource_accessors, resource_list_accessor, resource_list_accessors, #update_from_response

Constructor Details

This class inherits a constructor from Seam::Resources::BaseResource

Instance Attribute Details

#can_configure_auto_lockBoolean?

Indicates whether the lock supports configuring automatic locking.

Returns:

  • (Boolean, nil)


1722
1723
1724
# File 'lib/seam/resources/device.rb', line 1722

def can_configure_auto_lock
  @can_configure_auto_lock
end

#can_hvac_coolBoolean?

Indicates whether the thermostat supports cooling.

Returns:

  • (Boolean, nil)


1725
1726
1727
# File 'lib/seam/resources/device.rb', line 1725

def can_hvac_cool
  @can_hvac_cool
end

#can_hvac_heatBoolean?

Indicates whether the thermostat supports heating.

Returns:

  • (Boolean, nil)


1728
1729
1730
# File 'lib/seam/resources/device.rb', line 1728

def can_hvac_heat
  @can_hvac_heat
end

#can_hvac_heat_coolBoolean?

Indicates whether the thermostat supports simultaneous heating and cooling.

Returns:

  • (Boolean, nil)


1731
1732
1733
# File 'lib/seam/resources/device.rb', line 1731

def can_hvac_heat_cool
  @can_hvac_heat_cool
end

#can_program_offline_access_codesBoolean?

Indicates whether the device supports programming offline access codes.

Returns:

  • (Boolean, nil)


1734
1735
1736
# File 'lib/seam/resources/device.rb', line 1734

def can_program_offline_access_codes
  @can_program_offline_access_codes
end

#can_program_online_access_codesBoolean?

Indicates whether the device supports programming online access codes.

Returns:

  • (Boolean, nil)


1737
1738
1739
# File 'lib/seam/resources/device.rb', line 1737

def can_program_online_access_codes
  @can_program_online_access_codes
end

#can_program_thermostat_programs_as_different_each_dayBoolean?

Indicates whether the thermostat supports different climate programs for each day of the week.

Returns:

  • (Boolean, nil)


1740
1741
1742
# File 'lib/seam/resources/device.rb', line 1740

def can_program_thermostat_programs_as_different_each_day
  @can_program_thermostat_programs_as_different_each_day
end

#can_program_thermostat_programs_as_same_each_dayBoolean?

Indicates whether the thermostat supports a single climate program applied to every day.

Returns:

  • (Boolean, nil)


1743
1744
1745
# File 'lib/seam/resources/device.rb', line 1743

def can_program_thermostat_programs_as_same_each_day
  @can_program_thermostat_programs_as_same_each_day
end

#can_program_thermostat_programs_as_weekday_weekendBoolean?

Indicates whether the thermostat supports weekday/weekend climate programs.

Returns:

  • (Boolean, nil)


1746
1747
1748
# File 'lib/seam/resources/device.rb', line 1746

def can_program_thermostat_programs_as_weekday_weekend
  @can_program_thermostat_programs_as_weekday_weekend
end

#can_remotely_lockBoolean?

Indicates whether the device supports remote locking.

Returns:

  • (Boolean, nil)


1749
1750
1751
# File 'lib/seam/resources/device.rb', line 1749

def can_remotely_lock
  @can_remotely_lock
end

#can_remotely_unlockBoolean?

Indicates whether the device supports remote unlocking.

Returns:

  • (Boolean, nil)


1752
1753
1754
# File 'lib/seam/resources/device.rb', line 1752

def can_remotely_unlock
  @can_remotely_unlock
end

#can_run_thermostat_programsBoolean?

Indicates whether the thermostat supports running climate programs.

Returns:

  • (Boolean, nil)


1755
1756
1757
# File 'lib/seam/resources/device.rb', line 1755

def can_run_thermostat_programs
  @can_run_thermostat_programs
end

#can_simulate_connectionBoolean?

Indicates whether the device supports simulating connection in a sandbox.

Returns:

  • (Boolean, nil)


1758
1759
1760
# File 'lib/seam/resources/device.rb', line 1758

def can_simulate_connection
  @can_simulate_connection
end

#can_simulate_disconnectionBoolean?

Indicates whether the device supports simulating disconnection in a sandbox.

Returns:

  • (Boolean, nil)


1761
1762
1763
# File 'lib/seam/resources/device.rb', line 1761

def can_simulate_disconnection
  @can_simulate_disconnection
end

#can_simulate_hub_connectionBoolean?

Indicates whether the hub supports simulating connection in a sandbox.

Returns:

  • (Boolean, nil)


1764
1765
1766
# File 'lib/seam/resources/device.rb', line 1764

def can_simulate_hub_connection
  @can_simulate_hub_connection
end

#can_simulate_hub_disconnectionBoolean?

Indicates whether the hub supports simulating disconnection in a sandbox.

Returns:

  • (Boolean, nil)


1767
1768
1769
# File 'lib/seam/resources/device.rb', line 1767

def can_simulate_hub_disconnection
  @can_simulate_hub_disconnection
end

#can_simulate_paid_subscriptionBoolean?

Indicates whether the device supports simulating a paid subscription in a sandbox.

Returns:

  • (Boolean, nil)


1770
1771
1772
# File 'lib/seam/resources/device.rb', line 1770

def can_simulate_paid_subscription
  @can_simulate_paid_subscription
end

#can_simulate_removalBoolean?

Indicates whether the device supports simulating removal in a sandbox.

Returns:

  • (Boolean, nil)


1773
1774
1775
# File 'lib/seam/resources/device.rb', line 1773

def can_simulate_removal
  @can_simulate_removal
end

#can_turn_off_hvacBoolean?

Indicates whether the thermostat can be turned off.

Returns:

  • (Boolean, nil)


1776
1777
1778
# File 'lib/seam/resources/device.rb', line 1776

def can_turn_off_hvac
  @can_turn_off_hvac
end

#can_unlock_with_codeBoolean?

Indicates whether the lock supports unlocking with an access code.

Returns:

  • (Boolean, nil)


1779
1780
1781
# File 'lib/seam/resources/device.rb', line 1779

def can_unlock_with_code
  @can_unlock_with_code
end

#capabilities_supportedArray<String>

Collection of capabilities that the device supports when connected to Seam. Values are access_code, which indicates that the device can manage and utilize digital PIN codes for secure access; lock, which indicates that the device controls a door locking mechanism, enabling the remote opening and closing of doors and other entry points; noise_detection, which indicates that the device supports monitoring and responding to ambient noise levels; thermostat, which indicates that the device can regulate and adjust indoor temperatures; battery, which indicates that the device can manage battery life and health; and phone, which indicates that the device is a mobile device, such as a smartphone. Important: Superseded by capability flags.

Returns:

  • (Array<String>)


1782
1783
1784
# File 'lib/seam/resources/device.rb', line 1782

def capabilities_supported
  @capabilities_supported
end

#connected_account_idString

Unique identifier for the account associated with the device.

Returns:

  • (String)


1785
1786
1787
# File 'lib/seam/resources/device.rb', line 1785

def 
  @connected_account_id
end

#custom_metadataHash

Set of key:value pairs. Adding custom metadata to a resource, such as a Connect Webview, connected account, or device, enables you to store custom information, like customer details or internal IDs from your application.

Returns:

  • (Hash)


1788
1789
1790
# File 'lib/seam/resources/device.rb', line 1788

def 
  @custom_metadata
end

#device_idString

ID of the device.

Returns:

  • (String)


1791
1792
1793
# File 'lib/seam/resources/device.rb', line 1791

def device_id
  @device_id
end

#device_typeString

Type of the device.

Returns:

  • (String)


1794
1795
1796
# File 'lib/seam/resources/device.rb', line 1794

def device_type
  @device_type
end

#display_nameString

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.

Returns:

  • (String)


1797
1798
1799
# File 'lib/seam/resources/device.rb', line 1797

def display_name
  @display_name
end

#is_managedBoolean

Indicates whether Seam manages the device. See also Managed and Unmanaged Devices.

Returns:

  • (Boolean)


1800
1801
1802
# File 'lib/seam/resources/device.rb', line 1800

def is_managed
  @is_managed
end

#nicknameString?

Optional nickname to describe the device, settable through Seam.

Returns:

  • (String, nil)


1803
1804
1805
# File 'lib/seam/resources/device.rb', line 1803

def nickname
  @nickname
end

#space_idsArray<String>

IDs of the spaces the device is in.

Returns:

  • (Array<String>)


1806
1807
1808
# File 'lib/seam/resources/device.rb', line 1806

def space_ids
  @space_ids
end

#workspace_idString

Unique identifier for the Seam workspace associated with the device.

Returns:

  • (String)


1809
1810
1811
# File 'lib/seam/resources/device.rb', line 1809

def workspace_id
  @workspace_id
end

Instance Method Details

#created_atTime

Date and time at which the device object was created.

Returns:

  • (Time)


1813
# File 'lib/seam/resources/device.rb', line 1813

date_accessor :created_at

#device_manufacturerDeviceManufacturer?

Manufacturer of the device. Represents the hardware brand, which may differ from the provider.

Returns:



1704
# File 'lib/seam/resources/device.rb', line 1704

resource_accessor :device_manufacturer, DeviceManufacturer

#device_providerDeviceProvider?

Provider of the device. Represents the third-party service through which the device is controlled.

Returns:



1707
# File 'lib/seam/resources/device.rb', line 1707

resource_accessor :device_provider, DeviceProvider

#errorsArray<Errors>

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.

Returns:



1716
# File 'lib/seam/resources/device.rb', line 1716

resource_list_accessor :errors, Errors

#locationLocation?

Location information for the device.

Returns:



1710
# File 'lib/seam/resources/device.rb', line 1710

resource_accessor :location, Location

#propertiesProperties

Properties of the device.

Returns:



1713
# File 'lib/seam/resources/device.rb', line 1713

resource_accessor :properties, Properties

#warningsArray<Warnings>

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.

Returns:



1719
# File 'lib/seam/resources/device.rb', line 1719

resource_list_accessor :warnings, Warnings