Can't change post ownership to an email address

Every time I attempt to change ownership of an existing PM to an email address not in our system, I get an error rather than a new staged user being created. As I enter the email address, the autocomplete dropdown with the envelope icon option does appear and I do select just as I would with a creating a staged user from a new PM, but in the Change Ownership popup it appears as if this functionality does not work for some reason.

It’s not possible to change ownership to an email address. You need to change ownership to an actual user.

OK, so the issue is not creating a staged user prior to ownership change, it’s doing an ownership change with a staged user at all.

Is this a technical limitation or a design decision about how staged users should function with regard to content ownership? If a staged user can properly own a PM that they initiated themselves via email, then they shouldn’t they be able to own other messages created via other means (if all messages are treated equally)? I suppose the ownership change procedures might not support the staged user case, but if the relative effort was not too high, I would vote for this to become supported.

For context, the use case with our organization is a help desk group with messages submitted to it that are either:

  • Emails forwarded through a non-standard/non-parseable forward format (i.e. an email notification forwarded from a partner’s separate ticketing system), or
  • Emails that come from non-email-based origins (i.e. a tweet or facebook message or typeform notification email)

Being able to change ownership to a staged user (especially a newly staged user) would allow much quicker and simpler fixing of the associated contact (so that we can then immediately begin conversing with them), as well as aligning the functionality of the dropdown in Change Ownership with the dropdown in the PM composer (the autocomplete suggestion with the envelope icon).

Unless I’m missing something, right now the only workaround is to copy and paste the body into the bottom of a new PM sent to their email and then to archive/delete the original forwarded message thread, is that correct?

1 Like

Has there been any new insight on this?

Every once in a while we have a situation where we need to create a new staged user, then assign them as owner to a topic created on their behalf.

Is there a quick and easy way to make this happen?

The best way to create a staged user is to start a PM addressed to the email address for the staged user. Then once the staged user has been created you cna do whatever you need to do with it.

Except to assign a post to it. Unless I’m doing something wrong I don’t seem to be able to do that with a staged user.

Ah, yes. It is not possible to change ownership of a post to a staged user. Sorry about the confusion there. Staged users are very limited in what they can be made to do because they are not “real users”.. until they log in.

Can you tell me some more about your use case?

Occasionally we need to create a service ticket on behalf of one of our customers. Most of our service and support customers only exist in our Discourse as staged users.

It would be the path of least resistance for one of us to just create the post and then transfer ownership of that topic to the customer in question.

If there’s another way to do that which doesn’t involve trying to create topics via API that I can relay to our support team I’m happy to do it.

I just need to be able to write an internal document with the steps and they can’t include anything like, “SSH into the server and …”

1 Like

That is an interesting case. Maybe staged users need to be treated as real users, for cases like these.

1 Like

Not sure what you’re suggesting here.
Something I can do, or a feature upgrade?

Sorry about that! My phone’s autocomplete betrays me on a regular basis! :facepalm: I fixed it.

I’ve passed on the feature request to the staff experience team, but unfortunately am not sure it will ever happen because it would involve a large overhaul of the staged users system.

Have you considered “unstaging” these users? Currently that can be done at the command line which I know is not what you are looking for.

cd /var/discourse
./launcher enter app
rails c
User.find_by_email("itsmedebryc@yahoo.com").update(staged: false)

Maybe a button to unstage via the user admin page is the feature request we are looking for here.

Another idea that comes to mind.. does the service ticket absolutely need to be started by the customer? Why not just start the ticket (PM) yourselves from your group inbox and include their email address? Then you are the author and they are involved.

I don’t want to unstage them because I don’t want them to be exposed to anything like summary e-mails that they may not be interested in receiving unless they create their own account on our forum.

We don’t use PMs, we use category topics. If there’s a way to add them to the topic that would be fine by me.