Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Send email notifications for missed messages #759

Merged
merged 80 commits into from May 10, 2016
Merged

Conversation

dbkr
Copy link
Member

@dbkr dbkr commented Apr 29, 2016

Most functionality here is confined to adding an email pusher and other functionality used from it. Changes to the rest of the codebase are limited to exposing the previously private _filter_events_for_client and adding an email pusher for new users who register with an email.

This code will not be enabled unless the appropriate options are added to the config on existing installations. They are disabled by default on new installations.

Newly registered users will only have an email pusher set up if email notifications are enabled on the Home Server, so users will only ever start getting mails after registering or explicitly opting in.

Fixes element-hq/element-web#108

dbkr added 30 commits April 19, 2016 14:24
Mostly logic of when to send an email
Copy the stuff over from http pusher that prevents multiple instances of process running at once and sets up logging and measure blocks.
Mostly WIP porting the room name calculation logic from the web client so our room names in the email mirror the clients.
Doesn't get character enocind right yet but makes it not error.
So names of people in a room are given in order
Include name of the person we're sending to and add summary text at the top giving an overview of what's happened.
Add public facing base url to the server so synapse knows what URL to use when converting mxc to http urls for use in emails
Say who the messages are from if there's no room name, otherwise it's a bit nonsensical
so we don't accidentally mail out events people shouldn't see
@erikjohnston
Copy link
Member

@NegativeMjark: How does packaging work with the manifest stuff? I note that all the static content is in a top level res/ folder, rather than in the package itself like the other static stuff.

dbkr and others added 7 commits May 4, 2016 13:19
In standard sql, join binds tighter than comma, so we were joining on the wrong table. Postgres follows the standard (apparently).
until we can de-dup between the context and other notifs
switch to vector.im permalinks as matrix.to isn't ready yet.
merge overlapping notifications together.
give one message of context after a notification (in the unlikely event it exists, but it's possible thanks to throttling).
include name of app in mail templates
@ara4n
Copy link
Member

ara4n commented May 5, 2016

@dbkr: i've done an initial skin for vector notifs and also implemented merging of overlapping notifs. please can you take a look at ce81ccb in particular?

@dbkr
Copy link
Member Author

dbkr commented May 5, 2016

lgtm

@ara4n ara4n merged commit fe97b81 into develop May 10, 2016
@eMPee584
Copy link

eMPee584 commented Feb 19, 2019

How to debug this in case it doesn't work?
[dockered synapse with debian exim4 on the host, works for other containers, SYNAPSE_SMTP_HOST set..]

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants