Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

One Click Suggested Unsubscribe #5387

Closed
3 of 4 tasks
Tracked by #66
ChildLearningClub opened this issue Jul 31, 2021 · 10 comments · Fixed by nextcloud/documentation#10246 or #8438
Closed
3 of 4 tasks
Tracked by #66

One Click Suggested Unsubscribe #5387

ChildLearningClub opened this issue Jul 31, 2021 · 10 comments · Fixed by nextcloud/documentation#10246 or #8438
Assignees
Labels
3. to review enhancement feature parity skill:backend Issues and PRs that require backend development skills skill:frontend Issues and PRs that require JavaScript/Vue/styling development skills

Comments

@ChildLearningClub
Copy link

ChildLearningClub commented Jul 31, 2021

Feature Request

Easily unsubscribe to promotion emails by grouping them into a list and allowing for simple one click unsubscribe.

Edison email as well as apparently CleanFox have a feature to quickly unsubscribe to newsletters and promotional emails.

Specification

Work packages

@ChristophWurst
Copy link
Member

I assume they get that info from some headers? Would you have an example email where that quick unsubscribe is shown so we can inspect the header info?

@philippstappert
Copy link

there is a list-unsubscribe header in most newsletters/mailing lists with a link to unsubscribe.

See RFC2369: https://datatracker.ietf.org/doc/html/rfc2369

@nimishavijay
Copy link
Member

This is there in Gmail, Apple mail and Outlook so it sounds like a great idea!
As for how it looks on the frontend, something like this could work:
image

Screenshots for other email clients are at Penpot
cc @jancborchardt also

@kesselb kesselb self-assigned this Jun 2, 2022
@ChristophWurst ChristophWurst added skill:backend Issues and PRs that require backend development skills skill:frontend Issues and PRs that require JavaScript/Vue/styling development skills labels Jul 16, 2022
@ChristophWurst ChristophWurst moved this from 📄 To do (~10 entries) to 🧭 Planning evaluation (dont pick) in 💌 📅 👥 Groupware team Aug 18, 2022
@jancborchardt jancborchardt moved this to 🏗️ At engineering in 🖍 Design team Apr 4, 2023
@ChristophWurst ChristophWurst moved this from 🧭 Planning evaluation (dont pick) to 📄 To do (~10 entries) in 💌 📅 👥 Groupware team Apr 4, 2023
@ChristophWurst ChristophWurst self-assigned this Apr 20, 2023
@ChristophWurst ChristophWurst moved this from 📄 To do (~10 entries) to 🏗️ In progress in 💌 📅 👥 Groupware team Apr 20, 2023
@ChristophWurst
Copy link
Member

ChristophWurst commented Apr 20, 2023

there is a list-unsubscribe header in most newsletters/mailing lists with a link to unsubscribe.

See RFC2369: https://datatracker.ietf.org/doc/html/rfc2369

From testing and articles like https://www.sendinblue.com/blog/list-unsubscribe-header/ I learned that it's not always just a link. It might also be a mailto: address. HTTP links are easy to handle, so I quickly built #8395. Mailto is a bit trickier. We need to either

  1. Open the composer with the info from the mailto (like sender+subject prefilled)
  2. Submit the message to the outbox in the background
  3. Submit the message silently so it's neither shown in the outbox nor the Sent mailbox

@ChristophWurst
Copy link
Member

I think I'll go with 2) because it's good UX and not as much magic as 3) should there be a reply to the background message

@nimishavijay
Copy link
Member

Submit the message to the outbox in the background

So the message will be seen in the Sent folder once it has been sent? That may lead to confusion since I'm assuming the contents of the mail would be fairly cryptic to an everyday user?

Also, since this is kind of a destructive action (once you unsubscribe from a mailing list it can be hard to subscribe again), there could be a confirmation dialogue Unsubscribing will stop all messages from the mailing list [name of mailing list] [Cancel tertiary button] [Unsubscribe primary button] Similar to Gmail (also cc @jancborchardt for wording here)

image

Also, interesting approach from Protonmail for messages which don't directly have an email for unsubscribing, but a link:

image

This is the message shown when there is an email.

image

Also, the mockup here conflicts with the the design in #8379 regarding showing the mail address in the message header. Suggestion: We show only the Unsubscribe button next to the mail address in the subline, without the "This message is from a mailing list" that is seen in the mockup here :)

@ChristophWurst
Copy link
Member

So the message will be seen in the Sent folder once it has been sent? That may lead to confusion since I'm assuming the contents of the mail would be fairly cryptic to an everyday user?

Not necessarily. It depends on the mailing list. Some just need a message with the subject "unsubscribe".

Even if the messages are slightly technical I would like my email client to be transparent about the messages sent. A message without traces is a bit meh.

@nimishavijay
Copy link
Member

Even if the messages are slightly technical I would like my email client to be transparent about the messages sent. A message without traces is a bit meh.

That's a great point! I am sold, nice :)

@ChristophWurst
Copy link
Member

ChristophWurst commented Apr 27, 2023

One-click HTTP unsubscribe in accordance to https://datatracker.ietf.org/doc/html/rfc8058 (requires security work due to cross origin requests)

Tested this quickly and indeed run into Content Security Policy: The page’s settings blocked the loading of a resource at [https://list-unsubscribe.e](https://list-unsubs…. This is not a problem for standalone email clients, of course. Moving to the server is also not an option as this would create blind SSRF.

@ChildLearningClub
Copy link
Author

ChildLearningClub commented May 5, 2023

🎆 thank you everyone.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. to review enhancement feature parity skill:backend Issues and PRs that require backend development skills skill:frontend Issues and PRs that require JavaScript/Vue/styling development skills
Projects
Archived in project
5 participants