Struct gapi_grpc::google::cloud::dialogflow::cx::v3beta1::Flow[][src]

pub struct Flow {
    pub name: String,
    pub display_name: String,
    pub description: String,
    pub transition_routes: Vec<TransitionRoute>,
    pub event_handlers: Vec<EventHandler>,
    pub transition_route_groups: Vec<String>,
    pub nlu_settings: Option<NluSettings>,
}

Flows represents the conversation flows when you build your chatbot agent.

A flow consists of many pages connected by the transition routes. Conversations always start with the built-in Start Flow (with an all-0 ID). Transition routes can direct the conversation session from the current flow (parent flow) to another flow (sub flow). When the sub flow is finished, Dialogflow will bring the session back to the parent flow, where the sub flow is started.

Usually, when a transition route is followed by a matched intent, the intent will be “consumed”. This means the intent won’t activate more transition routes. However, when the followed transition route moves the conversation session into a different flow, the matched intent can be carried over and to be consumed in the target flow.

Fields

name: String

The unique identifier of the flow. Format: projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/flows/<Flow ID>.

display_name: String

Required. The human-readable name of the flow.

description: String

The description of the flow. The maximum length is 500 characters. If exceeded, the request is rejected.

transition_routes: Vec<TransitionRoute>

A flow’s transition routes serve two purposes:

TransitionRoutes are evalauted in the following order:

TransitionRoutes with intent specified are inherited by pages in the flow.

event_handlers: Vec<EventHandler>

A flow’s event handlers serve two purposes:

Unlike [transition_routes][google.cloud.dialogflow.cx.v3beta1.Flow.transition_routes], these handlers are evaluated on a first-match basis. The first one that matches the event get executed, with the rest being ignored.

transition_route_groups: Vec<String>

A flow’s transition route group serve two purposes:

Format:projects/<Project ID>/locations/<Location ID>/agents/<Agent ID>/flows/<Flow ID>/transitionRouteGroups/<TransitionRouteGroup ID>.

nlu_settings: Option<NluSettings>

NLU related settings of the flow.

Trait Implementations

impl Clone for Flow[src]

impl Debug for Flow[src]

impl Default for Flow[src]

impl Message for Flow[src]

impl PartialEq<Flow> for Flow[src]

impl StructuralPartialEq for Flow[src]

Auto Trait Implementations

impl RefUnwindSafe for Flow

impl Send for Flow

impl Sync for Flow

impl Unpin for Flow

impl UnwindSafe for Flow

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]