
    pi[                         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 ddlmZ  G d	 d
e      Z G d de      Z G d de      Z G d de      Zy)a  
    This code was generated by
   ___ _ _ _ _ _    _ ____    ____ ____ _    ____ ____ _  _ ____ ____ ____ ___ __   __
    |  | | | | |    | |  | __ |  | |__| | __ | __ |___ |\ | |___ |__/ |__|  | |  | |__/
    |  |_|_| | |___ | |__|    |__| |  | |    |__] |___ | \| |___ |  \ |  |  | |__| |  \

    Twilio - Messaging
    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)InstanceContext)InstanceResource)ListResource)Version)Pagec                   
    e Zd Z G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z G d de      Z	 	 d)dedeeef   dee   f fdZed*d        Zdefd!Zdefd"Zd+d#Zd+d$Zej>                  fd%e e
ef   dd fd&Z!ej>                  fd%e e
ef   dd fd'Z"defd(Z# xZ$S ),ChannelsSenderInstancec                   ,    e Zd ZdZdeeef   fdZd Zy)=ChannelsSenderInstance.MessagingV2ChannelsSenderConfiguration)  
        :ivar waba_id: The ID of the WhatsApp Business Account (WABA) to use for this sender.
        :ivar verification_method: The verification method.
        :ivar verification_code: The verification code.
        :ivar voice_application_sid: The SID of the Twilio Voice application.
        payloadc                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Nwaba_idverification_methodverification_codevoice_application_sidgetr   r   r   r   selfr   s     j/opt/services/ai/voice_agent/venv/lib/python3.12/site-packages/twilio/rest/messaging/v2/channels_sender.py__init__zFChannelsSenderInstance.MessagingV2ChannelsSenderConfiguration.__init__"   O    *1++i*@DL12 $ 5<KK@S4TD"8?'9D&    c                 `    | j                   | j                  | j                  | j                  dS Nr   r   r   r   r&   r   s    r    to_dictzEChannelsSenderInstance.MessagingV2ChannelsSenderConfiguration.to_dict-   .    <<'+'?'?%)%;%;)-)C)C	 r#   N	__name__
