
    Ği!                         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 ddlmZ  G d de          Z G d de          Zd	S )
   )InfoExtractor   )	UnsupportedErrorfloat_or_noneint_or_nonejoin_nonemptyjwt_decode_hs256mimetype2extparse_iso8601parse_qsurl_or_none)traverse_objc                       e Zd ZdZdddddddd	d
diddddddddddddddddddddd
didddddd dd!d"d#ddd$ddd%d&d'd(d&d'd)d&d'd*d&d'gZd/d-Zd. Zd+S )0BlackboardCollaborateIEa,  (?x)
                        https?://
                        (?P<region>[a-z]+)(?:-lti)?\.bbcollab\.com/
                        (?:
                            collab/ui/session/playback/load|
                            recording
                        )/
                        (?P<id>[^/?#]+)z\https://us-lti.bbcollab.com/collab/ui/session/playback/load/0a633b6a88824deb8c918f470b22b256 bb7a055682ee4f25fdb5838cdf014541 0a633b6a88824deb8c918f470b22b256zAHESI A2 Information Session - Thursday, May 6, 2021 - recording_1mp4ih  iR`20210506	live_chatz
mincount:1)idtitleextduration	timestampupload_date	subtitles)urlmd5	info_dictzXhttps://eu.bbcollab.com/collab/ui/session/playback/load/4bde2dee104f40289a10f8e554270600 108db6a8f83dcb0c2a07793649581865 4bde2dee104f40289a10f8e554270600z$Meeting - Azerbaycanca erize formasiip  i"c20221216)r   r   r   r   r   r   zBhttps://eu.bbcollab.com/recording/f83be390ecff46c0bf7dccb9dddcf5f6 e3b0b88ddf7847eae4b4c0e2d40b83a5 f83be390ecff46c0bf7dccb9dddcf5f6z/Keynote lecture by Laura Carvalho - recording_1i  ic20220909zBhttps://eu.bbcollab.com/recording/c3e1e7c9e83d4cd9981c93c74888d496 fdb2d8c43d66fbc0b0b74ef5e604eb1f c3e1e7c9e83d4cd9981c93c74888d496z,International Ally User Group - recording_18i  ihf20240725)enr   zXhttps://us.bbcollab.com/collab/ui/session/playback/load/76761522adfe4345a0dee6794bbcabdaTr   only_matchingzXhttps://ca.bbcollab.com/collab/ui/session/playback/load/b6399dcb44df4f21b29ebe581e22479dzBhttps://eu.bbcollab.com/recording/51ed7b50810c4444a106e48cefb3e6b5zXhttps://au.bbcollab.com/collab/ui/session/playback/load/2bccf7165d7c419ab87afc1ec3f3bb15NFc           	      v    |                      t          d| d||d          ||pd||rdd| ind           S )	Nzhttps://z'.bbcollab.com/collab/api/csa/recordings/)delimzDownloading JSON metadataAuthorizationzBearer )fatalheaders)_download_jsonr   )selfregionvideo_idpathtokennoter0   s          kC:\Users\betacode\Desktop\descargarYoutube\venv\Lib\site-packages\yt_dlp/extractor/blackboardcollaborate.py	_call_apiz!BlackboardCollaborateIE._call_apif   sm    ""TVTTTV^`dlopppd99<AK_&7&7&788t # M M 	M    c           
         |                      |          }|                    d          }|                    d          }t          |                              dd g          d         }|                     ||d|d          }|r|                     |||d	          }n|                     ||d
dd          }i }t          |dd ddt          hfdt          hfdf          }t          |dt          hf          x}	r
|D ]}
|	|
d<   i }t          |dd f          D ]_}|	                    |                    d          pdg           
                    t          |dt          hf          |d         d           `t          |dddt          hf          D ]-}|	                    dg           
                    d|i           .i t          |d t          hfd!t          hfd"t          d#$          hfd%          |||d&S )'Nr4   r   	authTokenzdata/securezTrying auth token)r6   r7   r8   zRetrieving extra attributes)r7   r8   datazTrying fallbackT)r6   r8   r0   
extStreamsc                 ,    t          |d                   S )N	streamUrlr   _vs     r9   <lambda>z7BlackboardCollaborateIE._real_extract.<locals>.<lambda>z   s    {STU`SaGbGb r;   rB   contentTypeaspectRatio)r   r   aspect_ratiostorageSizefilesizer   c                 ,    t          |d                   S )Nr   rC   rD   s     r9   rG   z7BlackboardCollaborateIE._real_extract.<locals>.<lambda>   s    TUV[T\H]H] r;   langundlabelr   )namer   chats.r   rQ   createdr   i  )scale)r   r   r   )formatsr   r   )_match_valid_urlgroupr   getr:   r   r
   r   r   
