Class: Google::Apis::HomegraphV1::Device
- Inherits:
-
Object
- Object
- Google::Apis::HomegraphV1::Device
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/homegraph_v1/classes.rb,
lib/google/apis/homegraph_v1/representations.rb,
lib/google/apis/homegraph_v1/representations.rb
Overview
Third-party device definition.
Instance Attribute Summary collapse
-
#attributes ⇒ Hash<String,Object>
Attributes for the traits supported by the device.
- #custom_data ⇒ Hash<String,Object>
-
#device_info ⇒ Google::Apis::HomegraphV1::DeviceInfo
Device information.
-
#id ⇒ String
Third-party device ID.
-
#name ⇒ Google::Apis::HomegraphV1::DeviceNames
Identifiers used to describe the device.
-
#notification_supported_by_agent ⇒ Boolean
(also: #notification_supported_by_agent?)
Indicates whether your smart home Action will report notifications to Google for this device via ReportStateAndNotification.
-
#other_device_ids ⇒ Array<Google::Apis::HomegraphV1::AgentOtherDeviceId>
Alternate IDs associated with this device.
-
#room_hint ⇒ String
Suggested name for the room where this device is installed.
-
#structure_hint ⇒ String
Suggested name for the structure where this device is installed.
-
#traits ⇒ Array<String>
Traits supported by the device.
-
#type ⇒ String
Hardware type of the device.
-
#will_report_state ⇒ Boolean
(also: #will_report_state?)
Indicates whether your smart home Action will report state of this device to Google via ReportStateAndNotification.
Instance Method Summary collapse
-
#initialize(**args) ⇒ Device
constructor
A new instance of Device.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ Device
Returns a new instance of Device.
175 176 177 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 175 def initialize(**args) update!(**args) end |
Instance Attribute Details
#attributes ⇒ Hash<String,Object>
Attributes for the traits supported by the device.
Corresponds to the JSON property attributes
101 102 103 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 101 def attributes @attributes end |
#custom_data ⇒ Hash<String,Object>
111 112 113 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 111 def custom_data @custom_data end |
#device_info ⇒ Google::Apis::HomegraphV1::DeviceInfo
Device information.
Corresponds to the JSON property deviceInfo
116 117 118 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 116 def device_info @device_info end |
#id ⇒ String
Third-party device ID.
Corresponds to the JSON property id
121 122 123 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 121 def id @id end |
#name ⇒ Google::Apis::HomegraphV1::DeviceNames
Identifiers used to describe the device.
Corresponds to the JSON property name
126 127 128 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 126 def name @name end |
#notification_supported_by_agent ⇒ Boolean Also known as: notification_supported_by_agent?
Indicates whether your smart home Action will report notifications to Google
for this device via ReportStateAndNotification. If your smart home Action
enables users to control device notifications, you should update this field
and call RequestSyncDevices.
Corresponds to the JSON property notificationSupportedByAgent
134 135 136 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 134 def notification_supported_by_agent @notification_supported_by_agent end |
#other_device_ids ⇒ Array<Google::Apis::HomegraphV1::AgentOtherDeviceId>
Alternate IDs associated with this device. This is used to identify cloud
synced devices enabled for local fulfillment.
Corresponds to the JSON property otherDeviceIds
142 143 144 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 142 def other_device_ids @other_device_ids end |
#room_hint ⇒ String
Suggested name for the room where this device is installed. Google attempts to
use this value during user setup.
Corresponds to the JSON property roomHint
148 149 150 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 148 def room_hint @room_hint end |
#structure_hint ⇒ String
Suggested name for the structure where this device is installed. Google
attempts to use this value during user setup.
Corresponds to the JSON property structureHint
154 155 156 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 154 def structure_hint @structure_hint end |
#traits ⇒ Array<String>
Traits supported by the device. See device traits.
Corresponds to the JSON property traits
160 161 162 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 160 def traits @traits end |
#type ⇒ String
Hardware type of the device. See device types.
Corresponds to the JSON property type
166 167 168 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 166 def type @type end |
#will_report_state ⇒ Boolean Also known as: will_report_state?
Indicates whether your smart home Action will report state of this device to
Google via ReportStateAndNotification.
Corresponds to the JSON property willReportState
172 173 174 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 172 def will_report_state @will_report_state end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
180 181 182 183 184 185 186 187 188 189 190 191 192 193 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 180 def update!(**args) @attributes = args[:attributes] if args.key?(:attributes) @custom_data = args[:custom_data] if args.key?(:custom_data) @device_info = args[:device_info] if args.key?(:device_info) @id = args[:id] if args.key?(:id) @name = args[:name] if args.key?(:name) @notification_supported_by_agent = args[:notification_supported_by_agent] if args.key?(:notification_supported_by_agent) @other_device_ids = args[:other_device_ids] if args.key?(:other_device_ids) @room_hint = args[:room_hint] if args.key?(:room_hint) @structure_hint = args[:structure_hint] if args.key?(:structure_hint) @traits = args[:traits] if args.key?(:traits) @type = args[:type] if args.key?(:type) @will_report_state = args[:will_report_state] if args.key?(:will_report_state) end |