__module____qualname____doc__r   strr   r!   r(    r#   r    &MessagingV2ChannelsSenderConfigurationr           			DcN 			r#   r1   c                   ,    e Zd ZdZdeeef   fdZd Zy)7ChannelsSenderInstance.MessagingV2ChannelsSenderProfile|  
        :ivar name: The name of the sender. Required for WhatsApp senders and must follow [Meta's display name guidelines](https://www.facebook.com/business/help/757569725593362).
        :ivar about: The profile about text for the sender.
        :ivar address: The address of the sender.
        :ivar description: The description of the sender.
        :ivar logo_url: The logo URL of the sender.
        :ivar banner_url: The banner URL of the sender.
        :ivar privacy_url: The privacy URL of the sender. Must be a publicly accessible HTTP or HTTPS URI associated with the sender.
        :ivar terms_of_service_url: The terms of service URL of the sender.
        :ivar accent_color: The color theme of the sender. Must be in hex format and have at least a 4:5:1 contrast ratio against white.
        :ivar vertical: The vertical of the sender. Allowed values are: - `Automotive` - `Beauty, Spa and Salon` - `Clothing and Apparel` - `Education` - `Entertainment` - `Event Planning and Service` - `Finance and Banking` - `Food and Grocery` - `Public Service` - `Hotel and Lodging` - `Medical and Health` - `Non-profit` - `Professional Services` - `Shopping and Retail` - `Travel and Transportation` - `Restaurant` - `Other`
        :ivar websites: The websites of the sender.
        :ivar emails: The emails of the sender.
        :ivar phone_numbers: The phone numbers of the sender.
        r   c                 @   |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d	      | _	        |j                  d
      | _
        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Nnameaboutaddressdescriptionlogo_url
banner_urlprivacy_urlterms_of_service_urlaccent_colorverticalwebsitesemailsphone_numbersr   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   r   s     r    r!   z@ChannelsSenderInstance.MessagingV2ChannelsSenderProfile.__init__F       '.{{6':DI(/G(<DJ*1++i*@DL.5kk-.HD+2;;z+BDM-4[[-FDO.5kk-.HD7>{{&8D% 07{{>/JD+2;;z+BDM9@Z9PDM7>{{87LDK>Ekk?Dr#   c                 &   | j                   | j                  | j                  | j                  | j                  | j
                  | j                  | j                  | j                  | j                  | j                  | j                  | j                  dS Nr8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rI   r'   s    r    r(   z?ChannelsSenderInstance.MessagingV2ChannelsSenderProfile.to_dictZ   q    		<<#// MM"oo#//(,(A(A $ 1 1 MM MM++!%!3!3 r#   Nr*   r0   r#   r     MessagingV2ChannelsSenderProfiler4   5        	 	DcN 	(	r#   rK   c                   ,    e Zd ZdZdeeef   fdZd Zy)LChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseEmails3
        :ivar email:
        :ivar label:
        r   c                 \    |j                  d      | _        |j                  d      | _        y Nemaillabelr   rR   rS   r   s     r    r!   zUChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseEmails.__init__q   "    (/G(<DJ(/G(<DJr#   c                 4    | j                   | j                  dS N) rX   rR   rS   r'   s    r    r(   zTChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseEmails.to_dictv       JJJJ r#   Nr*   r0   r#   r    5MessagingV2ChannelsSenderProfileGenericResponseEmailsrN   k        	
	=DcN 	=
	r#   r[   c                   ,    e Zd ZdZdeeef   fdZd Zy)RChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers:
        :ivar phone_number:
        :ivar label:
        r   c                 \    |j                  d      | _        |j                  d      | _        y Nphone_numberrS   r   rb   rS   r   s     r    r!   z[ChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.__init__   #    /6{{>/JD(/G(<DJr#   c                 4    | j                   | j                  dS rW   rb   rS   r'   s    r    r(   zZChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.to_dict       %%JJ r#   Nr*   r0   r#   r    ;MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbersr^   |   r\   r#   rh   c                   ,    e Zd ZdZdeeef   fdZd Zy)NChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseWebsites5
        :ivar website:
        :ivar label:
        r   c                 \    |j                  d      | _        |j                  d      | _        y NwebsiterS   r   rn   rS   r   s     r    r!   zWChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseWebsites.__init__   "    *1++i*@DL(/G(<DJr#   c                 4    | j                   | j                  dS rW   rn   rS   r'   s    r    r(   zVChannelsSenderInstance.MessagingV2ChannelsSenderProfileGenericResponseWebsites.to_dict       LLJJ r#   Nr*   r0   r#   r    7MessagingV2ChannelsSenderProfileGenericResponseWebsitesrj      r\   r#   rt   c                   ,    e Zd ZdZdeeef   fdZd Zy)>ChannelsSenderInstance.MessagingV2ChannelsSenderRequestsCreate
        :ivar sender_id: The ID of the sender in `whatsapp:<E.164_PHONE_NUMBER>` format.
        :ivar configuration:
        :ivar webhook:
        :ivar profile:
        r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y N	sender_idconfigurationwebhookprofiler   rz   r{   r|   r}   r   s     r    r!   zGChannelsSenderInstance.MessagingV2ChannelsSenderRequestsCreate.__init__   R    ,3KK,DDN O, 
 I& L
 I& Lr#   c                    | j                   | j                  | j                  j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS N)rz   r{   r|   r}   rz   r{   r(   r|   r}   r'   s    r    r(   zFChannelsSenderInstance.MessagingV2ChannelsSenderRequestsCreate.to_dict   ~    !^^ ))5 &&..059\\5M4<<//1SW59\\5M4<<//1	 	 TX	 	r#   Nr*   r0   r#   r    'MessagingV2ChannelsSenderRequestsCreaterv           		'DcN 	'
	r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)>ChannelsSenderInstance.MessagingV2ChannelsSenderRequestsUpdateT
        :ivar configuration:
        :ivar webhook:
        :ivar profile:
        r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        y Nr{   r|   r}   r   r{   r|   r}   r   s     r    r!   zGChannelsSenderInstance.MessagingV2ChannelsSenderRequestsUpdate.__init__   B     O, 
 I& L
 I& Lr#   c                     | j                   | j                   j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS N)r{   r|   r}   r{   r(   r|   r}   r'   s    r    r(   zFChannelsSenderInstance.MessagingV2ChannelsSenderRequestsUpdate.to_dict   w     ))5 &&..059\\5M4<<//1SW59\\5M4<<//1  TX r#   Nr*   r0   r#   r    'MessagingV2ChannelsSenderRequestsUpdater           	
	'DcN 
	'		r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)7ChannelsSenderInstance.MessagingV2ChannelsSenderWebhook  
        :ivar callback_url: The URL to send the webhook to.
        :ivar callback_method: The HTTP method for the webhook.
        :ivar fallback_url: The URL to send the fallback webhook to.
        :ivar fallback_method: The HTTP method for the fallback webhook.
        :ivar status_callback_url: The URL to send the status callback to.
        :ivar status_callback_method: The HTTP method for the status callback.
        r   c                    |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Ncallback_urlcallback_methodfallback_urlfallback_methodstatus_callback_urlstatus_callback_methodr   r   r   r   r   r   r   r   s     r    r!   z@ChannelsSenderInstance.MessagingV2ChannelsSenderWebhook.__init__   x    /6{{>/JDKR;;!LD  07{{>/JDKR;;!LD  7>kkBW6XD$9@(:D'r#   c                     | j                   | j                  | j                  | j                  | j                  | j
                  dS Nr   r   r   r   r   r   r   r'   s    r    r(   z?ChannelsSenderInstance.MessagingV2ChannelsSenderWebhook.to_dict   B     $ 1 1#'#7#7 $ 1 1#'#7#7'+'?'?*.*E*E r#   Nr*   r0   r#   r     MessagingV2ChannelsSenderWebhookr           		DcN 		r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy),ChannelsSenderInstance.MessagingV2RcsCarrieru
        :ivar name: The name of the carrier. For example, `Verizon` or `AT&T` for US.
        :ivar status:
        r   c                 \    |j                  d      | _        |j                  d      | _        y Nr8   statusr   r8   r   r   s     r    r!   z5ChannelsSenderInstance.MessagingV2RcsCarrier.__init__  "    '.{{6':DIAHXAVDKr#   c                 p    | j                   | j                  | j                  j                         dS d dS rW   r8   r   r(   r'   s    r    r(   z4ChannelsSenderInstance.MessagingV2RcsCarrier.to_dict  9    II-1[[-DDKK'') JN r#   Nr*   r0   r#   r    MessagingV2RcsCarrierr      "    	
	WDcN 	W
	r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)>ChannelsSenderInstance.MessagingV2RcsComplianceCountryResponse  
        :ivar country: The ISO 3166-1 alpha-2 country code.
        :ivar registration_sid: The default compliance registration SID (e.g., from CR-Google) that applies to all countries unless overridden in the `countries` array.
        :ivar status:
        :ivar carriers:
        r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y Ncountryregistration_sidr   carriersr   r   r   r   r   r   s     r    r!   zGChannelsSenderInstance.MessagingV2RcsComplianceCountryResponse.__init__  H    *1++i*@DL3:;;?Q3RD!AHXAVDKCJ;;DDMr#   c                     | j                   | j                  | j                  | j                  j                         nd | j                  *| j                  D cg c]  }|j                          c}dS d dS c c}w N)rX   rX   rX   rX   r   r   r   r(   r   r   r   s     r    r(   zFChannelsSenderInstance.MessagingV2RcsComplianceCountryResponse.to_dict"  u    LL))-1[[-DDKK'')$ }}0 9=FHX%%'F	 	 	 	
 G   A8
Nr*   r0   r#   r    'MessagingV2RcsComplianceCountryResponser          		DcN 	
	r#   r   c                   0    e Zd ZdZdZdZdZdZdZdZ	dZ
d	Zy
)ChannelsSenderInstance.StatusCREATINGONLINEOFFLINEPENDING_VERIFICATION	VERIFYINGzONLINE:UPDATINGTWILIO_REVIEWDRAFTSTUBBEDN)r+   r,   r-   r   r   r   r   r   ONLINE_UPDATINGr   r   r   r0   r#   r    Statusr   .  s0    5	+'r#   r   c                   $    e Zd ZdZdZdZdZdZdZy)2ChannelsSenderInstance.MessagingV2RcsCarrierStatusUNKNOWN
UNLAUNCHEDCARRIER_REVIEWAPPROVEDREJECTED	SUSPENDEDN)	r+   r,   r-   r   r   r   r   r   r   r0   r#   r    MessagingV2RcsCarrierStatusr   9  s     !
)	r#   r   c                       e Zd ZdZdZdZdZy)2ChannelsSenderInstance.MessagingV2RcsCountryStatusr   r   r   r   N)r+   r,   r-   r   r   r   r   r0   r#   r    MessagingV2RcsCountryStatusr   A  s    '5r#   r   versionr   sidc                    t         |   |       |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _	        |j                  d      | _
        |j                  d	      | _        |j                  d
      | _        d|xs | j                  i| _        d | _        y )Nr   r   rz   r{   r|   r}   
propertiesoffline_reasons
complianceurl)superr!   r   r   r   rz   r{   r|   r}   r   r   r   r   	_solution_context)r   r   r   r   	__class__s       r    r!   zChannelsSenderInstance.__init__T  s     	!")++e"4AHXAV(/K(@,3KK,H&-kk)&<&-kk)&<)0\)B4;KK@Q4R)0\)B")++e"4 3?$((
 :>r#   returnc                     | j                   )t        | j                  | j                  d         | _         | j                   S )z
        Generate an instance context for the instance, the context is capable of
        performing various actions. All instance actions are proxied to the context

        :returns: ChannelsSenderContext for this ChannelsSenderInstance
        r   r   )r   ChannelsSenderContext_versionr   r'   s    r    _proxyzChannelsSenderInstance._proxyi  s9     == 1NN5)DM }}r#   c                 6    | j                   j                         S )q
        Deletes the ChannelsSenderInstance


        :returns: True if delete succeeds, False otherwise
        )r   deleter'   s    r    r   zChannelsSenderInstance.deletex  s     {{!!##r#   c                 R   K   | j                   j                          d{   S 7 w)
        Asynchronous coroutine that deletes the ChannelsSenderInstance


        :returns: True if delete succeeds, False otherwise
        N)r   delete_asyncr'   s    r    r   z#ChannelsSenderInstance.delete_async  s!      [[--////   '%'c                 6    | j                   j                         S )i
        Fetch the ChannelsSenderInstance


        :returns: The fetched ChannelsSenderInstance
        )r   fetchr'   s    r    r   zChannelsSenderInstance.fetch  s     {{  ""r#   c                 R   K   | j                   j                          d{   S 7 w)
        Asynchronous coroutine to fetch the ChannelsSenderInstance


        :returns: The fetched ChannelsSenderInstance
        N)r   fetch_asyncr'   s    r    r   z"ChannelsSenderInstance.fetch_async  s!      [[,,....r   ,messaging_v2_channels_sender_requests_updatec                 :    | j                   j                  |      S )
        Update the ChannelsSenderInstance

        :param messaging_v2_channels_sender_requests_update:

        :returns: The updated ChannelsSenderInstance
        r   )r   updater   r   s     r    r   zChannelsSenderInstance.update  s#     {{!!9e " 
 	
r#   c                 V   K   | j                   j                  |       d{   S 7 w)
        Asynchronous coroutine to update the ChannelsSenderInstance

        :param messaging_v2_channels_sender_requests_update:

        :returns: The updated ChannelsSenderInstance
        r   N)r   update_asyncr   s     r    r  z#ChannelsSenderInstance.update_async  s1      [[--9e . 
 
 	
 
