Skip to main content

A RapidPro backend for RapidSMS.

Project description

This is the RapidPro backend for RapidSMS. It has been created for UNICEF to facilitate transition of legacy applications designed for RapidSMS and the Django web framework to the new RapidPro platform. This component uses the official rapidpro-python client library to communicate with RapidPro.

Features

  • Incoming (MO) SMS support

  • Outgoing (MT) SMS support

  • New configuration options
    • RapidPro API gateway URL

    • RapidPro API token

Requirements

  • Python 2.7+ or Python 3.3+

  • Django >=1.7,<=1.9

  • RapidSMS 0.18.0+

  • rapidpro-python >=2.1.6

Installation

The rapidpro-for-rapidsms backend supports Python >= 2.7 and Django >= 1.7. All required Python packages should be intalled automatically as long as you follow the official installation procedure described below.

To install from PyPi:

$ pip install rapidpro-for-rapidsms

Configuration

Edit your Django project settings (e.g. settings.py) to include the following:

  • add rapidpro4rapidsms to your INSTALLED_APPS, e.g.:

    INSTALLED_APPS = (
        # your apps
        'rapidpro4rapidsms',
    )
  • configure the backend to use your RapidPro service and API token, e.g.:

    INSTALLED_BACKENDS = {
        # some other backends (optional)
        "rapidpro-backend": {
            "ENGINE": "rapidpro4rapidsms.RapidProBackend",
            # The following URL and token should be set to match your RapidPro
            "rapidpro_api_gateway_url": "your rapidpro API gateway URL, e.g. "
                                                "http://127.0.0.1:8080/api/v1"
                                                "or"
                                                "rapidpro.io",
            "rapidpro_api_token": "YOUR-RAPIDPRO-API-TOKEN"
        }
    }
  • configure your Django project to include rapidpro4rapidsms.urls, e.g.:

    urlpatterns = patterns(
        # your Django project URLs
        # ...
        # rapidpro4rapidsms URLs
        url(r'backends/', include('rapidpro4rapidsms.urls')),
    )

LICENSE

The rapidpro-for-rapidsms backend is released under the BSD License. See the LICENSE.TXT file for more details.

Development

To install:

$ pip install -e .[development]

To run tests:

$ python setup.py test

Contributing

If you think you’ve found a bug or are interested in contributing to this project check out rapidpro-for-rapidsms on Github.

Development by Tomasz J. Kotarba of SYSTEM7.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rapidpro-for-rapidsms-1.0.3.tar.gz (7.5 kB view hashes)

Uploaded Source

Built Distribution

rapidpro_for_rapidsms-1.0.3-py2.py3-none-any.whl (13.0 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page