E-mail notification to customer when there's activity on their issue?

We just set up Zammad, but customers are not being notified via e-mail when there is activity on their tickets, e.g. when we make a reply to them.

I found How to send notification by email to customer, but that talks about adding an IMAP/POP3 account under the E-mail channel settings. But we don’t want to set up a two-way e-mail channel, we simply want customers to get a notification that there was a reply on their ticket, with a link to the ticket they must follow if they want to read the answer and reply to it. We don’t even have an IMAP/POP3 account for such purposes.

We only have a noreply@ourdomain.com SMTP account, for outgoing e-mail. That has been configured for outgoing e-mail in the E-mail settings, and agents are receiving e-mail notifications fine, just not customers.

Surely this must be possible? This is the same way e.g. GitHub, Bugzilla, and many other support systems work by default.

Without e-mail notification, the customer won’t know we’ve answered them, unless they log in to Zammad regularly and check.

Infos:

  • Used Zammad version: 3.5.0-2
  • Used Zammad installation source: Docker / docker-compose
  • Operating system: Linux
  • Browser + version: Firefox 84.0

Expected behavior:

  • An agent makes a note on a ticket
  • The customer should be notified via e-mail, with a link to the ticket

Actual behavior:

  • An agent makes a note on a ticket
  • No e-mail is sent to the customer

Steps to reproduce the behavior:

  • Make a note on a ticket

@MrGeneration since you answered over on How to send notification by email to customer, maybe you know?

What you want is not possible. The noreply address is only used for agent notifications, for communication with the user you have to configure the Email channel with a server for outbound emails. It doesn’t make any sense not to do this because the whole point is to use Zammad as your single communication tool with the user. Why would you not want to be able to answer the user with an email? If you have an account for incoming emails you can use the same account for outgoing.

Alright, thanks for clarifying @awedor.

It was our hope that we could set things up so that it works like GitHub Issues, JIRA, Bugzilla and many other ticketing systems work by default: No two-way e-mail channel configured, but still have customers receive notifications when their ticket has been updated.

We have no interest in setting up another e-mail account besides our noreply@ account, and no interest in handling support tickets in a two-way fashion via e-mail.

Would you be open to a contribution via GitHub to allow for customer e-mail notifications on ticket updates? We can see that agents currently have Notifications settings available under their Profile, but customers do not. We would be very happy if customers could also have an option under their Profile to receive e-mail notifications on ticket updates, and if there was a way to set a global default for newly created customer accounts. We may find some time to contribute this to Zammad, but better ask first if you’re open to the idea.

To clarify: We do not have a support@ or similar e-mail account currently, and were not planning on creating one. We want to only use the Web channel for ticket communication. But we still wish users to be notified via e-mail if their ticket has been updated (commented on, closed, etc). This is the way most ticketing systems work by default. Adding a two-way e-mail channel is usually an extra that you can activate, and not something you have to do in order to have customers/reporters be notified about ticket updates via e-mail.

I think contributions are welcome on Github but I can’t speak for the Zammad team since I am only a user. This is mainly a users help users support forum. If you want direct support from the Zammad team you should look into the commercial support plans on zammad.com

I understand your usecase and you probably can use it this way, all you have to do is configure the Email channel with any account and also a trigger for the user notifications. You don’t have to publish the real mail adress of the inbox if you don’t want the users to know it, and for outgoing you can send as noreply just like with the notifications (if your mailserver allows it). I really don’t see the problem here.

Hi @estan

what you want can be achieved by using triggers.

This one does not come built-in by default so I created it:

Further info can be found here:

HTH.

Regards,
Martin

Many thanks @rsysadmin, I will have a look at this on Monday.

Sorry estan, I don’t react on direct mentions and am working threads in order. This is why reactions may take time.

As other posters already mentioned:
You cannot use notification channels for trigger based notifications.
Zammad always uses the email address of the group and that requires your a mail channel.

Now there’s a solution for your goal. It’s a bit technical and may bring higher administrative.
A sendout only channel should help you: Dispatch messages with Sendmail — Zammad documentation

By default it’s a sendmail based channel to reduce the administrative burden, let me know if that’s not “good enough”.

Please note:
Adding a sendout only channel and adding those mail adresses to affected groups will cause agents seeing the buttons “reply (reply-all) forward” which you can’t disable.

If this is still not what you want, probably the only workaround would be a third party script that would handle these actions all together with webhooks or sole API. Quite hacky through.

@MrGeneration No worries.

