2010-07-03 51 views
5

Tengo que desarrollar una aplicación donde necesite enviar SMS a los usuarios sobre una acción particular de los usuarios.¿Cómo enviar SMS usando la aplicación Python/Django?

He oído hablar de kannel con PHP, ¿hay alguna ayuda para lo mismo en Python también o hay alguna otra mejor puerta de enlace de sms de código abierto que puedo usar con mi aplicación?

Sugerido.

Gracias de antemano.

+0

Hay algunas muy buenas respuestas aquí. ¿Vas a hacer un upvoting y luego seleccionar uno que te guste? Sé que es años más tarde, pero sería genial que me respondieran ;-) – nicorellius

+0

@nicorellius Lamento mucho no haber podido seleccionar ninguna de las respuestas aquí.Aquí hay muchas buenas opciones, pero tuve que eliminar la función de sms debido a otras dificultades relacionadas con las políticas en mi país. –

+0

A menudo, en ese caso, seguiré eligiendo uno que cumpla con los requisitos de la pregunta original y lo seleccione como respuesta. Aquí hay respuestas válidas, por lo que podría pensar que independientemente de su estado, aún podría elegir una respuesta "correcta" ... Gracias por la nota de todos modos. Buena suerte. – nicorellius

Respuesta

3

En general, utilizaría las solicitudes HTTP GET o POST normales en una puerta de enlace SMS, como Clickatell y muchas otras.

0

[Actualización] Dado que la solución basada en correo electrónico no funcionará para usted, consulte Twilio. Limpie las API, y escucho cosas buenas sobre ellos.

Si conoce el operador en el que se encuentra el usuario, podría ser más fácil usar los servicios de correo electrónico a sms proporcionados por casi todos los operadores de telefonía móvil. Here's an article en direcciones para muchos proveedores.

Si eso le funciona (por ejemplo, si conoce el número/operador de antemano o puede pedirle al usuario el operador y su número), todo lo que tiene que hacer es enviar un correo electrónico a la dirección correspondiente y se enviará como un SMS al usuario.

+0

Gracias por su respuesta Parand. Pero preferiría una puerta de enlace de SMS de código abierto, ya que depender de la operadora no parece ser una buena idea por el momento. De todos modos, tu realmente es una buena opción. –

2

Twilio (donde trabajo) tiene un OSS Python helper library lo que hace que trabajar con su servicio de SMS sea realmente fácil.

0

Eche un vistazo a la aplicación django-smsgate (licencia BSD) para trabajar con SMS a través de pasarelas SMS.

0

Acabo de escribir una aplicación de demostración Twilio básica utilizando Django, que envía mensajes SMS a los usuarios y también procesa las respuestas de SMS. Publiqué el código en github y escribí algunas publicaciones explicativas del blog.

La publicación de nivel superior es here pero puede obtener todo el código de GitHub. Tenga en cuenta que mi ejemplo particular utiliza LinkedIn para la autenticación, pero el segundo y tercer blog cubren los métodos específicos de twilio. De esta forma, puede ver si esta es una opción que funcionará para usted.

Esperanza esto ayuda :-)

1

he tenido problemas con esto durante algún tiempo y realmente me gustó la opción Twilio. Pero luego profundicé y descubrí que hay una API de Google Voice llamada pygooglevoice que funciona. Limpio, fácil ... Sin portadora de búsqueda ... Por ejemplo, establecer un virtualenv e instalar con pip:

pip install pygooglevoice

A continuación, utilice algo como esto:

from googlevoice import Voice 
from googlevoice.util import input 

def send(number, message): 
    user = '[email protected]' 
    password = 'password' 

    voice = Voice() 
    voice.login(user, password) 

    #number = input('Number to send message to: ') # use these for command method 
    #message = input('Message text: ') 

    voice.send_sms(number, message) 

Tenga en cuenta que yo he hecho pruebas limitadas con esto, así que no estoy seguro de todos los pros y contras. Es muy posible que haya limitaciones que aún no he descubierto. Pero en el tiempo que jugué con eso, he sido feliz.

Cuestiones relacionadas