Designing the right conversations for users is a multi-faceted problem.
The way OpenDialog helps is by providing a simple conceptual starting point about how to map out conversations than can become increasingly more complicated and allow you to develop sophisticated conversations.
Crucially, the way we describe conversations during design directly maps to the way conversations will be implemented by developers because the concepts are exactly the same. This gives designers and developers a common language through which to consider the problem.
Conversations as a collection of scenes with participants
The simplest way to understand how OpenDialog models conversations is to think of it as writing a theatre play.
There are two participants in this play. The bot and the user.
You as the scriptwriter setup the scenes (which define the overall context), and define what the participants (actors) will say in each scene.
As the story evolves your scene participants move from one scene to the other until the play reaches the end.
You can dive into the specifics of this and see how it can get increasingly more sophisticated here.