Usuário criado manualmente em estágio?

Posso criar um usuário em estágio manualmente? Usando o Rake, posso criar um comum, é claro. A IA onisciente me disse que não posso, e eu acredito nela, mas ainda assim…

Talvez eu devesse explicar o que estou tentando fazer.

Tenho uma configuração WordPress/WooCommerce onde um cliente pode agendar um horário. O cliente enviará informações adicionais usando um formulário servido pelo WordPress. Esse formulário é enviado para a caixa de entrada do meu grupo. No entanto, como estou usando o Amazon SES, não posso usar o e-mail do cliente como remetente, pois então devo aprovar esse remetente manualmente, e isso não é uma opção. Portanto, recebo o e-mail do meu endereço do WordPress.

Agora, preciso conectar de alguma forma, automaticamente ou com muito pouco esforço da minha parte, esse tópico de PM com o e-mail do cliente. E a única solução que meu conhecimento limitado apresentou foi mudar a propriedade — mas para isso, preciso de um usuário.

Por que não uso OAuth e crio esse usuário, já que eles precisam criar uma conta no WordPress? Porque simplesmente não consigo entender como fazer isso, ou não encontrei o tópico certo aqui. Muitas vezes, o SSO sugerido não é uma opção, pois ele sequestra todas as outras opções de login.

Tente entrar no contêiner ./launcher enter app

em seguida, entre no console do Rails:

rails c

crie um novo usuário:

new_user = User.create

então… e isso falhará inicialmente, tente salvá-lo (para instanciá-lo)

new_user.save!

siga as instruções para preencher os atributos inválidos até que ele salve.

por exemplo:

new_user.username = 'frank'

passará por um erro de validação.

Repita, eventualmente o usuário será salvo.

simplesmente digite new_user para ver até onde você chegou, mas saiba que você não precisa preencher todos os campos, apenas aqueles com um problema de validação.

Não se esqueça de salvá-lo, pois new_user será um objeto temporário até que o salvamento funcione.

2 curtidas

Estou apenas imaginando… existe isto: staged: false

Como posso ver todos esses dados de um usuário real em staging? Ou estou apenas entrando em águas muito profundas agora e tentando fazer coisas desesperadas, e deveria apenas criar esses usuários manualmente através de criar conta :joy:

User.where(staged: true).first(10)

3 curtidas

Por favor, o Descartar poderia pedir um simples você tem certeza :man_facepalming:

De novo. Não sei se isso funciona, porque fui estúpido o suficiente para trabalhar com o caso real, então não posso testar. Mas tenho um usuário em estágio novo.

Eu fiz isso:

newuser = User.create
newuser.username = 'frank'
newuser.staged = true
newuser.email = 'frank@example.tld'
newuser.save!

Acho que isso também poderia funcionar, mas ainda não tentei.

newuser = User.create!(username: "frank", staged: true, email: "frank@example.tld")
1 curtida

Sim, essa abordagem também deve funcionar.

Exceto… que não consigo alterar a propriedade do PM para um usuário em staging :man_facepalming:

Portanto, desde que eu não comece a construir a coisa do OAuth, minha única opção é enviar um PM para o e-mail desse usuário. O mesmo staging acontecerá, se eu estiver entendendo corretamente.

Ou eu aprovo esse usuário. Essa é uma opção. Eu prefiro não, embora, porque então eu faria isso sem consentimento.

Mas agora eu sei o básico de como criar/editar um usuário usando Rails :winking_face_with_tongue: Isso também é uma vitória. Além disso, criei um usuário em staging com o qual não posso fazer nada.

newsuser.destroy

(nota: NÃO é “delete”)

1 curtida

Outra forma que encontrei é:

1) Crie uma Categoria… (Eu nomeei a minha como Caixa de Entrada)

2) Nas Configurações dessa categoria, habilite “Aceitar e-mails de usuários anônimos sem conta”

3) Envie um e-mail para esse endereço de e-mail

