Lines 887-893
sub _get_unsent_messages {
Link Here
|
887 |
|
887 |
|
888 |
my $dbh = C4::Context->dbh(); |
888 |
my $dbh = C4::Context->dbh(); |
889 |
my $statement = << 'ENDSQL'; |
889 |
my $statement = << 'ENDSQL'; |
890 |
SELECT mq.message_id, mq.borrowernumber, mq.subject, mq.content, mq.message_transport_type, mq.status, mq.time_queued, mq.from_address, mq.to_address, mq.content_type, b.branchcode |
890 |
SELECT mq.message_id, mq.borrowernumber, mq.subject, mq.content, mq.message_transport_type, mq.status, mq.time_queued, mq.from_address, mq.to_address, mq.content_type, b.branchcode, mq.letter_code |
891 |
FROM message_queue mq |
891 |
FROM message_queue mq |
892 |
LEFT JOIN borrowers b ON b.borrowernumber = mq.borrowernumber |
892 |
LEFT JOIN borrowers b ON b.borrowernumber = mq.borrowernumber |
893 |
WHERE status = ? |
893 |
WHERE status = ? |
Lines 995-1000
$content
Link Here
|
995 |
EOS |
995 |
EOS |
996 |
} |
996 |
} |
997 |
|
997 |
|
|
|
998 |
sub _is_duplicate { |
999 |
my ( $message ) = @_; |
1000 |
my $dbh = C4::Context->dbh; |
1001 |
my $count = $dbh->selectrow_array(q| |
1002 |
SELECT COUNT(*) |
1003 |
FROM message_queue |
1004 |
WHERE message_transport_type = ? |
1005 |
AND borrowernumber = ? |
1006 |
AND letter_code = ? |
1007 |
AND CAST(time_queued AS date) = CAST(? AS date) |
1008 |
AND status="sent" |
1009 |
|, {}, $message->{message_transport_type}, $message->{borrowernumber}, $message->{letter_code}, $message->{time_queued} ); |
1010 |
return $count; |
1011 |
} |
1012 |
|
998 |
sub _send_message_by_sms { |
1013 |
sub _send_message_by_sms { |
999 |
my $message = shift or return; |
1014 |
my $message = shift or return; |
1000 |
my $member = C4::Members::GetMember( 'borrowernumber' => $message->{'borrowernumber'} ); |
1015 |
my $member = C4::Members::GetMember( 'borrowernumber' => $message->{'borrowernumber'} ); |
Lines 1005-1010
sub _send_message_by_sms {
Link Here
|
1005 |
return; |
1020 |
return; |
1006 |
} |
1021 |
} |
1007 |
|
1022 |
|
|
|
1023 |
if ( _is_duplicate( $message ) ) { |
1024 |
_set_message_status( { message_id => $message->{'message_id'}, |
1025 |
status => 'failed' } ); |
1026 |
return; |
1027 |
} |
1028 |
|
1008 |
my $success = C4::SMS->send_sms( { destination => $member->{'smsalertnumber'}, |
1029 |
my $success = C4::SMS->send_sms( { destination => $member->{'smsalertnumber'}, |
1009 |
message => $message->{'content'}, |
1030 |
message => $message->{'content'}, |
1010 |
} ); |
1031 |
} ); |
1011 |
- |
|
|