1 BugzillaMailHandler.pl is a script that takes in mail from a
2 Bugzilla installation and possibly reports information about that
3 mail to specified channels.
5 Basically, with BugzillaMailHandler.pl, you can use MozBot to inform
6 you about updates to bugs. For the Bugzilla project, we use this to
7 inform us whenever a bug is filed, whenever an attachment is added,
8 and whenever a bug is fixed. We also have it let us know about certain
9 flags, so that we can go handle those flags quickly.
11 To use BugzillaMailHandler.pl:
13 1) Start mozbot, and load the Bugzilla.bm module.
15 2) Set up your MTA (sendmail, postfix, exim, qmail, etc.) to pipe all
16 mail coming to a certain address into the script instead of a local
19 Your MTA must be able to write to files owned by the user that mozbot
20 is running as. For example, on my local system, my mozbot is run
21 as a user called "mozbot." I run postfix, so I have postfix become
22 the "mozbot" user before running BugzillaMailHandler.pl.
24 3) Now, all bugmail coming in to BugzillaMailHandler will start producing
25 input in BotModules/.bugmail.log (a hidden file). Mail that isn't in
26 the standard Bugzilla format will be discarded. Mails that just have
27 comments, or just inform that a dependency has been RESOLVED will be
30 4) Now, you need to tell your bot to start reporting certain Bugzilla
31 Products to certain channels. In the future, there will be a command
32 for this, but for now you have to do it manually. There is a variable
33 in the Bugzilla module called "productReportChannels." It's a hash --
34 the keys are names of products, and the values are comma-separated
37 5) Once you set that variable, your mozbot will start reporting changes
38 to the specified products, in the specified channels.
40 However, it won't report *all* changes -- it will only report the
41 changes to fields that are specified in the "reportFields" variable,
42 which is a list of fields. Most fields have the *name that they would
43 have in a Bugzilla email*, in the "What" column of the table where
44 the mail shows bug changes.
46 There are some special fields:
48 Attachment Flag - Any attachment flag change.
49 NewBug - When a new bug is filed.
50 NewAttach - When a new attachment is posted to a bug.
52 Now, your mozbot should be up and running and reporting the changes
58 There are a few other features that you can use to fine-tune how MozBot
59 reports bug changes. First, anybody (not just a bot admin) can tell the
60 bot to temporarily stop reporting changes from a certain Bugzilla user:
62 ignore user@domain.com
64 And to turn back on notifications about that user:
66 unignore user@domain.com
68 There are also some variables you can use to configure how mozbot reports
69 changes, and what changes he reports:
71 channelMuteFields - A hash, where the key is the name of a channel, and
72 the value is a comma-separated list of Fields, just
73 like they would show up in the reportFields var.
74 Changes to these fields will *not* be reported in
75 the specified channels, but will still be reported
76 in the other channels mozbot is configured to announce
79 productMuteFields - A hash, where the key is the name of a Product in
80 Bugzilla, and the value is a comma-separated list
81 of Fields, just like they would show up in the
83 Changes to the specified Fields on the specified
84 products will not be reported to any channel, ever.
86 updateDelay - How often mozbot checks for information in the
87 .bugmail.log file. Usually you can keep this at the
88 default, unless you want to increase it for some reason.
90 Questions about this functionality can be asked in #mozwebtools on