Struct gapi_grpc::google::actions::sdk::v2::interactionmodel::Scene[][src]

pub struct Scene {
    pub on_enter: Option<EventHandler>,
    pub intent_events: Vec<IntentEvent>,
    pub conditional_events: Vec<ConditionalEvent>,
    pub slots: Vec<Slot>,
    pub on_slot_updated: Option<EventHandler>,
}

Scene is the basic unit of control flow when designing a conversation. They can be chained together with other scenes, generate prompts for the end user, and define slots. The scene name is specified in the name of the file.

Fields

on_enter: Option<EventHandler>

Handler to invoke when transitioning into this scene.

intent_events: Vec<IntentEvent>

The list of events that trigger based on intents. These events can be triggered at any time after the on_load Handler has been called. Important - these events define the set of intents which are scoped to this scene and will take precedence over any globally defined events that have the same intents or their triggering phrases. Intent names must be unique within a scene.

conditional_events: Vec<ConditionalEvent>

The list of events to trigger based on conditional statements. These are evaluated after the form has been filled or immediately after on_load if this scene does not have a form (evaluation is only done once). Only the first matching event will be triggered.

slots: Vec<Slot>

Ordered list of slots. Each slot defines the type of data that it will resolve and configuration to customize the experience of this resolution (e.g. prompts).

on_slot_updated: Option<EventHandler>

Handler called when there is a change in state of a slot not caused by updates within another Handler. This allows slots to be invalidated, the scene invalidated or other changes to scene state.

Trait Implementations

impl Clone for Scene[src]

impl Debug for Scene[src]

impl Default for Scene[src]

impl Message for Scene[src]

impl PartialEq<Scene> for Scene[src]

impl StructuralPartialEq for Scene[src]

Auto Trait Implementations

impl RefUnwindSafe for Scene

impl Send for Scene

impl Sync for Scene

impl Unpin for Scene

impl UnwindSafe for Scene

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]