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 curtida

Houve alguma nova percepção sobre isso?

De vez em quando, temos uma situação em que precisamos criar um novo usuário em estágio, depois atribuí-lo como proprietário de um tópico criado em nome dele.

Existe uma maneira rápida e fácil de fazer isso acontecer?

A melhor maneira de criar um usuário de teste é iniciar um PM endereçado ao endereço de e-mail do usuário de teste. Em seguida, uma vez que o usuário de teste tenha sido criado, você pode fazer o que precisar com ele.

Exceto atribuir uma postagem a ele. A menos que eu esteja fazendo algo errado, não parece que consigo fazer isso com um usuário em staging.

Ah, sim. Não é possível alterar a propriedade de uma postagem para um usuário “staged”. Desculpe a confusão. Usuários “staged” têm limitações quanto ao que podem fazer, pois não são “usuários reais”… até que façam login.

Você pode me contar mais sobre o seu caso de uso?

Ocasionalmente, precisamos criar um ticket de serviço em nome de um de nossos clientes. A maioria dos nossos clientes de serviço e suporte só existe em nosso Discourse como usuários encenados.

Seria o caminho de menor resistência para um de nós simplesmente criar a postagem e, em seguida, transferir a propriedade desse tópico para o cliente em questão.

Se houver outra maneira de fazer isso que não envolva tentar criar tópicos via API que eu possa repassar à nossa equipe de suporte, ficarei feliz em fazê-lo.

Eu só preciso ser capaz de escrever um documento interno com as etapas e elas não podem incluir nada como, “SSH no servidor e…”

1 curtida

Esse é um caso interessante. Talvez usuários encenados precisem ser tratados como usuários reais, para casos como esses.

1 curtida

Não tenho certeza do que você está sugerindo aqui. Algo que eu possa fazer ou uma atualização de recurso?

Desculpe por isso! O preenchimento automático do meu telefone me trai regularmente! :facepalm: Eu corrigi.

Passei a solicitação de recurso para a equipe de experiência do funcionário, mas infelizmente não tenho certeza se ela acontecerá porque envolveria uma grande reformulação do sistema de usuários em estágio.

Você considerou “desestagiar” esses usuários? Atualmente, isso pode ser feito na linha de comando, o que sei que não é o que você está procurando.

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

Talvez um botão para desestagiar através da página de administração do usuário seja o recurso solicitado que estamos procurando aqui.

Outra ideia que me vem à mente… o ticket de serviço precisa absolutamente ser iniciado pelo cliente? Por que não iniciar o ticket (MP) vocês mesmos a partir da caixa de entrada do seu grupo e incluir o endereço de e-mail deles? Então vocês são o autor e eles estão envolvidos.

Não quero desfazer o staging deles porque não quero que eles sejam expostos a e-mails de resumo que eles podem não ter interesse em receber, a menos que criem sua própria conta em nosso fórum.

Não usamos MPs, usamos tópicos de categoria. Se houver uma maneira de adicioná-los ao tópico, estaria tudo bem para mim.

Este tópico foi fechado automaticamente 30 dias após a última resposta. Novas respostas não são mais permitidas.