
    {SiF                     4   d dl Z d dlZd dlZd dlZd dlZd dlmZ e j        	                    ej        
                    ej                            ej                            e          d                               d dlmZ d dlmZmZmZmZmZmZmZmZmZmZmZmZ d dlmZmZm Z m!Z!m"Z"m#Z#m$Z$m%Z% d dl&m'Z'm(Z(m)Z)m*Z* d dl+T d	 Z,d
 Z-d Z.d Z/ ej0        d          de1de2de3de2de2de3de3de3fd            Z4 ej0        d          de1fd            Z5dS )    N)Clientz..)app)TELEGRAM_APISOFTSUB_DIR	THUMB_DIRMOVIEO_TELEGRAM_API
MOVIEO_CLIHARDSUB_DIRAPI_IDAPI_HASHPREMIUM_SESSIONBOT_IDSUDO
DUBBED_DIR)identify_encoder_and_releaseidentify_qualityidentify_seasonsidentify_episodes	concat_wslog_requestsend_requestupload_video)MovieoDatabaseRedisDatabaseYOUR_REQUEST_ADDEDYOUR_REQUEST_CLOSED)*c                  J    t          dt          t          t          dd          S )Npremium_uploaderT)api_idapi_hashsession_string	in_memoryipv6)r   r   r   r        9/var/www/html/auto_sub_bot/celery_tasks/tasks/uploader.py
get_clientr(      s+    &   r&   c           
         K   t                      4 d {V } |j        || ||||d           d {V }|j        cd d d           d {V  S # 1 d {V swxY w Y   d S )NT)chat_idvideo	file_namethumbdurationcaptionsupports_streaming)r(   
send_videoid)	file_path
thumb_pathr,   secr*   r/   r   ress           r'   upload_video_via_userbotr7      s     || 
 
 
 
 
 
 
s"CN#
 
 
 
 
 
 
 
 
 v
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s   $A
AAc                    K   t                      4 d {V } |j        || ||           d {V }|j        cd d d           d {V  S # 1 d {V swxY w Y   d S )N)r*   documentr,   r/   )r(   send_documentr2   )r3   r,   r*   r/   r   r6   s         r'   upload_document_via_userbotr;   &   s     ||       s%C%	
 
 
 
 
 
 
 
 
 v                             s   !A
AAc                    K   t                      4 d {V } |j        ||| |           d {V  d d d           d {V  d S # 1 d {V swxY w Y   d S )N)r*   from_chat_id
message_idr/   )r(   copy_message)r>   
to_chat_idr=   r/   r   s        r'   copy_message_via_userbotrA   1   s     || 
 
 
 
 
 
 
sc%!	
 
 
 	
 	
 	
 	
 	
 	
 	

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
s   A
AAuploads)queuesecond_step_res
request_idrequest_type_strtitle_id
title_type
title_namer,   file_idc                 ~   | d         }|r?| d         }	| d         }
	 | d         }n	#  d }Y nxY w| d         }| d         }| d         }| d         }d	|v rt           }nd
|v rt          }nt          }t          d| | d|	 d|
 d           t          d           t          j                            | |           }|dz  }d}|dk    rt          | | d          5 }t          t          d          5 }||f|d}|
||dd}t          |	d|||          }d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   |d         d         d         }n|dk    r|dk    r	 t          j                    }n7# t          $ r* t          j                    }t          j        |           Y nw xY w|r>d|
 d| }|                    t!          | | t          ||t"          |                     ne|r1|                    t!          | | t          ||||                    }n0|                    t!          | | t          |||
