Ë
    [üàg(;  ã                   óª   — d Z ddlmZmZmZmZmZmZmZ ddl	m
Z
 ddlmZ ddlmZ ddlmZ ddlmZ  G d„ d	e«      Z G d
„ de«      Z G d„ de«      Zy)aë  
    This code was generated by
   ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
    |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
    |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

    Twilio - Insights
    This is the public Twilio REST API.

    NOTE: This class is auto generated by OpenAPI Generator.
    https://openapi-generator.tech
    Do not edit the class manually.
é    )ÚAnyÚDictÚListÚOptionalÚUnionÚIteratorÚAsyncIterator)Úvalues)ÚInstanceResource)ÚListResource)ÚVersion)ÚPagec                   óp   ‡ — e Zd Z G d„ de«      Z G d„ de«      Z	 dedeee	f   defˆ fd„Z
d	efd
„Zˆ xZS )ÚMetricInstancec                   ó   — e Zd ZdZdZdZdZy)úMetricInstance.StreamDirectionÚunknownÚinboundÚoutboundÚbothN)Ú__name__Ú
__module__Ú__qualname__ÚUNKNOWNÚINBOUNDÚOUTBOUNDÚBOTH© ó    úa/var/www/skyplay_api_hub/venv/lib/python3.12/site-packages/twilio/rest/insights/v1/call/metric.pyÚStreamDirectionr      s   „ ØˆØˆØˆØ‰r   r!   c                   ó    — e Zd ZdZdZdZdZdZy)úMetricInstance.TwilioEdgeÚunknown_edgeÚcarrier_edgeÚsip_edgeÚsdk_edgeÚclient_edgeN)r   r   r   ÚUNKNOWN_EDGEÚCARRIER_EDGEÚSIP_EDGEÚSDK_EDGEÚCLIENT_EDGEr   r   r    Ú
TwilioEdger#       s   „ Ø%ˆØ%ˆØˆØˆØ#‰r   r.   ÚversionÚpayloadÚcall_sidc                 óÂ  •— t         ‰| �  |«       |j                  d«      | _        |j                  d«      | _        |j                  d«      | _        |j                  d«      | _        |j                  d«      | _        |j                  d«      | _        |j                  d«      | _	        |j                  d«      | _
        |j                  d	«      | _        d|i| _        y )
NÚ	timestampr1   Úaccount_sidÚedgeÚ	directionr%   r&   r'   r(   )ÚsuperÚ__init__Úgetr3   r1   r4   r5   r6   r%   r&   r'   r(   Ú	_solution)Úselfr/   r0   r1   Ú	__class__s       €r    r8   zMetricInstance.__init__3   sº   ø€ Ü‰Ñ˜Ô!à(/¯©°KÓ(@ˆŒØ'.§{¡{°:Ó'>ˆŒØ*1¯+©+°mÓ*DˆÔØ;B¿;¹;ÀvÓ;NˆŒ	ØELÇ[Á[ØóF
ˆŒð :A¿¹À^Ó9TˆÔØ5<·[±[ÀÓ5LˆŒØ5<·[±[ÀÓ5LˆŒØ8?¿¹ÀMÓ8RˆÔð ˜ð
ˆ�r   Úreturnc                 ó„   — dj                  d„ | j                  j                  «       D «       «      }dj                  |«      S )úf
        Provide a friendly representation

        :returns: Machine friendly representation
        ú c              3   óF   K  — | ]  \  }}d j                  ||«      –— Œ y­w)z{}={}N)Úformat)Ú.0ÚkÚvs      r    ú	<genexpr>z*MetricInstance.__repr__.<locals>.<genexpr>L   s   è ø€ ÒS±D°A°q˜7Ÿ>™>¨!¨Q×/ÑSùs   ‚!z&<Twilio.Insights.V1.MetricInstance {}>)Újoinr:   ÚitemsrB   )r;   Úcontexts     r    Ú__repr__zMetricInstance.__repr__F   s6   € ð —(‘(ÑS¸D¿N¹N×<PÑ<PÓ<RÔSÓSˆØ7×>Ñ>¸wÓGÐGr   )r   r   r   Úobjectr!   r.   r   r   Ústrr   r8   rJ   Ú__classcell__©r<   s   @r    r   r      sP   ø„ ô˜&ô ô$�Vô $ð
ð
 ð 
°$°s¸C°x±.ð 
ÈCõ 
ð&H˜#÷ Hr   r   c                   ó2   — e Zd Zdeeef   defd„Zdefd„Zy)Ú
MetricPager0   r=   c                 óL   — t        | j                  || j                  d   ¬«      S )zl
        Build an instance of MetricInstance

        :param payload: Payload response from the API
        r1   )r1   )r   Ú_versionr:   )r;   r0   s     r    Úget_instancezMetricPage.get_instanceR   s%   € ô Ø�M‰M˜7¨T¯^©^¸JÑ-Gô
