Create and modify static Twilio TwiML views in Django
Often when building Twilio apps with Django, you want to quickly create a few simple static TwiML documents. You can usually do this by writing a view and connecting it to a URL endpoint on your Django app.
But what if you wanted to modify those documents quickly later on? Or perhaps you don't have the means to push the updates to the live server straight away?
dj-twiml lets you create and modify static TwiML documents in seconds, with a publicly addressable URL and correct XML formatting / validation.
This is perfect if you want static TwiML documents that do not require any computation, but might need modifying occassionally.
- Install dj-twiml
$ pip install dj-twiml
- Add dj-twiml and django-twilio to your installed apps in settings. Add the settings for django-twilio.
INSTALLED_APPS = ( ..., 'django_twilio', 'dj_twiml', ) TWILIO_ACCOUNT_SID='ACXXXXXXXXXXXXXXXXXX' TWILIO_AUTH_TOKEN='ATXXXXXXXXXXXXXXXXXX' # Set this to True in production DJANGO_TWILIO_FORGERY_PROTECTION = False
After setting up django-twilio, add the URL routing to your URLconf (urls.py)::
urlpatterns = patterns( '', url(r'twiml/', include('dj_twiml.urls')), ... )
Finally, you can run the following command on Django 1.7 and Django 1.6 (with South installed) to setup the dj_twiml database models:
$ python manage.py migrate dj_twiml
- Create a new TwiML document through the admin panel (/admin/dj_twiml/twiml/)
- Save it and test it out by sending a HTTP POST request to the new URL. The unicode name of the object will show the URL:
- Point a Twilio phone number to the new dj-twiml snippet:
(Get a new Twilio trial account here.)
- Ring it! Try calling +442030952720 (UK) or +1 844-707-9437 (USA) now :)
Quickly build new or modify existing static TwiML snippets.
Supports both Django 1.7 and Django 1.6
Built on top of django_twilio.