pub struct DeviceManagerClient<T> { /* private fields */ }
Expand description

Internet of Things (IoT) service. Securely connect and manage IoT devices.

Implementations§

source§

impl<T> DeviceManagerClient<T>
where T: GrpcService<BoxBody>, T::Error: Into<StdError>, T::ResponseBody: Body<Data = Bytes> + Send + 'static, <T::ResponseBody as Body>::Error: Into<StdError> + Send,

source

pub fn new(inner: T) -> Self

source

pub fn with_origin(inner: T, origin: Uri) -> Self

source

pub fn with_interceptor<F>( inner: T, interceptor: F ) -> DeviceManagerClient<InterceptedService<T, F>>
where F: Interceptor, T::ResponseBody: Default, T: Service<Request<BoxBody>, Response = Response<<T as GrpcService<BoxBody>>::ResponseBody>>, <T as Service<Request<BoxBody>>>::Error: Into<StdError> + Send + Sync,

source

pub fn send_compressed(self, encoding: CompressionEncoding) -> Self

Compress requests with the given encoding.

This requires the server to support it otherwise it might respond with an error.

source

pub fn accept_compressed(self, encoding: CompressionEncoding) -> Self

Enable decompressing responses.

source

pub fn max_decoding_message_size(self, limit: usize) -> Self

Limits the maximum size of a decoded message.

Default: 4MB

source

pub fn max_encoding_message_size(self, limit: usize) -> Self

Limits the maximum size of an encoded message.

Default: usize::MAX

source

pub async fn create_device_registry( &mut self, request: impl IntoRequest<CreateDeviceRegistryRequest> ) -> Result<Response<DeviceRegistry>, Status>

Creates a device registry that contains devices.

source

pub async fn get_device_registry( &mut self, request: impl IntoRequest<GetDeviceRegistryRequest> ) -> Result<Response<DeviceRegistry>, Status>

Gets a device registry configuration.

source

pub async fn update_device_registry( &mut self, request: impl IntoRequest<UpdateDeviceRegistryRequest> ) -> Result<Response<DeviceRegistry>, Status>

Updates a device registry configuration.

source

pub async fn delete_device_registry( &mut self, request: impl IntoRequest<DeleteDeviceRegistryRequest> ) -> Result<Response<()>, Status>

Deletes a device registry configuration.

source

pub async fn list_device_registries( &mut self, request: impl IntoRequest<ListDeviceRegistriesRequest> ) -> Result<Response<ListDeviceRegistriesResponse>, Status>

Lists device registries.

source

pub async fn create_device( &mut self, request: impl IntoRequest<CreateDeviceRequest> ) -> Result<Response<Device>, Status>

Creates a device in a device registry.

source

pub async fn get_device( &mut self, request: impl IntoRequest<GetDeviceRequest> ) -> Result<Response<Device>, Status>

Gets details about a device.

source

pub async fn update_device( &mut self, request: impl IntoRequest<UpdateDeviceRequest> ) -> Result<Response<Device>, Status>

Updates a device.

source

pub async fn delete_device( &mut self, request: impl IntoRequest<DeleteDeviceRequest> ) -> Result<Response<()>, Status>

Deletes a device.

source

pub async fn list_devices( &mut self, request: impl IntoRequest<ListDevicesRequest> ) -> Result<Response<ListDevicesResponse>, Status>

List devices in a device registry.

source

pub async fn modify_cloud_to_device_config( &mut self, request: impl IntoRequest<ModifyCloudToDeviceConfigRequest> ) -> Result<Response<DeviceConfig>, Status>

Modifies the configuration for the device, which is eventually sent from the Cloud IoT Core servers. Returns the modified configuration version and its metadata.

source

pub async fn list_device_config_versions( &mut self, request: impl IntoRequest<ListDeviceConfigVersionsRequest> ) -> Result<Response<ListDeviceConfigVersionsResponse>, Status>

Lists the last few versions of the device configuration in descending order (i.e.: newest first).

source

pub async fn list_device_states( &mut self, request: impl IntoRequest<ListDeviceStatesRequest> ) -> Result<Response<ListDeviceStatesResponse>, Status>

Lists the last few versions of the device state in descending order (i.e.: newest first).

source

pub async fn set_iam_policy( &mut self, request: impl IntoRequest<SetIamPolicyRequest> ) -> Result<Response<Policy>, Status>

Sets the access control policy on the specified resource. Replaces any existing policy.

source

pub async fn get_iam_policy( &mut self, request: impl IntoRequest<GetIamPolicyRequest> ) -> Result<Response<Policy>, Status>

Gets the access control policy for a resource. Returns an empty policy if the resource exists and does not have a policy set.

source

pub async fn test_iam_permissions( &mut self, request: impl IntoRequest<TestIamPermissionsRequest> ) -> Result<Response<TestIamPermissionsResponse>, Status>

Returns permissions that a caller has on the specified resource. If the resource does not exist, this will return an empty set of permissions, not a NOT_FOUND error.

source

pub async fn send_command_to_device( &mut self, request: impl IntoRequest<SendCommandToDeviceRequest> ) -> Result<Response<SendCommandToDeviceResponse>, Status>

Sends a command to the specified device. In order for a device to be able to receive commands, it must:

  1. be connected to Cloud IoT Core using the MQTT protocol, and
  2. be subscribed to the group of MQTT topics specified by /devices/{device-id}/commands/#. This subscription will receive commands at the top-level topic /devices/{device-id}/commands as well as commands for subfolders, like /devices/{device-id}/commands/subfolder. Note that subscribing to specific subfolders is not supported. If the command could not be delivered to the device, this method will return an error; in particular, if the device is not subscribed, this method will return FAILED_PRECONDITION. Otherwise, this method will return OK. If the subscription is QoS 1, at least once delivery will be guaranteed; for QoS 0, no acknowledgment will be expected from the device.
source

pub async fn bind_device_to_gateway( &mut self, request: impl IntoRequest<BindDeviceToGatewayRequest> ) -> Result<Response<BindDeviceToGatewayResponse>, Status>

Associates the device with the gateway.

source

pub async fn unbind_device_from_gateway( &mut self, request: impl IntoRequest<UnbindDeviceFromGatewayRequest> ) -> Result<Response<UnbindDeviceFromGatewayResponse>, Status>

Deletes the association between the device and the gateway.

Trait Implementations§

source§

impl<T: Clone> Clone for DeviceManagerClient<T>

source§

fn clone(&self) -> DeviceManagerClient<T>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<T: Debug> Debug for DeviceManagerClient<T>

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

impl<T> !Freeze for DeviceManagerClient<T>

§

impl<T> RefUnwindSafe for DeviceManagerClient<T>
where T: RefUnwindSafe,

§

impl<T> Send for DeviceManagerClient<T>
where T: Send,

§

impl<T> Sync for DeviceManagerClient<T>
where T: Sync,

§

impl<T> Unpin for DeviceManagerClient<T>
where T: Unpin,

§

impl<T> UnwindSafe for DeviceManagerClient<T>
where T: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> FromRef<T> for T
where T: Clone,

§

fn from_ref(input: &T) -> T

Converts to this type from a reference to the input type.
§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoRequest<T> for T

source§

fn into_request(self) -> Request<T>

Wrap the input message T in a tonic::Request
source§

impl<T> ToOwned for T
where T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more