s    )')c                     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>z2ChannelsSenderInstance.__repr__.<locals>.<genexpr>       SDAq7>>!Q/S   !z/<Twilio.Messaging.V2.ChannelsSenderInstance {}>joinr   itemsr
  r   contexts     r    __repr__zChannelsSenderInstance.__repr__  s6     ((SDNN<P<P<RSS@GGPPr#   )N)r   r   )r   r   )%r+   r,   r-   objectr1   rK   r[   rh   rt   r   r   r   r   r   r   r   r   r   r   r/   r   r   r!   propertyr   boolr   r   r   r   r
   unsetr   r   r  r  __classcell__r   s   @r    r   r      su    646 4l "f "& "& B& <!6 !F "& :	 	 f  6f 6 OS>>)-c3h>>Fsm>*  $ $0D 0#/ LL	
6;3V;7


 
"
* LL	
6;3V;7


 
"
"Q# Qr#   r   c                       e Zd Z G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Zdedef fdZdefdZdefdZdefdZdefdZej0                  fdee
ef   defdZej0                  fdee
ef   defdZdefd Z xZS )!r   c                   ,    e Zd ZdZdeeef   fdZd Zy)<ChannelsSenderContext.MessagingV2ChannelsSenderConfigurationr   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zEChannelsSenderContext.MessagingV2ChannelsSenderConfiguration.__init__  r"   r#   c                 `    | j                   | j                  | j                  | j                  dS r%   r&   r'   s    r    r(   zDChannelsSenderContext.MessagingV2ChannelsSenderConfiguration.to_dict  r)   r#   Nr*   r0   r#   r    r1   r     r2   r#   r1   c                   ,    e Zd ZdZdeeef   fdZd Zy)6ChannelsSenderContext.MessagingV2ChannelsSenderProfiler5   r   c                 @   |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d	      | _	        |j                  d
      | _
        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r7   rE   r   s     r    r!   z?ChannelsSenderContext.MessagingV2ChannelsSenderProfile.__init__  rF   r#   c                 &   | j                   | j                  | j                  | j                  | j                  | j
                  | j                  | j                  | j                  | j                  | j                  | j                  | j                  dS rH   rI   r'   s    r    r(   z>ChannelsSenderContext.MessagingV2ChannelsSenderProfile.to_dict
  rJ   r#   Nr*   r0   r#   r    rK   r$    rL   r#   rK   c                   ,    e Zd ZdZdeeef   fdZd Zy)KChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseEmailsrO   r   c                 \    |j                  d      | _        |j                  d      | _        y rQ   rT   r   s     r    r!   zTChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseEmails.__init__!  rU   r#   c                 4    | j                   | j                  dS rW   rY   r'   s    r    r(   zSChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseEmails.to_dict&  rZ   r#   Nr*   r0   r#   r    r[   r(    r\   r#   r[   c                   ,    e Zd ZdZdeeef   fdZd Zy)QChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbersr_   r   c                 \    |j                  d      | _        |j                  d      | _        y ra   rc   r   s     r    r!   zZChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.__init__2  rd   r#   c                 4    | j                   | j                  dS rW   rf   r'   s    r    r(   zYChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.to_dict7  rg   r#   Nr*   r0   r#   r    rh   r,  ,  r\   r#   rh   c                   ,    e Zd ZdZdeeef   fdZd Zy)MChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseWebsitesrk   r   c                 \    |j                  d      | _        |j                  d      | _        y rm   ro   r   s     r    r!   zVChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseWebsites.__init__C  rp   r#   c                 4    | j                   | j                  dS rW   rr   r'   s    r    r(   zUChannelsSenderContext.MessagingV2ChannelsSenderProfileGenericResponseWebsites.to_dictH  rs   r#   Nr*   r0   r#   r    rt   r0  =  r\   r#   rt   c                   ,    e Zd ZdZdeeef   fdZd Zy)=ChannelsSenderContext.MessagingV2ChannelsSenderRequestsCreaterw   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y ry   r~   r   s     r    r!   zFChannelsSenderContext.MessagingV2ChannelsSenderRequestsCreate.__init__V  r   r#   c                    | j                   | j                  | j                  j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS r   r   r'   s    r    r(   zEChannelsSenderContext.MessagingV2ChannelsSenderRequestsCreate.to_dictc  r   r#   Nr*   r0   r#   r    r   r4  N  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)=ChannelsSenderContext.MessagingV2ChannelsSenderRequestsUpdater   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zFChannelsSenderContext.MessagingV2ChannelsSenderRequestsUpdate.__init__v  r   r#   c                     | j                   | j                   j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS r   r   r'   s    r    r(   zEChannelsSenderContext.MessagingV2ChannelsSenderRequestsUpdate.to_dict  r   r#   Nr*   r0   r#   r    r   r8  o  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)6ChannelsSenderContext.MessagingV2ChannelsSenderWebhookr   r   c                    |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   z?ChannelsSenderContext.MessagingV2ChannelsSenderWebhook.__init__  r   r#   c                     | j                   | j                  | j                  | j                  | j                  | j
                  dS r   r   r'   s    r    r(   z>ChannelsSenderContext.MessagingV2ChannelsSenderWebhook.to_dict  r   r#   Nr*   r0   r#   r    r   r<    r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)+ChannelsSenderContext.MessagingV2RcsCarrierr   r   c                 \    |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   z4ChannelsSenderContext.MessagingV2RcsCarrier.__init__  r   r#   c                 p    | j                   | j                  | j                  j                         dS d dS rW   r   r'   s    r    r(   z3ChannelsSenderContext.MessagingV2RcsCarrier.to_dict  r   r#   Nr*   r0   r#   r    r   r@    r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)=ChannelsSenderContext.MessagingV2RcsComplianceCountryResponser   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zFChannelsSenderContext.MessagingV2RcsComplianceCountryResponse.__init__  r   r#   c                     | j                   | j                  | j                  | j                  j                         nd | j                  *| j                  D cg c]  }|j                          c}dS d dS c c}w r   r   r   s     r    r(   zEChannelsSenderContext.MessagingV2RcsComplianceCountryResponse.to_dict  r   r   Nr*   r0   r#   r    r   rD    r   r#   r   r   r   c                 x    t         |   |       d|i| _         dj                  di | j                  | _        y)z
        Initialize the ChannelsSenderContext

        :param version: Version that contains the resource
        :param sid: The SID of the sender.
        r   z/Channels/Senders/{sid}Nr0   )r   r!   r   r
  _uri)r   r   r   r   s      r    r!   zChannelsSenderContext.__init__  s@     	! 3
 5-44Ft~~F	r#   r   c                 |    t        j                  i       }| j                  j                  d| j                  |      S )r   DELETEmethoduriheaders)r
   ofr   r   rH  r   rN  s     r    r   zChannelsSenderContext.delete  s1     ))B-}}##8G#TTr#   c                    K   t        j                  i       }| j                  j                  d| j                  |       d{   S 7 w)r   rJ  rK  N)r
   rO  r   r   rH  rP  s     r    r   z"ChannelsSenderContext.delete_async  sF      ))B-]]//G 0 
 
 	
 
