o
    en3                     @   sX   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mZmZmZ G dd de	ZdS )    )ConferenceElementDialElementDTMFElementGetDigitsElementGetInputElementHangupElementMessageElementPlayElementPlivoXMLElementPreAnswerElementRecordElementRedirectElementSpeakElementWaitElementMultiPartyCallElementc                   @   s  e Zd ZdZg dZ																				d,ddZ																d-ddZ	d.dd	Z												d/d
dZ																d-ddZ			d0ddZ
					d1ddZ	d.ddZdd Z															d2ddZ	d.ddZ			d3ddZ				d4ddZ				 		 		 		 		 		!	"	#	$	"	%	"	"	%	"	"	&	 	'	 		 		 d5d(d)Zd*d+ ZdS )6ResponseElementResponse)
ConferenceDialDTMF	GetDigitsGetInputHangupMessagePlay	PreAnswerRecordRedirectSpeakWaitMultiPartyCallStreamNc                 C   s   |  tdi d|d|d|d|d|d|d|d|d	|	d
|
d|d|d|d|d|d|d|d|d|d|d| | S )Ncontentmutedenter_sound
exit_soundstart_conference_on_enterend_conference_on_exit
stay_alone
wait_soundmax_membersrecordrecord_file_format
time_limithangup_on_staractionmethodcallback_urlcallback_methoddigits_matchfloor_eventredirect
relay_dtmf )addr   )selfr"   r#   r$   r%   r&   r'   r(   r)   r*   r+   r,   r-   r.   r/   r0   r1   r2   r3   r4   r5   r6   r7   r7   L/var/www/html/venv/lib/python3.10/site-packages/plivo/xml/ResponseElement.pyadd_conference   s\   	
zResponseElement.add_conferencec                 C   t   |  tdi d|d|d|d|d|d|d|d|d	|	d
|
d|d|d|d|d|d| | S )Nr/   r0   r.   r-   timeout	caller_idcaller_nameconfirm_soundconfirm_key
dial_musicr1   r2   r5   r3   digits_match_b_legsip_headersr7   )r8   r   )r9   r/   r0   r.   r-   r=   r>   r?   r@   rA   rB   r1   r2   r5   r3   rC   rD   r7   r7   r:   add_dialO   H   	
zResponseElement.add_dialc                 C      |  t||d | S )N)r"   async_)r8   r   )r9   r"   rH   r7   r7   r:   add_dtmfw   
   zResponseElement.add_dtmfc                 C   s*   |  t|||||||||	|
||d | S )N)r/   r0   r=   digit_timeoutfinish_on_key
num_digitsretriesr5   	play_beepvalid_digitsinvalid_digits_soundlog)r8   r   )r9   r/   r0   r=   rK   rL   rM   rN   r5   rO   rP   rQ   rR   r7   r7   r:   add_get_digits   s"   zResponseElement.add_get_digitsc                 C   r<   )Nr/   r0   
input_typeexecution_timeoutdigit_end_timeoutspeech_end_timeoutrL   rM   speech_modelhintslanguageinterim_speech_results_callback&interim_speech_results_callback_methodrR   r5   profanity_filterr7   )r8   r   )r9   r/   r0   rT   rU   rV   rW   rL   rM   rX   rY   rZ   r[   r\   rR   r5   r]   r7   r7   r:   add_get_input   rF   zResponseElement.add_get_inputc                 C   rG   )N)reasonschedule)r8   r   )r9   r_   r`   r7   r7   r:   
add_hangup   rJ   zResponseElement.add_hangupc              
   C   s   |  t||||||d | S )N)r"   srcdsttyper1   r2   )r8   r   )r9   r"   rb   rc   rd   r1   r2   r7   r7   r:   add_message   s   		zResponseElement.add_messagec                 C   rG   )N)r"   loop)r8   r	   )r9   r"   rf   r7   r7   r:   add_play   rJ   zResponseElement.add_playc                 C   s   |  t  | S N)r8   r   r9   r7   r7   r:   add_pre_answer   s   zResponseElement.add_pre_answerc                 C   s0   |  t|||||||||	|
|||||d | S )N)r/   r0   file_formatr5   r=   
max_lengthrO   rL   record_sessionstart_on_dial_answertranscription_typetranscription_urltranscription_methodr1   r2   )r8   r   )r9   r/   r0   rk   r5   r=   rl   rO   rL   rm   rn   ro   rp   rq   r1   r2   r7   r7   r:   
add_record   s(   zResponseElement.add_recordc                 C   rG   )N)r"   r0   )r8   r   )r9   r"   r0   r7   r7   r:   add_redirect  rJ   zResponseElement.add_redirectc                 C      |  t||||d | S )N)r"   voicerZ   rf   )r8   r   )r9   r"   ru   rZ   rf   r7   r7   r:   	add_speak)     zResponseElement.add_speakc                 C   rt   )N)lengthsilencemin_silencebeep)r8   r   )r9   rx   ry   rz   r{   r7   r7   r:   add_wait9  rw   zResponseElement.add_wait@8  
   GETPOSTFmp3+mpc-state-changes,participant-state-changesTbeep:1beep:2c#           #      C   s   |  t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|d|d|d|d|d | d!|!d"|" | S )$Nr"   rolemax_durationmax_participantswait_music_urlwait_music_methodagent_hold_music_urlagent_hold_music_methodcustomer_hold_music_urlcustomer_hold_music_methodr+   r,   recording_callback_urlrecording_callback_methodstatus_callback_eventsstatus_callback_urlstatus_callback_methodr(   
coach_modemuteholdstart_mpc_on_enterend_mpc_on_exitr$   enter_sound_methodr%   exit_sound_methodon_exit_action_urlon_exit_action_methodrelay_dtmf_inputsstart_recording_audiostart_recording_audio_methodstop_recording_audiostop_recording_audio_methodr7   )r8   r   )#r9   r"   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r   r+   r,   r   r(   r   r   r   r   r   r   r$   r   r%   r   r   r   r   r   r7   r7   r:   add_multi_party_callI  s   %	
 !"&z$ResponseElement.add_multi_party_callc                 C   s   i S rh   r7   ri   r7   r7   r:   to_dict  s   zResponseElement.to_dict)NNNNNNNNNNNNNNNNNNNN)NNNNNNNNNNNNNNNNrh   )NNNNNNNNNNNN)NN)NNNNN)NNNNNNNNNNNNNNN)NNN)NNNN) r}   r~   Nr   Nr   Nr   Nr   Nr   Nr   Fr   r   FTFFTFFr   r   r   r   Nr   Nr   )__name__
__module____qualname___name	_nestabler;   rE   rI   rS   r^   ra   re   rg   rj   rr   rs   rv   r|   r   r   r7   r7   r7   r:   r   	   s$   
4
+

"
*



)



Mr   N)	plivo.xmlr   r   r   r   r   r   r   r	   r
   r   r   r   r   r   r   r   r7   r7   r7   r:   <module>   s   D 