
    ,:j                     Z    d dl Z d dlZd dlmZ d dlmZ d dlmZ dgZd Z		 	 	 	 	 	 	 ddZ
y)	    N)settings)service_account)Requestz2https://www.googleapis.com/auth/firebase.messagingc                      t         j                  j                  t        j                  t
              } t               }| j                  |       | j                  S )N)scopes)	r   Credentialsfrom_service_account_filer   FIREBASE_CREDENTIALS_PATHSCOPESr   refreshtoken)credentialsrequests     -/var/www/html/HOMYLIO_ADMIN/utils/firebase.pyget_access_tokenr      sM    !--GG** H K
 iG     c	           	         	 t               }	dd|	 d}
i }|r|rt        j                   | d| |d<   |r|j                  |       t	        |       t	        |      d|j                         D ci c]  \  }}|t	        |       c}}dd|rd	nd id
d|rd	ndddiddidd}|r.|j                  d      r|nt        j                  |z   }||d   d<   |r||d<   n|r||d<   ndddS d|i}t        j                  t        j                  |
t        j                  |            }|j                  dk(  |j                  |j                         dS c c}}w # t        $ r}dt	        |      dcY d }~S d }~ww xY w) Nzapplication/jsonzBearer )zContent-TypeAuthorization/link)titlebodyhighsounddefault)prioritynotificationaps    )r   zcontent-availablezapns-priority10)payloadheaders)r   dataandroidapnshttpr   imagetopicr   Fz!Either topic or token is required)successmessager+   )r#   r$      )r*   status_coderesponse)r*   error)r   r   
SERVER_URLupdatestritems
startswithrequestspostFCM_URLjsondumpsr-   	Exception)r   r+   r)   r   sectionreference_idr(   r$   r   access_tokenr#   notification_datakeyvaluemessage_payload	image_urlr"   r.   es                      r   send_notificationrD      s   ^
') /&|n5

 |&&'y,@ f% $$T* UG #4"9"9";C SZ #%YT! .3-. $T
%
@ ))&1((50 
 8AON+G4 ',OG$ ',OG$ !>  
 ==G$
  ++s2#// 
 	
u@  
 V
 	

s8   A.E 0EA#E *A'E E 	E9!E4.E94E9)NNNNNNT)r8   r5   django.confr   google.oauth2r   google.auth.transport.requestsr   r   r   rD    r   r   <module>rI      s@        ) 2 ?	?" 

	
j
r   