2010-07-03 7 views
5

Je dois développer une application où j'ai besoin d'envoyer des SMS aux utilisateurs sur une action particulière par les utilisateurs.Comment envoyer des SMS en utilisant l'application Python/Django?

J'ai entendu parler de kannel avec PHP, y a-t-il de l'aide pour la même chose en Python ou y a-t-il une autre passerelle sms open source que je peux utiliser avec mon application?

Veuillez nous suggérer.

Merci d'avance.

+0

Il y a de très bonnes réponses ici. Allez-vous faire de l'upvoting puis en choisir un que vous aimez? Je sais que c'est des années plus tard, mais il serait cool d'obtenir cette réponse ;-) – nicorellius

+0

@nicorellius Je suis vraiment désolé que je ne pouvais pas sélectionner l'une des réponses d'ici.Il y a tellement de bonnes options ici, mais j'ai dû abandonner la fonctionnalité SMS en raison de diverses autres difficultés liées à la politique dans mon pays. –

+0

Souvent, dans ce cas, je vais quand même en choisir un qui répond aux exigences de la question d'origine et la sélectionner comme réponse. Il y a des réponses valables ici, donc je pense que peu importe votre statut, vous pouvez toujours choisir une réponse «correcte» ... Merci pour la note de toute façon. Bonne chance. – nicorellius

Répondre

3

Généralement, vous utiliseriez des requêtes HTTP GET ou POST normales sur une passerelle SMS, telle que Clickatell et bien d'autres.

0

[Mise à jour] Étant donné que la solution basée sur la messagerie électronique ne fonctionne pas pour vous, consultez Twilio. Clean APIs, et j'entends de bonnes choses à leur sujet.

Si vous connaissez le transporteur sur lequel se trouve l'utilisateur, il pourrait être plus facile d'utiliser les services de messagerie à sms fournis par à peu près tous les opérateurs mobiles. Here's an article sur les adresses de nombreux fournisseurs. Si cela vous convient (par exemple, si vous connaissez le numéro/transporteur à l'avance ou si vous pouvez demander à l'utilisateur le transporteur ainsi que son numéro), tout ce que vous avez à faire est d'envoyer un courriel à l'adresse appropriée. il sera envoyé sous forme de SMS à l'utilisateur.

+0

Merci pour votre réponse Parand. Mais je préférerais une passerelle SMS open source, car compter sur le support ne semble pas être une bonne idée pour le moment. De toute façon, c'est vraiment une bonne option. –

0

Jetez un oeil à l'application django-smsgate (licence BSD) pour travailler avec SMS via les passerelles SMS.

0

Je viens d'écrire une application de base de démonstration Twilio en utilisant Django, qui envoie des messages SMS aux utilisateurs et traite également les réponses SMS. J'ai posté le code sur github et j'ai écrit quelques articles de blog explicatifs.

Le message de premier niveau est here mais vous pouvez simplement récupérer tout le code de GitHub. Notez que mon exemple particulier utilise LinkedIn pour l'authentification, mais les deuxième et troisième articles de blog couvrent des méthodes spécifiques twilio. De cette façon, vous pouvez voir si c'est une option qui fonctionnera pour vous.

Hope this helps :-)

1

je luttais avec cela pendant un certain temps et vraiment aimé l'option Twilio. Mais ensuite j'ai creusé plus profondément et j'ai trouvé qu'il y a une API Google Voice appelée pygooglevoice qui fonctionne. Propre, facile ... Pas de recherche porteuse ... Par exemple, mettre en place un virtualenv et installer avec pip:

pip install pygooglevoice

Ensuite, utiliser quelque chose comme ceci:

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) 

S'il vous plaît noter que je J'ai fait des tests limités avec ça, donc je ne suis pas sûr de tous les avantages et les inconvénients. Il est tout à fait possible qu'il y ait des limites que je n'ai pas encore découvertes. Mais pendant le temps que j'ai joué avec, j'ai été heureux.