Ideas for creating an "email-profile" thing


(Caue Rego) #1

Continuing the discussion from Using discourse as a community ticket system

This also looks like an unintended continued discussion from this topic I just started reading: Replacing Mailing lists: Email-In, doesn’t it @lightyear ?

The idea is creating an email-profile for whoever emails in (thus creating a topic) or is invited to participate to a topic.

  • task: create profile without needing any authentication, the email-profile

Currently the predefined system user creates a topic for who emails in, and that topic isn’t associated to a person’s profile, even if they do create an account later on. That’s a very weird association there, if you ask me.

  • task: associate emailed-in topic to email-profile

And if a person is invited to participate in a topic, currently they can’t reply to the email like a regular user would be able to. (on a side note, we also can’t invite an existing user, we can only @mention them and they should be notified, but I believe that might not always go as an email notification - I believe the invite button should work independent of person having an account)

I believe both problems could be solved by creating an email-profile in both cases (and improving the invite button). If the person emails in, email profile is already created. If they’re invited, the profile would be created once they accept it or reply to it. In fact, the invitation would be very different…

  • task: allow reply to on invitation email

It would look like a mix of the current invitation and a topic notification, which includes the unsent parts of the topic. Also, right now once the invitation is accepted the person receives another email asking for them to create a password. I believe that link should be to “create a profile” and not a password necessarily, as they might prefer to use oAuth (passwords are a thing of the past!).

  • task: add “topic notification” to invitation emails
  • task: accepted invitation email should go through default profile creation process

I’m thinking in making an attempt at building this plugin / performing those tasks (and eventually 2 other ones later on), but I wanted to have some feedback first of what you guys think (and if any of you rather do it)! :slight_smile:

I can see a lot of work for me there, mostly to get in the workflow, and I can also see some of the tasks shouldn’t be too much for whoever already is in the workflow, but above all I wanted to know if this idea makes sense or if it has any prohibiting unthought failure.

Striked above. I just can’t even consider trying to do it this year.

I should stop saying what I’m thinking in doing. I would love to have the time to make that effort, but I just realized I don’t. And I’ve managed to do basically everything I needed with discourse without any of the suggestions here.

I still think they would be quite valuable addendums and could convert much more people into using the tool. Eventually even learning how to upgrade their profile to really engage… All just guessing! :frowning:

I do realize this might go against much of what Jeff considers is needed for engagement, but keep in mind the whole point here is extending discourse and allowing it to be used as a different kind of ticket system!

Few more tasks I just realized might be important, all about title restrictions:

  • task: allow email sent in to be unlisted by default

  • task: remove minimum length and allow duplicated titles for emails sent in, but makes it enforced unlisted

  • task: update warning email sent back with those new infos


What is the most awesome plugin for Discourse, that does not yet exist?
Create a user with username generated from email
(Erlend Sogge Heggen) #2

I think your proposal would be easier to follow if you outlined the current process of email-in vs your suggested process. An important selling point you missed here is how this would be yet another nail in the mailing lists’ coffin.

The idea is sound though, I like it. I’d prefer this to be core functionality.

How do you envision profiles to work with only an e-mail?

  • E-mail is their username
  • Username field is empty (somehow)
  • Username field is auto-filled with their name or a random identifier

(Caue Rego) #3

I’ll try to outline the comparison and the coffin’s nail (although the later isn’t really the focus here) later on… Right now, just wanted to say:

I actually think the most important aspect I’ve overlooked here is keeping it clear for the email-user that they’re participating in a “public forum” or something “like a mailing list” indeed. Which is very different from the privacy people use to have when using emails (and ticket systems).

Me too! :slight_smile:

E-mail as the username sounds good enough. Empty would be too odd and auto-filled would be confusing to distinguish. Additionally they would always have that email icon on their posts and on their profile, just to make it clear they’re not ever using the web interface. At least until they sign up. They’d also use no gravatar, as another way to distinguish, keeping only the first letter auto avatar thing.


(Erlend Sogge Heggen) #4

[quote=“cawas, post:3, topic:25887”]
I actually think the most important aspect I’ve overlooked here is keeping it clear for the email-user that they’re participating in a “public forum” or something “like a mailing list” indeed. Which is very different from the privacy people use to have when using emails (and ticket systems).
[/quote]Indeed, this is an important concern. You might want to have them confirm that they’re aware of their participation in a public forum by clicking a confirmation link before validating their post, much like how mailing lists or newsletters work.

