Page tree
Skip to end of metadata
Go to start of metadata

The Task

For ShipIt XII I tried to implement a few "easy" improvements to Confluence's notification emails:

  1. Automatically watch content you create/edit based on User settings
  2. Add a "Stop Watching" link to notification emails
  3. When a User starts following you, send an email with their profile

Automatic watches

I implemented these by simply adding a Watch on the content when it is created/edited, based on the user's preferences.

I also changed the default "Watch this Page?" checkbox to be checked when adding comments, so that users start watching content they comment on.

Between these two changes I figured that people would start getting a lot more emails that they might be interested in, however they might not be that interested...

Stop watching from email

Each notification email now has a "Stop Watching" link:

Sounds simple, but users may receive emails because they're watching a Page/Blog or watching the Space it is in. How can they stop watching content while still watching the Space?

It turned out that the way to do this was to create an "anti-watch" that overrides the Space watch in order to ignore a particular Page or Blog post. This worked quite well, but I still need to find a way to expose this feature in the Web interface, not just in the emails, and to allow the user to manage these new kinds of "watches".

Follow email

This task took a surprisingly long time because I got caught up in making the email look right – CSS can be a real time-sink! However, I'm pretty pleased with the end result:

For laughs, I also created an email for when a user stops watching you, with a link to stop watching them in return. Although the possibilities for escalation and workplace shenanigans are tempting, you probably won't see this confirmation message in Confluence anytime soon:

Getting it shipped

  1. The automatic watches were fairly straightforward code-wise; I'd estimate another 2 days for writing tests and tweaking the UI.
  2. The "anti-watches" concept feels like a bit of a hack so I'd want to check that people really do want to watch a space and ignore certain content in it. If so, the UI will need work and plenty of tests will need to be added; about 1 week all up.
  3. The follow email includes user profile images which may not be publicly-accessible. Allowing for this, plus tests, design-tweaking would probably take about 4 days of work.