|                    }d}d}nt%                      5 }|                    d|d          }d d d            n# 1 swxY w Y   |d          d          }|d!k    r=t)          |d!          \  }} }|t+          ||          d"}t-          t.          d#|           t1                       t          t           t2          t4          t          fD ]O}t	          j        |          D ]8}!||!v r2t	          j        t          j                            ||!                     9P|d k    rd S |r|s(t<          d          ||dd$}t-          t>          d|           t%                      5 }|                    d|d%          }d d d            n# 1 swxY w Y   |d          d          }"|d          d&         }#|d          d'         }|d k    rtA          d(||"d&|#           }$tC          j"        |$#                    d)                    $                                %                                }%t%                      5 }|&                    |dd&           |'                    |dd&           |(                    d*|%dd+          }&d d d            n# 1 swxY w Y   |&d          d          }'d,| d|# }tR          |'|d-}t-          t.          d.|           d S d S |d/k    rd0}(d'})n |d1k    rd0}(d2})n|d3k    rd4}(d!})n
|d5k    rd4}(d6})|d&k    rJd }*tU          |          \  }+},tW          |          \  }-}.|-tY                      k    rd7|- }-|.tY                      k    rd7|. }.|+rd8|, |- |. d7|( }/tZ          j.        /                    |/          }/d7                    d9 |,0                                |-0                                |.0                                fD                       }#tA          d(|d |)|#           }$tC          j"        |$#                    d)                    $                                %                                }%t%                      5 }|(                    d*|%          }&d d d            n# 1 swxY w Y   |&sd:| d|, d|-0                                 d|.0                                 d|/ d|) d| }|s#tR          ||d;}t-          t.          d|          }nK	 t          j                    }n7# t          $ r* t          j                    }t          j        |           Y nw xY w|                    tc          |d<|
|                     nte          |          }*tg          |          \  }+}0}1|+r|*d=k     rDtZ          j.        /                    d8|4                    d>          d           d?|* |0 d7|(           }/nCtZ          j.        /                    d8|4                    d>          d           d@|* |0 d7|(           }/tU          |          \  }+},tW          |          \  }-}.|-tY                      k    rd7|- }-|.tY                      k    rd7|. }.|+rd7                    dA |,0                                |-0                                |.0                                fD                       }#tA          d(||*|)|#           }$tC          j"        |$#                    d)                    $                                %                                }%t%                      5 }|(                    d*|%dB|1 dCD          }&d d d            n# 1 swxY w Y   |&sdE| d|, d|-0                                 d|.0                                 d|/ d|1 d|* d|) d| }|s"tR          ||d;}t-          t.          d|           nq	 t          j                    }n7# t          $ r* t          j                    }t          j        |           Y nw xY w|                    tc          |d<|
|                     t          dF           dG| }2dH| }3tk                      5 }4|46                    |2          }5|5d k    rt          d|5 dI           ny|47                    |3          rt          dJ           nT|48                    |3dK           t)          |d'          \  }} }|ts          |||           d"}t-          t.          d#|           d d d            d S # 1 swxY w Y   d S t%                      5 }|                    d|d%          }d d d            n# 1 swxY w Y   |d          d          }"|d          d&         }#|d          d'         }|d k    rtA          d(||"d&|#           }$tC          j"        |$#                    d)                    $                                %                                }%t%                      5 }|&                    |dd&           |'                    |dd&           |(                    d*|%dd+          }&d d d            n# 1 swxY w Y   |&d          d          }'d,| d|# }tR          |'|d-}t-          t.          d.|           d S d S )LNstatusapi_urluser_idusernameadmin_reviewserver_file_namer.   r/   SoftSubHardSubz
**********************
--- z have to send to z and z! user id  
**********************U
**********************
--- uploading file to the telegram... 
**********************   F  rb)r+   r-   T)r*   r.   r/   r0   	sendVideoresultr+   rJ     zsend to,,Noner2   r      )r*   textsendMessage)r*   r+   r/   r0   zseason,files,status      |zutf-8combo_hash_sha256zORDER BY RAND() LIMIT 1zcompress_video,r*   r9   r/   sendDocumentzPersian SoftSubz
(Soft Sub)zEnglish SoftSub   zPersian HardSubz
(Hard Sub)zEnglish HardSub    u   📥 c                     g | ]}||S r%   r%   .0ps     r'   
<listcomp>z3upload_video_and_submit_request.<locals>.<listcomp>   s    "l"l"ljk"l1"l"l"lr&   ARCHIVE_MOVIE,)r*   r+   r/   @amin_morty
   (S0Sc                     g | ]}||S r%   r%   rj   s     r'   rm   z3upload_video_and_submit_request.<locals>.<listcomp>   s    &p&p&pQno&pq&p&p&pr&   z
AND ep = "")orderARCHIVE_SERIES,ze
**********************
--- considering the possibility of submit the request 
**********************zrequest:active:zrequest:lock:z3 tasks of request has left! 
**********************zL
**********************
--- request already handled. 
**********************1):r   r
   r   printospathgetsizeopenr   r   asyncioget_event_loopRuntimeErrornew_event_loopset_event_looprun_until_completer7   r   r   get_users_requestsr   r   r   r   exitDOWNLOAD_DIRSUBTITLE_DIRlistdirremovejoinr   r   r   hashlibsha256encode	hexdigestupperupdate_admins_requestsupdate_users_requests	get_filesr	   r   r   strurllibparsequotestriprA   r   r   splitr   decrgetsetr   )6rD   rE   rF   rG   rH   rI   r,   rJ   rL   rM   rN   rO   admin_review_requiredrQ   r5   r/   folderfile_size_bytes	file_sizeupload_with_userbot
