提供使用Nyaruka的最佳实践的框架Rapidsms项目。
nsms的Python项目详细描述
Nyarukasms
nyarumasms旨在使用nyaruka用于构建系统的工具,为基于python的基本sms应用程序提供快速入门。这包括设置rapidsms、rapidsms httprouter、smartmin以及我们的解析和本地化库。
开始
要开始,请执行以下步骤:
% virtualenv env % source env/bin/activate % pip install nsms % start-nsms [project-name] % pip install -r pip-requires.txt % cd [project-name] % python manage.py syncdb % python manage.py migrate % python manage.py runserver
示例应用程序
NSMS提供了一个简单的短信应用程序来跟踪车辆的里程数。应用程序的短信格式如下。
登记车辆
系统的每个用户都会注册他们正在使用的汽车,他们会发送:
car [license plate]
这是给电话登记一辆车。从现在起,所有的里程报告将与通过的车牌号的汽车相关联。车牌必须是8个字符。
添加里程报告
用户注册汽车后,可以通过发送以下消息来报告里程:
miles [mileage (integer)]
这将记录与此连接相关的汽车的新里程报告。如果连接没有注册汽车,这将是一个错误。
最佳实践
此应用程序旨在演示以下最佳实践:
- 全面的单位覆盖面。我们的目标是对我们的应用程序进行100%的单元测试覆盖,你也应该这样做。此应用程序向您展示了如何轻松完成此任务
- 干的。我们使用Smartmin允许我们添加大量功能,而不必添加大量代码
- 语言模板。我们允许客户通过一个web ui编辑所有消息的翻译,包括使用标准django模板进行格式化。
- 宽容的分析。尽管仍在进行中,但我们的rapidsms_解析器模块提供了一种简单的方法,可以编程地解析sms消息并在过程中提供良好的错误消息。
- 用户管理。我们为客户提供基本的用户管理,使用组和Smartmin权限轻松管理这些。