o
    nÒYió  ã                   @   s<   d dl mZ ddlmZmZ ddlmZ G dd„ deƒZdS )	é   )ÚBaseComponenté   )ÚNotificationÚ	CallStateé   )ÚEventc                       sH   e Zd Z‡ fdd„Zedd„ ƒZedd„ ƒZedd„ ƒZd	d
„ Z‡  Z	S )ÚAwaiterc                    s   t ƒ  |¡ |j| _d S ©N)ÚsuperÚ__init__ÚtagÚ
control_id)ÚselfÚcall©Ú	__class__© úo/var/www/html/asistente-voz-ia/venv/lib/python3.10/site-packages/signalwire/relay/calling/components/awaiter.pyr      s   zAwaiter.__init__c                 C   s   t jS r	   )r   ÚSTATE©r   r   r   r   Ú
event_type   s   zAwaiter.event_typec                 C   ó   d S r	   r   r   r   r   r   Úmethod   ó   zAwaiter.methodc                 C   r   r	   r   r   r   r   r   Úpayload   r   zAwaiter.payloadc                 C   sj   |  dd ¡| _| jd u rd S | j| jv r1|  ¡  d| _d| _t| j|ƒ| _|  ¡ r3| j	 
d¡ d S d S d S )NÚ
call_stateT)ÚgetÚstateÚ_events_to_awaitÚ
unregisterÚ	completedÚ
successfulr   ÚeventÚ
has_futureÚ_futureÚ
set_result)r   Úparamsr   r   r   Únotification_handler   s   
úzAwaiter.notification_handler)
Ú__name__Ú
__module__Ú__qualname__r   Úpropertyr   r   r   r'   Ú__classcell__r   r   r   r   r      s    


r   N)Ú r   Ú	constantsr   r   r"   r   r   r   r   r   r   Ú<module>   s    