Struct gapi_grpc::google::home::graph::v1::home_graph_api_service_client::HomeGraphApiServiceClient[][src]

pub struct HomeGraphApiServiceClient<T> { /* fields omitted */ }

Google Home Graph API service. The Home Graph service provides support for accessing first-party and third-party devices stored in Google’s Home Graph. The Home Graph database provides contextual data about the relationships between devices and the home.

For more details, see the Home Graph developer guide.

Implementations

impl HomeGraphApiServiceClient<Channel>[src]

pub async fn connect<D>(dst: D) -> Result<Self, Error> where
    D: TryInto<Endpoint>,
    D::Error: Into<StdError>, 
[src]

Attempt to create a new client by connecting to a given endpoint.

impl<T> HomeGraphApiServiceClient<T> where
    T: GrpcService<BoxBody>,
    T::ResponseBody: Body + HttpBody + Send + 'static,
    T::Error: Into<StdError>,
    <T::ResponseBody as HttpBody>::Error: Into<StdError> + Send
[src]

pub fn new(inner: T) -> Self[src]

pub fn with_interceptor(inner: T, interceptor: impl Into<Interceptor>) -> Self[src]

pub async fn request_sync_devices(
    &mut self,
    request: impl IntoRequest<RequestSyncDevicesRequest>
) -> Result<Response<RequestSyncDevicesResponse>, Status>
[src]

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][google.home.graph.v1.RequestSyncDevicesRequest]). This request must be authorized using service account credentials from your Actions console project.

pub async fn report_state_and_notification(
    &mut self,
    request: impl IntoRequest<ReportStateAndNotificationRequest>
) -> Result<Response<ReportStateAndNotificationResponse>, Status>
[src]

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][google.home.graph.v1.ReportStateAndNotificationRequest]). This request must be authorized using service account credentials from your Actions console project.

pub async fn delete_agent_user(
    &mut self,
    request: impl IntoRequest<DeleteAgentUserRequest>
) -> Result<Response<()>, Status>
[src]

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][google.home.graph.v1.DeleteAgentUserRequest]). This request must be authorized using service account credentials from your Actions console project.

pub async fn query(
    &mut self,
    request: impl IntoRequest<QueryRequest>
) -> Result<Response<QueryResponse>, Status>
[src]

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][google.home.graph.v1.QueryRequest]). This request must be authorized using service account credentials from your Actions console project.

pub async fn sync(
    &mut self,
    request: impl IntoRequest<SyncRequest>
) -> Result<Response<SyncResponse>, Status>
[src]

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][google.home.graph.v1.SyncRequest]). This request must be authorized using service account credentials from your Actions console project.

Trait Implementations

impl<T: Clone> Clone for HomeGraphApiServiceClient<T>[src]

impl<T> Debug for HomeGraphApiServiceClient<T>[src]

Auto Trait Implementations

impl<T> !RefUnwindSafe for HomeGraphApiServiceClient<T>

impl<T> Send for HomeGraphApiServiceClient<T> where
    T: Send

impl<T> Sync for HomeGraphApiServiceClient<T> where
    T: Sync

impl<T> Unpin for HomeGraphApiServiceClient<T> where
    T: Unpin

impl<T> !UnwindSafe for HomeGraphApiServiceClient<T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T> Instrument for T[src]

impl<T> Instrument for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> IntoRequest<T> for T[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 
[src]

impl<T> WithSubscriber for T[src]