video_filer-   filesdatar6   movieo_file_idloopuserbot_message_iddbuser_request_dbrequest_statusr*   	movieo_idfilenameseasonquouter_concat
combo_hashfile_dbfilefile_type_str	file_typese
permissionqualityrelease_typeencoderbtnepisodesep_scounter_keylock_keyr	remainings6                                                         r'   upload_video_and_submit_requestr   :   s   X&F `D!),!),	&z2HH	HHH / ?*+=>j)!),((( FF*** FFF  Mv  My  M  MSZ  M  Mah  M  M  M  	N  	N  	Nijjj'//V*G5E*G*GHH#y1	#3!133T:: Qj$yZ^J_J_ Qch#,j"9EJJ& #&*.	  #7KuiPPQ Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q Q !]73I>NN)t"3"3--// - - --//&t,,,,,- % (8W88w88''(@FA^L\A^A^`iktvy  |B  DK  )L  )L  M  M  M  M g)-)@)@AY]cZweuZwZw  zC  EN  PS  U]  _f  Bg  Bg  *h  *h&&)-)@)@AY]cZweuZwZw  zC  EN  PS  U\  ^e  Bf  Bf  *g  *g&!'"&!! RR"$"7"7Z"Q"QR R R R R R R R R R R R R R R,Q/2N""1<Z1K1K.J&/0@*MM  0-FFFFFF"K|ZX 	> 	>FJv.. > >h&&Ibgll68<<===> !D((D" B	K& >#Aw+&*.	  \;===!! aR"$"7"7jJ_"`"`a a a a a a a a a a a a a a a$Q'*F #A&B,Q/2N""(hb7KK$^L,?,?,H,HIISSUU[[]]
#%% s--j(AFFF,,Z1EEE ll+>
IWqrrGs s s s s s s s s s s s s s s qz!}=J====) $& 
 0.$GGGGG #"   #444 ,		!%666 ,		!%666 ,		!%666 ,	Q&6y&A&A#