s   AA
AA
c                     t        j                  i       }d|d<   | j                  j                  d| j                  |      }t        | j                  || j                  d         S )r   application/jsonAcceptGETrK  r   r   )r
   rO  r   r   rH  r   r   r   rN  r   s      r    r   zChannelsSenderContext.fetch  s]     ))B-.--%%U		7%S%MMu%
 	
r#   c                    K   t        j                  i       }d|d<   | j                  j                  d| j                  |       d{   }t        | j                  || j                  d         S 7 )w)r   rS  rT  rU  rK  Nr   r   )r
   rO  r   r   rH  r   r   rV  s      r    r   z!ChannelsSenderContext.fetch_async  sr      ))B-.11dii 2 
 
 &MMu%
 	
	
s   AA4A2	*A4r   c                     |j                         }t        j                  i       }d|d<   d|d<   | j                  j	                  d| j
                  ||      }t        | j                  || j                  d         S )r   rS  Content-TyperT  POSTrL  rM  datarN  r   r   )r(   r
   rO  r   r   rH  r   r   r   r   r\  rN  r   s        r    r   zChannelsSenderContext.update1  sx     <CCE))B-"4.--&&tyytW ' 
 &dmmW$..QVBWXXr#   c                   K   |j                         }t        j                  i       }d|d<   d|d<   | j                  j	                  d| j
                  ||       d{   }t        | j                  || j                  d         S 7 )w)	r  rS  rY  rT  rZ  r[  Nr   r   )r(   r
   rO  r   r  rH  r   r   r]  s        r    r  z"ChannelsSenderContext.update_asyncL  s      <CCE))B-"4.22tyytW 3 
 
 &dmmW$..QVBWXX	
