Guide people to their goals with interactivity

From text-based messages to card-based graphical user interfaces, Chat apps support interactivity in many ways.

Follow these guidelines to learn how best to use Chat app features to implement Chat app interactivity.

Card messages

Cards are UI elements that can contain both interactive and static widgets such as text, images, and buttons that apps can send to users and spaces. If your app needs to gather information from users, present detailed information, or guide users to take a next step, they should send a card message.

Pollster uses a card message to run polls in Chat spaces:

Running a poll in a Chat space with a card message

To learn more about cards, see Send card messages.

Dialogs

Dialogs are windowed, card-based interfaces that your app can open to interact with a user. In dialogs, multiple cards can be strung together sequentially, which helps users complete multi-step processes, like filling in form data.

The Contact app starts a dialog to gather contact details from a user who issues the /addContact slash command:

Gathering details about a new contact from a user with a dialog

To learn more about dialogs, refer to Use dialogs.

Slash commands

Slash commands let you register and advertise specific commands that users can give your app by typing a command that begins with a forward slash (/), like /help.

Gathering details about a new contact from a user with a dialog

To learn more about slash commands, refer to Support slash commands.

Notifications

Your Chat app can @mention specific users or all users in a space, but before you mention a single user, and especially before you mention all users in a space, you should consider whether or not it's really necessary, and err on the side of not @mentioning people.

Mentioning single users causes them to receive a notification and interrupts whatever else they're doing. Mentioning all users in a space sends a notification to everyone in the space. Mention people too often, and they might become annoyed with your Chat app and start to view it as spam.

It is OK to mention users for very important or time-sensitive reasons. For example, Scrum app @mentions a space full of software developers to notify them that code freeze is approaching and to give them the chance to say they need a bit more time before the deadline:

Justified notification

On the other hand, the Cymbal Pizza app mentions a customer directly to thank them; which is polite, but not notification-worthy:

Unjustified notification

To learn more about notifications, refer to Messages that mention users.