I have the following code
from utils import SendSMS
from celery.exceptions import *
@celery.task(bind=True, max_retries=3)
def send_sms(self,sms_list):
failed_items = []
for sms_item in sms_list:
status = SendSMS( **sms_item )
if status in ['Timeout','Error']:
failed_items.append( sms_item )
if len(failed_items) > 0:
raise self.retry(failed_items)
return "sms(s) send successfully."
I want to retry the task but with different data set, with only failed items.
I mean how can I achieve this line:
raise self.retry(failed_items) ?
Thanks in advance.