ð 	
r   c                  ó   — y)r?   z<Twilio.Insights.V1.MetricPage>r   ©r;   s    r    rJ   zMetricPage.__repr__\   ó   € ð 1r   N)	r   r   r   r   rL   r   r   rS   rJ   r   r   r    rP   rP   P   s)   „ ð
 D¨¨c¨¡Nð 
°~ó 
ð1˜#ô 1r   rP   c                   ó¨  ‡ — e Zd Zdedefˆ fd„Zej                  ej                  ddfdede	f   dede	f   d	e
e   d
e
e   dee   f
d„Zej                  ej                  ddfdede	f   dede	f   d	e
e   d
e
e   dee   f
d„Zej                  ej                  ddfdede	f   dede	f   d	e
e   d
e
e   dee   f
d„Zej                  ej                  ddfdede	f   dede	f   d	e
e   d
e
e   dee   f
d„Zej                  ej                  ej                  ej                  ej                  fdede	f   dede	f   deee	f   deee	f   d
eee	f   defd„Zej                  ej                  ej                  ej                  ej                  fdede	f   dede	f   deee	f   deee	f   d
eee	f   defd„Zdedefd„Zdedefd„Zdefd„Zˆ xZS )Ú
MetricListr/   r1   c                 óx   •— t         ‰| �  |«       d|i| _         dj                  di | j                  ¤Ž| _        y)z¨
        Initialize the MetricList

        :param version: Version that contains the resource
        :param call_sid: The unique SID identifier of the Call.

        r1   z/Voice/{call_sid}/MetricsNr   )r7   r8   r:   rB   Ú_uri)r;   r/   r1   r<   s      €r    r8   zMetricList.__init__g   s@   ø€ ô 	‰Ñ˜Ô!ð ˜ð
