Changes between Version 2 and Version 3 of TracNotification
- Timestamp:
- Apr 1, 2017, 10:40:26 PM (5 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
TracNotification
v2 v3 9 9 10 10 == Receiving Notification Mails 11 12 11 When reporting a new ticket or adding a comment, enter a valid email address or your Trac username in the ''reporter'', ''assigned to/owner'' or ''cc'' field. Trac will automatically send you an email when changes are made to the ticket, depending on how notification is configured. 13 12 … … 33 32 34 33 === Configuration Options 35 36 These are the available options for the `[notification]` section in `trac.ini`: 37 38 [[TracIni(notification)]] 34 These are the available options for the `[notification]` section in trac.ini: 35 36 [[TracIni(section=notification)]] 39 37 40 38 === Example Configuration (SMTP) 41 42 39 {{{#!ini 43 40 [notification] … … 50 47 51 48 === Example Configuration (`sendmail`) 52 53 49 {{{#!ini 54 50 [notification] … … 61 57 }}} 62 58 59 === Subscriber Configuration 60 The default subscriptions are configured in the `[notification-subscriber]` section in trac.ini: 61 62 [[TracIni(section=notification-subscriber)]] 63 64 Each user can override these defaults in his ''Notifications'' preferences. 65 66 For example to unsubscribe from notifications for one's own changes and comments, the rule "Never notify: I update a ticket" should be added above other subscription rules. 67 68 The subscription rule name on the left side of the `=` can be anything, it has no meaning outside this configuration file. The subscriber name on the right side of the `=` must be one of the subscribers listed in the above table. 69 70 The following attributes of default subscriptions can be configured: 71 * `.distributor` (Default: `email`) 72 * Other values require plugins. For example `on-site` requires th:OnSiteNotificationsPlugin. 73 * `.priority` (Default: `100`) 74 * Smaller values override larger values. 75 * If you use `0`, then users will not be able to override this rule. 76 * `.adverb` (Default: `always`) 77 * `never` can be used to silence other subscription rules with higher values. 78 * `.format` (Default: `text/plain`) 79 * Other values require plugins. For example `text/html` requires th:TracHtmlNotificationPlugin. 80 81 === Example Configuration (default subscriptions) 82 {{{#!ini 83 [notification-subscriber] 84 always_notify_owner = TicketOwnerSubscriber 85 always_notify_owner.distributor = email 86 always_notify_owner.priority = 100 87 always_notify_owner.adverb = always 88 always_notify_owner.format = text/plain 89 90 always_notify_previous_updater = TicketPreviousUpdatersSubscriber 91 92 never_notify_updater = TicketUpdaterSubscriber 93 never_notify_updater.adverb = never 94 never_notify_updater.priority = 0 95 96 notify_cc_html = CarbonCopySubscriber 97 notify_cc_html.format = text/html 98 }}} 99 63 100 === Customizing the e-mail subject 64 65 101 The e-mail subject can be customized with the `ticket_subject_template` option, which contains a [http://genshi.edgewall.org/wiki/Documentation/text-templates.html Genshi text template] snippet. The default value is: 66 {{{ 67 $prefix #$ticket.id: $summary 68 }}} 69 102 {{{#!genshi 103 ${prefix} #${ticket.id}: ${summary} 104 }}} 70 105 The following variables are available in the template: 71 106 … … 73 108 * `prefix`: The prefix defined in `smtp_subject_prefix`. 74 109 * `summary`: The ticket summary, with the old value if the summary was edited. 75 * `ticket`: The ticket model object (see [trac:source:/trunk/trac/ticket/model.py model.py]). Individual ticket fields can be addressed by appending the field name separated by a dot, eg `$ ticket.milestone`.110 * `ticket`: The ticket model object (see [trac:source:/trunk/trac/ticket/model.py model.py]). Individual ticket fields can be addressed by appending the field name separated by a dot, eg `${ticket.milestone}`. 76 111 77 112 === Customizing the e-mail content … … 79 114 The notification e-mail content is generated based on `ticket_notify_email.txt` in `trac/ticket/templates`. You can add your own version of this template by adding a `ticket_notify_email.txt` to the templates directory of your environment. The default looks like this: 80 115 81 {{{ 82 $ ticket_body_hdr83 $ ticket_props116 {{{#!genshi 117 ${ticket_body_hdr} 118 ${ticket_props} 84 119 {% choose ticket.new %}\ 85 120 {% when True %}\ 86 $ ticket.description121 ${ticket.description} 87 122 {% end %}\ 88 123 {% otherwise %}\ … … 90 125 ${_('Changes (by %(author)s):', author=change.author)} 91 126 92 $ changes_body127 ${changes_body} 93 128 {% end %}\ 94 129 {% if changes_descr %}\ … … 96 131 ${_('Description changed by %(author)s:', author=change.author)} 97 132 {% end %}\ 98 $ changes_descr133 ${changes_descr} 99 134 -- 100 135 {% end %}\ … … 103 138 ${changes_body and _('Comment:') or _('Comment (by %(author)s):', author=change.author)} 104 139 105 $ change.comment140 ${change.comment} 106 141 {% end %}\ 107 142 {% end %}\ … … 110 145 -- 111 146 ${_('Ticket URL: <%(link)s>', link=ticket.link)} 112 $ project.name<${project.url or abs_href()}>113 $ project.descr147 ${project.name} <${project.url or abs_href()}> 148 ${project.descr} 114 149 }}} 115 150 116 151 == Sample Email 117 118 152 {{{ 119 153 #42: testing … … 147 181 Replace the following second row in the template: 148 182 {{{ 149 $ ticket_props183 ${ticket_props} 150 184 }}} 151 185 … … 225 259 Alternatively, you can use `smtp_port = 25`.[[br]] 226 260 You should not use `smtp_port = 465`. Doing so may deadlock your ticket submission. Port 465 is reserved for the SMTPS protocol, which is not supported by Trac. See [trac:comment:2:ticket:7107 #7107] for details. 227 228 == Filtering notifications for one's own changes and comments229 230 To delete these notifications in Gmail, use the following filter:231 {{{232 from:(<smtp_from>) (("Reporter: <username>" -Changes -Comment) OR "Changes (by <username>)" OR "Comment (by <username>)")233 }}}234 235 In Thunderbird, there is no such solution if you use IMAP, see http://kb.mozillazine.org/Filters_(Thunderbird)#Filtering_the_message_body.236 237 You can also add this plugin:238 http://trac-hacks.org/wiki/NeverNotifyUpdaterPlugin, or vote for [trac:#2247] to be fixed.239 261 240 262 == Troubleshooting … … 247 269 248 270 Typical error message: 249 {{{ 271 {{{#!sh 250 272 ... 251 273 File ".../smtplib.py", line 303, in connect … … 260 282 telnet localhost 25 261 283 }}} 262 263 284 This is because a regular user may connect to the SMTP server, but the web server cannot: 264 285 {{{#!sh … … 268 289 In such a case, you need to configure your server so that the web server is authorized to post to the SMTP server. The actual settings depend on your Linux distribution and current security policy. You may find help in the Trac [trac:MailingList MailingList] archive. 269 290 270 Relevant mailing list thread on SELinux: http://article.gmane.org/gmane.comp.version-control.subversion.trac.general/7518 291 Relevant ML threads: 292 * SELinux: http://article.gmane.org/gmane.comp.version-control.subversion.trac.general/7518 271 293 272 294 For SELinux in Fedora 10: 273 295 {{{#!sh 274 setsebool -P httpd_can_sendmail 1296 $ setsebool -P httpd_can_sendmail 1 275 297 }}} 276 298