discourse/spec/fixtures/emails
Martin Brennan eb2c399445
FEATURE: Use group SMTP settings for sending user notification emails (initial) (#13220)
This PR changes the `UserNotification` class to send outbound `user_private_message` using the group's SMTP settings, but only if:

* The first allowed_group on the topic has SMTP configured and enabled
* SiteSetting.enable_smtp is true
* The group does not have IMAP enabled, if this is enabled the `GroupSMTPMailer` handles things

The email is sent using the group's `email_username` as both the `from` and `reply-to` address, so when the user replies from their email it will go through the group's SMTP inbox, which needs to have email forwarding set up to send the message on to a location (such as a hosted site email address like meta@discoursemail.com) where it can be POSTed into discourse's handle_mail route.

Also includes a fix to `EmailReceiver#group_incoming_emails_regex` to include the `group.email_username` so the group does not get a staged user created and invited to the topic (which was a problem for IMAP), as well as updating `Group.find_by_email` to find using the `email_username` as well for inbound emails with that as the TO address.

#### Note

This is safe to merge without impacting anyone seriously. If people had SMTP enabled for a group they would have IMAP enabled too currently, and that is a very small amount of users because IMAP is an alpha product, and also because the UserNotification change has a guard to make sure it is not used if IMAP is enabled for the group. The existing IMAP tests work, and I tested this functionality by manually POSTing replies to the SMTP address into my local discourse.

There will probably be more work needed on this, but it needs to be tested further in a real hosted environment to continue.
2021-06-03 14:47:32 +10:00
..
apple_mail_attachment.eml FIX: properly handle attachments in received emails 2019-01-25 19:13:34 +01:00
attached_eml_file.eml FIX: don't strip eml attachments from received emails 2018-11-05 09:35:22 +01:00
attached_pdf_file.eml FIX: support incoming emails with just an attachment 2018-02-16 18:14:56 +01:00
attached_rb_file.eml FEATURE: new 'allow_all_attachments_for_group_messages' site setting 2016-02-29 22:39:24 +01:00
attached_txt_file_2.eml FIX: validates attachments against current authorized extensions 2017-11-07 19:17:33 +01:00
attached_txt_file.eml FIX: replace 'discourse_email_parser' with 'email_reply_trimmer' to better trim replies from plain text emails 2016-01-30 01:29:31 +01:00
auto_generated_allowlisted.eml FIX: use allowlist and blocklist terminology (#10209) 2020-07-27 10:23:54 +10:00
auto_generated_header.eml FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
auto_generated_precedence.eml FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
auto_generated_unblocked.eml FEATURE: new 'block_auto_generated_emails' site setting 2016-04-20 21:29:27 +02:00
bad_destinations.eml
blocklist_allowlist_email.eml FIX: use allowlist and blocklist terminology (#10209) 2020-07-27 10:23:54 +10:00
body_with_image.eml FEATURE: Parse images in email signatures (#10137) 2020-07-08 15:50:30 +10:00
bounced_email_multiple_status_codes.eml FIX: bounced email can contain multiple status codes 2018-01-03 17:59:20 +01:00
bounced_email.eml FEATURE: If PM email bounced for staged user then alert in whisper reply (#6648) 2018-11-27 00:29:37 +05:30
cc.eml
chinese_reply.eml
dmarc_fail.eml FEATURE: hide posts from incoming email based on dmarc verdict (#8333) 2019-11-26 15:55:22 +01:00
email_reply_1.eml FIX: associates email replies using both 'In-Reply-To' and 'References' headers 2016-01-20 22:52:08 +01:00
email_reply_2.eml FIX: associates email replies using both 'In-Reply-To' and 'References' headers 2016-01-20 22:52:08 +01:00
email_reply_3.eml FIX: associates email replies using both 'In-Reply-To' and 'References' headers 2016-01-20 22:52:08 +01:00
email_reply_4.eml FIX: associates email replies using both 'In-Reply-To' and 'References' headers 2016-01-20 22:52:08 +01:00
email_reply_like.eml FIX: delete staged users when the incoming email is rejected 2017-10-11 16:17:01 +02:00
email_reply_staged.eml FIX: delete staged users when the incoming email is rejected 2017-10-11 16:17:01 +02:00
email_reply_to_group_email_username.eml FEATURE: Use group SMTP settings for sending user notification emails (initial) (#13220) 2021-06-03 14:47:32 +10:00
encoded_display_name.eml Use proper encoding for email fixtures. 2018-02-21 17:06:35 +08:00
encoded_filename.eml DEV: Update mail and use fork (#10639) 2021-02-18 20:15:02 +02:00
encoding_undefined_conversion.eml FIX: Catch UndefinedConversionError for inbound emails (#13000) 2021-05-10 14:26:23 +10:00
existing_user.eml FIX: staged users couldn't create new topic in a private category via email 2016-02-22 19:57:53 +01:00
forwarded_email_1.eml FIX: wasn't able to parse FROM email in the embedded email 2016-12-01 18:34:47 +01:00
forwarded_email_2.eml FIX: mark forwarded email as read by the forwarder 2017-01-06 15:33:55 +01:00
forwarded_email_3.eml FIX: update mail gem to fix UTF-8 parsing issue 2018-04-25 21:53:37 +02:00
forwarded_email_4.eml FEATURE: Add small action post to indicate forwarded email 2020-02-12 16:23:17 +01:00
forwarded_email_to_category.eml Allow inclusion of elided text from emails when sending to a category… (#4844) 2017-06-29 13:03:14 +09:00
from_reply_by_email_address.eml ignore emails that are from the reply by email addresses (#5843) 2018-05-23 10:04:45 +02:00
from_the_future.eml
gmail_html_reply.eml FIX: less aggressive gmail eliding 2018-07-04 20:04:46 +02:00
group_existing_user.eml FIX: Force enable user PM emails option when user posts to a group by email. 2018-10-02 12:38:10 +08:00
hard_bounce_via_verp_2.eml FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
hard_bounce_via_verp.eml FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
hebrew_reply.eml
html_reply.eml new alternative reply by email addresses 2016-06-10 16:14:42 +02:00
ignored.eml FIX: ignore_by_title should match case-insensitive 2017-11-12 01:43:18 +01:00
inactive_sender.eml
inline_image_2.eml FIX: Gracefully handle inline images in emails (#12855) 2021-04-29 10:17:33 +03:00
inline_image.eml Use proper encoding for email fixtures. 2018-02-21 17:06:35 +08:00
inline_mixed_replies.eml
inline_reply.eml
invalid_from_1.eml FIX: Handle incoming emails without email address in From header (#5177) 2017-09-12 22:35:24 +02:00
invalid_from_2.eml FIX: Handle incoming emails without email address in From header (#5177) 2017-09-12 22:35:24 +02:00
iphone_signature.eml
like.eml
mailinglist_dmarc_fail.eml FIX: Ignore DMARC for emails sent to mailing list mirror 2019-12-06 13:29:39 +01:00
mailinglist_reply.eml ignore some site settings for emails sent to mailinglist mirror category 2017-11-17 15:29:14 +01:00
mailinglist_short_message.eml FIX: Do not validate messages sent to mailing list mirror 2018-01-05 11:21:53 +01:00
mailinglist_unsubscribe.eml FIX: Don't reply to Unsubscribe email sent to mailing list mirror 2018-10-11 16:09:22 +02:00
mailinglist.eml ignore some site settings for emails sent to mailinglist mirror category 2017-11-17 15:29:14 +01:00
missing_message_id.eml FIX: use MD5 of the email_string when there's no 'Message-Id' 2016-03-14 18:18:58 +01:00
mute.eml FEATURE: allow users to easily track/watch/mute topics via email 2019-03-06 18:38:49 +11:00
new_user.eml FEATURE: add support for multiple incoming emails for groups & categories 2016-02-24 19:47:58 +01:00
no_body_with_image.eml FIX: replace 'discourse_email_parser' with 'email_reply_trimmer' to better trim replies from plain text emails 2016-01-30 01:29:31 +01:00
no_body.eml
no_date.eml FIX: delete staged users when the incoming email is rejected 2017-10-11 16:17:01 +02:00
no_from.eml FIX: Handle incoming emails without email address in From header (#5177) 2017-09-12 22:35:24 +02:00
no_subject.eml FEATURE: add support for multiple incoming emails for groups & categories 2016-02-24 19:47:58 +01:00
null_byte_in_subject.eml FIX: Strip null bytes in mail subjects. 2018-10-11 09:46:32 +08:00
old_destination.eml PERF: Do not create staged users for most rejected incoming emails (#7301) 2019-04-08 10:36:39 +01:00
on_date_contact_wrote.eml
original_message.eml
paragraphs.eml DEV: Correct typos and spelling mistakes (#12812) 2021-05-21 11:43:47 +10:00
previous_replies.eml this period bothered me and it had to go 2016-02-08 15:37:49 -08:00
readonly.eml
removed_attachments.eml FIX: Email attachments with a size of 0 bytes caused error 2020-02-04 12:30:43 +01:00
reply_and_forwarded.eml FIX: Don't create staged users when processing forwarded email fails 2019-05-09 23:47:47 +02:00
reply_user_matching.eml
reply_user_not_matching_but_known.eml FEATURE: accept incoming email with reply_key mismatch when original email was forwarded 2017-11-12 23:44:22 +01:00
reply_user_not_matching.eml
reply_with_8bit_encoding.eml Use proper encoding for email fixtures. 2018-02-21 17:06:35 +08:00
reply_with_weird_encoding.eml FIX: support emails in with weird encoding 2016-03-11 18:51:53 +01:00
screened_email.eml FIX: improve support for handling emails coming from screened email addresses 2016-04-18 23:01:54 +02:00
silenced_sender.eml FIX: Missing yml file 2017-11-10 14:29:36 -05:00
soft_bounce_via_verp.eml FEATURE: handle bounced emails 2016-05-02 23:15:32 +02:00
spam_x_ses_spam_verdict.eml FEATURE: add SES spam header to recognised spam headers (#8254) 2019-10-28 12:46:53 -04:00
spam_x_spam_flag.eml FEATURE: Create hidden posts for received spam emails (#6010) 2018-07-05 11:07:46 +02:00
spam_x_spam_status.eml FEATURE: Create hidden posts for received spam emails (#6010) 2018-07-05 11:07:46 +02:00
staged_reply_restricted.eml FIX: staged users weren't able to reply in restricted categories 2016-06-26 19:25:45 +02:00
staged_sender.eml Reenable skipped Email::Receiver spec. 2017-07-24 22:27:24 +09:00
text_and_html_reply.eml
text_reply.eml FIX: update mail gem to fix UTF-8 parsing issue 2018-04-25 21:53:37 +02:00
tl3_user.eml improve receiver specs to account for posts approval 2016-04-11 18:20:26 +02:00
tl4_user.eml improve receiver specs to account for posts approval 2016-04-11 18:20:26 +02:00
too_many_mentions.eml
too_small.eml
track.eml FEATURE: allow users to easily track/watch/mute topics via email 2019-03-06 18:38:49 +11:00
unparsable_email_addresses.eml FIX: Try fixing unparsable email addresses 2018-03-27 18:28:54 +02:00
unsubscribe_body.eml
unsubscribe_new_user.eml FIX: don't create staged users when incoming email is rejected 2017-10-03 16:36:08 +02:00
unsubscribe_subject.eml
user_not_found.eml new 'enable_staged_users' site setting 2016-03-23 18:56:03 +01:00
verp_bounce_different_final_recipient.eml FIX: Prioritize VERP key over final_recipient header in bounced email 2019-05-03 12:12:44 +01:00
watch.eml FEATURE: allow users to easily track/watch/mute topics via email 2019-03-06 18:38:49 +11:00