Tags:
create new tag
, view all tags

Feature Proposals » Notify another TWiki user per Mail when a topic is changed

Summary

Current State: Developer: Reason: Date: Concerns By: Bug Tracking: Proposed For:
ImplementedAsExtension   None        

Edit Form

TopicSummary:
CurrentState:
CommittedDeveloper:
ReasonForDecision:
DateOfCommitment:   Format: YYYY-MM-DD
ConcernRaisedBy:
BugTracking:
OutstandingIssues:
RelatedTopics:
InterestedParties:
ProposedFor:
TWikiContributors:
 

Motivation

A colleague of mine informed me about a Jira feature which has been in use in their workgroup: When an issue is created or edited, the author can cause a mail to be sent to the person to whom she wants to assign the issue. In webs with high activity, the usual notification mechanisms aren't very well targeted; the assignee might easily overlook the issue (if he is monitoring some notification mechanism at all). The author of the issue can just sit, wait and hope. Manually sending a mail pointing to the issue is a workaround, but not very convenient.

Description and Documentation

In some workflows, in particular with bug tracking, an author knows who could take care for an issue and wants this person to be notified. So the requirements are:

  1. Easy to add "notify these people" feature while editing
  2. The notification should contain a link to the topic
  3. This should be possible not only on topic creation, but also later in the process, e.g. when a bugfix is handed over to QA for approval, or when an issue needs to be forwarded to someone else.
  4. Notification should, of course, not be triggered by every view after save

So far, I've found quite a few features of TWiki and its plugins, none of them fit all the requirements:

  • SendMailPlugin comes close, but seems cumbersome for requirement #3. The elegant expandvariables mechanism which makes sure that the SENDMAIL macro magically disappears after first use only works on topic creation. Of course, one could write some JavaScript and use the rest interface, but this isn't trivial.
  • WorkflowPlugin is too strict. We want everyone to be able to contribute, there's just one person (or group) which has the "responsible" flag.
  • A plain TWiki solution would be to use a form field for "assigned to", and write a SEARCH that lists all topics which are assigned to the current user (the Bugs web has examples for this). The problem is that the topic containing the SEARCH itself doesn't change and triggers nothing, the user needs to actively view the topic.
  • IfThenActionPlugin could be used to add a line to someone's YourOpenIssues topic (similar to the WatchList), or just to touch the search from the previous idea, and this topic could be added to WebNotify. However, nobody wants to receive extra mails whenever he has done his job and assigned the issue to someone else.
  • Combining two ideas, IfThenPlugin could be used with an action of view for a target containing a SENDMAIL variable. Is it possible to pass URLPARAMs to the target topic?
  • Another almost close match: Use IfThenPlugin with an if-action save and a then-action email, constructing the To address from USERINFO{"FORMFIELD{"AssignedTo"}" format="emails"}. But the emails are only available for admins, and this sends extra mails every time when someone changes the topic but not the AssignedTo form field.
  • Or two then-actions on the same topic/ if-action: One to send the email, the other to clear the form field. Hm... Could be that I, while writing this lengthy text, have found an acceptable solution (spare the non-availability of other people's emails)?

Given so many near misses, I am concerned about lack orthogonality of features if we create something new. I am still not without hope that I've overlooked something!

Examples

The UI could look like in the following examples:


Assigned to: (or an option list from a search) Notify?


 %NOTIFY{SomeUser}%

...to be replaced during save by a plugin with SomeUser plus a tooltip confirming that the mail was sent.


Impact

WhatDoesItAffect: Workflow, Plugins

Implementation

-- Contributors: Harald Jörg - 2016-06-30

Discussion

As I am aware now, I have overlooked some features of IfThenActionPlugin, in particular the possibility to have TWiki variables in the "source" column. Therefore this is not a topic for the TWiki core. The last of the alternatives just works: Have two actions on the same save action, one to send the mail and another to reset the form field to make sure that the mail is only set once. Therefore it is now categorized as "implemented as extension". Having a Jira-like markup would need an extension because it needs some place to store whether an email has been sent.

-- Harald Jörg - 2016-07-07

Edit | Attach | Watch | Print version | History: r2 < r1 | Backlinks | Raw View | Raw edit | More topic actions
Topic revision: r2 - 2016-07-07 - HaraldJoerg
 
  • Learn about TWiki  
  • Download TWiki
This site is powered by the TWiki collaboration platform Powered by Perl Hosted by OICcam.com Ideas, requests, problems regarding TWiki? Send feedback. Ask community in the support forum.
Copyright © 1999-2017 by the contributing authors. All material on this collaboration platform is the property of the contributing authors.