o
    di                     @   sD   d dl Z d dlZd dlZd dlmZmZ dd Zdd Zdd ZdS )	    N)urlparseparse_qsc              
   C   s   zSt |dC}dddd}tj| ||dd}|jdkr2|jd	k r2td
|   	 W d    W dS td|j d|j  	 W d    W dS 1 sLw   Y  W d S  typ } ztdt	|  W Y d }~dS d }~ww )Nrb	BlockBlobz	audio/wav
2021-06-08)zx-ms-blob-typezContent-Typex-ms-versionF)headersdataverify   i,  u   ✅ Upload successful: TzUpload failed with status : zAzure upload error: )
openrequestsputstatus_codelogginginfoerrortext	Exceptionstr)sas_url	file_pathfr   responsee r   ;/var/www/html/tatsat2dev/post call analysis/azure_upload.pyupload_to_azure_blob   s&   (r   c              
   C   s  zht | }|j d|j |j }t|j}|}|r=g }| D ]\}}|D ]}|| d|  q&q |dd| 7 }ddi}	t	j
||	dd}
|
jd	v rYtd
|  W dS td|
j d|
j  W dS  ty } ztdt|  W Y d}~dS d}~ww )z1Delete file from Azure Blob Storage using SAS URLz://=?&r   r   F)r   r
   )r         u%   ✅ Azure blob deleted successfully: Tu.   ⚠️ Azure blob deletion failed with status r   u   ❌ Azure blob deletion error: N)r   schemenetlocpathr   queryitemsappendjoinr   deleter   r   r   warningr   r   r   r   )r   
parsed_urlbase_urlquery_params
delete_urlparam_pairskeyvaluesvaluer   r   r   r   r   r   delete_from_azure_blob&   s2   

r5   c              
   C   sd   zt | rtd W dS td W dS  ty1 } ztdt|  W Y d}~dS d}~ww )z'Clean up Azure storage after processingu$   🧹 Azure storage cleanup completedu6   ⚠️ Azure storage cleanup failed, but continuing...u!   ❌ Azure storage cleanup error: N)r5   r   r   r,   r   r   r   )r   r   r   r   r   cleanup_azure_storageK   s   "r6   )	r   r   osurllib.parser   r   r   r5   r6   r   r   r   r   <module>   s   %