Struct gapi_grpc::google::assistant::embedded::v1alpha1::embedded_assistant_client::EmbeddedAssistantClient[][src]

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

Service that implements Google Assistant API.

Implementations

impl EmbeddedAssistantClient<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> EmbeddedAssistantClient<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 converse(
    &mut self,
    request: impl IntoStreamingRequest<Message = ConverseRequest>
) -> Result<Response<Streaming<ConverseResponse>>, Status>
[src]

Initiates or continues a conversation with the embedded assistant service. Each call performs one round-trip, sending an audio request to the service and receiving the audio response. Uses bidirectional streaming to receive results, such as the END_OF_UTTERANCE event, while sending audio.

A conversation is one or more gRPC connections, each consisting of several streamed requests and responses. For example, the user says Add to my shopping list and the assistant responds What do you want to add?. The sequence of streamed requests and responses in the first gRPC message could be:

  • ConverseRequest.config
  • ConverseRequest.audio_in
  • ConverseRequest.audio_in
  • ConverseRequest.audio_in
  • ConverseRequest.audio_in
  • ConverseResponse.event_type.END_OF_UTTERANCE
  • ConverseResponse.result.microphone_mode.DIALOG_FOLLOW_ON
  • ConverseResponse.audio_out
  • ConverseResponse.audio_out
  • ConverseResponse.audio_out

The user then says bagels and the assistant responds OK, I’ve added bagels to your shopping list. This is sent as another gRPC connection call to the Converse method, again with streamed requests and responses, such as:

  • ConverseRequest.config
  • ConverseRequest.audio_in
  • ConverseRequest.audio_in
  • ConverseRequest.audio_in
  • ConverseResponse.event_type.END_OF_UTTERANCE
  • ConverseResponse.result.microphone_mode.CLOSE_MICROPHONE
  • ConverseResponse.audio_out
  • ConverseResponse.audio_out
  • ConverseResponse.audio_out
  • ConverseResponse.audio_out

Although the precise order of responses is not guaranteed, sequential ConverseResponse.audio_out messages will always contain sequential portions of audio.

Trait Implementations

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

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

Auto Trait Implementations

impl<T> !RefUnwindSafe for EmbeddedAssistantClient<T>

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

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

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

impl<T> !UnwindSafe for EmbeddedAssistantClient<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]