Thanks for referring me to those instructions. This seems similar to what we tried over here as a workaround: We temporarily activated IMAP access for a dummy e-mail address of ours. Then we used the Email Accounts settings to add an Email Account as normal (with both incoming/outgoing). We then disabled IMAP access on our dummy account, and checked that Zammad was still able to send outgoing e-mail.

This workaround worked: We could now use “reply” on a ticket, and the customer would get an e-mail about this. Unfortunately, the e-mail that went out had no “Please visit this link to reply” or similar. This is natural, since the mechanism seems designed for two-way e-mail channel communication. So this did in the end not solve our problem.

I can try setting up dispatch messages with sendmail like you suggested with your link, but I suspect the notification e-mails that go out customers will then also not have any “Please visit this link to reply” in them, so the customer cannot easily go visit the ticket (without navigating to it manually).

What’s your opinion on what @rsysadmin suggested above? Using a custom trigger. That was what I was going to try next. Do you know if the e-mails then sent will have a link to the ticket that the customer can follow directly?

What’s your opinion on what @rsysadmin suggested above? Using a custom trigger. That was what I was going to try next. Do you know if the e-mails then sent will have a link to the ticket that the customer can follow directly?

I just had a look at the Trigger settings, and it seems there’s no way to use a variable containing the ticket URL in the e-mail notification, so we cannot compose an e-mail template that will look like we want (including a link back to the ticket in question). And also, we cannot get the ticket title in the e-mail subject.

I will give your suggestion a try @MrGeneration, but I’m afraid the e-mails sent out will not include a link back to the ticket (?).

Hi @estan

a link to the ticket is automatically included by Zammad… unless you remove it from the text templates used by the system to address agents and clients. Have you looked into that as well?

HTH,
Martin

I had a look, and it seems using the method described at Dispatch messages with Sendmail — Zammad Admin Documentation documentation , there’s no way to fill in any SMTP settings. Which SMTP settings will be used?

a link to the ticket is automatically included by Zammad… unless you remove it from the text templates used by the system to address agents and clients. Have you looked into that as well?

Aha. I never actually tried to go ahead and add the trigger and check the sent e-mail. I did not know a link will be included automatically. I will have a go!

Aha. I never actually tried to go ahead and add the trigger and check the sent e-mail. I did not know a link will be included automatically. I will have a go!

@rsysadmin Hm, I tried adding a trigger like you suggested, like this:

I then, logged in as agent, made a public note on an open test ticket we had, but so far, no e-mail has been sent to the customer. E-mail is generally working (e.g. I got an e-mail to my agent e-mail address yesterday about a new ticket), so I don’t think the e-mail configuration is a problem.

I will wait a little longer, in case there’s some delay involved, but if you have any ideas it’s much appreciated.

Hi @estan

from what I see there, this trigger would only work (i.e.: send an email to your customer) once the ticket has been actually closed. Emails are sent as fast as possible; I mean, I never heard of any delay in notifications and I have no idea either, whether you can set something up to hold messages for n-minutes before being sent to either the agents or the customers…

best,
Martin

from what I see there, this trigger would only work (i.e.: send an email to your customer) once the ticket has been actually closed.

Ah yes, so all the conditions must hold true for the trigger to fire? (i.e. it’s a logical AND?).

I will try adding separate triggers, one with condition “State is closed” and another with condition “Action is updated”, to get what I want, and try again.

I will try adding separate triggers, one with condition “State is closed” and another with condition “Action is updated”, to get what I want, and try again.

I now tried adding only a trigger like this:

I tried (as agent) closing, re-opening the issue, as well as making a public note on it. But an e-mail was never sent to the customer. E-mails were sent to other agents (I can can see them in our mail server log).

Our goal is that a mail should go to the customer if their ticket is updated in any way (closed, note added et.c.).

Hm, I now found the following note at How do trigger work — Zammad Admin Documentation documentation

In order to send emails with Triggers, you need to configure an email address for the group the trigger is working in. If you don’t, Zammad will skip the Trigger completely.

So it seems I’m back to square one :confused: In order for triggers to work, I must add an Email Account and associate with the Group. And in order to do that, Zammad forces us to add an IMAP account, even if we have no need for incoming e-mail :frowning:

I guess I can try our previous workaround of temporarily turning on IMAP access for one of our e-mail accounts, and temporarily use that when adding the Email Account in Zammad, just to make it happy, and then turn off IMAP access for that e-mail again. That should allow Zammad to use the Email Account only for outgoing e-mail, and the e-mail triggers to work.