A client-server notification system for HTML emails, sms and more.
Project description
Quick start
Install tattler:
# create a virtual environment and load it
python3 -m venv venv
. venv/bin/activate
# install tattler into it
pip install tattler
Run tattler server:
TATTLER_MASTER_MODE=production TATTLER_SMTP_ADDRESS="127.0.0.1:25" tattler_server
Trigger a demo notification via HTTP:
# make sure to replace ``your@email.com`` with your actual email address
curl -X POST 'http://127.0.0.1:11503/notification/demoscope/demoevent/?mode=production&user=your@email.com'
… or via command-line utility:
# load the same virtual environment where you installed tattler server
. venv/bin/activate
# make sure to replace ``your@email.com`` with your actual email address
tattler_notify -s '127.0.0.1:11503' your@email.com demoscope demoevent
… or via tattler’s python SDK:
from tattler.client.tattler_py import send_notification
# make sure to replace ``your@email.com`` with your actual email address
send_notification('demoscope', 'demoevent', 'your@email.com', srv_addr='127.0.0.1', srv_port=11503)
Done! Check out the quickstart in tattler’s documentation for a smoother intro.
What is tattler?
Do you want to send beautifully branded notifications to your users?
Tattler makes it easy for you. Your application makes a simple HTTP call to tattler:
curl -X POST 'http://127.0.0.1:11503/notification/mywebapp/password_changed/?user=123'
and tattler does this for you:
Find out what vectors event password_changed should be notified to. Email? SMS? More?
Determine for which of those vectors user 123 provided contact data for.
Load the respective notification templates.
Fetch any data your templates require (with easy-to-write plug-ins). For example: on what plan is the user? Any unpaid invoice?
Encode all the resulting content into an actual notification – e.g. a multi-part MIME email including HTML and plain text parts.
Deliver the final content through SMTP and an SMS delivery network.
That’s a few chores removed – so you can focus on your communication, brand and customer journey.
Why tattler?
Introducing Tattler simplifies code and consolidates your communication to your users, making it easier to manage and improve.
- Product managers
Will love having a clear view of the communication across the customer journey, and the ease of improving it.
- Template designers
Will love the design power and ability to focus on content without technical distractions.
- Developers
Will love the massive simplification in their code — firing notifications without having to collect all ancillary data.
- Customer support
Will love being able to easily trace notifications to log trails in other systems that led to firing them.
- Sys admins
Will love having one single point of exit for notifications and the ease of compartmentalizing access to sensitive data.
Tattler is well-documented, has safeguarded longevity and has outstanding quality thanks to its exceptional 90%+ test coverage.
License
Tattler is open-source software (BSD 3-clause license), and includes the features listed above.
Enterprise users
Tattler is enterprise-friendly. Enterprise customers can purchase subscriptions and get:
Support from the development team for a fast and secure deployment.
A bug-fixing guarantee: we’ll fix any bug you report in an expedite fashion.
Level-3 troubleshooting support from our development team.
Enterprise customers get extended, enterprise-specific features:
Rate control: prevent faulty applications from flooding users with notifications.
Audit trail: record each delivery along with a positive confirmation ID from its delivery system.
Auto-text: design HTML emails only, Tattler automatically creates text-form fallback.
Multilingual support: automatically send which language a user should be notified with.
We are grateful to enterprise customers for securing the project’s sustainability and quality the benefit of all.
Commercial users may support tattler in 2 ways:
By getting onto an enterprise license – with the perks listed above.
By becoming a sponsor – with the additional perk of having your company featured as a sponsor on our website and documentation.
Find further information on commercial use on tattler’s website, and write to enterprise at tattler.dev for further information such as invoicing, terms, support etc.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file tattler-1.2.0.tar.gz
.
File metadata
- Download URL: tattler-1.2.0.tar.gz
- Upload date:
- Size: 55.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 30832291638f26bcea977a7f6aa330279ba23d56bf7b17f2ca245bd956e6c696 |
|
MD5 | 9605bbf4cdb34f36d928de85719d86f9 |
|
BLAKE2b-256 | 31c47925355ecdd7cc37e95d93cdd58591048e39daa503937e45177f1755e8b0 |
File details
Details for the file tattler-1.2.0-py3-none-any.whl
.
File metadata
- Download URL: tattler-1.2.0-py3-none-any.whl
- Upload date:
- Size: 73.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ca598649fad2196b404c2dc2f545cc1c0e5c4e4bf18b0cbdb856ef940a76d0fb |
|
MD5 | ade595d624117f887f403f7a6839625f |
|
BLAKE2b-256 | b4f354aa6e0ff0d940802ee2e448dac92c67544c53957194901f70015e84a57f |