---- Reported by rch@liblime.com 2009-05-04 22:05:18 ---- If a user enters a driver into the SMSSendDriver system preference that is not installed on the system, the message queue cron job will exit abnormally when attempting to process sms messages, preventing processing of other messages in the queue. --- Bug imported by chris@bigballofwax.co.nz 2010-05-21 01:07 UTC --- This bug was previously known as _bug_ 3186 at http://bugs.koha.org/cgi-bin/bugzilla3/show_bug.cgi?id=3186 Actual time not defined. Setting to 0.0 The original reporter of this bug does not have an account here. Reassigning to the person who moved it here: chris@bigballofwax.co.nz. Previous reporter was rch@liblime.com.
This also happens when the smsalertnumber is of the following format: 040-12345678(mother) This is caused by the /usr/share/perl5/SMS/Send.pm parent object for sms sending. It tries to validate the number and Croacks the process dead when (mother) is encountered. Luckily verbose mode outputs goog logging info :) Recommending to add a presentation layer validator to OPAC and SC to make sure no mothers are included.
Created attachment 31191 [details] [review] pätch
Created attachment 31192 [details] [review] pätch Fixed an issue with return not working as expected inside an eval-block
Created attachment 31216 [details] [review] Bug 3186 - invalid or uninstalled SMSSendDriver (or bad number format) causes process_message_queue to fail This patch wraps the SMS::Send Driver initialization and sending process into an eval block and gracefully causes the sending to fail, instead of crashing the process and preventing emails and good sms' from being sent. Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz>
Created attachment 31290 [details] [review] [PASSED QA] Bug 3186 [QA Followup] - Don't return undef, just return Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Created attachment 31291 [details] [review] [PASSED QA] Bug 3186 - invalid or uninstalled SMSSendDriver (or bad number format) causes process_message_queue to fail This patch wraps the SMS::Send Driver initialization and sending process into an eval block and gracefully causes the sending to fail, instead of crashing the process and preventing emails and good sms' from being sent. Signed-off-by: Chris Cormack <chris@bigballofwax.co.nz> Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Created attachment 31292 [details] [review] [PASSED QA] Bug 3186 [QA Followup] - Don't return undef, just return Signed-off-by: Kyle M Hall <kyle@bywatersolutions.com>
Patches pushed to master. Thanks Olli!
Must be my lucky week!
Mason, Fridolin, IMO it makes sense to backport this one.
(In reply to Jonathan Druart from comment #10) > Mason, Fridolin, > IMO it makes sense to backport this one. cheers, i'll take a look
(In reply to Mason James from comment #11) > (In reply to Jonathan Druart from comment #10) > > Mason, Fridolin, > > IMO it makes sense to backport this one. > > cheers, i'll take a look Pushed to 3.16.x branch. Patch will be in included in 3.16.8 release
I feel like there are two bugs here - the missing SMS driver, which is patched and the bad number format, which is not. Could we split that out as a separate bug? It would be pretty easy to regex the number before we drop it into the database. I understand that phone numbers are often stored as text, because of hyphens and parentheses, but if stray symbols break the whole overdue notifications process, we might want to strip phone numbers down to the digits.
*** Bug 14611 has been marked as a duplicate of this bug. ***