B
    `cE                 @   s   d 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	 d	e	ZG d
d deZG dd deZG dd deZdS )za
This code was generated by
\ / _    _  _|   _  _
 | (_)\/(_)(_|\/| |(/_  v1.0.0
      /       /
    )deserialize)values)InstanceContext)InstanceResource)ListResource)Pagec                   s4   e Zd Z fddZdd Zdd Zdd Z  ZS )	ConfigurationListc                s   t t| | i | _dS )a	  
        Initialize the ConfigurationList

        :param Version version: Version that contains the resource

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationList
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationList
        N)superr   __init__	_solution)selfversion)	__class__ T/home/dcms/DCMS/lib/python3.7/site-packages/twilio/rest/flex_api/v1/configuration.pyr
      s    	zConfigurationList.__init__c             C   s
   t | jS )z
        Constructs a ConfigurationContext

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        )ConfigurationContext_version)r   r   r   r   get!   s    zConfigurationList.getc             C   s
   t | jS )z
        Constructs a ConfigurationContext

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        )r   r   )r   r   r   r   __call__*   s    zConfigurationList.__call__c             C   s   dS )zz
        Provide a friendly representation

        :returns: Machine friendly representation
        :rtype: str
        z%<Twilio.FlexApi.V1.ConfigurationList>r   )r   r   r   r   __repr__3   s    zConfigurationList.__repr__)__name__
__module____qualname__r
   r   r   r   __classcell__r   r   )r   r   r      s   		r   c                   s,   e Zd Z fddZdd Zdd Z  ZS )ConfigurationPagec                s   t t| || || _dS )aA  
        Initialize the ConfigurationPage

        :param Version version: Version that contains the resource
        :param Response response: Response from the API

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationPage
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationPage
        N)r	   r   r
   r   )r   r   responseZsolution)r   r   r   r
   ?   s    
zConfigurationPage.__init__c             C   s   t | j|S )a  
        Build an instance of ConfigurationInstance

        :param dict payload: Payload response from the API

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        )ConfigurationInstancer   )r   payloadr   r   r   get_instanceN   s    	zConfigurationPage.get_instancec             C   s   dS )zz
        Provide a friendly representation

        :returns: Machine friendly representation
        :rtype: str
        z%<Twilio.FlexApi.V1.ConfigurationPage>r   )r   r   r   r   r   Y   s    zConfigurationPage.__repr__)r   r   r   r
   r   r   r   r   r   )r   r   r   =   s   r   c                   sB   e Zd Z fddZejfddZdd Zdd Zd	d
 Z	  Z
S )r   c                s*   t t| | i | _djf | j| _dS )a  
        Initialize the ConfigurationContext

        :param Version version: Version that contains the resource

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        z/ConfigurationN)r	   r   r
   r   format_uri)r   r   )r   r   r   r
   e   s    	zConfigurationContext.__init__c             C   s.   t d|i}| jjd| j|d}t| j|S )a  
        Fetch the ConfigurationInstance

        :param unicode ui_version: The Pinned UI version of the Configuration resource to fetch

        :returns: The fetched ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        Z	UiVersionGET)methoduriparams)r   Zofr   fetchr    r   )r   
ui_versiondatar   r   r   r   r%   t   s    	zConfigurationContext.fetchc             C   s   | j jd| jd}t| j |S )z
        Create the ConfigurationInstance

        :returns: The created ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        POST)r"   r#   )r   creater    r   )r   r   r   r   r   r)      s    zConfigurationContext.createc             C   s   | j jd| jd}t| j |S )z
        Update the ConfigurationInstance

        :returns: The updated ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        r(   )r"   r#   )r   updater    r   )r   r   r   r   r   r*      s    zConfigurationContext.updatec             C   s$   d dd | j D }d|S )zz
        Provide a friendly representation

        :returns: Machine friendly representation
        :rtype: str
         c             s   s   | ]\}}d  ||V  qdS )z{}={}N)r   ).0kvr   r   r   	<genexpr>   s    z0ConfigurationContext.__repr__.<locals>.<genexpr>z+<Twilio.FlexApi.V1.ConfigurationContext {}>)joinr   itemsr   )r   contextr   r   r   r      s    zConfigurationContext.__repr__)r   r   r   r
   r   unsetr%   r)   r*   r   r   r   r   )r   r   r   c   s
   r   c                   s  e Zd ZG dd deZ fddZedd Zedd Zed	d
 Z	edd Z
edd Zedd Zedd Zedd Zedd Zedd Zedd Zedd Zedd Zedd  Zed!d" Zed#d$ Zed%d& Zed'd( Zed)d* Zed+d, Zed-d. Zed/d0 Zed1d2 Zed3d4 Zed5d6 Zed7d8 Z ed9d: Z!ed;d< Z"ed=d> Z#ed?d@ Z$edAdB Z%edCdD Z&edEdF Z'edGdH Z(edIdJ Z)edKdL Z*edMdN Z+edOdP Z,e-j.fdQdRZ/dSdT Z0dUdV Z1dWdX Z2  Z3S )Yr   c               @   s   e Zd ZdZdZdZdS )zConfigurationInstance.StatusokZ
inprogressZ
notstartedN)r   r   r   OKZ
INPROGRESSZ
NOTSTARTEDr   r   r   r   Status   s   r6   c          '      s\  t t| | |dt|dt|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$|d%d&%| _d'| _i | _d'S )(z
        Initialize the ConfigurationInstance

        :returns: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        account_siddate_createddate_updated
attributesstatustaskrouter_workspace_sidtaskrouter_target_workflow_sidtaskrouter_target_taskqueue_sidtaskrouter_taskqueuestaskrouter_skillstaskrouter_worker_channelstaskrouter_worker_attributestaskrouter_offline_activity_sidruntime_domainmessaging_service_instance_sidchat_service_instance_sidflex_service_instance_sidui_languageui_attributesui_dependenciesr&   service_versioncall_recording_enabledcall_recording_webhook_urlcrm_enabledcrm_typecrm_callback_urlcrm_fallback_urlcrm_attributespublic_attributesplugin_service_enabledplugin_service_attributesintegrationsoutbound_call_flowsserverless_service_sidsqueue_stats_configurationurl)%r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   r&   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   N)	r	   r   r
   r   r   iso8601_datetime_properties_contextr   )r   r   r   )r   r   r   r
      sP    zConfigurationInstance.__init__c             C   s   | j dkrt| j| _ | j S )aA  
        Generate an instance context for the instance, the context is capable of
        performing various actions.  All instance actions are proxied to the context

        :returns: ConfigurationContext for this ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationContext
        N)r]   r   r   )r   r   r   r   _proxy   s    	
zConfigurationInstance._proxyc             C   s
   | j d S )zd
        :returns: The SID of the Account that created the resource
        :rtype: unicode
        r7   )r\   )r   r   r   r   r7      s    z!ConfigurationInstance.account_sidc             C   s
   | j d S )z
        :returns: The ISO 8601 date and time in GMT when the Configuration resource was created
        :rtype: datetime
        r8   )r\   )r   r   r   r   r8      s    z"ConfigurationInstance.date_createdc             C   s
   | j d S )z
        :returns: The ISO 8601 date and time in GMT when the Configuration resource was last updated
        :rtype: datetime
        r9   )r\   )r   r   r   r   r9      s    z"ConfigurationInstance.date_updatedc             C   s
   | j d S )zb
        :returns: An object that contains application-specific data
        :rtype: dict
        r:   )r\   )r   r   r   r   r:     s    z ConfigurationInstance.attributesc             C   s
   | j d S )zj
        :returns: The status of the Flex onboarding
        :rtype: ConfigurationInstance.Status
        r;   )r\   )r   r   r   r   r;     s    zConfigurationInstance.statusc             C   s
   | j d S )zW
        :returns: The SID of the TaskRouter Workspace
        :rtype: unicode
        r<   )r\   )r   r   r   r   r<     s    z.ConfigurationInstance.taskrouter_workspace_sidc             C   s
   | j d S )z]
        :returns: The SID of the TaskRouter target Workflow
        :rtype: unicode
        r=   )r\   )r   r   r   r   r=     s    z4ConfigurationInstance.taskrouter_target_workflow_sidc             C   s
   | j d S )z^
        :returns: The SID of the TaskRouter Target TaskQueue
        :rtype: unicode
        r>   )r\   )r   r   r   r   r>   &  s    z5ConfigurationInstance.taskrouter_target_taskqueue_sidc             C   s
   | j d S )zR
        :returns: The list of TaskRouter TaskQueues
        :rtype: dict
        r?   )r\   )r   r   r   r   r?   .  s    z+ConfigurationInstance.taskrouter_taskqueuesc             C   s
   | j d S )z]
        :returns: The Skill description for TaskRouter workers
        :rtype: dict
        r@   )r\   )r   r   r   r   r@   6  s    z'ConfigurationInstance.taskrouter_skillsc             C   s
   | j d S )zw
        :returns: The TaskRouter default channel capacities and availability for workers
        :rtype: dict
        rA   )r\   )r   r   r   r   rA   >  s    z0ConfigurationInstance.taskrouter_worker_channelsc             C   s
   | j d S )zQ
        :returns: The TaskRouter Worker attributes
        :rtype: dict
        rB   )r\   )r   r   r   r   rB   F  s    z2ConfigurationInstance.taskrouter_worker_attributesc             C   s
   | j d S )z^
        :returns: The TaskRouter SID of the offline activity
        :rtype: unicode
        rC   )r\   )r   r   r   r   rC   N  s    z5ConfigurationInstance.taskrouter_offline_activity_sidc             C   s
   | j d S )z]
        :returns: The URL where the Flex instance is hosted
        :rtype: unicode
        rD   )r\   )r   r   r   r   rD   V  s    z$ConfigurationInstance.runtime_domainc             C   s
   | j d S )z]
        :returns: The SID of the Messaging service instance
        :rtype: unicode
        rE   )r\   )r   r   r   r   rE   ^  s    z4ConfigurationInstance.messaging_service_instance_sidc             C   s
   | j d S )zd
        :returns: The SID of the chat service this user belongs to
        :rtype: unicode
        rF   )r\   )r   r   r   r   rF   f  s    z/ConfigurationInstance.chat_service_instance_sidc             C   s
   | j d S )zX
        :returns: The SID of the Flex service instance
        :rtype: unicode
        rG   )r\   )r   r   r   r   rG   n  s    z/ConfigurationInstance.flex_service_instance_sidc             C   s
   | j d S )zW
        :returns: The primary language of the Flex UI
        :rtype: unicode
        rH   )r\   )r   r   r   r   rH   v  s    z!ConfigurationInstance.ui_languagec             C   s
   | j d S )zo
        :returns: The object that describes Flex UI characteristics and settings
        :rtype: dict
        rI   )r\   )r   r   r   r   rI   ~  s    z#ConfigurationInstance.ui_attributesc             C   s
   | j d S )z
        :returns: The object that defines the NPM packages and versions to be used in Hosted Flex
        :rtype: dict
        rJ   )r\   )r   r   r   r   rJ     s    z%ConfigurationInstance.ui_dependenciesc             C   s
   | j d S )zI
        :returns: The Pinned UI version
        :rtype: unicode
        r&   )r\   )r   r   r   r   r&     s    z ConfigurationInstance.ui_versionc             C   s
   | j d S )zL
        :returns: The Flex Service version
        :rtype: unicode
        rK   )r\   )r   r   r   r   rK     s    z%ConfigurationInstance.service_versionc             C   s
   | j d S )zR
        :returns: Whether call recording is enabled
        :rtype: bool
        rL   )r\   )r   r   r   r   rL     s    z,ConfigurationInstance.call_recording_enabledc             C   s
   | j d S )zR
        :returns: The call recording webhook URL
        :rtype: unicode
        rM   )r\   )r   r   r   r   rM     s    z0ConfigurationInstance.call_recording_webhook_urlc             C   s
   | j d S )zP
        :returns: Whether CRM is present for Flex
        :rtype: bool
        rN   )r\   )r   r   r   r   rN     s    z!ConfigurationInstance.crm_enabledc             C   s
   | j d S )z@
        :returns: The CRM Type
        :rtype: unicode
        rO   )r\   )r   r   r   r   rO     s    zConfigurationInstance.crm_typec             C   s
   | j d S )zH
        :returns: The CRM Callback URL
        :rtype: unicode
        rP   )r\   )r   r   r   r   rP     s    z&ConfigurationInstance.crm_callback_urlc             C   s
   | j d S )zH
        :returns: The CRM Fallback URL
        :rtype: unicode
        rQ   )r\   )r   r   r   r   rQ     s    z&ConfigurationInstance.crm_fallback_urlc             C   s
   | j d S )z[
        :returns: An object that contains the CRM attributes
        :rtype: dict
        rR   )r\   )r   r   r   r   rR     s    z$ConfigurationInstance.crm_attributesc             C   s
   | j d S )zN
        :returns: The list of public attributes
        :rtype: dict
        rS   )r\   )r   r   r   r   rS     s    z'ConfigurationInstance.public_attributesc             C   s
   | j d S )zS
        :returns: Whether the plugin service enabled
        :rtype: bool
        rT   )r\   )r   r   r   r   rT     s    z,ConfigurationInstance.plugin_service_enabledc             C   s
   | j d S )zN
        :returns: The plugin service attributes
        :rtype: dict
        rU   )r\   )r   r   r   r   rU     s    z/ConfigurationInstance.plugin_service_attributesc             C   s
   | j d S )z
        :returns: A list of objects that contain the configurations for the Integrations supported in this configuration
        :rtype: dict
        rV   )r\   )r   r   r   r   rV     s    z"ConfigurationInstance.integrationsc             C   s
   | j d S )zP
        :returns: The list of outbound call flows
        :rtype: dict
        rW   )r\   )r   r   r   r   rW     s    z)ConfigurationInstance.outbound_call_flowsc             C   s
   | j d S )zW
        :returns: The list of serverless service SIDs
        :rtype: unicode
        rX   )r\   )r   r   r   r   rX     s    z-ConfigurationInstance.serverless_service_sidsc             C   s
   | j d S )z^
        :returns: Configurable parameters for Queues Statistics
        :rtype: dict
        rY   )r\   )r   r   r   r   rY     s    z/ConfigurationInstance.queue_stats_configurationc             C   s
   | j d S )zb
        :returns: The absolute URL of the Configuration resource
        :rtype: unicode
        rZ   )r\   )r   r   r   r   rZ     s    zConfigurationInstance.urlc             C   s   | j j|dS )a  
        Fetch the ConfigurationInstance

        :param unicode ui_version: The Pinned UI version of the Configuration resource to fetch

        :returns: The fetched ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        )r&   )r^   r%   )r   r&   r   r   r   r%     s    	zConfigurationInstance.fetchc             C   s
   | j  S )z
        Create the ConfigurationInstance

        :returns: The created ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        )r^   r)   )r   r   r   r   r)   !  s    zConfigurationInstance.createc             C   s
   | j  S )z
        Update the ConfigurationInstance

        :returns: The updated ConfigurationInstance
        :rtype: twilio.rest.flex_api.v1.configuration.ConfigurationInstance
        )r^   r*   )r   r   r   r   r*   *  s    zConfigurationInstance.updatec             C   s$   d dd | j D }d|S )zz
        Provide a friendly representation

        :returns: Machine friendly representation
        :rtype: str
        r+   c             s   s   | ]\}}d  ||V  qdS )z{}={}N)r   )r,   r-   r.   r   r   r   r/   :  s    z1ConfigurationInstance.__repr__.<locals>.<genexpr>z,<Twilio.FlexApi.V1.ConfigurationInstance {}>)r0   r   r1   r   )r   r2   r   r   r   r   3  s    zConfigurationInstance.__repr__)4r   r   r   objectr6   r
   propertyr^   r7   r8   r9   r:   r;   r<   r=   r>   r?   r@   rA   rB   rC   rD   rE   rF   rG   rH   rI   rJ   r&   rK   rL   rM   rN   rO   rP   rQ   rR   rS   rT   rU   rV   rW   rX   rY   rZ   r   r3   r%   r)   r*   r   r   r   r   )r   r   r      sX   6		r   N)__doc__Ztwilio.baser   r   Ztwilio.base.instance_contextr   Ztwilio.base.instance_resourcer   Ztwilio.base.list_resourcer   Ztwilio.base.pager   r   r   r   r   r   r   r   r   <module>   s   ,&A