#[non_exhaustive]pub struct StreamingDetectIntentRequest {
pub session: String,
pub query_params: Option<QueryParameters>,
pub query_input: Option<QueryInput>,
pub output_audio_config: Option<OutputAudioConfig>,
pub enable_partial_response: bool,
pub enable_debugging_info: bool,
pub response_view: DetectIntentResponseView,
/* private fields */
}sessions only.Expand description
The top-level message sent by the client to the [Sessions.StreamingDetectIntent][google.cloud.dialogflow.cx.v3.Sessions.StreamingDetectIntent] method.
Multiple request messages should be sent in order:
-
The first message must contain session, query_input plus optionally query_params. If the client wants to receive an audio response, it should also contain output_audio_config.
-
If query_input was set to query_input.audio.config, all subsequent messages must contain query_input.audio.audio to continue with Speech recognition. If you decide to rather detect an intent from text input after you already started Speech recognition, please send a message with query_input.text.
However, note that:
- Dialogflow will bill you for the audio duration so far.
- Dialogflow discards all Speech recognition results in favor of the input text.
- Dialogflow will use the language code from the first message.
After you sent all input, you must half-close or abort the request stream.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.session: StringThe name of the session this query is sent to.
Format:
projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>
or
projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>.
If Environment ID is not specified, we assume default ‘draft’
environment.
It’s up to the API caller to choose an appropriate Session ID. It can be
a random number or some type of session identifiers (preferably hashed).
The length of the Session ID must not exceed 36 characters.
Note: session must be set in the first request.
For more information, see the sessions guide.
Note: Always use agent versions for production traffic. See Versions and environments.
query_params: Option<QueryParameters>The parameters of this query.
query_input: Option<QueryInput>Required. The input specification.
output_audio_config: Option<OutputAudioConfig>Instructs the speech synthesizer how to generate the output audio.
enable_partial_response: boolEnable partial detect intent response. If this flag is not enabled,
response stream still contains only one final DetectIntentResponse even
if some Fulfillments in the agent have been configured to return partial
responses.
enable_debugging_info: boolIf true, StreamingDetectIntentResponse.debugging_info will get populated.
response_view: DetectIntentResponseViewOptional. Specifies which fields in the QueryResult to return. If not set, the default is DETECT_INTENT_RESPONSE_VIEW_FULL.
Implementations§
Source§impl StreamingDetectIntentRequest
impl StreamingDetectIntentRequest
Sourcepub fn set_session<T: Into<String>>(self, v: T) -> Self
pub fn set_session<T: Into<String>>(self, v: T) -> Self
Sourcepub fn set_query_params<T>(self, v: T) -> Selfwhere
T: Into<QueryParameters>,
pub fn set_query_params<T>(self, v: T) -> Selfwhere
T: Into<QueryParameters>,
Sets the value of query_params.
§Example
use google_cloud_dialogflow_cx_v3::model::QueryParameters;
let x = StreamingDetectIntentRequest::new().set_query_params(QueryParameters::default()/* use setters */);Sourcepub fn set_or_clear_query_params<T>(self, v: Option<T>) -> Selfwhere
T: Into<QueryParameters>,
pub fn set_or_clear_query_params<T>(self, v: Option<T>) -> Selfwhere
T: Into<QueryParameters>,
Sets or clears the value of query_params.
§Example
use google_cloud_dialogflow_cx_v3::model::QueryParameters;
let x = StreamingDetectIntentRequest::new().set_or_clear_query_params(Some(QueryParameters::default()/* use setters */));
let x = StreamingDetectIntentRequest::new().set_or_clear_query_params(None::<QueryParameters>);Sourcepub fn set_query_input<T>(self, v: T) -> Selfwhere
T: Into<QueryInput>,
pub fn set_query_input<T>(self, v: T) -> Selfwhere
T: Into<QueryInput>,
Sets the value of query_input.
§Example
use google_cloud_dialogflow_cx_v3::model::QueryInput;
let x = StreamingDetectIntentRequest::new().set_query_input(QueryInput::default()/* use setters */);Sourcepub fn set_or_clear_query_input<T>(self, v: Option<T>) -> Selfwhere
T: Into<QueryInput>,
pub fn set_or_clear_query_input<T>(self, v: Option<T>) -> Selfwhere
T: Into<QueryInput>,
Sets or clears the value of query_input.
§Example
use google_cloud_dialogflow_cx_v3::model::QueryInput;
let x = StreamingDetectIntentRequest::new().set_or_clear_query_input(Some(QueryInput::default()/* use setters */));
let x = StreamingDetectIntentRequest::new().set_or_clear_query_input(None::<QueryInput>);Sourcepub fn set_output_audio_config<T>(self, v: T) -> Selfwhere
T: Into<OutputAudioConfig>,
pub fn set_output_audio_config<T>(self, v: T) -> Selfwhere
T: Into<OutputAudioConfig>,
Sets the value of output_audio_config.
§Example
use google_cloud_dialogflow_cx_v3::model::OutputAudioConfig;
let x = StreamingDetectIntentRequest::new().set_output_audio_config(OutputAudioConfig::default()/* use setters */);Sourcepub fn set_or_clear_output_audio_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<OutputAudioConfig>,
pub fn set_or_clear_output_audio_config<T>(self, v: Option<T>) -> Selfwhere
T: Into<OutputAudioConfig>,
Sets or clears the value of output_audio_config.
§Example
use google_cloud_dialogflow_cx_v3::model::OutputAudioConfig;
let x = StreamingDetectIntentRequest::new().set_or_clear_output_audio_config(Some(OutputAudioConfig::default()/* use setters */));
let x = StreamingDetectIntentRequest::new().set_or_clear_output_audio_config(None::<OutputAudioConfig>);Sourcepub fn set_enable_partial_response<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_partial_response<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_partial_response.
§Example
let x = StreamingDetectIntentRequest::new().set_enable_partial_response(true);Sourcepub fn set_enable_debugging_info<T: Into<bool>>(self, v: T) -> Self
pub fn set_enable_debugging_info<T: Into<bool>>(self, v: T) -> Self
Sets the value of enable_debugging_info.
§Example
let x = StreamingDetectIntentRequest::new().set_enable_debugging_info(true);Sourcepub fn set_response_view<T: Into<DetectIntentResponseView>>(self, v: T) -> Self
pub fn set_response_view<T: Into<DetectIntentResponseView>>(self, v: T) -> Self
Sets the value of response_view.
§Example
use google_cloud_dialogflow_cx_v3::model::DetectIntentResponseView;
let x0 = StreamingDetectIntentRequest::new().set_response_view(DetectIntentResponseView::Full);
let x1 = StreamingDetectIntentRequest::new().set_response_view(DetectIntentResponseView::Basic);
let x2 = StreamingDetectIntentRequest::new().set_response_view(DetectIntentResponseView::Default);Trait Implementations§
Source§impl Clone for StreamingDetectIntentRequest
impl Clone for StreamingDetectIntentRequest
Source§fn clone(&self) -> StreamingDetectIntentRequest
fn clone(&self) -> StreamingDetectIntentRequest
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for StreamingDetectIntentRequest
impl Debug for StreamingDetectIntentRequest
Source§impl Default for StreamingDetectIntentRequest
impl Default for StreamingDetectIntentRequest
Source§fn default() -> StreamingDetectIntentRequest
fn default() -> StreamingDetectIntentRequest
Source§impl PartialEq for StreamingDetectIntentRequest
impl PartialEq for StreamingDetectIntentRequest
Source§fn eq(&self, other: &StreamingDetectIntentRequest) -> bool
fn eq(&self, other: &StreamingDetectIntentRequest) -> bool
self and other values to be equal, and is used by ==.