Django 东非使用Twilio-肯尼亚、坦桑尼亚、马拉维
我们现在已经创建了一个测试版GIS平台(PostgreSQL、Django、传单),它还允许用户向Twilio号码发送短信,然后在应用程序中查看,然后由管理员对报告进行注释 这些众包报告的目的是使东非农村地区的当地社区有权分享与水污染和卫生有关的事件。我们将向更广泛的国际社会展示网络地理信息系统平台(他们聚集在东非处理这个问题,称为“马吉计划”) 简而言之,我们使用Twilio来接收短信,目前只有一个英国手机号码加入了该账户。为了进行实地试验,非常非常重要的是,我们能够让公民向一个更为本地的移动电话号码报告和发送短信,即肯尼亚和坦桑尼亚,马拉维很快就会跟进 最近看到Twilio增加了对肯尼亚的支持,我们期待看到坦桑尼亚和马拉维可能会得到怎样的解决。我们是在等待Twilio在这些国家推出支持(已经向他们发出了这个问题),还是有办法引导这种情况 真正重要的唯一要求是,市民可以向本地手机发送短信,然后将其输入到我们的django应用程序中。Django 东非使用Twilio-肯尼亚、坦桑尼亚、马拉维,django,twilio,sms-gateway,Django,Twilio,Sms Gateway,我们现在已经创建了一个测试版GIS平台(PostgreSQL、Django、传单),它还允许用户向Twilio号码发送短信,然后在应用程序中查看,然后由管理员对报告进行注释 这些众包报告的目的是使东非农村地区的当地社区有权分享与水污染和卫生有关的事件。我们将向更广泛的国际社会展示网络地理信息系统平台(他们聚集在东非处理这个问题,称为“马吉计划”) 简而言之,我们使用Twilio来接收短信,目前只有一个英国手机号码加入了该账户。为了进行实地试验,非常非常重要的是,我们能够让公民向一个更为本地的移动
我非常重视您的集体意见……无论这是一种围绕当前Twilio问题进行引导的方法,还是解决坦桑尼亚和马拉维当地需求的替代方法。由于还无法从Twilio获得本地号码,您可以使用另一种本地短信解决方案,比如说或。Uwazi有一个API,但我还没有将其用于试驾,而SMSleopard目前只使用电子表格。您可以将文本收集到电子表格中,然后开发自定义解决方案,将数据发送到数据库或Twilio。到目前为止,我认为对你来说最好的解决办法是。它们包括肯尼亚、坦桑尼亚、乌干达、卢旺达、马拉维和尼日利亚 更新
截至2017年6月,Twilio已经提供了新的本地号码。编辑:django双因素身份验证用于说明,它与Twilio网关接口并使用Twilio软件包,因此我认为它是实现多网关SMS系统的一个很好的示例 我最近写了一个多SMS网关解决方案,支持SMS GW风格的不同后端。我们主要使用它来发送身份验证令牌,但原理是一样的;您可能希望通过多个不同的SMS提供商发送消息 您可能应该研究其中介绍的样式并提供
- SMS API,可通过统一方式调用以发送消息
- SMS返回用于接收SMS消息的URL,这些消息类似地为不同的提供者提供不同的端点,但接口类似
class SMSLeopardGateway(object):
"""
A Gateway for sending and receiving SMS messages.
Sending just sends a HTTP message, return provides
a callback URL that interfaces to the receive_sms method.
"""
def send_sms(self, device, message):
# handle sending messages through an uniform API
@staticmethod
def receive_sms(request, *args, **kwargs):
# Django request interface for receiving messages
urlpatterns = [
url(^'/sms/receive/leopard', SMSLeopardGateway.receive_sms),
]
通过这种方式,您可以构建对多个不同网关的精益支持,只需找出您的号码所在的位置,并在代码中对此作出反应;您也可以只提供一个SMS回调URL,并将其连接到不同的后端
Twilio gateway和django双因素身份验证源代码并不复杂,您可以从中找到很多灵感