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.
260 261 262 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 260 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
186 187 188 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 186 def attributes @attributes end |
#custom_data ⇒ Hash<String,Object>
196 197 198 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 196 def custom_data @custom_data end |
#device_info ⇒ Google::Apis::HomegraphV1::DeviceInfo
Device information.
Corresponds to the JSON property deviceInfo
201 202 203 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 201 def device_info @device_info end |
#id ⇒ String
Third-party device ID.
Corresponds to the JSON property id
206 207 208 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 206 def id @id end |
#name ⇒ Google::Apis::HomegraphV1::DeviceNames
Identifiers used to describe the device.
Corresponds to the JSON property name
211 212 213 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 211 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
219 220 221 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 219 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
227 228 229 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 227 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
233 234 235 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 233 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
239 240 241 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 239 def structure_hint @structure_hint end |
#traits ⇒ Array<String>
Traits supported by the device. See device traits.
Corresponds to the JSON property traits
245 246 247 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 245 def traits @traits end |
#type ⇒ String
Hardware type of the device. See device types.
Corresponds to the JSON property type
251 252 253 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 251 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
257 258 259 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 257 def will_report_state @will_report_state end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
265 266 267 268 269 270 271 272 273 274 275 276 277 278 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 265 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 |