diff --git a/app/lib/send_automated_message.rb b/app/lib/send_automated_message.rb index 1f510a9b36..f59d57f7d7 100644 --- a/app/lib/send_automated_message.rb +++ b/app/lib/send_automated_message.rb @@ -18,6 +18,7 @@ def message_tracker end def send_messages + return nil if client_without_account? && message.require_client_account? return nil if message_tracker.already_sent? && message.send_only_once? send_email if @do_email @@ -64,4 +65,12 @@ def send_sms sent_messages << sent_message if sent_message.present? end end + + def client_without_account? + return true if @client.nil? || @client.intake.nil? + return true unless Intake::GyrIntake.accessible_intakes.exists?(@client.intake.id) + + login_service = ClientLoginService.new(:gyr) + !login_service.can_login_by_email_verification?(@client.email_address) && !login_service.can_login_by_sms_verification?(@client.sms_phone_number) + end end \ No newline at end of file diff --git a/app/models/automated_message/automated_message.rb b/app/models/automated_message/automated_message.rb index bcff8c7e52..8492accd06 100644 --- a/app/models/automated_message/automated_message.rb +++ b/app/models/automated_message/automated_message.rb @@ -5,5 +5,10 @@ class AutomatedMessage def self.send_only_once? false end + + def self.require_client_account? + false + end + end end \ No newline at end of file diff --git a/app/models/automated_message/closing_soon.rb b/app/models/automated_message/closing_soon.rb index 48e67e7544..cc6862633a 100644 --- a/app/models/automated_message/closing_soon.rb +++ b/app/models/automated_message/closing_soon.rb @@ -9,6 +9,10 @@ def self.send_only_once? true end + def self.require_client_account? + true + end + def sms_body(**args) I18n.t("messages.closing_soon.sms", **args) end diff --git a/app/models/automated_message/first_not_ready_reminder.rb b/app/models/automated_message/first_not_ready_reminder.rb index 2a59f5b0b5..2e9719231d 100644 --- a/app/models/automated_message/first_not_ready_reminder.rb +++ b/app/models/automated_message/first_not_ready_reminder.rb @@ -9,6 +9,10 @@ def self.send_only_once? true end + def self.require_client_account? + true + end + def sms_body(**args) I18n.t("messages.not_ready_reminder.sms", **args) end diff --git a/app/models/automated_message/in_progress.rb b/app/models/automated_message/in_progress.rb index 866683561c..1e56fa574e 100644 --- a/app/models/automated_message/in_progress.rb +++ b/app/models/automated_message/in_progress.rb @@ -26,6 +26,10 @@ def self.send_only_once? true end + def self.require_client_account? + true + end + def sms_body(**args) I18n.t("messages.in_progress.sms.body", **args) end diff --git a/app/models/automated_message/second_not_ready_reminder.rb b/app/models/automated_message/second_not_ready_reminder.rb index 2f30cf78c6..c2c615c54e 100644 --- a/app/models/automated_message/second_not_ready_reminder.rb +++ b/app/models/automated_message/second_not_ready_reminder.rb @@ -1,5 +1,10 @@ module AutomatedMessage class SecondNotReadyReminder < FirstNotReadyReminder + + def self.require_client_account? + true + end + def self.name 'messages.not_ready_second_reminder'.freeze end diff --git a/crontab b/crontab index d9926d7a47..1a1a930736 100644 --- a/crontab +++ b/crontab @@ -8,10 +8,5 @@ */5 * * * * bundle exec rake worker_heartbeat:perform */10 * * * * bundle exec rake efile:poll_and_get_acknowledgments 0 17 * * * bundle exec rake state_file:reminder_to_finish_state_return -0 21 13 4 * bundle exec rake state_file:pre_deadline_reminder -0 21 17 4 * bundle exec rake state_file:post_deadline_reminder -0 21 22 4 * bundle exec rake state_file:post_deadline_reminder -0 21 13 4 * bundle exec rake send_reject_resolution_reminder_notifications:send +0 19 23 4 * bundle exec rake state_file:post_deadline_reminder 0 21 23 4 * bundle exec rake send_reject_resolution_reminder_notifications:send -40 19 12 4 * bundle exec rake send_reject_resolution_reminder_notifications:send -0 11 14 4 * bundle exec rake state_file:send_reminder_apology_message