Scenario Elements
There are three component types in the Scenario Editor:
- Conversational Elements - Components that provide user interaction functionality, such as Prompts and Statements.
- Flow Control Elements - Components that control the conversation logic,such as, multi-case switch statements.
- Advanced Control Elements - Components used for integration with external data resources and advanced services, such as Action scripting steps and LUIS.
The scenario editor tool is also keyboard accessible. Users can smartly navigate the scenario flow, using the Arrows and Tab keys. All the actions applicable to the scenario steps are keyboard accessible as well. For example adding and deleting edges are accessible using the Enter and Delete keys, users can even move the steps around the canvas using the Shift+Arrows keys.
Conversational Elements
The conversation elements have three controls:
- Prompt: Used to retrieve input from the user. Allows configuration of the displayed message and input type (for example, Boolean, String, Number, etc.)
- Yes/No: Two-way split in the flow based on user input.
- Statement: Standard output message with no expectation of a user response. Can also be used to display embedded content (for example, Adaptive Cards).
Flow control Elements
The conversation elements have five controls:
- Branch: Two-way decision split, based on code and not on the user input.
- Switch: Multi-optional split in the flow based on code.
- Begin Scenario: Invoke a subscenario. Execution of the current scenario is resumed once the subscenario terminates.
- Replace Scenario: Terminate the current scenario and invoke an alternative scenario.
- End Scenario: Terminates current scenario and returns result to the caller.
Advanced Control Elements
The conversation elements have five controls:
- Data Connection: Enables HTTPS calls to external services such as Restful and FHIR based APIs.
- Skill: Invoke a new conversational skill
- Global: Allows setting and getting global variables.
- Assign: Assign value to variables
- Action: Allows execution of author defined JavaScript code scripts.
- Wait: Temporarily pauses and suspends the scenario execution.
- Language Understanding: HTTPS calls to the language understanding service.
- Generative Answer: Allows chatting with your own data via LLMs or enable Fallback
- Healthcare Intelligence: Allows to use credible sources powered by OpenAI
Navigation
The are also several auxiliary editing components that are aimed to help the author during edit and debug mode, and aren't used at runtime.