avisota/core

Avisota mailing system core components

1.2.5 2018-06-07 16:18 UTC

This package is auto-updated.

Last update: 2024-10-29 03:37:03 UTC


README

Build Status Latest Version tagged Latest Version on Packagist Installations via composer per month Reference Status

The Avisota core system is a message generation, queue and transport system, based on top of the great Swift Mailer.

Avisota is not designed to replace Swift Miler, but it is designed to manage the pre-ransport process. On the one hand Swift Miler can only handle stateful Swift_Messages. On the other hand Avisota handles stateless MessageInterface's. You can define what a MessageInterface may be: a message template, a stateful message object or even a native Swift_Message.

The following chart shows what you can do with the Avisota messaging system, what in most cases is impossible with Swift Mailer.

------------
| Server 1 | -\
------------   |
               V
         create message
               |                   ------------
               V                   | Server 3 |
        enqueue message            ------------
               |                        |
               V                        V
      store in database on     get messages from queue
               |                        |
               V                        |
          ------------ /----------------/
          | Server 2 |
          ------------ \-----\
                             |
                             V
                     send via smtp (swift)

As you can see, server 1 creates the message and stores it in a queue on server 2. Server 3 reads the messages from server 2 and sends them via SMTP. You can do this even with plain Swift_Message objects, but it will be difficult if you need to work with attachments for example. With your own MessageInterface implementation, you have the full control in your hands.