Framework for Messaging
The automated communication engine, A.C.E. for short, is a Django app for messaging learners on the Open edX platform. This app can be installed in any Open edX project, but has only been tested with edx-platform. Email delivery (via Sailthru and Django Email) are the currently supported delivery channels. In the future we may add support for other delivery channels such as push notifications.
For instructions on starting local development, see Getting Started.
See the documentation. If you need more help see below.
If you’re having trouble, we have discussion forums at https://discuss.openedx.org where you can connect with others in the community.
Our real-time conversations are on Slack. You can request a Slack invitation, then join our community Slack workspace.
For anything non-trivial, the best path is to open an issue in this repository with as many details about the issue you are facing as you can provide.
For more information about these options, see the Getting Help page.
The code in this repository is licensed under the AGPL 3.0 unless otherwise noted.
Please see LICENSE.txt for details.
Contributions are very welcome.
Please read How To Contribute for details.
Even though they were written with edx-platform in mind, the guidelines should be followed for Open edX code in general.
PR description template should be automatically applied if you are sending PR from github interface; otherwise you can find it at PULL_REQUEST_TEMPLATE.md
Issue report template should be automatically applied if you are sending it from github UI as well; otherwise you can find it at ISSUE_TEMPLATE.md
The Open edX Code of Conduct
All community members are expected to follow the Open edX Code of Conduct.
The assigned maintainers for this component and other project details may be found in Backstage. Backstage pulls this data from the catalog-info.yaml file in this repo.
Reporting Security Issues
Please do not report security issues in public. Please email email@example.com.
[1.6.1] - 2023-02-07
Updated code coverage target in https://github.com/openedx/edx-ace/pull/189
Updated Python Requirements in https://github.com/openedx/edx-ace/pull/199
Full Changelog: https://github.com/openedx/edx-ace/compare/v1.6.0…v1.6.1
[1.5.0] - 2022-02-15
Added support for Django40
Removed support for Django22, 30 and 31
[1.4.1] - 2021-12-06
Adds in the ability to override frequency caps for Braze emails. Can be accessed via Message options using the key override_frequency_capping. All emails containing the transactional Message option will also override frequency caps.
[1.4.0] - 2021-11-08
Deprecate the action_links property
Add a get_action_links method and template tag to allow passing arguments to action links
[1.3.1] - 2021-08-17
Adjust name handles_delivery_for_message to overrides_delivery_for_message
[1.3.0] - 2021-08-16
New channel method handles_delivery_for_message for allowing a default channel to claim a message, even if it would normally be delivered to the configured transactional channel.
Braze: Will handle any message defined in ACE_CHANNEL_BRAZE_CAMPAIGNS (using the above new feature) to steal campaign messages from the transactional channel as needed.
[1.2.0] - 2021-07-16
Added support for django 3.2
[1.1.1] - 2021-07-09
Removed upper constraint from Django
[1.1.0] - 2021-03-26
Braze: Add ACE_CHANNEL_BRAZE_FROM_EMAIL setting to override the normal from address
Sailthru: Remove Braze rollout waffle flag
[1.0.1] - 2021-03-15
Braze: Add an unsubscribe action link
Braze: Don’t ask Braze to inline css, as ACE templates already have inline css
[1.0.0] - 2021-03-11
BREAKING: Recipient objects now take lms_user_id instead of username
New braze_email backend, needing the following new configuration:
ACE_CHANNEL_BRAZE_REST_ENDPOINT (like rest.iad-01.braze.com)
ACE_CHANNEL_BRAZE_CAMPAIGNS (an optional dictionary of ACE message names to Braze campaign identifiers)
[0.1.18] - 2020-11-19
Updated he travis-badge in README.rst to point to travis-ci.com
[0.1.17] - 2020-10-19
Use IntEnum to avoid silent failure in value comparisons
[0.1.16] - 2020-10-17
Fixed Enum usage for Python 3.8 to avoid TypeError when comparing values
[0.1.15] - 2020-03-11
Added support for Python 3.8
Removed support for Django 2.0 and 2.1
[0.1.14] - 2020-03-11
Fix trivial warning from deprecated use of attr library.
[0.1.13] - 2019-12-06
[0.1.12] - 2019-10-16
Reply_to field added in emails.
[0.1.10] - 2018-11-01
Django lazy text translations are handled properly.
[0.1.9] - 2018-07-13
Updated delivery logging
[0.1.0] - 2017-08-08
First release on PyPI.
Release history Release notifications | RSS feed
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Hashes for edx_ace-1.6.1-py2.py3-none-any.whl