Well that might be a bit problematic due to the double @, i.e. if you created a topic by email on my forum and I wanted to mention you, it’d look like @contact@cawas.net which looks pretty awkward and would probably conflict with how the mentioning system works.


(Caue Rego) #6

All right, I’m still not sure what to say about mailing lists as I’ve never really used any…

Anyway, currently this is how the email-in seem to work versus how I think it should work. I’ve updated a few things given our discussion:

If you have no account

  • The system user posts a new topic to you, quoting and giving your email.
    • If it’s a new topic, it should be associated to your email-profile
  • From that point on, you’re completely ignored by the whole system and new emails will generate new posts from step 1.
    • The topic you created, as usual, is now being watched by you. Future replies to the email you’ve first sent, even if haven’t received anything back, should continue on the same topic.
  • If someone answers the topic, you get no notification.
    • As any watched topic, you get notifications. Of course, by email.
  • If you later create an account by other means, that post isn’t attributed to you.
    • Not only all your posts are associated with your email, your profile is “promoted”.
  • New emails are listed
    • Give a setting to make them unlisted. This could also significantly reduce spammers will to abuse it.
  • Short subjects are refused with a gracious warning email, which isn’t very clear where it comes from.
    • Give a setting to remove the minimum length requirement and allow duplicated titles. If that’s checked, they’ll be necessarily unlisted by default. People mostly don’t bother enough with email subjects, but that could be curated if they’re unlisted at first.
    • Also make the warning email more clear, by replying to the same email and attaching the original message below.

If you’re invited

  • You get an odd link to read the message in site, and you can reply without needing an account.
    • You’d get the same odd link, along with a normal link to the post (as to keep the email with a unbreakable link to the content) and a full message just like when we get notified. You’d also be able to reply through email.
      (updated) You get the full message just like when we get notified, a link to the post and a big link inviting to participate in which you need to accept terms first. Then you’ve got yourself an “email-profile” and you can now reply without creating an account or even reply by the same email.
  • After you click on the odd link, you get a second email asking for you to set a password.
    • After you accepted the terms, you’d get a second email asking you to join the community on the regular “sign up” way, and offering oAuth methods instead of just asking a password. Both links on this invitation and on the first one shouldn’t be broken after using it once.
  • After you accept any invitation, the topics you’ve been invited are not watched and so you get no email notification
    • Being an “email-profile” the topics should be automatically watched after you accepted it, as to allow to receive e-mails.

If you already have an account

  • You can’t be invited any longer, everything else already works fine.
    • You’d still be able to get invited as a way to notify you through email, other than sending a message with a @mention.
      –> moved to another topic

As for the points you bring, I’m so glad we’re discussing relatively minor issues! It means this is taking form… :stuck_out_tongue:

That’s perfect! A simple validation link with a “read agreement” nobody will read, a small warning with big letters and an “I accept” button.

Haven’t thought of that. There are actually lots of issues in choosing a username… The actual profile name (that shows right on the side) could be auto guessed from the name that comes along with the full email (maybe just the full email if there’s no name there), so that would be confusing as well… Also, almost always, the domain part of email says nothing about the person’s profile. So yeah, simply grabbing everything before the “@” might sound like a good idea but then again, it will probably not be unique. “info@mycompany.com” comes to mind.

I guess the username could replace “@” by “.”, grab whatever comes right after “@” and then add a unique number in the end, just in case. So “whatever.my.name@isp.mycompany.xx” becomes “whatever.my.name.isp.123” for some odd cases, but for most it will be “john.hiscompany.234” or “bob.gmail.345”.


Using discourse as a community ticket system
(Erlend Sogge Heggen) #7

This whole thing isn’t really relevant to the feature discussed here. It’s perfectly self-contained. If you open a new thread for it it’ll have a better chance of being discussed and considered.

[quote=“cawas, post:6, topic:25887”]
I guess the username could replace “@” by “.”, grab whatever comes right after “@” and then add a unique number in the end
[/quote]I thought about this some more and realised that showing a user’s e-mail in public, even if slightly altered, is bad practice. Spambots would have a field day. I think it’s best to generate a generic username like user487 and call it a day. Only the ones who end up frequenting your ticket queues are gonna care, and they will usually care enough to figure out how to change their username themselves (basic instructions for which could be included in that confirmation mail as well).


(Caue Rego) #8

That’s perfect! :stuck_out_tongue:

I really thought it was, but I guess you’re right yet again.

Do you think I should edit the topic-post (first one)?

I would wikify it but, odd enough, looks like I can’t! :frowning:


(Erlend Sogge Heggen) #9

This is now implemented: