
    :j	                     n    d Z ddlmZ ddlmZ ddlmZmZmZm	Z	 ddl
mZ ddlmZ  G d	 d
e          ZdS )z<
Controller to interface with the Yle Areena app namespace.
    )Any   )CallbackType)BaseMediaPlayerSTREAM_TYPE_BUFFERED	TYPE_LOADMESSAGE_TYPE   )APP_YLEAREENA)WaitResponsec                        e Zd ZdZd fdZddddedd	d
edededededede	dz  ddfdZ
ddddedededededdfdZ xZS )YleAreenaControllerz5Controller to interact with Yle Areena app namespace.returnNc                 V    t                                          t                     d S )N)supporting_app_id)super__init__r   )self	__class__s    X/home/user/adhan/venv/lib/python3.11/site-packages/pychromecast/controllers/yleareena.pyr   zYleAreenaController.__init__   s$    =99999     offr   T)audio_languagetext_languagecurrent_timeautoplaystream_typecallback_function
kaltura_idr   r   r   r   r   r   c                    d|d|i||ddt           t          d|d|di dd	d
dddi}|                     |d|           dS )a9  
        Play media with the entry id "kaltura_id".
        This value can be found by loading a page on Areena, e.g. https://areena.yle.fi/1-50097921
        And finding the kaltura player which has an id of yle-kaltura-player3430579305188-29-0_whwjqpry
        In this case the kaltura id is 0_whwjqpry
        mediaentryId)	mediaInfoaudioLanguagetextLanguage)
streamType
customDatacurrentTimer   r(   textTrackStylez	#FFFFFFFFz	#000000FFr   z
sans-serif)foregroundColorbackgroundColor	fontScale
fontFamilyT)inc_session_idr   N)r	   r   send_message)	r   r    r   r   r   r   r   r   msgs	            r   play_areena_mediaz%YleAreenaController.play_areena_media   s    $ )"+Z!8%3$1   )<"#.#.*	 
* 	#dFWXXXXXr   )
audio_lang	text_langmedia_idtimeoutr3   r4   kwargsc                    t          |d|           } | j        |f||d|d|j        i |                                 dS )z
Quick Playzyleareena quick play )r   r   r   N)r   r2   callbackwait_response)r   r5   r6   r3   r4   r7   response_handlers          r   
quick_playzYleAreenaController.quick_play;   s     (1S1S1STT	
%#	
 	
 		
 	

 /7	
 	
 	
 	
 	&&(((((r   )r   N)__name__
__module____qualname____doc__r   r   strfloatboolr   r2   r   r<   __classcell__)r   s   @r   r   r      s9       ??: : : : : : !"/15&Y &Y &Y&Y 	&Y
 &Y &Y &Y &Y ($.&Y 
&Y &Y &Y &YZ ) ) ) ) 	)
 ) ) ) 
) ) ) ) ) ) ) )r   r   N)r@   typingr   r   r   r"   r   r   r   r	   configr   r;   r   r    r   r   <module>rH      s                 Q Q Q Q Q Q Q Q Q Q Q Q " " " " " " + + + + + +@) @) @) @) @)/ @) @) @) @) @)r   