Class: Google::Apis::HomegraphV1::HomeGraphServiceService

Inherits:
Core::BaseService
  • Object
show all
Defined in:
generated/google/apis/homegraph_v1/service.rb

Overview

HomeGraph API

Examples:

require 'google/apis/homegraph_v1'

Homegraph = Google::Apis::HomegraphV1 # Alias the module
service = Homegraph::HomeGraphServiceService.new

See Also:

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeHomeGraphServiceService

Returns a new instance of HomeGraphServiceService.



45
46
47
48
# File 'generated/google/apis/homegraph_v1/service.rb', line 45

def initialize
  super('https://homegraph.googleapis.com/', '')
  @batch_path = 'batch'
end

Instance Attribute Details

#keyString

Returns API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.

Returns:

  • (String)

    API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.



38
39
40
# File 'generated/google/apis/homegraph_v1/service.rb', line 38

def key
  @key
end

#quota_userString

Returns Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

Returns:

  • (String)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.



43
44
45
# File 'generated/google/apis/homegraph_v1/service.rb', line 43

def quota_user
  @quota_user
end

Instance Method Details

#delete_agent_user(agent_user_id, request_id: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::HomegraphV1::Empty

Unlinks the given third-party user from your smart home Action. All data related to this user will be deleted. For more details on how users link their accounts, see fulfillment and authentication. The third-party user' s identity is passed in via the agent_user_id (see DeleteAgentUserRequest). This request must be authorized using service account credentials from your Actions console project.

Parameters:

  • agent_user_id (String)

    Required. Third-party user ID.

  • request_id (String) (defaults to: nil)

    Request ID used for debugging.

  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



78
79
80
81
82
83
84
85
86
87
# File 'generated/google/apis/homegraph_v1/service.rb', line 78

def delete_agent_user(agent_user_id, request_id: nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:delete, 'v1/{+agentUserId}', options)
  command.response_representation = Google::Apis::HomegraphV1::Empty::Representation
  command.response_class = Google::Apis::HomegraphV1::Empty
  command.params['agentUserId'] = agent_user_id unless agent_user_id.nil?
  command.query['requestId'] = request_id unless request_id.nil?
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#query_device(query_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::HomegraphV1::QueryResponse

Gets the current states in Home Graph for the given set of the third-party user's devices. The third-party user's identity is passed in via the agent_user_id (see QueryRequest). This request must be authorized using service account credentials from your Actions console project.

Parameters:

  • query_request_object (Google::Apis::HomegraphV1::QueryRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



111
112
113
114
115
116
117
118
119
120
# File 'generated/google/apis/homegraph_v1/service.rb', line 111

def query_device(query_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v1/devices:query', options)
  command.request_representation = Google::Apis::HomegraphV1::QueryRequest::Representation
  command.request_object = query_request_object
  command.response_representation = Google::Apis::HomegraphV1::QueryResponse::Representation
  command.response_class = Google::Apis::HomegraphV1::QueryResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#report_device_state_and_notification(report_state_and_notification_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::HomegraphV1::ReportStateAndNotificationResponse

Reports device state and optionally sends device notifications. Called by your smart home Action when the state of a third-party device changes or you need to send a notification about the device. See Implement Report State for more information. This method updates the device state according to its declared traits. Publishing a new state value outside of these traits will result in an INVALID_ARGUMENT error response. The third-party user's identity is passed in via the agent_user_id (see ReportStateAndNotificationRequest). This request must be authorized using service account credentials from your Actions console project.

Parameters:

  • report_state_and_notification_request_object (Google::Apis::HomegraphV1::ReportStateAndNotificationRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



151
152
153
154
155
156
157
158
159
160
# File 'generated/google/apis/homegraph_v1/service.rb', line 151

def report_device_state_and_notification(report_state_and_notification_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v1/devices:reportStateAndNotification', options)
  command.request_representation = Google::Apis::HomegraphV1::ReportStateAndNotificationRequest::Representation
  command.request_object = report_state_and_notification_request_object
  command.response_representation = Google::Apis::HomegraphV1::ReportStateAndNotificationResponse::Representation
  command.response_class = Google::Apis::HomegraphV1::ReportStateAndNotificationResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#request_sync_devices(request_sync_devices_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::HomegraphV1::RequestSyncDevicesResponse

Requests Google to send an action.devices.SYNC intent to your smart home Action to update device metadata for the given user. The third-party user's identity is passed via the agent_user_id (see RequestSyncDevicesRequest). This request must be authorized using service account credentials from your Actions console project.

Parameters:

  • request_sync_devices_request_object (Google::Apis::HomegraphV1::RequestSyncDevicesRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



186
187
188
189
190
191
192
193
194
195
# File 'generated/google/apis/homegraph_v1/service.rb', line 186

def request_sync_devices(request_sync_devices_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v1/devices:requestSync', options)
  command.request_representation = Google::Apis::HomegraphV1::RequestSyncDevicesRequest::Representation
  command.request_object = request_sync_devices_request_object
  command.response_representation = Google::Apis::HomegraphV1::RequestSyncDevicesResponse::Representation
  command.response_class = Google::Apis::HomegraphV1::RequestSyncDevicesResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end

#sync_device(sync_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::HomegraphV1::SyncResponse

Gets all the devices associated with the given third-party user. The third- party user's identity is passed in via the agent_user_id (see SyncRequest). This request must be authorized using service account credentials from your Actions console project.

Parameters:

  • sync_request_object (Google::Apis::HomegraphV1::SyncRequest) (defaults to: nil)
  • fields (String) (defaults to: nil)

    Selector specifying which fields to include in a partial response.

  • quota_user (String) (defaults to: nil)

    Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.

  • options (Google::Apis::RequestOptions) (defaults to: nil)

    Request-specific options

Yields:

  • (result, err)

    Result & error if block supplied

Yield Parameters:

Returns:

Raises:

  • (Google::Apis::ServerError)

    An error occurred on the server and the request can be retried

  • (Google::Apis::ClientError)

    The request is invalid and should not be retried without modification

  • (Google::Apis::AuthorizationError)

    Authorization is required



219
220
221
222
223
224
225
226
227
228
# File 'generated/google/apis/homegraph_v1/service.rb', line 219

def sync_device(sync_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
  command = make_simple_command(:post, 'v1/devices:sync', options)
  command.request_representation = Google::Apis::HomegraphV1::SyncRequest::Representation
  command.request_object = sync_request_object
  command.response_representation = Google::Apis::HomegraphV1::SyncResponse::Representation
  command.response_class = Google::Apis::HomegraphV1::SyncResponse
  command.query['fields'] = fields unless fields.nil?
  command.query['quotaUser'] = quota_user unless quota_user.nil?
  execute_or_queue_command(command, &block)
end