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.
215 216 217 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 215 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
141 142 143 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 141 def attributes @attributes end |
#custom_data ⇒ Hash<String,Object>
151 152 153 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 151 def custom_data @custom_data end |
#device_info ⇒ Google::Apis::HomegraphV1::DeviceInfo
Device information.
Corresponds to the JSON property deviceInfo
156 157 158 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 156 def device_info @device_info end |
#id ⇒ String
Third-party device ID.
Corresponds to the JSON property id
161 162 163 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 161 def id @id end |
#name ⇒ Google::Apis::HomegraphV1::DeviceNames
Identifiers used to describe the device.
Corresponds to the JSON property name
166 167 168 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 166 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
174 175 176 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 174 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
182 183 184 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 182 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
188 189 190 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 188 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
194 195 196 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 194 def structure_hint @structure_hint end |
#traits ⇒ Array<String>
Traits supported by the device. See device traits.
Corresponds to the JSON property traits
200 201 202 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 200 def traits @traits end |
#type ⇒ String
Hardware type of the device. See device types.
Corresponds to the JSON property type
206 207 208 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 206 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
212 213 214 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 212 def will_report_state @will_report_state end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
220 221 222 223 224 225 226 227 228 229 230 231 232 233 |
# File 'lib/google/apis/homegraph_v1/classes.rb', line 220 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 |