*ë
"²ø;c       s    d  Z   ' 0 1 d Z 3 d k Z 4 d k Z d k Z d k Z d k Z d k Z d k Z d k	 Z	 d k
 Z
 5 e i d j o 6 d k Z n : e d d „ Z U d f  d „  ƒ  YZ t d f  d	 „  ƒ  YZ ƒ d
 f  d „  ƒ  YZ œ d f  d „  ƒ  YZ e ƒ  Z e i ƒ  d S(   sg   
Agenda: Archivo .esmsalias en el directorio de usuario (si, se cambiará 
más adelante para hacerlo portable con el formato:

nombre     numero
otronombre otronumero

En sistemas no Unix (sí, se escribe así) la agenda es el archivo "AgendaSMS" 
en el mismo directorio que el script, sin embargo esto aún no lo he probado 
en ningún sistema que no sea Linux.
i   Ns   posixs    c    s£  : ; |  i d | ƒ < |  i d | ƒ = |  i d | ƒ > |  i d d t | ƒ ƒ ? |  i d d ƒ @ |  i d d	 ƒ A |  i d
 d ƒ B |  i d d ƒ C |  i d d ƒ D |  i d d ƒ E |  i d d ƒ F | t	 j o G |  i d d | ƒ n H |  i
 ƒ  I |  i | ƒ J |  i ƒ  \ } }	 }
 K |  i ƒ  i ƒ  } L | i | ƒ d j o M d GHN d Sn  P d GHQ d GHR | GHS d Sd  S(   Ns   POSTs   Referers   Hosts   Content-lengths   %ds   Accepts8   image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, */*s   Accept-Languages   ess   Content-Types!   application/x-www-form-urlencodeds   Accept-Encodings   gzip, deflates
   User-Agents6   Mozilla/4.0 (compatible; MSIE 5.0; Windows 98; DigExt)s
   Connections
   Keep-Alives   Pragmas   no-caches   Cookies   %si   s!   El mensaje se envio correctamentes(   Se produjo un error al enviar el mensajes
   Respuesta:i    (   s   hs
   putrequests   posturls	   putheaders
   refererurls   hosts   lens   postdatas   cooks   Nones
   endheaderss   sends   getreplys   replys   msgs   headerss   getfiles   reads   datas   rfinds   success_str(   s   hs
   refererurls   posturls   hosts   postdatas   cooks   success_strs   datas   replys   msgs   headers(    (    s   supersms.pys   interact: s0   s	   navegaliac      s   U V d „  Z  Y d „  Z RS(   Nc    s   V W d |  _ d  S(   Ni}   (   s   selfs   tamanio(   s   self(    (    s   supersms.pys   __init__V s   c    s¶  Y Z t  i d ƒ } [ | i d d ƒ \ | i ƒ  ] | i ƒ  ^ | i ƒ  i ƒ  } ` t	 i
 | d ƒ }
 a | |
 d |
 d !} c t	 i
 | d ƒ }
 d | |
 d |
 d	 !} f t	 i
 | d
 ƒ }
 g | |
 d |
 d	 !} i t i h  | d <| d <| d <d d <d d <d d <| d <ƒ } k d GHl t i d ƒ n | d d !d } o | d d	 !}	 p t  i | ƒ } r t | d d | d |	 d d d | d t d  d! ƒSd  S("   Ns   212.73.32.207:80s   GETs#   http://212.73.32.207/html/texto.htms   <form name="envio_sms"i   iM   s   name="estado1"i$   i.   s   name="estado2"s   estado1s   estado2s   telefonoDestino1s   1s   codigoLookFeels    s   tNumbers   nAddresss   textos<   Esperando 4.5 segundos para que el servidor no se mosquee...f4.5i   i   s   :80s
   refererurls$   http://212.73.32.207/html/texto.htm?s   posturls   hosts   212.73.32.207s   postdatas   cooks   success_strs"   " se está procesando correctamente(   s   httplibs   HTTPs   gs
   putrequests
   endheaderss   getreplys   getfiles   reads   dats   strings   finds   poss   actions   estado1s   estado2s   urllibs	   urlencodes   telefonos   cadenas	   cadparamss   times   sleeps   ips   purls   hs   interacts   None(   s   selfs   cadenas   telefonos   longituds	   cadparamss   estado2s   estado1s   actions   dats   purls   poss   ips   gs   h(    (    s   supersms.pys   enviaY s$   Q(   s   __init__s   envia(    (    (    s   supersms.pys	   navegaliaU s   s   mensajedirectoc      s   t u d „  Z  x d „  Z RS(   Nc    s   u v d |  _ d  S(   Nix   (   s   selfs   tamanio(   s   self(    (    s   supersms.pys   __init__u s   c    sÅ   x y t  i d ƒ } z | i d d ƒ { | i ƒ  | | i ƒ  } ~  t i h  d d <d d <| d <| d	 <ƒ } € t  i d
 ƒ } � t | d d d d d d d | d t d d ƒSd  S(   Ns   209.25.191.127:80s   GETs/   http://www.mensajedirecto.com/index.php?ver=smss   smss   vers   130s
   caracteress   nums   mens   213.96.106.133:80s
   refererurls   posturls	   /smse.phps   hosts   www2.mensajedirecto.coms   postdatas   cooks   success_strs   enviado correctamente(   s   httplibs   HTTPs   gs
   putrequests
   endheaderss   getreplys   urllibs	   urlencodes   telefonos   cadenas	   cadparamss   hs   interacts   None(   s   selfs   cadenas   telefonos   longituds	   cadparamss   hs   g(    (    s   supersms.pys   enviax s   6(   s   __init__s   envia(    (    (    s   supersms.pys   mensajedirectot s   s   movistarc      s   ƒ „ d „  Z  ‡ d „  Z RS(   Nc    s   „ … d |  _ d  S(   Niš   (   s   selfs   tamanio(   s   self(    (    s   supersms.pys   __init__„ s   c 
   s`  ‡ ˆ t  i d ƒ }	 ‰ |	 i d d ƒ Š |	 i ƒ  ‹ |	 i ƒ  d } Œ |	 i ƒ  i ƒ  } � y# Ž | i
 d ƒ i d ƒ d } Wn9 � t j
 o* � d G| GH‘ t i d ƒ ’ d Sn X” d	 d
 t i h  d d <| d <d d <| d <ƒ } – t  i d ƒ } — d GH˜ t i d ƒ ™ t | d d d d d d d | d d | d d ƒSd  S(   Ns   194.224.100.123:80s   GETs1   http://www.activajoven.tsm.es/enviar_mensajes.aspi   s
   Set-Cookies   ;i    s   No se pudo envíar mensaje:
s   nocache=s   12%2F31%2F25+11%3A59%3A59+PM&s   1s   confirmacions   telefonos    s   emails   mensaje_textos:   Esperando un poquito para que el servidor no se mosquee...f4.5s
   refererurls   posturls   /confirmacion_envio.asps   hosts   www.activajoven.tsm.ess   postdatas   cooks   %s;rs   success_strs	   con éxito(   s   httplibs   HTTPs   gs
   putrequests
   endheaderss   getreplys   cabss   getfiles   reads   dats   getrawheaders   splits   cookies   AttributeErrors   times   sleeps   urllibs	   urlencodes   telefonos   cadenas	   cadparamss   hs   interact(
   s   selfs   cadenas   telefonos   longituds	   cadparamss   cabss   cookies   dats   hs   g(    (    s   supersms.pys   envia‡ s    #>(   s   __init__s   envia(    (    (    s   supersms.pys   movistarƒ s   s   Mainc      sJ   œ � d Z  Ÿ d „  Z ¥ d „  Z ¿ d „  Z æ d „  Z ð d „  Z RS(   Ns   1.2c    s7   Ÿ   t  |  _ ¡ d |  _ ¢ d |  _ £ d |  _ d  S(   Ns    i   (   s   Nones   selfs   drivers   numero_nombres   repetirs   mensaje(   s   self(    (    s   supersms.pys   __init__Ÿ s   c 
   s�  ¥ ¦ | d j o § t d ƒ } n
 ¨ | } ª y$ « t | ƒ ¬ | i ƒ  d f SWn3­ t j
 o$® y� ¯ t i d j o ° d } nL ² t	 i
 t i ƒ  ƒ \ } } } } } }	 } ³ ~ ´ t i i |	 d ƒ } µ t | ƒ } ¶ | i ƒ  } Wn · t j
 o · d GHn X¸ xN | d ¸ rA } ¹ t i | ƒ } º | d | j o » | d d f Sn q'W¼ d	 GH½ t i d ƒ n Xd  S(
   Ns    s   Número de teléfono o nombre: i    s   posixs	   AgendaSMSs
   .esmsaliass   Error abriendo agendai   s   Error: Nombre no encontrado(   s   dados	   raw_inputs   numeros   ints   strips
   ValueErrors   oss   names	   aliaspaths   pwds   getpwuids   getuids   foos   homedirs   paths   joins   opens	   aliasfiles	   readliness   datoss   IOErrors   is   strings   splits   tokenss   syss   exit(
   s   selfs   dados   foos   tokenss   datoss   is	   aliaspaths   numeros	   aliasfiles   homedir(    (    s   supersms.pys
   pideNumero¥ s0   	-  	c 	   s  ¿ À g  g  f \ } } Á d } Â d d d d d g } Ç yYÈ t i t i d | | ƒ \ } } Ê xç | d Ê rÚ \ } } Ë | d	 d
 g j o Ì t
 ƒ  |  _ n¦ Í | d d g j o Î t ƒ  |  _ n} Ï | d d g j o Ð t ƒ  |  _ nT Ñ | d d g j o Ò |  i ƒ  n- Ó | d d g j o Ô t | ƒ |  _ n qp WÕ y$ Ö | d |  _ × | d |  _ Wn Ø t j
 o
 Ø n XWnJ Û t i j
 o8 } Ü d t | ƒ GHÝ |  i ƒ  Þ t i d ƒ n Xß |  i t j o à t ƒ  |  _ n d  S(   Ns   njhrmds	   navegalias   movistars   mensajedirectos   helps   repetir=i   i    s   -ns   --navegalias   -ds   --mensajedirectos   -ms
   --movistars   -hs   --helps   -rs	   --repetirs   Error: (   s   optlists   argss
   short_optss	   long_optss   getopts   syss   argvs   optslists   cmdlines   values	   navegalias   selfs   drivers   mensajedirectos   movistars   usages   ints   repetirs   numero_nombres   mensajes
   IndexErrors   errors   xs   strs   exits   None(	   s   selfs   optlists
   short_optss   cmdlines   values   argss   xs   optslists	   long_opts(    (    s   supersms.pys   lineaComandos¿ s8   	%  c    sN   æ ç d |  i GHè d GHé d GHê d GHë d GHì d GHí t i d ƒ d  S(   Ns   SuperSMS.py Versión s   Uso:s@   -j o --jumpy: Envía el mensaje utilizando Jumpy.es (por defecto)sE   -m o --mensajedirecto: Envía el mensaje utilizando MensajeDirecto.coms2   -t o --terra: Envía el mensaje utilizando Terra.ess   -h o --help: Muestra esta ayudai    (   s   selfs   VERSIONs   syss   exit(   s   self(    (    s   supersms.pys   usageæ s   c    sK  ð ñ |  i ƒ  ò |  i |  i ƒ \ } } ô d } ö | o ö d G| GHn ÷ d G| GHù |  i o ú |  i } n^ ü d GHý y6 þ x, þ d o! ÿ t ƒ  }  | | d 7} q‹ WWn t
 j
 o
 n Xg  } t | ƒ } | |  i i d } xH t | ƒ d r5 }
 | i | |  i i |
 |  i i |
 d !ƒ qW
| i ƒ  d } xÚ | d rÍ } | d 7} d t t | ƒ | d ƒ d	 t t | ƒ ƒ d
 } | | } d G| Gd GHt | ƒ } t }	 xF |  i i | | | ƒ o |	 o! d G|	 Gd GH|	 d 8}	 qýWqsWd  S(   Ns    s    Número encontrado en la agenda: s   Mensaje para el número: s-   Introduzca el mensaje, termine con Control+D:i   s    i    s   (s   /s   )s   
*****MENSAJE****: s   
s   Reintentando... (quedans	   intentos)(   s   selfs   lineaComandoss
   pideNumeros   numero_nombres   numeros   agendas   textos   mensajes	   raw_inputs	   texto_tmps   EOFErrors   list_msgs   lens   len_msgs   drivers   tamanios
   num_tokenss   ranges   is   appends   reverses   counts   js   strs
   cadena_nums	   fragmentos   longituds
   REINTENTOSs   insistirs   envia(   s   selfs   list_msgs
   cadena_nums   longituds   agendas   len_msgs	   texto_tmps   numeros   textos   insistirs   is	   fragmentos   js
   num_tokenss   count(    (    s   supersms.pys   mainð sH   	
  
 	 	3	 	9	 $(   s   VERSIONs   __init__s
   pideNumeros   lineaComandoss   usages   main(    (    (    s   supersms.pys   Mainœ s   	'
(   s   __doc__s
   REINTENTOSs   oss   strings   times   syss   pwds   sockets   getopts   httplibs   urllibs   names   Nones   interacts	   navegalias   mensajedirectos   movistars   Mains   Ms   main(   s   movistars   Ms   oss   Mains   getopts   times   pwds
   REINTENTOSs   syss   urllibs   sockets   interacts   strings	   navegalias   httplibs   mensajedirecto(    (    s   supersms.pys   ? s   		K€