¿Usuario en etapas creado manualmente?

¿Puedo crear un usuario en staging manualmente? Usando rake, puedo crear uno normal, por supuesto. La IA todopoderosa me dijo que no puedo, y le creo, pero aún así…

Quizás debería explicar lo que estoy intentando hacer.

Tengo una configuración de WordPress/WooCommerce donde un cliente puede reservar una cita. El cliente enviará información adicional usando un formulario servido por WordPress. Ese formulario se envía a la bandeja de entrada de mi grupo. Sin embargo, como estoy usando Amazon SES, no puedo usar el correo electrónico del cliente como remitente, porque entonces debo aprobar manualmente ese remitente, y esa no es una opción. Por lo tanto, recibo el correo electrónico desde mi dirección de WordPress.

Ahora, necesito conectar de alguna manera, automáticamente o con muy poco esfuerzo de mi parte, ese tema de PM con el correo electrónico del cliente. Y la única solución que mi conocimiento limitado se me ocurrió fue cambiar la propiedad, pero para eso, necesito un usuario.

¿Por qué no uso OAuth y creo ese usuario, ya que tienen que crear una cuenta en WordPress? Porque simplemente no entiendo cómo hacerlo, o no he encontrado el tema correcto aquí. Muy a menudo, el SSO sugerido no es una opción, porque secuestra todas las demás opciones de inicio de sesión.

Intenta ingresar al contenedor ./launcher enter app

luego entra en la consola de rails:
rails c

crea un nuevo usuario:
new_user = User.create

luego… y esto fallará inicialmente, intenta guardarlo (para instanciarlo)
new_user.save!

sigue las instrucciones para completar los atributos inválidos hasta que se guarde.
por ejemplo:
new_user.username = 'frank'

superará un error de validación.

Enjuaga y repite, eventualmente el usuario se guardará.
simplemente escribe new_user para ver hasta dónde has llegado, pero ten en cuenta que no necesitas completar todos los campos, solo aquellos con un problema de validación.

No olvides guardarlo, ya que new_user será un objeto temporal hasta que el guardado funcione.

2 Me gusta

Solo me pregunto… hay esto: staged: false

¿Cómo puedo ver todos esos datos de un usuario real en staging? ¿O estoy nadando en aguas demasiado profundas ahora e intentando hacer cosas desesperadas, y debería simplemente crear esos usuarios manualmente a través de crear cuenta? :joy:

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

3 Me gusta

Por favor, ¿podría Descartar preguntar simplemente ¿estás seguro? :man_facepalming:

De nuevo. No sé si esto funciona, porque fui lo suficientemente estúpido como para trabajar con un caso real, así que no puedo probarlo. Pero tengo un usuario nuevo en etapa de preparación.

Esto es lo que hice:

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

Creo que esto también podría funcionar, pero no lo he intentado.

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

Sí, ese enfoque también debería funcionar.

Excepto… que no puedo cambiar la propiedad de PM a un usuario en staging :man_facepalming:

Así que, mientras no empiece a construir la cosa de OAuth, mi única opción es enviar un PM al correo electrónico de ese usuario. Lo mismo ocurrirá en staging, si entiendo bien.

O apruebo a ese usuario. Esa es una opción. Prefiero no hacerlo, sin embargo, porque entonces lo haría sin consentimiento.

Pero ahora conozco los conceptos básicos de cómo crear/editar un usuario usando Rails :winking_face_with_tongue: Eso también es una victoria. Además, creé un usuario en staging con el que no puedo hacer nada.

newsuser.destroy

(nota: NO “delete”)

1 me gusta

Otra forma que encontré es:

1) Crea una categoría… (Yo la llamé Inbox)

2) En la configuración de esa categoría, habilita “Aceptar correos electrónicos de usuarios anónimos sin cuenta”

3) Envía un correo electrónico a esa dirección de correo electrónico

No entiendo :thinking: ¿Cómo puedo enviar un correo electrónico desde una dirección extraña para crear ese usuario preparado y en qué se diferencia de usar una dirección de grupo?

