Below you'll find a list of actions that are specific to customer assistants, as well as where they can be used: either in the Flow Editor, the Function Editor, or both.

Send a Message

Available in: Flow editor, Function Editor

Send a message to the customer.

You can send messages to the customer just about anywhere in a Customer Assistant flow. The Send a Message behavior is really just a special wrapper around the Send a Message action with a provision to wait for a customer response before proceeding in the flow.

The send a message action, in both its visual and programmatic forms, has full access to Quiq's deep rich messaging feature set including quiq replies, cards, carousels, auth and pay message support. The studio provides deep support for visually configuring rich message content. For programmatically configuring rich message content, see the Rich Messaging Gude

Visually configured Send Message actions furthermore support Message Variables, including session fields. Use this if you have LLM-generated message content that you want to reference in an otherwise visually configured message.

Programmatic Payload Example

Sending a basic message that only contains text content:

{
  "action": "sendMessage",
  "message": {
    "text": "Hello Customer!"
  }
}

Send Catalog Message

Available in: Flow editor

Enables you to send a message from the Message Catalog. Catalog messages are configured outside of assistants and can be maintained by less technical users. They are useful for static messaging content (w/ Variable Support) such as legalese or seasonal promotion content.

Start Typing Indicator

Available in: Flow editor

Starts the typing indicator on messaging platforms that support it, such as Apple Messages for Business, Facebook etc. Showing a typing indicator is always a good idea to provide a more naturally feeling conversation, especially if your assistant has any latency due to chained LLM calls.

Special Events

Customer Assistants have Special Events that can interrupt the assistant's normal flow. These are essentially events/triggers that can occur anywhere in assistant's flow and have a special global handler to deal with them.

Customer Unresponsive

The customer unresponsive event fires whenever the customer was expected to respond, but did not do so within the configured inactive timer . You can use this behavior to react globally to the customer being unresponsive. You can make decisions off of the location if you want to respond differently based on where the conversation was at in the flow. You can change the location from within the event's handler, but you're not required to. If you don't change locations, execution will resume from conversation's current location.

The Customer Unresponsive event has some similarities to the Set Timer behavior but can be configured globally without adding more complexity to the flow. On the flip-side, the timer configuration is less flexible.