def test_should_get_scheduled_runs_for_contact(self): runnable = DeliveryNodeFactory(contact_person_id=2) contact_person_id = 2 self.assertEqual(Run.has_scheduled_run(contact_person_id), False) run = RunFactory(runnable=runnable) self.assertEqual(Run.has_scheduled_run(contact_person_id), True) run.status = Run.STATUS.completed run.save() self.assertEqual(Run.has_scheduled_run(contact_person_id), False)
def test_should_get_scheduled_runs_for_contact(self): runnable = DeliveryNodeFactory(contact_person_id=2) contact_person_id = 2 self.assertEqual(Run.has_scheduled_run(contact_person_id), False) run = RunFactory(runnable=runnable) self.assertEqual(Run.has_scheduled_run(contact_person_id), True) run.status = Run.STATUS.completed run.save() self.assertEqual(Run.has_scheduled_run(contact_person_id), False)
def schedule_run_directly_for(runnable, run_delay): if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, run_delay) elif settings.RAPIDPRO_LIVE: task = _schedule_run.apply_async(args=[runnable.id], countdown=run_delay) Run.objects.create(scheduled_message_task_id=task.id, runnable=runnable, status=Run.STATUS.scheduled, phone=runnable.contact.phone)
def schedule_run_directly_for(runnable, run_delay): if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, settings.DELIVERY_STATUS_CHECK_DELAY) elif settings.RAPIDPRO_LIVE: logger.info("schedule_run_directly_for:: run_delay=%s" % run_delay) task = _schedule_run.apply_async(args=[runnable.id], countdown=run_delay) Run.objects.create(scheduled_message_task_id=task.id, runnable=runnable, status=Run.STATUS.not_started, phone=runnable.contact.phone)
def _schedule_run_for(self, runnable): if runnable.completed_run() is None: if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, 0) else: contact = runnable.build_contact() task = '231x31231231' Run.objects.create(scheduled_message_task_id=task, runnable=runnable, status=Run.STATUS.scheduled, phone=contact['phone'] if contact else None)
def _schedule_run_for(self, runnable): if runnable.completed_run() is None: if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, 0) else: contact = runnable.build_contact() task = '231x31231231' Run.objects.create(scheduled_message_task_id=task, runnable=runnable, status=Run.STATUS.scheduled, phone=contact['phone'] if contact else None)
def schedule_run_directly_for(runnable, run_delay): if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, run_delay) elif settings.RAPIDPRO_LIVE: task = _schedule_run.apply_async(args=[runnable.id], countdown=run_delay) Run.objects.create(scheduled_message_task_id=task.id, runnable=runnable, status=Run.STATUS.scheduled, phone=runnable.contact.phone)
def schedule_run_directly_for(runnable, run_delay): if Run.has_scheduled_run(runnable.contact_person_id): RunQueue.enqueue(runnable, settings.DELIVERY_STATUS_CHECK_DELAY) elif settings.RAPIDPRO_LIVE: logger.info("schedule_run_directly_for:: run_delay=%s" % run_delay) task = _schedule_run.apply_async(args=[runnable.id], countdown=run_delay) Run.objects.create(scheduled_message_task_id=task.id, runnable=runnable, status=Run.STATUS.not_started, phone=runnable.contact.phone)