¡Solo he buscado la forma más sencilla de crear manualmente un usuario en staging (para mi uso específico de crear nuevos temas en mi propio foro privado enviando correos electrónicos desde mi reloj). ¡Estoy seguro de que hay muchos otros métodos!

(¿Lo probaste?)

No, porque todavía no entiendo cómo puedo enviar un correo electrónico usando una dirección que no es mía.

1 me gusta

En mi ejemplo anterior envié un correo electrónico desde mi dirección de correo electrónico normal que uso todos los días…

a…

la dirección de correo electrónico que puse en la configuración de la categoría para la nueva categoría de Inbox que creé, en este caso (como se muestra en mi ejemplo anterior) inbox@forum.mysite.com que, por supuesto, también es una dirección de correo electrónico que poseo (porque el dominio es el mismo que el dominio de mi foro).

1 me gusta

Pero Jagster quiere crear un usuario de escenario para su usuario. No puede enviar un correo electrónico para ellos.

Quizás enviar un mensaje personal a una dirección de correo electrónico podría funcionar en este caso :thinking:

Estaba preguntando cómo crear un usuario en “staging” (en el sentido de una especie de pre-TL) para una persona real sin necesidad de pedirle a esa persona que envíe un correo electrónico al foro.

Volvimos a chocar contra una enorme barrera idiomática, supongo (necesitamos desesperadamente ese traductor de IA) :joy:

Para crear una persona ficticia, en staging o registrada, es una tarea realmente fácil con el iPhone.

Así que lo resolví. Al mismo tiempo, tengo la oportunidad de explicar lo que estaba haciendo. Pero de nuevo, crear un usuario preparado no sería el problema real que estaba tratando de resolver, sino conectar los seguimientos a mi WooCommerce, así que hice lo que es normal hoy en día: llegué a una solución y pregunté por esa. Pero eso fue intencional, porque sabía que no podía preguntar cómo enviar un correo electrónico desde WooCommerce donde el remitente fuera ese usuario, y Amazon SES no lo haría. O cómo sincronizar mis usuarios de WordPress con el foro automáticamente, porque eso es prácticamente una acción ilegal.

Así que, crear manualmente un usuario preparado fue todo lo que pude conseguir :smirking_face:

1 me gusta

No estoy seguro de entender completamente los requisitos de enrutamiento específicos para el caso de uso de Jagster.

Pero estoy recibiendo correos electrónicos en mi categoría de Bandeja de entrada de Discourse (como he descrito anteriormente) desde una dirección de correo electrónico desde la que no puedo enviar. Estos son correos electrónicos de un cliente con el que me comunico usando mi cuenta de Gmail.

Así es como lo configuré…

En mi cuenta de Gmail, configuré un filtro que captura todos los correos electrónicos recibidos de la dirección de correo electrónico de ese cliente, que (además de mantener una copia en Gmail) reenvía esos correos electrónicos a la dirección de correo electrónico que he designado para recibir correos electrónicos en la categoría de Bandeja de entrada en mi instancia de Discourse.

Supongo que también podría (o alternativamente) configurar esa categoría de Bandeja de entrada (en su configuración de categoría) para que “refleje una lista de correo” a la que yo (y opcionalmente otros) también podríamos suscribirnos.

:exploding_head:

Esos usuarios no han enviado nada, ese es el problema. Si lo hicieran, tendría muchas opciones y los mensajes grupales son para mí la solución más práctica.

Y volviendo al problema real. Cuando un usuario compra un servicio, recibe un enlace a un formulario creado por un plugin en WooCommerce. No, no puedo usar Discourse para eso, porque, ya sabes, no son usuarios. Puedo enviar ese formulario a Discourse, pero solo desde direcciones aprobadas, y las direcciones del cliente no están ni estarán aprobadas en SES. Así que necesito conectar a ese cliente que envió el formulario, ahora un MP, de alguna manera. Entonces podré continuar con ese cliente en el foro, debido a todas las herramientas que ofrece.

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