
    h                     ,    d dl Z d dlmZ  G d d      Zy)    N)settingsc                   $    e Zd Zd Zd Zd Zd Zy)StorageServicec                 ^    |j                   j                  d      }d|j                   d| dS )Nz%Y%m%d_%H%M%Scall_recording__z.mp3)
created_atstrftimecall_id)selfcallcreated_at_strs      L/var/www/html/dp2/backend_v2.1/server/apps/calls/services/storage_service.pybuild_call_audio_filenamez(StorageService.build_call_audio_filename   s0    11/B a/?tDD    c                     t         j                  j                  d|      }t         j                  j                  t        j                  |      }||fS )Ncall_recordings)ospathjoinr   
MEDIA_ROOT)r   filenamerelative_pathabsolute_paths       r   call_recording_local_pathz(StorageService.call_recording_local_path
   s<    %6AX%8%8-Hm++r   c                 f    |j                  t        j                  |z         j                  dd      S )Nzhttp://zhttps://)build_absolute_urir   	MEDIA_URLreplace)r   requestr   s      r   call_recording_public_urlz(StorageService.call_recording_public_url   s-    ))(*<*<}*LMUUV_akllr   c                     t        j                  t         j                  j                  |      d       t	        |d      5 }|j                  d      D ]  }|j                  |        	 d d d        y # 1 sw Y   y xY w)NT)exist_okwbi    )
chunk_size)r   makedirsr   dirnameopeniter_contentwrite)r   filepathresponse_streamfchunks        r   save_call_recording_streamz)StorageService.save_call_recording_stream   sY    
BGGOOH-=(D!Q(555F G "!!s   )A44A=N)__name__
__module____qualname__r   r   r!   r/    r   r   r   r      s    E,
mr   r   )r   django.confr   r   r3   r   r   <module>r5      s    	   r   