I’m looking for suggestions on how we should approach this - before we start writing any code
Suppose you have a fairly large number of non-master operators responsible for parts of the infrastructure. You’d like to generate e-mail alerts for them when certain conditions are met on the machines they administer. However, there are hardly two non-master operators who would have rights to exactly the same set of machines and the admin rights change frequently - so the list of addressees of the e-mail needs to be generated on the fly. Having a static list wouldn’t be easy to administer.
Given the above what would you suggest as the most efficient way of alerting the right set of people based on “if condition on a machine is true”?
Would you try to do it with BF or does this sound more like an add-on solution?
There really isn’t a way to dynamically choose the email addresses programmatically from the web reports scheduled reporting interface. The best thing I can think to solve your issue is to use the SOAP API:
An alternative/companion to the soap API would be to run a custom executable when a scheduled report is triggered. Instead of using the default emailer you can author your own custom executable that determines who should get the emails, and then sends the emails.
I’m not clear what criteria you plan to use to decide who gets an email, but chances are you might want to use the soap API to feed your executable with the data that determines who should get the emails.
See the web reports guide for more info on using a custom executable to process generated reports. You can also search for “custom executable” here on the forum for some real world examples and further details.