o
    nYi                     @   sZ   d dl Z d dlmZ d dlmZ d dlmZmZ d dlm	Z	 ddl
mZ G dd	 d	ZdS )
    N)	b64encode)	urlencode)Requesturlopen)	HTTPError   )	Constantsc                   @   s*   e Zd ZejfddZdd Zdd ZdS )Taskc                 C   s   || _ || _|| _d S )N)projecttokenhost)selfr
   r   r    r   Y/var/www/html/asistente-voz-ia/venv/lib/python3.10/site-packages/signalwire/relay/task.py__init__	   s   
zTask.__init__c                 C   s*   | j  d| j d}dtt|d S )N:zutf-8zBasic )r
   r   encodestrr   )r   datar   r   r   _authorization   s   zTask._authorizationc           	   
   C   s   d| j  d}t||dd}|  dt|d}t|||d}zt|}| dkW S  t	yJ } zt
d	t| W Y d }~d
S d }~ww )Nzhttps://z/api/relay/rest/tasks)contextmessageutf8zapplication/json)AuthorizationzContent-TypezContent-Length)r   headers   zTask deliver error: {0}F)r   jsondumpsr   r   lenr   r   getcoder   printformatr   )	r   r   r   urir   r   reqresponseerrorr   r   r   deliver   s   zTask.deliverN)__name__
__module____qualname__r   HOSTr   r   r&   r   r   r   r   r	      s    r	   )r   base64r   urllib.parser   urllib.requestr   r   urllib.errorr   	constantsr   r	   r   r   r   r   <module>   s    