Lines 916-922
sub _get_unsent_messages {
Link Here
|
916 |
|
916 |
|
917 |
my $dbh = C4::Context->dbh(); |
917 |
my $dbh = C4::Context->dbh(); |
918 |
my $statement = << 'ENDSQL'; |
918 |
my $statement = << 'ENDSQL'; |
919 |
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 |
919 |
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 |
920 |
FROM message_queue mq |
920 |
FROM message_queue mq |
921 |
LEFT JOIN borrowers b ON b.borrowernumber = mq.borrowernumber |
921 |
LEFT JOIN borrowers b ON b.borrowernumber = mq.borrowernumber |
922 |
WHERE status = ? |
922 |
WHERE status = ? |
Lines 1024-1029
$content
Link Here
|
1024 |
EOS |
1024 |
EOS |
1025 |
} |
1025 |
} |
1026 |
|
1026 |
|
|
|
1027 |
sub _is_duplicate { |
1028 |
my ( $message ) = @_; |
1029 |
my $dbh = C4::Context->dbh; |
1030 |
my $count = $dbh->selectrow_array(q| |
1031 |
SELECT COUNT(*) |
1032 |
FROM message_queue |
1033 |
WHERE message_transport_type = ? |
1034 |
AND borrowernumber = ? |
1035 |
AND letter_code = ? |
1036 |
AND CAST(time_queued AS date) = CAST(? AS date) |
1037 |
AND status="sent" |
1038 |
|, {}, $message->{message_transport_type}, $message->{borrowernumber}, $message->{letter_code}, $message->{time_queued} ); |
1039 |
return $count; |
1040 |
} |
1041 |
|
1027 |
sub _send_message_by_sms { |
1042 |
sub _send_message_by_sms { |
1028 |
my $message = shift or return; |
1043 |
my $message = shift or return; |
1029 |
my $member = C4::Members::GetMember( 'borrowernumber' => $message->{'borrowernumber'} ); |
1044 |
my $member = C4::Members::GetMember( 'borrowernumber' => $message->{'borrowernumber'} ); |
Lines 1034-1039
sub _send_message_by_sms {
Link Here
|
1034 |
return; |
1049 |
return; |
1035 |
} |
1050 |
} |
1036 |
|
1051 |
|
|
|
1052 |
if ( _is_duplicate( $message ) ) { |
1053 |
_set_message_status( { message_id => $message->{'message_id'}, |
1054 |
status => 'failed' } ); |
1055 |
return; |
1056 |
} |
1057 |
|
1037 |
my $success = C4::SMS->send_sms( { destination => $member->{'smsalertnumber'}, |
1058 |
my $success = C4::SMS->send_sms( { destination => $member->{'smsalertnumber'}, |
1038 |
message => $message->{'content'}, |
1059 |
message => $message->{'content'}, |
1039 |
} ); |
1060 |
} ); |
1040 |
- |
|
|