
    B
dU                     l    d dl Z d dlZd dl d dlmZ d dlmZ d dlmZ  G d dej                        Z	y)    N)*)fields)cmf_plugin_smsgate)quotec                   J     e Zd Zed        Zd Z fdZdd fd
Zd Z xZ	S )CmfPluginSMSGatec                 *    | j                  ddg      S )NTplugin.ext_url)systemr   )get)clss    %./common/models/cmf_plugin_smsgate.pyget_local_smsgatez"CmfPluginSMSGate.get_local_smsgate   s    wwd,<+=w>>    c                 j    | j                   ry t        j                  | j                  d      | _         y )Nsmsgate)nametype)pluginmodels	CmfPluginr   )selfs    r   _process_pluginz CmfPluginSMSGate._process_plugin   s'    ;;&&DIII&Fr   c                 (    t         |          dgz   S )Nr   )supersave_preload_fields)r   	__class__s    r   r   z$CmfPluginSMSGate.save_preload_fields   s    w*,z99r   r   )depthc                F    | j                          t        |   |d|i|S )Nr   )r   r   save)r   r   argskwargsr   s       r   r    zCmfPluginSMSGate.save   s(    w|T99&99r   c                    t         j                  d| d|        t        j                  s*t	        t        dd       dk7  rt         j                  d       y | j                  dg       t        |      dkD  rt         j                  d| d	       | j                  j                  j                  j                  t        |      t        |      
      }	 t        j                         j                  |d      }|j                          y# t         j"                  j$                  $ r5}t'        j(                  d| d| d       t+        d| d       Y d }~yd }~ww xY w)Nu   Отправка sms: phone=z
, message=APP_FQDNzbcrm.carbonsoft.ruuZ   Отправка sms отменена, т.к. сервер не в production-режимеr
   F   ur   Предупреждение отправки SMS. Длина текста SMS больше 70 символов: ``)phonetext   )timeoutzCmfPluginSMSGate.send_message(z, )u9   Ошибка отправки SMS уведомления .FT)gdebugconfig
PRODUCTIONgetattrload_fieldslenr   ext_urlvalueformatr   cmfutilrequests_sessionr   raise_for_statusrequests
exceptionsRequestExceptionlogging	exception	cmf_alert)r   r'   messager!   r"   get_urlreses           r   send_messagezCmfPluginSMSGate.send_message   sM   	.ugZyIJ  WVZ%FJ^%^GGpr*+,w<"GG  I  JQ  IR  RS  T  U++%%++22,U7^ 3 
	**,00!0DC  "
 	 ""33 	 >ugRyPQRSQRSQTTUVW	s   5D	 	E&+EE)
__name__
__module____qualname__classmethodr   r   r   r    rD   __classcell__)r   s   @r   r   r      s/    ? ?G
: !" :
r   r   )
r=   r:   cmf.includecmfr   common.fieldsr   urllib.parser   r    r   r   <module>rO      s*        , %):: %r   