o
    e                     @   sT   d dl mZmZ d dlmZ ddlT d dlmZ G dd deZG dd deZd	S )
    )PlivoResourcePlivoResourceInterface)to_param_dict   )*c                   @   s   e Zd Zd ZdZdS )LiveCall	call_uuidN)__name__
__module____qualname___name_identifier_string r   r   M/var/www/html/venv/lib/python3.10/site-packages/plivo/resources/live_calls.pyr   	   s    r   c                
   @   s   e Zd ZeZdZeeee	e
j edd ddgeee	e
j edd ddgee	e
jedgee geee	e
jd	d
gee gee	e
jgd							dddZee	e
jgee gee	e
jgd		dddZdS )	LiveCallsFc                 C   s   d|   k o	dkS   S )Nr      r   )limitr   r   r   <lambda>   s    zLiveCalls.<lambda>z0 < limit <= 20)messagec                 C   s   d| kS )Nr   r   )offsetr   r   r   r      s    z0 <= offset)inboundoutbound<)sep)r   r   call_directionfrom_number	to_numbercallback_urlcallback_methodNr   r   c           	      C   s0   t | jt }|ddi | jjdd|ddS )NstatusliveGET)CallTis_voice_request)r   list_idslocalsupdateclientrequest)	selfr   r   r   r   r   r   r   paramsr   r   r   r%      s    zLiveCalls.list_ids)_idr   r   c                 C   s<   i }d|d< |r||d< |r||d< | j jdd|f|ddS )	Nr    r   r   r   r!   r"   Tr#   )r(   r)   )r*   r,   r   r   local_objectr   r   r   get6   s   zLiveCalls.get)NNNr   r   NN)NN)r	   r
   r   r   _resource_type	_iterablevalidate_argsoptionalall_ofof_typesixinteger_typescheck	text_typeis_inis_phonenumberis_iterableis_urlr%   r.   r   r   r   r   r      sV    	


r   N)
plivo.baser   r   plivo.utilsr   utils.validatorsr   r   r   r   r   r   <module>   s   