Scenario Elements

There are three component types in the Scenario Editor:

  1. Conversational Elements - Components that provide user interaction functionality, such as Prompts and Statements.
  2. Flow Control Elements - Components that control the conversation logic,such as, multi-case switch statements.
  3. 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

a screenshot of the 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

a screenshot of the 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

a screenshot of the 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

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.

a screenshot of the scenario tools

Next steps

Conversational Elements