s   AB
B*B
c                     dj                  d | j                  j                         D              }dj                  |      S )r  r  c              3   F   K   | ]  \  }}d j                  ||        ywr  r	  r  s      r    r  z1ChannelsSenderContext.__repr__.<locals>.<genexpr>m  r  r  z.<Twilio.Messaging.V2.ChannelsSenderContext {}>r  r  s     r    r  zChannelsSenderContext.__repr__g  s6     ((SDNN<P<P<RSS?FFwOOr#   )r+   r,   r-   r  r1   rK   r[   rh   rt   r   r   r   r   r   r   r/   r!   r  r   r   r   r   r   r
   r  r   r   r  r  r  r  s   @r    r   r     s6    646 4l "f "& "& B& <!6 !F "& :G Gc G
U 
U
D 

- 
(
#9 
4 LL	Y6;3V;7
Y
 
 Y> LL	Y6;3V;7
Y
 
 Y6P# Pr#   r   c                   2    e Zd Zdeeef   defdZdefdZy)ChannelsSenderPager   r   c                 .    t        | j                  |      S )zt
        Build an instance of ChannelsSenderInstance

        :param payload: Payload response from the API
        )r   r   r   s     r    get_instancezChannelsSenderPage.get_instances  s     &dmmW==r#   c                      y)r  z(<Twilio.Messaging.V2.ChannelsSenderPage>r0   r'   s    r    r  zChannelsSenderPage.__repr__{       :r#   N)	r+   r,   r-   r   r/   r   r   rd  r  r0   r#   r    rb  rb  q  s*    >DcN >7M >:# :r#   rb  c                       e Zd Z G d de      Z G d de      Z G d de      Z G d de      Z G d	 d
e      Z G d de      Z	 G d de      Z
 G d de      Z G d de      Z G d de      Zdef fdZde	defdZde	defdZej(                  ddfdeeef   dee   dee   dee   fdZej(                  ddfdeeef   dee   dee   dee   fd Zej(                  ddfdeeef   dee   dee   dee   fd!Zej(                  ddfdeeef   dee   dee   dee   fd"Zej(                  ej(                  ej(                  ej(                  fdee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(                  fdee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de%fd+Z&d*ede%fd,Z'defd-Z( xZ)S ).ChannelsSenderListc                   ,    e Zd ZdZdeeef   fdZd Zy)9ChannelsSenderList.MessagingV2ChannelsSenderConfigurationr   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zBChannelsSenderList.MessagingV2ChannelsSenderConfiguration.__init__  r"   r#   c                 `    | j                   | j                  | j                  | j                  dS r%   r&   r'   s    r    r(   zAChannelsSenderList.MessagingV2ChannelsSenderConfiguration.to_dict  r)   r#   Nr*   r0   r#   r    r1   rj    r2   r#   r1   c                   ,    e Zd ZdZdeeef   fdZd Zy)3ChannelsSenderList.MessagingV2ChannelsSenderProfiler5   r   c                 @   |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d	      | _	        |j                  d
      | _
        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r7   rE   r   s     r    r!   z<ChannelsSenderList.MessagingV2ChannelsSenderProfile.__init__  rF   r#   c                 &   | j                   | j                  | j                  | j                  | j                  | j
                  | j                  | j                  | j                  | j                  | j                  | j                  | j                  dS rH   rI   r'   s    r    r(   z;ChannelsSenderList.MessagingV2ChannelsSenderProfile.to_dict  rJ   r#   Nr*   r0   r#   r    rK   rn    rL   r#   rK   c                   ,    e Zd ZdZdeeef   fdZd Zy)HChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseEmailsrO   r   c                 \    |j                  d      | _        |j                  d      | _        y rQ   rT   r   s     r    r!   zQChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseEmails.__init__  rU   r#   c                 4    | j                   | j                  dS rW   rY   r'   s    r    r(   zPChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseEmails.to_dict  rZ   r#   Nr*   r0   r#   r    r[   rr    r\   r#   r[   c                   ,    e Zd ZdZdeeef   fdZd Zy)NChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbersr_   r   c                 \    |j                  d      | _        |j                  d      | _        y ra   rc   r   s     r    r!   zWChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.__init__  rd   r#   c                 4    | j                   | j                  dS rW   rf   r'   s    r    r(   zVChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponsePhoneNumbers.to_dict  rg   r#   Nr*   r0   r#   r    rh   rv    r\   r#   rh   c                   ,    e Zd ZdZdeeef   fdZd Zy)JChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseWebsitesrk   r   c                 \    |j                  d      | _        |j                  d      | _        y rm   ro   r   s     r    r!   zSChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseWebsites.__init__  rp   r#   c                 4    | j                   | j                  dS rW   rr   r'   s    r    r(   zRChannelsSenderList.MessagingV2ChannelsSenderProfileGenericResponseWebsites.to_dict  rs   r#   Nr*   r0   r#   r    rt   rz    r\   r#   rt   c                   ,    e Zd ZdZdeeef   fdZd Zy):ChannelsSenderList.MessagingV2ChannelsSenderRequestsCreaterw   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y ry   r~   r   s     r    r!   zCChannelsSenderList.MessagingV2ChannelsSenderRequestsCreate.__init__  r   r#   c                    | j                   | j                  | j                  j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS r   r   r'   s    r    r(   zBChannelsSenderList.MessagingV2ChannelsSenderRequestsCreate.to_dict  r   r#   Nr*   r0   r#   r    r   r~  
  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy):ChannelsSenderList.MessagingV2ChannelsSenderRequestsUpdater   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zCChannelsSenderList.MessagingV2ChannelsSenderRequestsUpdate.__init__2  r   r#   c                     | j                   | j                   j                         nd | j                  | j                  j                         nd | j                  | j                  j                         dS d dS r   r   r'   s    r    r(   zBChannelsSenderList.MessagingV2ChannelsSenderRequestsUpdate.to_dict>  r   r#   Nr*   r0   r#   r    r   r  +  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)3ChannelsSenderList.MessagingV2ChannelsSenderWebhookr   r   c                    |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   z<ChannelsSenderList.MessagingV2ChannelsSenderWebhook.__init__S  r   r#   c                     | j                   | j                  | j                  | j                  | j                  | j
                  dS r   r   r'   s    r    r(   z;ChannelsSenderList.MessagingV2ChannelsSenderWebhook.to_dictb  r   r#   Nr*   r0   r#   r    r   r  I  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy)(ChannelsSenderList.MessagingV2RcsCarrierr   r   c                 \    |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   z1ChannelsSenderList.MessagingV2RcsCarrier.__init__r  r   r#   c                 p    | j                   | j                  | j                  j                         dS d dS rW   r   r'   s    r    r(   z0ChannelsSenderList.MessagingV2RcsCarrier.to_dictw  r   r#   Nr*   r0   r#   r    r   r  l  r   r#   r   c                   ,    e Zd ZdZdeeef   fdZd Zy):ChannelsSenderList.MessagingV2RcsComplianceCountryResponser   r   c                     |j                  d      | _        |j                  d      | _        |j                  d      | _        |j                  d      | _        y r   r   r   s     r    r!   zCChannelsSenderList.MessagingV2RcsComplianceCountryResponse.__init__  r   r#   c                     | j                   | j                  | j                  | j                  j                         nd | j                  *| j                  D cg c]  }|j                          c}dS d dS c c}w r   r   r   s     r    r(   zBChannelsSenderList.MessagingV2RcsComplianceCountryResponse.to_dict  r   r   Nr*   r0   r#   r    r   r  }  r   r#   r   r   c                 2    t         |   |       d| _        y)zp
        Initialize the ChannelsSenderList

        :param version: Version that contains the resource

        z/Channels/SendersN)r   r!   rH  )r   r   r   s     r    r!   zChannelsSenderList.__init__  s     	!'	r#   ,messaging_v2_channels_sender_requests_creater   c                     |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||      }t        | j                  |      S )z
        Create the ChannelsSenderInstance

        :param messaging_v2_channels_sender_requests_create:

        :returns: The created ChannelsSenderInstance
        rY  !application/x-www-form-urlencodedrS  rT  rZ  r[  )r(   r
   rO  r   createrH  r   r   r  r\  rN  r   s        r    r  zChannelsSenderList.create  ss     <CCE))^-PQR"4.--&&tyytW ' 
 &dmmW==r#   c                    K   |j                         }t        j                  ddi      }d|d<   d|d<   | j                  j	                  d| j
                  ||       d{   }t        | j                  |      S 7 w)z
        Asynchronously create the ChannelsSenderInstance

        :param messaging_v2_channels_sender_requests_create:

        :returns: The created ChannelsSenderInstance
        rY  r  rS  rT  rZ  r[  N)r(   r
   rO  r   create_asyncrH  r   r  s        r    r  zChannelsSenderList.create_async  s      <CCE))^-PQR"4.22tyytW 3 
 
 &dmmW==	
s   AA= A;!A=Nchannellimit	page_sizec                     | j                   j                  ||      }| j                  ||d         }| j                   j                  ||d         S )a  
        Streams ChannelsSenderInstance 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 str channel:
        :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  r  r  )r   read_limitspagestreamr   r  r  r  limitsr  s         r    r  zChannelsSenderList.stream  sL    , **5)<yyF;4GyH}}##D&/::r#   c                    K   | j                   j                  ||      }| j                  ||d          d{   }| j                   j                  ||d         S 7 #w)a  
        Asynchronously streams ChannelsSenderInstance 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 str channel:
        :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  )r   r  
