About Prompts and Responses

If a message is the result of a Prompt action, the sender of that message can request a specific response from each recipient, usually in the form of a button-vote mechanism. In such cases, the system must be set first to wait for responses, then to know how to handle responses as they are received, and finally, be instructed what to do when responses are not received within a specified timeout period.

Incoming prompts request a response from recipients (using the Question field on the Inbox form or the external email) and display a set of choices. The choices are displayed in the form of voting buttons in the Response tab area of the Inbox form, or in the form of links in an external email. For example, a prompt may include buttons or links labeled:

  • Approve or Disapprove (default option)
  • Yes or No
  • OK, Send More Info, or Cancel

To customize the choices for a prompt, you must include a Prompt action with a Choices parameter as part of the event action definition. This Choices parameters consists of the CHOICES function followed by a string expression that evaluates to a comma-separated list that contains an even number of elements (value/label pairs). For example, if you want the voting buttons to be labeled Yes and No, with corresponding values returned to the action to be 1 and 0, you can include this parameter:

CHOICES("1,sYes,0,sNo")

In this example, the strings sYes and sNo are WinStudio form strings. These are defined for the system as Yes and No, respectively.

If you want your button labels to be localized, for the recipient, you must:

  • Use names of existing form strings (as found in the Strings table).

    OR

  • Add your own form strings, using the Strings form, and provide the necessary translations.

    To open the Strings form, you must be in Design Mode and from the Edit menu, select Strings.

If localization is not an issue, you can also use a literal value that displays on the button verbatim. To specify the string as a literal value here, simply specify it as a list value. If the system does not find the string in the Strings table, the system automatically treats it as a literal value.