
    .i                         d dl Z d dlmZ d dlmZ d dlmZ d dlmZ d dl	m
Z
 d dlmZ  e j                  e      Z edd	d
d      	 	 ddedededededz  dedz  fd       Zy)    N)shared_task)timezone)settings)EmailMessage)get_template)OutboundMessageT      zapps.calls.tasks.email_task)bindmax_retriesdefault_retry_delaynamesubjecthtml_contentrecipient_listkeyfilesbccc                    t         j                  j                  d|rdj                  |      nd|||||xs g |xs g dd      }	 	 t	        |      j                  |      }|d d |j                  d<   |j                  d	g
       t        ||t        j                   dt        j                   d||xs g       }
d|
_        |r|D ]  }|
j#                  |        |
j%                          d|_        t)        j*                         |_        |j                  ddg
       t        j/                  d|       y # t        $ r+}	t        j                  dt        |	             |}Y d }	~	d }	~	ww xY w# t        $ rX}d|_        t        |      |_        |j                  ddg
       t        j3                  d|       | j5                  |      d }~ww xY w)Nemail, )
recipientsr   attachmentspending)channeltor   template_namecontextmessage_payloadstatusi  rendered_previewr    )update_fieldsz"Error rendering email template: %sz <>)r   body
from_emailr   r   htmlsentr!   sent_atzEmail send to %sfailederror_messagezEmail failed to send to %s)exc)r   objectscreatejoinr   renderr    save	Exceptionloggerwarningstrr   r   EMAIL_FROM_HEADER
FROM_EMAILcontent_subtypeattach_filesendr!   r   nowr)   infor+   errorretry)selfr   r   r   r   r   r   deliverymessageemsgfiler,   s                D/var/www/html/dp2/backend_v2.1/server/apps/calls/tasks/email_task.pysend_email_taskrF      s    &&--'5388N#2"(9" ;B

  . H""	#"<077<G;B5D>H$$%78MM):(;M<
 "445R8K8K7LAN	r
 %%  	
 #<<>Xy$9:&7-  	#NN?QH"G	#0  ""!$SX$?@137jjSj!!"s>   ?D9 B1E0 9	E-!E(#E0 (E--E0 0	G9AGG)NN)loggingceleryr   django.utilsr   django.confr   django.core.mailr   django.template.loaderr   apps.appointments.modelsr   	getLogger__name__r3   r5   listdictrF        rE   <module>rT      s      !   ) / 4			8	$ 		&	 "9"9" 9" 	9"
 9" d{9" D[9"9"rS   