These are the fundamentals in Dialog.

A message is a piece of content sent by a bot or an interlocutor.

Inbound message

An inbound message is a message sent to a bot by an interlocutor.

Outbound message

An outbound message is a message sent to an interlocutor by a bot.

An event is how you can track both generic activity from your bot, and custom interlocutor activity.

Every event is associated with an event name, the time it happened, optionnaly the interlocutor that caused the event, and optionally some extra properties.

A bot is a conversational application. It's a piece of business logic interacting with interlocutors via a conversational interface.

An interlocutor is most likely a human user, but could also be another conversational application.

Interlocutors are scoped to a bot, so the same user conversing with two bots will count as two distinct interlocutors.

A session is a cluster of messages exchanged in a time window. It belongs to a conversation.

A conversation represents the concept of a thread or channel on a messaging platform. It can involve many interlocutors and one bot.

A flow is a broad grouping of steps leading to the completion of an objective.

A step is a single interaction point inside a flow. A step has one or many messages.

An objective is the goal of a flow. It can be for the bot to collect some information from an interlocutor, it can be for an interlocutor to buy an item or any other broad action.

A platform is a messaging platform, or medium, on which messages are exchanged. See all supported platforms.

A provider is an underlying service enabling the connection between a platform and Dialog.