def replay_created_notifications(): # if the notification has not be send after 1 hour, then try to resend. resend_created_notifications_older_than = (60 * 60) for notification_type in (EMAIL_TYPE, SMS_TYPE): notifications_to_resend = notifications_not_yet_sent( resend_created_notifications_older_than, notification_type ) if len(notifications_to_resend) > 0: current_app.logger.info("Sending {} {} notifications " "to the delivery queue because the notification " "status was created.".format(len(notifications_to_resend), notification_type)) for n in notifications_to_resend: send_notification_to_queue(notification=n, research_mode=n.service.research_mode) # if the letter has not be send after an hour, then create a zendesk ticket letters = letters_missing_from_sending_bucket(resend_created_notifications_older_than) if len(letters) > 0: msg = "{} letters were created over an hour ago, " \ "but do not have an updated_at timestamp or billable units. " \ "\n Creating app.celery.letters_pdf_tasks.create_letters tasks to upload letter to S3 " \ "and update notifications for the following notification ids: " \ "\n {}".format(len(letters), [x.id for x in letters]) current_app.logger.info(msg) for letter in letters: get_pdf_for_templated_letter.apply_async([str(letter.id)], queue=QueueNames.CREATE_LETTERS_PDF)
def replay_created_notifications(): # if the notification has not be send after 4 hours + 15 minutes, then try to resend. resend_created_notifications_older_than = (60 * 60 * 4) + (60 * 15) for notification_type in (EMAIL_TYPE, SMS_TYPE): notifications_to_resend = notifications_not_yet_sent( resend_created_notifications_older_than, notification_type ) current_app.logger.info("Sending {} {} notifications " "to the delivery queue because the notification " "status was created.".format(len(notifications_to_resend), notification_type)) for n in notifications_to_resend: send_notification_to_queue(notification=n, research_mode=n.service.research_mode)