Version 1.0.0 · Redmine 5.1 and 6 · GPLv2
This manual covers installation, configuration and daily use of the atori plugin Externe Beobachter.
Redmine notifies the watchers of an issue by e-mail, but only people with a Redmine account can watch. The plugin adds external watchers to every issue: any e-mail address, say a customer's or a contractor's, that receives the same notifications as the regular watchers, without an account and without access to Redmine.
Key terms:
What the plugin deliberately does not do: no access to Redmine, no replies by mail, no forwarding of private notes. The address of a Redmine user cannot be an external watcher; such people are regular watchers.
cd /path/to/redmine
unzip at_watcher-1.0.0.zip -d plugins/
bundle exec rake redmine:plugins:migrate NAME=at_watcher RAILS_ENV=production
# restart Redmine
After restart, log in as administrator and open Administration → Plugins. The Externe Beobachter plugin should appear with version 1.0.0.
A Redmine update is harmless for the plugin only if the order is right. Redmine loads every plugin at start-up; if a plugin does not match the new version, the whole instance fails to start until the plugin folder is removed. The data in the plugin tables is never affected.
Rule: every plugin version supports the current and the previous Redmine line (currently 5.1 and 6). Which plugin version is tested with which Redmine version is listed in the compatibility overview on redmine-plugins.atori.de.
Order of operations:
redmine:plugins:migrate, restart) and verify briefly on the old Redmine version. This bridging version runs on both Redmine versions.bundle exec rake redmine:plugins:migrate RAILS_ENV=production again and restart.Fallback when no bridging version exists (for example because the new Redmine requires a newer Ruby):
cd /path/to/redmine
mv plugins/at_watcher ../at_watcher.old # set the folder aside, do NOT migrate
# update Redmine
# unpack the new plugin version into plugins/at_watcher
bundle exec rake redmine:plugins:migrate NAME=at_watcher RAILS_ENV=production
# restart Redmine
The plugin tables stay untouched in the database; the new plugin version brings the schema up to date with its own migrations.
> Never run VERSION=0 as part of an update. Rolling the migrations back > to version 0 drops the plugin tables and with them all plugin data. It > belongs to a final uninstall only (see below).
cd /path/to/redmine
bundle exec rake redmine:plugins:migrate NAME=at_watcher VERSION=0 RAILS_ENV=production
rm -rf plugins/at_watcher
# restart Redmine
The rake task removes the single table the plugin owns (at_watcher_external_watchers). Existing issue data is untouched.
The plugin is enabled per project:
Without the module nothing shows on the issue, and existing external watchers of the project receive no mail.
Two permissions live under Administration → Roles and permissions → External watchers:
| Permission | Effect | Typical role |
|---|---|---|
| View external watchers | See the list of addresses on the issue | Team member |
| Manage external watchers | Add and remove addresses | Project manager |
Manage requires View. Users with neither permission see no trace of external watchers on the issue.
The plugin has no settings of its own. It follows Redmine's Administration → Settings → Email notifications: external watchers get a mail on Issue added and on every event ticked there for issue changes (update, note, status, assignee, priority, target version, attachment). With nothing ticked, nothing goes out to external watchers either.
Sender, subject and layout match Redmine's regular notifications; the mail ends with the reason the address receives it and the unsubscribe link. Links in the mail lead to Redmine and work without an account only in public projects. The content (description, fields, note) is complete in the mail itself.
On the issue, in the sidebar below the watchers, sits the box External watchers. Enter the e-mail address and optionally a name, click Add. The address appears in the list; no confirmation mail is sent, the first mail is the next change of the issue.
Addresses cannot be entered while creating an issue; save the issue first, then add the address.
Click the bin icon next to the address in the list and confirm. The address receives no further mail about this issue.
Every mail ends with an unsubscribe link. It opens a page naming only the address and the issue number; after Unsubscribe the address is removed from the issue. No login is needed. The link is valid for this one address on this one issue only.
The “External watchers” box is missing on the issue. Module enabled in the project? Role with View external watchers? Without the permission and without addresses the box stays away.
The address is refused: “belongs to the Redmine user”. There is a Redmine account for this address. Add the person as a regular watcher so their own notification settings apply.
No mail arrives. First: does an internal watcher get the mail? If not, it is Redmine's mail delivery or the Email notifications settings. Second: was the note private? Third: search log/production.log for AtWatcherMailer; delivery errors are logged there.
The link in the mail asks for a login. The project is not public. External watchers have no access to Redmine; the content is in the mail itself.
Support is included for twelve months from the date of purchase and covers bug reports, configuration questions and compatibility issues.
E-mail: support@atori.de Initial response: within 48 hours on business days.
When reporting issues, please include:
log/production.log, if available