page_asyncstream_asyncr  s         r    r  zChannelsSenderList.stream_async  sY     , **5)<__W{@S_TT}}))$w@@ Us   6AA$Ac                 <    t        | j                  |||            S )a  
        Lists ChannelsSenderInstance records from the API as a list.
        Unlike stream(), this operation is eager and will load `limit` records into
        memory before returning.

        :param str channel:
        :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
        r  r  r  )listr  )r   r  r  r  s       r    r  zChannelsSenderList.list  s+    * KK#  
 	
r#   c                 |   K   | j                  |||       d{   2 cg c3 d{   }|7 7 	6 c}S c c}w w)a,  
        Asynchronously lists ChannelsSenderInstance records from the API as a list.
        Unlike stream(), this operation is eager and will load `limit` records into
        memory before returning.

        :param str channel:
        :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
        r  N)r  )r   r  r  r  records        r    
list_asynczChannelsSenderList.list_async*  sW     . '+&7&7# '8 ' !
 
 !
 
 	
 
s0   </<731
37<37<
page_tokenpage_numberc                     t        j                  ||||d      }t        j                  ddi      }d|d<   | j                  j                  d| j                  ||      }t        | j                  |      S )a  
        Retrieve a single page of ChannelsSenderInstance records from the API.
        Request is executed immediately

        :param channel:
        :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 ChannelsSenderInstance
        Channel	PageTokenr   PageSizerY  r  rS  rT  rU  rL  rM  paramsrN  )r
   rO  r   r  rH  rb  r   r  r  r  r  r\  rN  responses           r    r  zChannelsSenderList.pageH  s|    $ yy"'#%	
 ))^-PQR.==%%diig & 
 "$--::r#   c                   K   t        j                  ||||d      }t        j                  ddi      }d|d<   | j                  j                  d| j                  ||       d{   }t        | j                  |      S 7 w)	a  
        Asynchronously retrieve a single page of ChannelsSenderInstance records from the API.
        Request is executed immediately

        :param channel:
        :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 ChannelsSenderInstance
        r  rY  r  rS  rT  rU  r  N)r
   rO  r   r  rH  rb  r  s           r    r  zChannelsSenderList.page_asyncl  s     $ yy"'#%	
 ))^-PQR.11diig 2 
 
 "$--::
