o
    e\                     @   s,   d dl T d dlmZmZ G dd deZdS )    )*)PlivoXMLElementmap_typec                       sP  e Zd ZdZg Zedd Zejdd Zee	e
jgddd Zedd	 Zejd
d	 Zee	e
jgddd Zedd Zejdd Zee	e
jgddd Zedd Zejdd Zeeegddd Zedd Zejdd Zee	e
j gddd Zedd Zejdd Zee	e
j gddd  Zed!d" Zejd#d" Zeeegdd$d% Zed&d' Zejd(d' Zee	e
jgdd)d* Zed+d, Zejd-d, Zeeegdd.d/ Zed0d1 Z e jd2d1 Z eeegdd3d4 Z!ed5d6 Z"e"jd7d6 Z"ee	e
jgdd8d9 Z#ed:d; Z$e$jd<d; Z$ee	e
jgdd=d> Z%ed?d@ Z&e&jdAd@ Z&ee	e
jgddBdC Z'edDdE Z(e(jdFdE Z(ee	e
jgddGdH Z)edIdJ Z*e*jdKdJ Z*ee	e
jgddLdM Z+	N	N	N	N	N	N	N	N	N	N	N	N	N	N	NdS fdOdP	Z,dQdR Z-  Z.S )TRecordElementRecordc                 C      | j S N)_RecordElement__actionself r   J/var/www/html/venv/lib/python3.10/site-packages/plivo/xml/recordElement.pyaction	      zRecordElement.actionc                 C   "   |d urt || _d S d | _d S r   )six	text_typer	   r   valuer   r   r   r         ")r   c                 C   
   || _ | S r   )r   r   r   r   r   
set_action      zRecordElement.set_actionc                 C   r   r   )_RecordElement__methodr
   r   r   r   method   r   zRecordElement.methodc                 C   r   r   )r   r   r   r   r   r   r   r      r   c                 C   r   r   )r   r   r   r   r   
set_method    r   zRecordElement.set_methodc                 C   r   r   )_RecordElement__file_formatr
   r   r   r   file_format'   r   zRecordElement.file_formatc                 C   r   r   )r   r   r   r   r   r   r   r   +      
c                 C   r   r   )r   r   r   r   r   set_file_format0   r   zRecordElement.set_file_formatc                 C   r   r   )_RecordElement__redirectr
   r   r   r   redirect7   r   zRecordElement.redirectc                 C       |d urt || _d S d | _d S r   )boolr    r   r   r   r   r!   ;       c                 C   r   r   )r!   r   r   r   r   set_redirect?   r   zRecordElement.set_redirectc                 C   r   r   )_RecordElement__timeoutr
   r   r   r   timeoutF   r   zRecordElement.timeoutc                 C   r"   r   )intr&   r   r   r   r   r'   J   r$   c                 C   r   r   )r'   r   r   r   r   set_timeoutN   r   zRecordElement.set_timeoutc                 C   r   r   )_RecordElement__max_lengthr
   r   r   r   
max_lengthU   r   zRecordElement.max_lengthc                 C   r"   r   )r(   r*   r   r   r   r   r+   Y   r$   c                 C   r   r   )r+   r   r   r   r   set_max_length]   r   zRecordElement.set_max_lengthc                 C   r   r   )_RecordElement__play_beepr
   r   r   r   	play_beepd   r   zRecordElement.play_beepc                 C   r"   r   )r#   r-   r   r   r   r   r.   h   r$   c                 C   r   r   )r.   r   r   r   r   set_play_beepl   r   zRecordElement.set_play_beepc                 C   r   r   )_RecordElement__finish_on_keyr
   r   r   r   finish_on_keys   r   zRecordElement.finish_on_keyc                 C   r   r   )r   r   r0   r   r   r   r   r1   w   r   c                 C   r   r   )r1   r   r   r   r   set_finish_on_key|   r   zRecordElement.set_finish_on_keyc                 C   r   r   )_RecordElement__record_sessionr
   r   r   r   record_session   r   zRecordElement.record_sessionc                 C   r"   r   )r#   r3   r   r   r   r   r4      r$   c                 C   r   r   )r4   r   r   r   r   set_record_session   r   z RecordElement.set_record_sessionc                 C   r   r   )$_RecordElement__start_on_dial_answerr
   r   r   r   start_on_dial_answer   r   z"RecordElement.start_on_dial_answerc                 C   r"   r   )r#   r6   r   r   r   r   r7      s   
