B
    Efd                 @   s<   d dl Z d dlZd dlmZ d dlT G dd dejjZdS )    N)sha1)*c               @   s<   e Zd ZdZdZejjdd Zejjdd Z	dd Z
dS )	TelphinViewz/pub/voip/telphinNc             C   s   | j f tjS )N)_processrequestargs)self r	   ./modules/voip/views/telphin.pyget   s    zTelphinView.getc             C   s   | j f tjS )N)r   r   Zform)r   r	   r	   r
   post   s    zTelphinView.postc             K   s   t d|  tjjtjddddgd| _|d}| jr|rt | |dkrj| j||d	  n`|d
kr| jj	||d	 |d d n<|dkr| jj
||d	 |d d}|dr| jj||d | dS )NzTelphin request: tokenzplugin.ext_secretparentzplugin.ext_key)idZfieldsZ	EventType)zdial-inzdial-outZCallFlowZanswerZ
CallStatus)Zcall_statusZhangupZRecID)channel_callzresponse.html)gdebugZmodelsZCmfPluginTelphinr   r   r   telphinZ	voip_callZvoip_call_startZvoip_call_endZvoip_recordZrender_with_params)r   kwargsZ
event_typer   r	   r	   r
   r      s    



zTelphinView._process)__name__
__module____qualname__Z__url__r   cmfviewsactionr   r   r   r	   r	   r	   r
   r      s
   r   )	base64ZhmacZhashlibr   Zcmf.includer   r   ZBaseViewr   r	   r	   r	   r
   <module>   s   