Skip to Content.
Sympa Menu

Documentation for Sympa

NAME

Sympa::Internals::Workflow - Overview on workflow of Sympa

DESCRIPTION

Following picture roughly describes interaction among several classes in workflow of Sympa. For more details see documentation on each class.

Message processing

<<archived.pl>>

Archive => [ProcessArchive] => (list archive)

<<bounced.pl>>

Bounce => [ProcessBounce] => Tracking

<<bulk.pl>>

Outgoing => [ProcessOutgoing] => (Mailer)

<<sympa_automatic.pl>>

Automatic => [ProcessAutomatic] => Incoming

<<sympa_msg.pl>>

Digest::Collection => [ProcessDigest]
                                   :
                                   v
                                   *1

                     +-> (reject or ignore)
                    /
                   +---> [DoCommand]
                  /              :
                 /               v
Incoming => [ProcessIncoming]    *2
                 \                              +-> (reject)
                  +-> [DoForward] => (Mailer)  /
                   \                          +-> [ToEditor] => Outgoing
                    +-> [DoMessage]          /
                              \             /---> [ToHeld] => Held
         *3 (CONFIRM)          +-> [AuthorizeMessage]
         :                    /      :      \---> [ToModeration] => Mod.
         v                   /     Topic     \
Held => [ProcessHeld] ------+                 \
                                               +-> [DistributeMessage]
           *3 (DISTRIBUTE)                    /           \
              (REJECT)       +--> (reject)   /             \
               :            /               /               \
               v           /               /                 \
Moderation => [ProcessModeration]         /                   \
                           \             /                     \
                            +---------- +                       \
                                                                 \
                      +-------------------------------------------+
                       \
                       [TransformIncoming]
                         \        :
                          \     Topic
<<wwsympa.fcgi>>           \
                       [ToArchive] => Archive
(list archive)               \
 => [ResendArchive] -- [TransformOutgoing] -+
                               \             \
                       [ToDigest] => Digest   \
                                 \             \
                                  +-------------+-> [ToList] => Outgoing
                                                          :
                           +-> [TransformDigestFinal]    Topic
                          /                 \
<<Template sending>>     /         +------> [ToOutgoing] => Outgoing
                        /         / 
(mail template) => [ProcessTemplate] -----> [ToListmaster] => Listmaster
                      /           \
                      ^            +------> [ToMailer] => (Mailer)
                      |
                      *1

Command processing

                     *2
<<sympa_msg.pl>>     :
                     v
(message) => [ProcessMessage] --+             +-> (reject)
                                 \           /
     *3 (AUTH)                    \         /---> [ToAuth] => Auth
        (DECL)     +-> (decline)   +-> [AuthorizeRequest]
         :        /               /         \---> [ToAuthOwner] => Auth
         v       /               /           \
Auth => [ProcessAuth]           /             \
                 \             /               +-> [DispatchRequest]
                  +-----------+                            \
                             /                      (request handler)
<<wwsympa.fcgi, SOAP>>      /                                :
                           /                                 v
Request::Collection       /                                  *3 
       => [ProcessRequest]

Task processing

<<task_manager.pl>>

Task => [ProcessTask] => Task

Legend

SEE ALSO

sympa_toc(1), Sympa::Internals, Sympa::Spindle, Sympa::Spool.

Top of Page