c                 C   r   r   )r7   r   r   r   r   set_start_on_dial_answer   r   z&RecordElement.set_start_on_dial_answerc                 C   r   r   )"_RecordElement__transcription_typer
   r   r   r   transcription_type   r   z RecordElement.transcription_typec                 C   r   r   )r   r   r9   r   r   r   r   r:      r   c                 C   r   r   )r:   r   r   r   r   set_transcription_type   r   z$RecordElement.set_transcription_typec                 C   r   r   )!_RecordElement__transcription_urlr
   r   r   r   transcription_url   r   zRecordElement.transcription_urlc                 C   r   r   )r   r   r<   r   r   r   r   r=      r   c                 C   r   r   )r=   r   r   r   r   set_transcription_url   r   z#RecordElement.set_transcription_urlc                 C   r   r   )$_RecordElement__transcription_methodr
   r   r   r   transcription_method   r   z"RecordElement.transcription_methodc                 C   r   r   )r   r   r?   r   r   r   r   r@      r   c                 C   r   r   )r@   r   r   r   r   set_transcription_method   r   z&RecordElement.set_transcription_methodc                 C   r   r   )_RecordElement__callback_urlr
   r   r   r   callback_url   r   zRecordElement.callback_urlc                 C   r   r   )r   r   rB   r   r   r   r   rC      r   c                 C   r   r   )rC   r   r   r   r   set_callback_url   r   zRecordElement.set_callback_urlc                 C   r   r   )_RecordElement__callback_methodr
   r   r   r   callback_method   r   zRecordElement.callback_methodc                 C   r   r   )r   r   rE   r   r   r   r   rF      r   c                 C   r   r   )rF   r   r   r   r   set_callback_method   r   z!RecordElement.set_callback_methodNc                    sl   t t|   || _|| _|| _|| _|| _|| _|| _	|| _
|	| _|
| _|| _|| _|| _|| _|| _d S r   )superr   __init__r   r   r   r!   r'   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   )r   r   r   r   r!   r'   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   	__class__r   r   rI      s    
zRecordElement.__init__c                 C   sT   | j | j| j| j| j| j| j| j| j| j	| j
| j| j| j| jd}dd | D S )N)r   r   
fileFormatr!   r'   	maxLengthplayBeepfinishOnKeyrecordSessionstartOnDialAnswertranscriptionTypetranscriptionUrltranscriptionMethodcallbackUrlcallbackMethodc                 S   s(   i | ]\}}|d ur|t t|qS r   )r   r   r   ).0kvr   r   r   
<dictcomp>(  s    z)RecordElement.to_dict.<locals>.<dictcomp>)r   r   r   r!   r'   r+   r.   r1   r4   r7   r:   r=   r@   rC   rF   items)r   dr   r   r   to_dict  s&   zRecordElement.to_dict)NNNNNNNNNNNNNNN)/__name__
__module____qualname___name	_nestablepropertyr   settervalidate_argsof_typer   r   r   r   r   r   r   r!   of_type_exactr#   r%   r'   integer_typesr)   r+   r,   r.   r/   r1   r2   r4   r5   r7   r8   r:   r;   r=   r>   r@   rA   rC   rD   rF   rG   rI   r]   __classcell__r   r   rJ   r   r      s   























































$r   N)plivo.utils.validators	plivo.xmlr   r   r   r   r   r   r   <module>   s    