class Google::Apis::HomegraphV1::Device

Third-party device definition. Next ID = 14

Attributes

attributes[RW]

Attributes for the traits supported by the device. Corresponds to the JSON property `attributes` @return [Hash<String,Object>]

custom_data[RW]

Custom device attributes stored in Home Graph and provided to your smart home Action in each [QUERY](developers.google.com/assistant/smarthome/ reference/intent/query) and [EXECUTE](developers.google.com/assistant/ smarthome/reference/intent/execute) intent. Data in this object has a few constraints: No sensitive information, including but not limited to Personally Identifiable Information. Corresponds to the JSON property `customData` @return [Hash<String,Object>]

device_info[RW]

Device information. Corresponds to the JSON property `deviceInfo` @return [Google::Apis::HomegraphV1::DeviceInfo]

id[RW]

Third-party device ID. Corresponds to the JSON property `id` @return [String]

name[RW]

Identifiers used to describe the device. Corresponds to the JSON property `name` @return [Google::Apis::HomegraphV1::DeviceNames]

notification_supported_by_agent[RW]

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` @return [Boolean]

notification_supported_by_agent?[RW]

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` @return [Boolean]

other_device_ids[RW]

Alternate IDs associated with this device. This is used to identify cloud synced devices enabled for [local fulfillment](developers.google.com/ assistant/smarthome/concepts/local). Corresponds to the JSON property `otherDeviceIds` @return [Array<Google::Apis::HomegraphV1::AgentOtherDeviceId>]

room_hint[RW]

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` @return [String]

structure_hint[RW]

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` @return [String]

traits[RW]

Traits supported by the device. See [device traits](developers.google. com/assistant/smarthome/traits). Corresponds to the JSON property `traits` @return [Array<String>]

type[RW]

Hardware type of the device. See [device types](developers.google.com/ assistant/smarthome/guides). Corresponds to the JSON property `type` @return [String]

will_report_state[RW]

Indicates whether your smart home Action will report state of this device to Google via ReportStateAndNotification. Corresponds to the JSON property `willReportState` @return [Boolean]

will_report_state?[RW]

Indicates whether your smart home Action will report state of this device to Google via ReportStateAndNotification. Corresponds to the JSON property `willReportState` @return [Boolean]

Public Class Methods

new(**args) click to toggle source
# File lib/google/apis/homegraph_v1/classes.rb, line 150
def initialize(**args)
   update!(**args)
end

Public Instance Methods

update!(**args) click to toggle source

Update properties of this object

# File lib/google/apis/homegraph_v1/classes.rb, line 155
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