Configure Email Direct Reply

Prev Next

The Direct Reply feature lets users reply directly to email notifications, mentions, DMs, or channel messages, with their replies posted back into Rocket.Chat as regular messages. It bridges email and chat so conversations don't get fragmented when users respond from their inbox.

How it works

Direct Reply is the inbound counterpart to your outbound email setup:

  • SMTP and the Mailer handle outgoing email.

  • Direct Reply handles incoming replies to those emails.

Rocket.Chat connects to a dedicated mailbox over IMAP or POP, polls it on a schedule, and processes any new messages it finds. To know which message a reply belongs to, Rocket.Chat uses sub-addressing (also called plus addressing): notification emails are sent from an address like inbox+abc123@yourdomain.com, where abc123 encodes the original message context. When the user replies, the tagged address still routes to the base inbox (inbox@yourdomain.com), and Rocket.Chat reads the tag to post the reply back to the right room.

Important: Use a dedicated mailbox.

When Direct Reply is enabled, Rocket.Chat takes control of the configured mailbox. All unread emails are retrieved, marked as read, and processed. Only enable Direct Reply with a mailbox used exclusively by Rocket.Chat, never one that humans also read or process.

Limitations

  • English only. Reply parsing relies on the quoted-header phrase On <date>, <author> wrote: being in English. Replies in other languages may work as long as that quote line is in English or older quoted email content is removed manually before sending.

  • Text only. Attachments are not supported yet. Inline, multiline, bold, and italic formatting all work.

Configure direct reply

Go to Manage → Workspace → Email, expand the Direct Reply section, and update the following fields:

Field

Description

Enable Direct Reply

Turns the feature on. Once enabled, Rocket.Chat starts polling the configured mailbox.

Debug Direct Reply

Enables verbose logging to help diagnose connection or parsing issues. Note: when enabled, the mailbox password is shown in plain text in the admin console. Keep this off in production.

Protocol

Select IMAP or POP depending on your email server. IMAP is recommended where available.

Host

The email server hostname, for example, imap.example.com or pop.example.com.

Port

The email server port. Common values: 993 (IMAP over TLS), 143 (IMAP), 995 (POP over TLS), 110 (POP).

IgnoreTLS

Enable only if your email server doesn't support TLS, typically when using port 143 or 110. Leave disabled for secure ports.

Email Check Frequency

How often Rocket.Chat polls the mailbox, in minutes. Default and minimum is 2.

Delete Emails

When enabled, every unread email in the mailbox is deleted after processing, including emails that aren't direct replies. Recommended for IMAP to keep the mailbox empty. The mailbox must therefore be used exclusively by Rocket.Chat.

Separator

The character separating the base and tag parts of the email address, for example, + in inbox+tag@domain.com. The default + works for most providers; only change this if your provider requires a different separator.

Username

The full email address used to log in to the mailbox, for example, inbox@yourdomain.com. Use the absolute address; do not use a tagged variant (the tag would be overwritten).

Reply-to

The address recipients see in the Reply-To header of notification emails. Typically the same as Username.

Password

The password for the mailbox account.

Click Save changes. Users can now reply to email notifications and have their replies posted back into Rocket.Chat.

Troubleshooting

Reply didn't appear in Rocket.Chat

If a user replied but no message was posted, check the admin console for an Invalid Email entry. Common causes:

  • The email format wasn't what Rocket.Chat expected (see Quoted headers below).

  • The sender was blocked or removed from the workspace.

  • The original message or room was deleted.

Switching from IMAP to POP

If you switch from IMAP to POP using the same mailbox, empty all folders first. POP treats every message in the mailbox as new on first connect, so leaving old messages results in duplicate posts in Rocket.Chat.

Quoted headers

Rocket.Chat uses the On <date>, <author> wrote: line to find where a quoted reply ends and the new message begins. This breaks down when the email client wraps that line across multiple lines (Gmail wraps lines over 80 characters):

On <date>, <author>
wrote:
> blah

Rocket.Chat searches for on and wrote together on the same line and won't recognize the wrapped version. The detection also only works in English.

Workaround: when replying, delete the quoted text and keep only your new message.

Signatures

Rocket.Chat trims signatures by looking for lines starting with - or _:

Hello

--
Rick

Custom signature styles aren't reliably detected. For example, this format won't be stripped automatically:

Hello

Mr Rick Olson
Galactic President Superstar Mc Awesomeville
GitHub

If your signature isn't being trimmed, ask users to either delete it before replying or adopt the standard -- delimiter convention.