Eu não entendi :thinking: Como posso enviar um e-mail de um endereço estranho para criar esse usuário de teste e como isso é diferente de usar um endereço de grupo?

Eu busquei apenas a maneira mais simples de criar manualmente um usuário em staging (para meu uso específico de criar novos Tópicos no meu fórum privado enviando e-mails do meu relógio). Tenho certeza de que existem muitos outros métodos!

(Você tentou?)

Não, porque eu ainda não entendo como posso enviar um e-mail usando um endereço que não é meu.

1 curtida

No meu exemplo acima, enviei um e-mail do meu endereço de e-mail normal que uso todos os dias…

para…

o endereço de e-mail que coloquei na configuração da categoria para a nova categoria Inbox que criei, neste caso (como mostrado no meu exemplo acima) inbox@forum.mysite.com, que é, claro, também um endereço de e-mail que possuo (porque o domínio é o mesmo do domínio do meu fórum.)

1 curtida

Mas o Jagster quer criar um usuário de palco para o usuário dele. Ele não pode enviar um e-mail para eles.

Talvez enviar uma mensagem pessoal para um endereço de e-mail possa funcionar neste caso :thinking:

Eu estava perguntando como eu crio um usuário “staged” (no sentido de um pré-TL) para uma pessoa real sem precisar pedir que essa pessoa envie um e-mail para o fórum.

Nós esbarramos em uma enorme barreira linguística novamente, presumo (nós precisamos desesperadamente desse tradutor de IA) :joy:

Para criar uma pessoa dummy, staged ou registrada, é uma tarefa realmente fácil com o iPhone.

Então eu resolvi. Ao mesmo tempo, tive a chance de explicar o que estava fazendo. Mas, novamente, criar um usuário de palco não seria o problema real que eu estava tentando resolver, mas sim conectar os acompanhamentos ao meu WooCommerce — então fiz o que é normal hoje em dia: cheguei a uma solução e perguntei sobre ela. Mas isso foi intencional, porque eu sabia que não podia perguntar como enviar e-mail do WooCommerce com o remetente sendo aquele usuário, e o Amazon SES não faria isso. Ou como sincronizar meus usuários do WordPress com o fórum automaticamente, porque essa é uma ação praticamente ilegal.

Então, criar manualmente um usuário de palco foi tudo o que consegui pensar :smirking_face:

1 curtida

Não tenho certeza se entendi completamente os requisitos de roteamento específicos para o caso de uso do Jagster.

Mas estou recebendo e-mails na minha categoria de Caixa de Entrada do Discourse (como descrevi acima) de um endereço de e-mail do qual não consigo enviar. São e-mails de um cliente com quem me correspondo usando minha conta do Gmail.

Veja como configurei…

Na minha conta do Gmail, configurei um filtro que captura todos os e-mails recebidos do endereço de e-mail desse cliente, que (enquanto também mantém uma cópia no Gmail) encaminha esses e-mails para o endereço de e-mail que designei para receber e-mails na categoria Caixa de Entrada na minha instância do Discourse.

Suponho que eu também poderia (ou alternativamente) configurar essa categoria Caixa de Entrada (nas configurações de sua categoria) para “espelhar uma lista de e-mails” à qual eu (e opcionalmente outros) poderíamos então nos inscrever.

:exploding_head:

Esses usuários não enviaram nada, esse é o problema. Se tivessem enviado, eu teria muitas opções e mensagens em grupo seriam a solução mais prática para mim.

E de volta ao problema real. Quando um usuário compra um serviço, ele recebe um link para um formulário criado por um plugin no WooCommerce. Não, eu não posso usar o Discourse para isso, porque, sabe, eles não são usuários. Eu posso enviar esse formulário para o Discourse, mas apenas de endereços aprovados, e os endereços dos clientes não são e não serão aprovados no SES. Então, preciso conectar esse cliente que enviou o formulário, agora um PM, de alguma forma. Então, posso continuar com esse cliente no fórum, por causa de todas as ferramentas que ele oferece.

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.