GSP
Quick Navigator

Search Site

Unix VPS
A - Starter
B - Basic
C - Preferred
D - Commercial
MPS - Dedicated
Previous VPSs
* Sign Up! *

Support
Contact Us
Online Help
Handbooks
Domain Status
Man Pages

FAQ
Virtual Servers
Pricing
Billing
Technical

Network
Facilities
Connectivity
Topology Map

Miscellaneous
Server Agreement
Year 2038
Credits
 

USA Flag

 

 

Man Pages
Sympa::Message::Plugin(3Sympa) sympa 6.2.62 Sympa::Message::Plugin(3Sympa)

Sympa::Message::Plugin - process hooks

    Sympa::Message::Plugin::execute('post_archive', $message);

Sympa::Message::Plugin provides hook mechanism to intervene in processing by Sympa. Each hook may modify objects (messages and so on) or may break ordinary processing.

Notice: Hook mechanism is experimental. Module names and interfaces may be changed in the future.

execute ( HOOK_NAME, MESSAGE, [ KEY => VAL, ... ] )
Process message hook.

Currently, following hooks are supported:
pre_distribute
Message hook. Message had been approved distribution (by scenario or by moderator), however, it has not been decorated (adding custom subject etc.) nor archived yet.
post_archive
Message hook. Message had been archived, however, it has not been distributed to users including digest spool; message has not been signed nor encrypted (if necessary).

First, write your hook module:

  package My::Hook;

  use constant gettext_id => 'My message hook';
  
  sub post_archive {
      my $module  = shift;    # module name: "My::Hook"
      my $name    = shift;    # handler name: "post_archive"
      my $message = shift;    # Message object
      my %options = @_;
  
      # Processing, possiblly changing $message...
  
      # Return suitable result.
      # If unrecoverable error occurred, you may return undef or simply die.
      return 1;
  }
  
  1;

Then activate hook handler in your list config:

  message_hook
    post_archive My::Hook

Sympa::Message::Plugin::FixEncoding - An example module for message hook.

Sympa::Message::Plugin appeared on Sympa 6.2. It was initially written by IKEDA Soji <ikeda@conversion.co.jp>.
2021-04-27 6.2.62

Search for    or go to Top of page |  Section 3 |  Main Index

Powered by GSP Visit the GSP FreeBSD Man Page Interface.
Output converted with ManDoc.