Я создаю приложение, где у меня есть этот небольшой модуль опроса, который отправляет простой sms на номер телефона, который я даю, и мне нужно собрать ответ (если пользователь его выдает) и показать его мне. Я использую django для создания своего проекта. Я пробовал проект django-sms google code, но я не мог отправлять сообщения с мобильного на мой сервер. Я просмотрел множество руководств по sms-gateways/carrier. Но я потерян. Может ли кто-нибудь помочь мне предложить учебник по отправке sms из моего приложения (django) на любой мобильный телефон? И что касается отправки sms на мобильный телефон, это обойдется мне в цене (так же, как отправить sms с одного мобильного телефона на другой)?
Отправка SMS на мобильный телефон с использованием Django
Ответ 1
Привет, меня зовут Jarod, и я работаю на Twilio.com, поэтому я немного предвзятый. Но с учетом сказанного, очень легко отправить SMS из вашего веб-приложения Python с помощью Twilio Rest Api. Вот простой пример:
# Download the Python helper library from twilio.com/docs/python/install
from twilio.rest import TwilioRestClient
# Your Account Sid and Auth Token from twilio.com/user/account
account_sid = "{{ account_sid }}"
auth_token = "{{ auth_token }}"
client = TwilioRestClient(account_sid, auth_token)
message = client.messages.create(
body="Jenny please?! I love you <3",
to="+15558675309",
from_="+14158141829",
media_url="http://www.example.com/hearts.png")
print message.sid
Ответ 2
С технической точки зрения, самый простой способ выполнить отправку SMS с помощью любого веб-приложения - через электронную почту. Большинство провайдеров сотовой связи обычно выдают своим учетным записям учетные записи электронной почты, и отправка почты в указанную учетную запись скорее всего приведет к перенаправлению почты в свою ячейку через SMS. Однако не все перевозчики делают это, а некоторые взимают дополнительную плату за этот тип обслуживания. В этом случае вы можете справиться с этой проверкой следующей страницы документации Django
Однако, как уже упоминалось, это не очень полное решение, поэтому проще всего использовать SMS-шлюз. В основном, они предоставляют простой API на основе REST для отправки текстовых сообщений на мобильные телефоны. API будет явно отличаться от носителя к перевозчику. Я бы рекомендовал проверить Kannel в случае, если вы ищете бесплатное решение с открытым исходным кодом (предполагается, что вы хотите установить фактическое шлюз на вашем сервере).
В любом случае, я бы попытался заставить его работать с сценарием электронной почты, а затем перешел к использованию носителя, если вы на самом деле требуете его. Надеюсь, это немного помогает.
Ответ 3
Я ответил на аналогичный вопрос, немного поздно в игре, в другом посте. Здесь приводится дополнительная информация. Надеюсь, это поможет:
Я боролся с этим в течение некоторого времени и действительно любил вариант Twilio. Но затем я углубился и обнаружил, что работает Google Voice API под названием pygooglevoice
. Чистый, простой... Нет поиска оператора... Например, настройте virtualenv
и установите с помощью pip
:
pip install pygooglevoice
Затем используйте что-то вроде этого:
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)
Обратите внимание, что я провел ограниченное тестирование с этим, поэтому я не уверен, все плюсы и минусы. Вполне возможно, что есть ограничения, которые я еще не обнаружил. Но в то время, когда я играл с ним, я был счастлив.
Ответ 4
взгляните на django-sms
Ответ 5
Проверьте twilio.com. Они предоставляют простой в использовании API (пару строк кода на Python) и возможность получать SMS-сообщения и активировать обратные вызовы в приложении, когда пользователи отвечают.
Ответ 6
http://bitbucket.org/vgavro/django-smsgate - это то, что вы ищете, но вам нужно написать собственный бэкэнд для вашего sms-шлюза.
Ответ 7
Я также нашел TextMagic. Это выглядит многообещающим, хотя это немного дорогой для страны, в которой я живу. У нее могут быть конкурентоспособные цены для страны, в которой вы заинтересованы, поэтому пожалуйста, проверьте цены, прежде чем вы начнете взимать плату.
Использование кажется довольно простым:
Быстрая установка через pip:
pip install textmagic
И отправка SMS выглядит тривиально следующим образом:
from textmagic.rest import TextmagicRestClient
username = "your_textmagic_username"
token = "your_apiv2_key"
client = TextmagicRestClient(username, token)
message = client.messages.create(phones="9990001001", text="Hello TextMagic")