s   A#B%B &B
target_urlc                     | j                   j                  j                  j                  d|      }t	        | j                   |      S )a  
        Retrieve a specific page of ChannelsSenderInstance records from the API.
        Request is executed immediately

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

        :returns: Page of ChannelsSenderInstance
        rU  )r   domaintwiliorequestrb  r   r  r  s      r    get_pagezChannelsSenderList.get_page  s7     ==''..66ujI!$--::r#   c                    K   | j                   j                  j                  j                  d|       d{   }t	        | j                   |      S 7 w)a  
        Asynchronously retrieve a specific page of ChannelsSenderInstance records from the API.
        Request is executed immediately

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

        :returns: Page of ChannelsSenderInstance
        rU  N)r   r  r  request_asyncrb  r  s      r    get_page_asyncz!ChannelsSenderList.get_page_async  sD      --44BB5*UU!$--:: Vs   4AAAr   c                 0    t        | j                  |      S z`
        Constructs a ChannelsSenderContext

        :param sid: The SID of the sender.
        r   r   r   r   r   s     r    r   zChannelsSenderList.get       %T]]<<r#   c                 0    t        | j                  |      S r  r  r  s     r    __call__zChannelsSenderList.__call__  r  r#   c                      y)r  z(<Twilio.Messaging.V2.ChannelsSenderList>r0   r'   s    r    r  zChannelsSenderList.__repr__  rf  r#   )*r+   r,   r-   r  r1   rK   r[   rh   rt   r   r   r   r   r   r   r!   r   r  r  r
   r  r   r/   r   intr   r  r	   r  r   r  r  rb  r  r  r  r  r   r   r  r  r  r  s   @r    rh  rh    sN    646 4l "f "& "& B& <!6 !F "& :	( 	(>6]> 
 >2>6]> 
 >6 '-ll##'	;sF{#; }; C=	;
 
(	);: '-ll##'	AsF{#A }A C=	A
 
-	.A: '-ll##'	
sF{#
 }
 C=	

 
$	%
> '-ll##'	
sF{#
 }
 C=	

 
$	%
@ '-ll)/*0,,(.";sF{#"; #v+&"; 3;'	";
 f%"; 
";L '-ll)/*0,,(.";sF{#"; #v+&"; 3;'	";
 f%"; 
";H
;3 
;+= 
;
;s 
;7I 
;=s =4 ==C =$9 =:# :r#   rh  N)r.   typingr   r   r   r   r   r   r	   twilio.baser
   twilio.base.instance_contextr   twilio.base.instance_resourcer   twilio.base.list_resourcer   twilio.base.versionr   twilio.base.pager   r   r   rb  rh  r0   r#   r    <module>r     se    M L L  8 : 2 ' !mQ- mQ`fPO fPR: :&z: z:r#   