ˆŒð 7Ð/×6Ñ6ÑH¸¿¹ÑHˆ�	r   Nr5   r#   r6   r   ÚlimitÚ	page_sizer=   c                 ó¦   — | j                   j                  ||«      }| j                  |||d   ¬«      }| j                   j                  ||d   «      S )a–  
        Streams MetricInstance records from the API as a generator stream.
        This operation lazily loads records as efficiently as possible until the limit
        is reached.
        The results are returned as a generator, so this operation is memory efficient.

        :param &quot;MetricInstance.TwilioEdge&quot; edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param &quot;MetricInstance.StreamDirection&quot; direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param limit: Upper limit for the number of records to return. stream()
                      guarantees to never return more than limit.  Default is no limit
        :param page_size: Number of records to fetch per request, when not set will use
                          the default value of 50 records.  If no page_size is defined
                          but a limit is defined, stream() will attempt to read the
                          limit with the most efficient page size, i.e. min(limit, 1000)

        :returns: Generator that will yield up to limit results
        r\   ©r5   r6   r\   r[   )rR   Úread_limitsÚpageÚstream©r;   r5   r6   r[   r\   Úlimitsr`   s          r    ra   zMetricList.streamw   sN   € ð0 —‘×*Ñ*¨5°)Ó<ˆØ�y‰y˜d¨iÀ6È+ÑCVˆyÓWˆà�}‰}×#Ñ# D¨&°©/Ó:Ð:r   c              ƒ   óÂ   K  — | j                   j                  ||«      }| j                  |||d   ¬«      ƒ d{  –—† }| j                   j                  ||d   «      S 7 Œ#­w)a¥  
        Asynchronously streams MetricInstance records from the API as a generator stream.
        This operation lazily loads records as efficiently as possible until the limit
        is reached.
        The results are returned as a generator, so this operation is memory efficient.

        :param &quot;MetricInstance.TwilioEdge&quot; edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param &quot;MetricInstance.StreamDirection&quot; direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param limit: Upper limit for the number of records to return. stream()
                      guarantees to never return more than limit.  Default is no limit
        :param page_size: Number of records to fetch per request, when not set will use
                          the default value of 50 records.  If no page_size is defined
                          but a limit is defined, stream() will attempt to read the
                          limit with the most efficient page size, i.e. min(limit, 1000)

        :returns: Generator that will yield up to limit results
        r\   r^   Nr[   )rR   r_   Ú
page_asyncÚstream_asyncrb   s          r    rf   zMetricList.stream_async”   sd   è ø€ ð0 —‘×*Ñ*¨5°)Ó<ˆØ—_‘_Ø °f¸[Ñ6Ið %ó 
÷ 
ˆð �}‰}×)Ñ)¨$°°w±Ó@Ð@ð	
ús   ‚7A¹Aº$Ac                 ó>   — t        | j                  ||||¬«      «      S )a3  
        Lists MetricInstance records from the API as a list.
        Unlike stream(), this operation is eager and will load `limit` records into
        memory before returning.

        :param &quot;MetricInstance.TwilioEdge&quot; edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param &quot;MetricInstance.StreamDirection&quot; direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param limit: Upper limit for the number of records to return. list() guarantees
                      never to return more than limit.  Default is no limit
        :param page_size: Number of records to fetch per request, when not set will use
                          the default value of 50 records.  If no page_size is defined
                          but a limit is defined, list() will attempt to read the limit
                          with the most efficient page size, i.e. min(limit, 1000)

        :returns: list that will contain up to limit results
        ©r5   r6   r[   r\   )Úlistra   )r;   r5   r6   r[   r\   s        r    ri   zMetricList.list³   s.   € ô. Ø�K‰KØØ#ØØ#ð	 ó ó
ð 	
r   c              ƒ   ó~   K  — | j                  ||||¬«      ƒ d{  –—† 2 �cg c3 d{  –—† }|‘Œ7 Œ7 Œ	6 c}S c c}w ­w)aB  
        Asynchronously lists MetricInstance records from the API as a list.
        Unlike stream(), this operation is eager and will load `limit` records into
        memory before returning.

        :param &quot;MetricInstance.TwilioEdge&quot; edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param &quot;MetricInstance.StreamDirection&quot; direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param limit: Upper limit for the number of records to return. list() guarantees
                      never to return more than limit.  Default is no limit
        :param page_size: Number of records to fetch per request, when not set will use
                          the default value of 50 records.  If no page_size is defined
                          but a limit is defined, list() will attempt to read the limit
                          with the most efficient page size, i.e. min(limit, 1000)

        :returns: list that will contain up to limit results
        rh   N)rf   )r;   r5   r6   r[   r\   Úrecords         r    Ú
list_asynczMetricList.list_asyncÓ   sZ   è ø€ ð2 '+×&7Ñ&7ØØ#ØØ#ð	 '8ó '÷ !÷
ô 
àò ð!øð
øò 
ð 	
ùò 
ùs0   ‚=›0œ=¢8¤4¨2
©4¬8°=²4´8µ=Ú
page_tokenÚpage_numberc                 ó  — t        j                  |||||dœ«      }t        j                  ddi«      }d|d<   | j                  j                  d| j                  ||¬«      }t        | j                  || j                  «      S )aZ  
        Retrieve a single page of MetricInstance records from the API.
        Request is executed immediately

        :param edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param page_token: PageToken provided by the API
        :param page_number: Page Number, this value is simply for client state
        :param page_size: Number of records to return, defaults to 50

        :returns: Page of MetricInstance
        ©ÚEdgeÚ	DirectionÚ	PageTokenr   ÚPageSizeúContent-Typeú!application/x-www-form-urlencodedúapplication/jsonÚAcceptÚGET©ÚmethodÚuriÚparamsÚheaders)r
   ÚofrR   r`   rZ   rP   r:   ©	r;   r5   r6   rm   rn   r\   Údatar~   Úresponses	            r    r`   zMetricList.pageô   s…   € ô( �y‰yàØ&Ø'Ø#Ø%ñó
ˆô —)‘)˜^Ð-PÐQÓRˆà.ˆ�Ñà—=‘=×%Ñ%Ø˜dŸi™i°¸gð &ó 
ˆô ˜$Ÿ-™-¨°4·>±>ÓBÐBr   c              ƒ   ó   K  — t        j                  |||||dœ«      }t        j                  ddi«      }d|d<   | j                  j                  d| j                  ||¬«      ƒ d{  –—† }t        | j                  || j                  «      S 7 Œ%­w)	ai  
        Asynchronously retrieve a single page of MetricInstance records from the API.
        Request is executed immediately

        :param edge: The Edge of this Metric. One of `unknown_edge`, `carrier_edge`, `sip_edge`, `sdk_edge` or `client_edge`.
        :param direction: The Direction of this Metric. One of `unknown`, `inbound`, `outbound` or `both`.
        :param page_token: PageToken provided by the API
        :param page_number: Page Number, this value is simply for client state
        :param page_size: Number of records to return, defaults to 50

        :returns: Page of MetricInstance
        rp   ru   rv   rw   rx   ry   rz   N)r
   r   rR   re   rZ   rP   r:   r€   s	            r    re   zMetricList.page_async  s“   è ø€ ô( �y‰yàØ&Ø'Ø#Ø%ñó
ˆô —)‘)˜^Ð-PÐQÓRˆà.ˆ�ÑàŸ™×1Ñ1Ø˜dŸi™i°¸gð 2ó 
÷ 
ˆô ˜$Ÿ-™-¨°4·>±>ÓBÐBð
ús   ‚A$BÁ&BÁ'&BÚ
target_urlc                 ó¤   — | j                   j                  j                  j                  d|«      }t	        | j                   || j
                  «      S )zñ
        Retrieve a specific page of MetricInstance records from the API.
        Request is executed immediately

        :param target_url: API-generated URL for the requested results page

        :returns: Page of MetricInstance
        ry   )rR   ÚdomainÚtwilioÚrequestrP   r:   ©r;   r„   r‚   s      r    Úget_pagezMetricList.get_pageB  s=   € ð —=‘=×'Ñ'×.Ñ.×6Ñ6°u¸jÓIˆÜ˜$Ÿ-™-¨°4·>±>ÓBÐBr   c              ƒ   óÀ   K  — | j                   j                  j                  j                  d|«      ƒ d{  –—† }t	        | j                   || j
                  «      S 7 Œ%­w)a   
        Asynchronously retrieve a specific page of MetricInstance records from the API.
        Request is executed immediately

        :param target_url: API-generated URL for the requested results page

        :returns: Page of MetricInstance
        ry   N)rR   r†   r‡   Úrequest_asyncrP   r:   r‰   s      r    Úget_page_asynczMetricList.get_page_asyncN  sJ   è ø€ ð Ÿ™×-Ñ-×4Ñ4×BÑBÀ5È*ÓU×UˆÜ˜$Ÿ-™-¨°4·>±>ÓBÐBð Vús   ‚4A¶A·&Ac                  ó   — y)r?   z<Twilio.Insights.V1.MetricList>r   rU   s    r    rJ   zMetricList.__repr__Z  rV   r   )r   r   r   r   rL   r8   r
   Úunsetr   rK   r   Úintr   r   ra   r	   rf   r   ri   rl   rP   r`   re   rŠ   r�   rJ   rM   rN   s   @r    rX   rX   e   sR  ø„ ðI ð I°3õ Ið$ <B¿<¹<ØEKÇ\Á\Ø#Ø#'ñ;àÐ/°Ð7Ñ8ð;ð Ð9¸6ÐAÑBð;ð ˜‰}ð	;ð
 ˜C‘=ð;ð 
�.Ñ	!ó;ð> <B¿<¹<ØEKÇ\Á\Ø#Ø#'ñAàÐ/°Ð7Ñ8ðAð Ð9¸6ÐAÑBðAð ˜‰}ð	Að
 ˜C‘=ðAð 
�~Ñ	&óAðB <B¿<¹<ØEKÇ\Á\Ø#Ø#'ñ
àÐ/°Ð7Ñ8ð
ð Ð9¸6ÐAÑBð
ð ˜‰}ð	
ð
 ˜C‘=ð