G(DY(O(O%g355((#5|#5#5Lcee##+'mmG CR'R<RRR=RRC ,,,S11C"l"lw}}@R@R@T@TV]VcVcVeVe.f"l"l"lmmB#,S(D)PRW#U#UL!(0C0CG0L0L!M!M!W!W!Y!Y!_!_!a!aJ')) PR"$,,/BJ"O"OP P P P P P P P P P P P P P P" C #T8  #T  #Tg  #T  #THZHZH\H\  #T  #T_f_l_l_n_n  #T  #Tqt  #T  #T  xA  #T  #T  DR  #T  #T2 C+5)7+2$ $D
 #//BKQU"V"VCC='.'='?'?#/ = = ='.'='?'? ' 6t < < < < <= !334LM_anpw  zA  5B  5B  C  C  C%i00->y-I-I*
Hd  GBww$l001s9I9I#9N9Nq9Q1s1sUW1sYa1s1sdq1s1stt$l001r9I9I#9N9Nq9Q1r1rTV1rX`1r1rcp1r1rss*:9*E*E'J,H,S,S)L'#suu,,'9<'9'9#%%''"/g--! G XX&p&p7==??LDVDVDXDXZaZgZgZiZi2j&p&p&pqq'0hIRTw'W'W%,^L4G4G4P4P%Q%Q%[%[%]%]%c%c%e%e
+-- p&(ll3F
ZngkZnZnZnl&o&oGp p p p p p p p p p p p p p p& G 'e  'e  'e7  'e  'e\M_M_MaMa  'e  'edkdqdqdsds  'e  'evy  'e  'e  }A  'e  'e  DF  'e  'e  IR  'e  'e  Uc  'e  'eG#6 G/9-;/6(" ("
 !--@+t T T T T!A+2+A+C+CDD'3 !A !A !A+2+A+C+CD$+$:4$@$@$@$@$@!A !% 7 78PQcert{  ~E  9F  9F  !G  !G  !G }~~~8J88K3z33H KAFF;//	q==z9zzz{{{{UU8__ 	KlmmmmEE(C(((5@Q5O5O2GY
#* 2:z9 U U D !!4mTJJJK K K K K K K K K K K K K K K K K K   	] 33D*F[\\O	] 	] 	] 	] 	] 	] 	] 	] 	] 	] 	] 	] 	] 	] 	] #A&Q"(+A.Q$S(FA"wGGL (;(;G(D(DEEOOQQWWYYJ!! oR))*hBBB((XqAAA,,':J	Smnno o o o o o o o o o o o o o o 1:a=D9
99R99G% " D
 ,ndCCCCC s  & ,D72"D D7 D$	$D7'D$	(D77D;>D;%E9 91F-,F-&J

JJ'OOO4ASSSZ))Z-0Z-\+ +1]]e>>ff1h 1h98h9B)l>>mmm==nn&Aq99q= q=upload_datac                    | d         }|r| d         }| d         }	 | d         }n	#  d }Y nxY w| d         }| d         }| d         }	 |D ]}|                                 D ]z\  }	}
|	                    d          d	         }|
d
         }|
d         }|
d         }|
d         }|
d         }|
d         }t          d           t          j                            |	           }|dz  }d}|dk    r\t          |	 d          5 }d||fi}||d}t          |d|||          }d d d            n# 1 swxY w Y   |d         d         d         }n|dk    r|dk     r	 t          j	                    }n7# t          $ r* t          j                    }t          j        |           Y nw xY w|r'|                    t          |	 |||                    }n&|                    t          |	 |||                    }d}d}|r|dk    rd| d| d| d| d| dd d| }nd | d| d| d| d| d| d| dd d| }|s"t          ||d!}t!          t"          d|           nq	 t          j	                    }n7# t          $ r* t          j                    }t          j        |           Y nw xY w|                    t%          |d"||                     t          j        |	           || S #  ddicY S xY wddiS )#NrL   rM   rN   rO   upload_listrG   rH   /r   r   r   r   r   episoderT   rU   FrV   rW   r9   )r*   r/   re   rY   rJ   rZ   r\   Tr`   rn   r[   rw   rd   ro   )itemsr   ry   rz   r{   r|   r}   r   r~   r   r   r   r   r   r;   r	   r   r   rA   r   )r   rL   rM   rN   rO   r   rG   rH   itemr3   infor,   r   r   r   r   r   r   r   r   r   r   r   r   r6   r   r   r   r/   s                                r'   upload_documentr     s   "F H!i(i(	":.HH	HHH!-0z* .
<	%# 8) 8)'+zz|| 7) 7)OIt ) 4 4R 8Iu+C"9oG#'#7L"9oGhB	?Duvvv&(goon&E&EO /9 =I*/' D((!Y.$77 `:%/)Z1H$IE+2+4$ $D #/weU^"_"_C` ` ` ` ` ` ` ` ` ` ` ` ` ` ` *-Xz)B9)M"T))i$.>.>9#*#9#;#;DD+ 9 9 9#*#9#;#;D#24888889 $ U151H1HIdhqesu~  AI  KT  JU  JU  2V  2V..151H1HIdhqesu~  AH  JS  JT  JT  2U  2U.)/.2+ C%??&x&&'&&L&&[b&&eh&&kl&&o}&&GG 'M  'M  'M7  'M  'M\  'M  'M\c  'M  'Mfi  'M  'Mlp  'M  'Msu  'M  'Mxy  'M  'M  }K  'M  'MG2 C+5,:+2$ $D
 ))<ndSSSS='.'='?'?#/ = = ='.'='?'? ' 6t < < < < <= !334LM_anpw  zA  5B  5B  C  C  CIi((((o7)p 	%e$$$$%  s   & ,B7K! ?D*K! *D..K! 1D.2$K! E+*K! +1FK! FB7K! I+*K! +1JK! JAK! !K))6sysrz   r~   urllib.parser   r   	hydrogramr   r{   appendabspathr   dirname__file__celery_tasks.celeryr   configr   r   r   r   r	   r
   r   r   r   r   r   r   base.utils.funcsr   r   r   r   r   r   r   r   
base.utilsr   r   r   r   base.utils.subtitle_editorr(   r7   r;   rA   taskdictintr   r   r   r%   r&   r'   <module>r      s   



 				             RW__X-F-F M MNN O O O # # # # # #M M M M M M M M M M M M M M M M M M M M M M M M M M M M ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^  ^ Z Z Z Z Z Z Z Z Z Z Z Z ( ( ( (      
 
 
 
	bDT bDs bD^a bDmp bD  B bD  PS bD  `c bD  nq bD bD bD bDH 
	J! J! J! J! J! J! J!r&   