Package: edx-ace
PurposeTheautomated 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 withedx-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.Getting StartedFor instructions on starting local development, seeGetting Started.Getting HelpDocumentationSeethe documentation.  If you need more help see below.More HelpIf you’re having trouble, we have discussion forums athttps://discuss.openedx.orgwhere you can connect with others in the
community.Our real-time conversations are on Slack. You can request aSlack
invitation, then join ourcommunity 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.https://github.com/openedx/edx-ace/issuesFor more information about these options, see theGetting Helppage.LicenseThe code in this repository is licensed under the AGPL 3.0 unless
otherwise noted.Please seeLICENSE.txtfor details.ContributingContributions are very welcome.Please readHow To Contributefor details.Even though they were written withedx-platformin 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
atPULL_REQUEST_TEMPLATE.mdIssue report template should be automatically applied if you are sending it from github UI as well; otherwise you
can find it atISSUE_TEMPLATE.mdThe Open edX Code of ConductAll community members are expected to follow theOpen edX Code of Conduct.PeopleThe assigned maintainers for this component and other project details may be
found inBackstage. Backstage pulls this data from thecatalog-info.yamlfile in this repo.Reporting Security IssuesPlease do not report security issues in public. Please emailsecurity@tcril.org.Change LogUnreleased[1.7.0] - 2023-07-21Switch fromedx-sphinx-themetosphinx-book-themesince the former is
deprecatedAdded support for django 4.2[1.6.1] - 2023-02-07Updated code coverage target inhttps://github.com/openedx/edx-ace/pull/189Updated Python Requirements inhttps://github.com/openedx/edx-ace/pull/199Full Changelog:https://github.com/openedx/edx-ace/compare/v1.6.0…v1.6.1[1.5.0] - 2022-02-15Added support for Django40Removed support for Django22, 30 and 31[1.4.1] - 2021-12-06Adds in the ability to override frequency caps for Braze emails. Can be accessed via
Message options using the keyoverride_frequency_capping. All emails containing thetransactionalMessage option will also override frequency caps.[1.4.0] - 2021-11-08Deprecate the action_links propertyAdd a get_action_links method and template tag to allow passing arguments to action links[1.3.1] - 2021-08-17Adjust namehandles_delivery_for_messagetooverrides_delivery_for_message[1.3.0] - 2021-08-16New channel methodhandles_delivery_for_messagefor 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 inACE_CHANNEL_BRAZE_CAMPAIGNS(using the
above new feature) to steal campaign messages from the transactional channel as
needed.[1.2.0] - 2021-07-16Added support for django 3.2[1.1.1] - 2021-07-09Removed upper constraint from Django[1.1.0] - 2021-03-26Braze: Add ACE_CHANNEL_BRAZE_FROM_EMAIL setting to override the normal from addressSailthru: Remove Braze rollout waffle flag[1.0.1] - 2021-03-15Braze: Add an unsubscribe action linkBraze: Don’t ask Braze to inline css, as ACE templates already have inline css[1.0.0] - 2021-03-11BREAKING: Recipient objects now takelms_user_idinstead ofusernameNewbraze_emailbackend, needing the following new configuration:ACE_CHANNEL_BRAZE_API_KEYACE_CHANNEL_BRAZE_APP_IDACE_CHANNEL_BRAZE_REST_ENDPOINT (likerest.iad-01.braze.com)ACE_CHANNEL_BRAZE_CAMPAIGNS (an optional dictionary of ACE message names to Braze campaign identifiers)[0.1.18] - 2020-11-19Updated he travis-badge in README.rst to point to travis-ci.com[0.1.17] - 2020-10-19Use IntEnum to avoid silent failure in value comparisons[0.1.16] - 2020-10-17Fixed Enum usage for Python 3.8 to avoid TypeError when comparing values[0.1.15] - 2020-03-11Added support for Python 3.8Removed support for Django 2.0 and 2.1[0.1.14] - 2020-03-11Fix trivial warning from deprecated use of attr library.[0.1.13] - 2019-12-06Django22 Support.[0.1.12] - 2019-10-16Reply_to field added in emails.[0.1.10] - 2018-11-01Django lazy text translations are handled properly.[0.1.9] - 2018-07-13Updated delivery logging[0.1.0] - 2017-08-08AddedFirst release on PyPI.