https://bugs.koha-community.org/bugzilla3/show_bug.cgi?id=40294 --- Comment #17 from Emily Lamancusa (emlam) <emily.lamancusa@montgomerycountymd.gov> --- Created attachment 201382 --> https://bugs.koha-community.org/bugzilla3/attachment.cgi?id=201382&action=edit Bug 40294: Enforce mandatory expiry messages in message queue Enforce that mandatory patron expiry messages will be queued even if the patron does not have a message transport selected (e.g. if expiry notices became mandatory for a patron due to category change or settings change, and their messaging preferences have not been updated yet) If the patron does have at least one transport selected for expiry notices, their selection will be honored. If not, a fallback will be selected depending on which message transports are enabled and what contact information is defined in the patron account. In order of preference, the following transport methods will be considered: 1. email 2. phone 3. sms 4. print To test: 1. Set patron account expiry messages to mandatory for a patron category i. Got to Administration > Patron Categories ii. Click an existing patron category to edit it iii. Under the section, "Account expiry and self-renewal", set "Enforce patron account expiry notice" to Yes iv. Click Save 2. Set the following system preferences: i. Set SMSSendDriver to Email ii. Set PhoneNotification to Enable iii. Set MembershipExpiryDaysNotice to 1 3. Define notice templates for all transport methods of MEMBERSHIP_RENEWED and MEMBERSHIP_EXPIRY i. Go to Tools > Notices and Slips ii. Edit the MEMBERSHIP_RENEWED notice iii. Expand the Phone, Print, and SMS sections iv. Fill in a Message Subject and a Message Body for each tab v. Save the notice template vi. Repeat iii-v for MEMBERSHIP_EXPIRY notice 4. Find or create a patron using the patron category from step 1 5. Edit the patron account and set Expiry date to tomorrow's date 6. Edit the patron's messaging preferences, if necessary, to ensure that nothing is selected for "Patron account expiry" 7. Edit the patron and add the following contact information: i. email address ii. phone number iii. smsalertnumber 8. Run the membership expiry cron job i. ktd --shell ii. perl misc/cronjobs/membership_expiry.pl -c 9. Open the patron's Notices tab --> An email notice should have been queued 10. Edit the patron's messaging preferences and text various settings for the "Patron account expiry" preference and re-run the cron job as in step 6 --> New notices should be queued according to the preference settings 11. Edit the patron's messaging preferences to remove all selections for "Patron account expiry" 12. Edit the patron account and delete all email addresses 13. Run the cron again --> a phone notice should have been queued 14. Repeat with various combinations of system preference settings and contact information values in the patron account --> Ensure that the cron always queues a notice, and does not queue any notices that do not make sense based on system preferences and patron account information -- You are receiving this mail because: You are watching all bug changes.