setdefaultappendstrr   r   )r3   r   mobjr4   r5   r7   
video_infovideo_extrarU   rL   fmtr   subslive_chat_urls                 r9   _real_extractz%BlackboardCollaborateIE._real_extractm   s   $$S))H%%::d##!!+v66r:^^FH=PU\o^pp
 	..Mj.kkKKvL]eijjJKzL:b:b!L>2*]O<e
 e
 ,   $K-+1OPPP8 	+ + +"*J	 k;];]-^__ 	 	D  &!1!1!:UB??FF$TGcU+;<<E{H H    
 **wU[M6Z[[ 	Q 	QM  b1188%9OPPPP	
: 3%'-9'+D*A*A*A)BC( (  	
 "	
 	
 	
 		
r;   )NNNF)__name__
__module____qualname__
_VALID_URL_TESTSr:   rb    r;   r9   r   r      sx       +J r58\ ')
 
	
 	
  n58?') 	
 	
 X58J ')
 
	
 	
  X58G ')&!-  	
 	
" n!	
 	

 n!	
 	

 X!	
 	

 n!	
 	
OKFZM M M M*
 *
 *
 *
 *
r;   r   c                   4    e Zd ZdZdddddddddgZd ZdS )	BlackboardCollaborateLaunchIEz5https?://[a-z]+\.bbcollab\.com/launch/(?P<id>[^/?#]+)ah  https://au.bbcollab.com/launch/eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJiYkNvbGxhYkFwaSIsInN1YiI6ImJiQ29sbGFiQXBpIiwiZXhwIjoxNzQwNDE2NDgzLCJpYXQiOjE3NDA0MTYxODMsInJlc291cmNlQWNjZXNzVGlja2V0Ijp7InJlc291cmNlSWQiOiI3MzI4YzRjZTNmM2U0ZTcwYmY3MTY3N2RkZTgzMzk2NSIsImNvbnN1bWVySWQiOiJhM2Q3NGM0Y2QyZGU0MGJmODFkMjFlODNlMmEzNzM5MCIsInR5cGUiOiJSRUNPUkRJTkciLCJyZXN0cmljdGlvbiI6eyJ0eXBlIjoiVElNRSIsImV4cGlyYXRpb25Ib3VycyI6MCwiZXhwaXJhdGlvbk1pbnV0ZXMiOjUsIm1heFJlcXVlc3RzIjotMX0sImRpc3Bvc2l0aW9uIjoiTEFVTkNIIiwibGF1bmNoVHlwZSI6bnVsbCwibGF1bmNoQ29tcG9uZW50IjpudWxsLCJsYXVuY2hQYXJhbUtleSI6bnVsbH19.xuELw4EafEwUMoYcCHidGn4Tw9O1QCbYHzYGJUl0kKkTr*   ah  https://us.bbcollab.com/launch/eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJiYkNvbGxhYkFwaSIsInN1YiI6ImJiQ29sbGFiQXBpIiwiZXhwIjoxNjk0NDgxOTc3LCJpYXQiOjE2OTQ0ODE2NzcsInJlc291cmNlQWNjZXNzVGlja2V0Ijp7InJlc291cmNlSWQiOiI3YWU0MTFhNTU3NjU0OWFiOTZlYjVmMTM1YmY3MWU5MCIsImNvbnN1bWVySWQiOiJBRUU2MEI4MDI2QzM3ODU2RjMwMzNEN0ZEOTQzMTFFNSIsInR5cGUiOiJSRUNPUkRJTkciLCJyZXN0cmljdGlvbiI6eyJ0eXBlIjoiVElNRSIsImV4cGlyYXRpb25Ib3VycyI6MCwiZXhwaXJhdGlvbk1pbnV0ZXMiOjUsIm1heFJlcXVlc3RzIjotMX0sImRpc3Bvc2l0aW9uIjoiTEFVTkNIIiwibGF1bmNoVHlwZSI6bnVsbCwibGF1bmNoQ29tcG9uZW50IjpudWxsLCJsYXVuY2hQYXJhbUtleSI6bnVsbH19.yOhRZNaIjXYoMYMpcTzgjZJCnIFaYf2cAzbco8OAxlYah  https://eu.bbcollab.com/launch/eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJiYkNvbGxhYkFwaSIsInN1YiI6ImJiQ29sbGFiQXBpIiwiZXhwIjoxNzUyNjgyODYwLCJpYXQiOjE3NTI2ODI1NjAsInJlc291cmNlQWNjZXNzVGlja2V0Ijp7InJlc291cmNlSWQiOiI4MjQzYjFiODg2Nzk0NTZkYjkwN2NmNDZmZmE1MmFhZiIsImNvbnN1bWVySWQiOiI5ZTY4NzYwZWJiNzM0MzRiYWY3NTQyZjA1YmJkOTMzMCIsInR5cGUiOiJSRUNPUkRJTkciLCJyZXN0cmljdGlvbiI6eyJ0eXBlIjoiVElNRSIsImV4cGlyYXRpb25Ib3VycyI6MCwiZXhwaXJhdGlvbk1pbnV0ZXMiOjUsIm1heFJlcXVlc3RzIjotMX0sImRpc3Bvc2l0aW9uIjoiTEFVTkNIIiwibGF1bmNoVHlwZSI6bnVsbCwibGF1bmNoQ29tcG9uZW50IjpudWxsLCJsYXVuY2hQYXJhbUtleSI6bnVsbH19.Xj4ymojYLwZ1vKPKZ-KxjpqQvFXoJekjRaG0npngwWsc                    |                      |          }t          |          d         d         }|                     ||          j        }|                     |          rt          |          |                     |t          |          S )NresourceAccessTicket
resourceId)	_match_idr	   _request_webpager   suitabler   
url_resultr   )r3   r   r7   r5   redirect_urls        r9   rb   z+BlackboardCollaborateLaunchIE._real_extract   s|    s###E**+AB<P,,S(;;?==&& 	1"<000|-DhOOOr;   N)rc   rd   re   rf   rg   rb   rh   r;   r9   rj   rj      sm        IJ ~	!	
 	

 ~	!	
 	

 ~	!	
 	
FP P P P Pr;   rj   N)commonr   utilsr   r   r   r   r	   r
   r   r   r   utils.traversalr   r   rj   rh   r;   r9   <module>rv      s
   ! ! ! ! ! !
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 + * * * * *G
 G
 G
 G
 G
m G
 G
 G
TP P P P PM P P P P Pr;   