django-sitemessage documentation


Reusable application for Django introducing a message delivery framework.


  • Message Types - message classes exposing message composition logic (plain text, html, etc.).
  • Messengers - clients for various protocols (smtp, jabber, twitter, telegram, facebook, vkontakte, etc.);
  • Support for user defined message types.
  • Support for user defined messenger types.
  • Message prioritization.
  • Message subscription/unsubscription system.
  • Message grouping to prevent flooding.
  • Message ‘read’ indication.
  • Means for background message delivery and cleanup.
  • Means to debug integration: test requisites, delivery log.
  • Django Admin integration.

Currently supported messengers:

  1. SMTP;
  2. XMPP (requires sleekxmpp package);
  3. Twitter (requires twitter package);
  4. Telegram (requires requests package);
  5. Facebook (requires requests package);
  6. VKontakte (requires requests package).


  1. Python 3.7+
  2. Django 2.0+

Get involved into django-sitemessage

Submit issues. If you spotted something weird in application behavior or want to propose a feature you can do that at

Write code. If you are eager to participate in application development, fork it at, write your code, whether it should be a bugfix or a feature implementation, and make a pull request right from the forked project page.

Translate. If want to translate the application into your native language use Transifex:

Spread the word. If you have some tips and tricks or any other words in mind that you think might be of interest for the others — publish it.


If the application is not what you want for messaging with Django, you might be interested in considering other choices at or or