3 # Copyright 2008 LibLime
5 # This file is part of Koha.
7 # Koha is free software; you can redistribute it and/or modify it
8 # under the terms of the GNU General Public License as published by
9 # the Free Software Foundation; either version 3 of the License, or
10 # (at your option) any later version.
12 # Koha is distributed in the hope that it will be useful, but
13 # WITHOUT ANY WARRANTY; without even the implied warranty of
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 # GNU General Public License for more details.
17 # You should have received a copy of the GNU General Public License
18 # along with Koha; if not, see <http://www.gnu.org/licenses>.
23 # find Koha's Perl modules
24 # test carefully before changing this
26 eval { require "$FindBin::Bin/../kohalib.pl" };
29 use Koha
::Script
-cron
;
44 'u|username:s' => \
$username,
45 'p|password:s' => \
$password,
46 'l|limit:s' => \
$limit,
47 'm|method:s' => \
$method,
49 'v|verbose' => \
$verbose,
51 'c|code:s' => \
$letter_code,
53 my $usage = << 'ENDUSAGE';
55 This script processes the message queue
in the message_queue database
56 table
. It sends out the messages
in that queue
and marks them
57 appropriately to indicate success
or failure
. It is recommended that
58 you run this regularly from cron
, especially
if you are using the
59 advance_notices
.pl script
.
61 This script has the following parameters
:
62 -u
--username
: username of mail account
63 -p
--password
: password of mail account
64 -t
--type
: If supplied
, only processes this type of message
( email
, sms
)
65 -c
--code
: If supplied
, only processes messages with this letter code
66 -l
--limit
: The maximum number of messages to process
for this run
67 -m
--method
: authentication method required by SMTP server
(See perldoc Sendmail
.pm
for supported authentication types
.)
68 -h
--help
: this message
69 -v
--verbose
: provides verbose output to STDOUT
76 if ( C4
::Context
->config("enable_plugins") ) {
77 my @plugins = Koha
::Plugins
->new->GetPlugins({
78 method
=> 'before_send_messages',
82 foreach my $plugin ( @plugins ) {
84 $plugin->before_send_messages();
93 C4
::Letters
::SendQueuedMessages
(
96 username
=> $username,
97 password
=> $password,
101 letter_code
=> $letter_code,