Exchange data with client application

In this option (client-side integration), variables are exchanged between the dialog service and the client application using the DLGaaS API. The variables to send and receive are configured in Mix.dialog in the data access node. This request gets translated as a data action, which tells the client app that the dialog expects data to continue the flow.

Workflow

To exchange data with a client application:

  1. Create a data access node in Mix.dialog.
  2. Use the data access action API in the client app.

Create data access node in Mix.dialog

To configure the data to exchange for a client-side integration, create a data access node in Mix.dialog and specify the following fields:

DataAccess fields
Field Description
Latency message Message played when a data access request is pending.
Send Data Data that will be sent to the client application, for example, coffee size and type. This can be a variable or an entity.
Get Data Data that will be returned by the client application, for example, coffee price. This is a variable.
Success Node to go to if the external system returns a success code; that is, a returnCode of “0”.
Failure Node to go to if the external system returns a failure code; that is, a returnCode that is not “0”.
Integration Enable Enable client-side fetching to indicate that the data is to be exchanged with a client application. See Specifying server- vs. client-side integration.

For example:

Data access node for client-side integration

For a detailed description of the data access node, see Set up a data access node.

Use data access action API in client app

Data is exchanged between the dialog service and the client application through the DLGaaS ExecuteRequest and ExecuteResponse gRPC API.

For details, see Data access actions in the DLGaaS API documentation.