ð 
ˆnÑ	ó
ðD <B¿<¹<ØEKÇ\Á\Ø#Ø#'ñ
àÐ/°Ð7Ñ8ð
ð Ð9¸6ÐAÑBð
ð ˜‰}ð	
ð
 ˜C‘=ð
ð 
ˆnÑ	ó
ðF <B¿<¹<ØEKÇ\Á\Ø)/¯©Ø*0¯,©,Ø(.¯©ñ%CàÐ/°Ð7Ñ8ð%Cð Ð9¸6ÐAÑBð%Cð ˜#˜v˜+Ñ&ð	%Cð
 ˜3 ˜;Ñ'ð%Cð ˜˜f˜Ñ%ð%Cð 
ó%CðR <B¿<¹<ØEKÇ\Á\Ø)/¯©Ø*0¯,©,Ø(.¯©ñ%CàÐ/°Ð7Ñ8ð%Cð Ð9¸6ÐAÑBð%Cð ˜#˜v˜+Ñ&ð	%Cð
 ˜3 ˜;Ñ'ð%Cð ˜˜f˜Ñ%ð%Cð 
ó%CðN
C 3ð 
C¨:ó 
Cð
C¨sð 
C°zó 
Cð1˜#÷ 1r   rX   N)Ú__doc__Útypingr   r   r   r   r   r   r	   Útwilio.baser
   Útwilio.base.instance_resourcer   Útwilio.base.list_resourcer   Útwilio.base.versionr   Útwilio.base.pager   r   rP   rX   r   r   r    ú<module>r˜      sO   ðñ÷ M× LÑ LÝ å :Ý 2Ý 'Ý !ô5HÐ%ô 5Hôp1�ô 1ô*{1�õ {1r   