This module allows you to send mass messages to users. To compose and select recipients the Views module is used. This allows complex selection queries setup by a administrator. The mapping of the view fields and the subject, recipient, message body and the attachments is done in the view. To send a message the view plus the arguments of the view are put into a queue. The cron does then send the messages in the background.
By default there is only a Rules action, but other modules can use the API to add Views to the queue. The implementation of the module ensures that the messages are delivered exactly once. It is reliable. We work with transactions. The message can be send by default only trough e-mail. The implementation allows to extend this and add other deliverable methods.