Usuario invitado en etapa no se convirtió en usuario registrado

Hola, tengo varios usuarios en etapa de espera que no se convirtieron en usuarios registrados. Esto ocurre después de que agregaron una foto de perfil y publicaron. En caso de que esto sea relevante, ambos usuarios en etapa de espera se agregaron inicialmente por correo electrónico a un grupo. Sus correos electrónicos coinciden.

2 Me gusta

¿Puedes reproducir esto, @justin?

@debryc Esto es lo que intenté:

  1. Envié un correo a una bandeja de entrada grupal para crear una cuenta en etapa de prueba.
  2. Agregué a ese usuario a un grupo como administrador.
  3. Me registré usando el mismo correo y eligiendo el mismo nombre de usuario.

Eso no reprodujo el comportamiento. ¿Hay alguna diferencia en el proceso para ti?

4 Me gusta
  1. El administrador agrega un correo electrónico al mensaje de grupo

  1. El usuario en etapa de prueba crea una cuenta

  2. El usuario en etapa de prueba hace clic en el enlace de activación y ahora puede hacer todo

  3. El administrador busca al usuario

  4. El usuario sigue en etapa de prueba

1 me gusta

El título es engañoso aquí. Quieres decir que invitaste una dirección de correo electrónico a un tema, no que alguien escribió por correo para crear un tema, que es de donde proviene el 99 % de los usuarios creados artificialmente.

Voy a editar para aclararlo. @justin, hay un escenario de pruebas mejor. Ojalá esto hubiera quedado claro desde el principio para ahorrarle tiempo a todos.

2 Me gusta

¡Gracias por aclarar el título! Mis disculpas por la confusión.

¿Se ha podido reproducir esto?

Lo probé en la última versión en un entorno de desarrollo local y el usuario está sin asignar y activo, como se esperaba.

@debryc, ¿qué versión de Discourse estás ejecutando?

Sin embargo, hay un comportamiento extraño: no se muestra ninguna notificación para el mensaje privado al que se invitó al usuario antes de crear su cuenta, aunque no haya sido leído.

3 Me gusta

¡Ajá! Estamos en la versión v2.4.0.beta1 +8. Intenté actualizar a la última versión, pero estoy esperando a que nuestro voluntario técnico se conecte vía SSH a nuestro servidor web. Nota para mí: Siempre que haya un error, verifica si hay actualizaciones de Discourse. ¡Te avisaré qué sucede después de la actualización!

3 Me gusta

Hola Justin, ahora estamos en la versión más reciente de Discourse y sigue manteniendo a un usuario como “en etapa”.

Aquí hay un video de lo que está sucediendo. (Míralo en silencio para evitar el sonido de teclear)

1 me gusta

@justin Mientras tanto, ¿hay alguna manera de desmarcar a alguien manualmente? Usaré eso como medida temporal.

Puedes hacerlo mediante comandos de Rails:

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

Gracias, ¡esto funcionó!

Mientras tanto, actualicé de nuevo y, @justin, es posible que haya experimentado el error que mencionaste.

Esta vez seguí exactamente el mismo procedimiento que antes, pero después de registrarme en una cuenta, no recibí el enlace de activación. En su lugar, recibí el mensaje de bienvenida.

Solicité a Discourse que reenviara el enlace de activación y eso funcionó.

Mi usuario permaneció en estado “staged”.

1 me gusta

Tendrás que esperar un poco, ya que Justin está en una conferencia esta semana.

5 Me gusta

Está bien, hoy intenté reproducir este problema basándome en los pasos que compartió @debryc. @dax compartió algunas ideas conmigo y posiblemente pudo reproducirlo con los pasos indicados en esta publicación: Staged invited user did not become registered user - #5 by debryc

@dax pudo reproducirlo con estos pasos en un sitio de prueba de nuestra infraestructura, con la adición de lo siguiente:

  • Al crear una cuenta e ingresar información en:
    • Usar el mismo correo electrónico
    • Usar un nombre de usuario y un nombre diferentes de los creados al enviar el usuario en etapa
  • Crear la cuenta de forma normal

Lo intenté en Meta y no pude reproducirlo.

Intentaré reproducirlo mediante un sitio de prueba en nuestro alojamiento para intentar aislarlo aún más.

7 Me gusta

Intenté reproducir esto en un sitio de staging nuevo en nuestro alojamiento, pero no pude reproducirlo.

@debryc ¿tienes instalados algún plugin no oficial?

2 Me gusta

@debryc hemos podido reproducirlo en un sitio con algunas configuraciones del sitio modificadas, pero no en una instalación nueva. ¿Tienes algo en particular modificado en tu sitio? ¿Qué plugins estás utilizando? Cualquier información adicional nos ayudará a reducir el alcance del problema.

4 Me gusta

componentes del tema: estilos de publicación de blog, DiscoTOC, banners de categorías de Discourse, Discourse Kanban, iconos de etiquetas.

CSS móvil

.login-button {
span {display: none}
&:after {content: “Registrarse / Iniciar sesión”}
}

CSS común

// Formato de banner
#banner {
border: 6px solid rgba(140, 194, 82, 1);
// border-radius: 0;
box-shadow: none;
padding: 20px;
max-height: inherit;
// background: url(https://discourse.nycedu.org/uploads/default/original/1X/279dd1c1049bf67d3472d0927c7230aac3aa3d9a.png) no-repeat;
// background-size: cover;
background-color: rgba(255, 255, 255, 0);
background-blend-mode: color;
}

// iframes responsivos de Google Calendar
.googleCalendar{
position: relative;
height: 0;
width: 100%;
padding-bottom: 50%;
}

.googleCalendar iframe{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

muchas personalizaciones de texto

campos de usuario: se agregaron dos campos de texto para usuarios

emoji: se agregó un emoji personalizado

complementos: docker_manager

configuración básica:

inicio de sesión

usuarios


Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-24-11%20PM)


grupos

publicación






correos electrónicos




Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-28-23%20PM)



archivos


niveles de confianza: sin cambios

seguridad


Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-31-28%20PM)

onebox

spam

límites de velocidad: sin cambios

desarrollador: sin cambios

legal

respaldos: sin cambios

búsqueda
Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-33-46%20PM)

otro: sin cambios

preferencias de usuario:



API: sin cambios

API de usuario: sin cambios

etiquetas
Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-35-14%20PM)


Screenshot%20of%20Google%20Chrome%20(9-12-19%2C%203-35-20%20PM)

dashboard: sin cambios

complementos


4 Me gusta

Gracias por la información @debryc. Nos pondremos manos a la obra e intentaremos averiguar un poco más.

2 Me gusta

¡Este fue un caso complicado! Pudimos reducirlo a que la configuración del sitio discourse_narrative_bot welcome_post_type estaba establecida en “Enviar a todos los usuarios nuevos un mensaje de bienvenida con una guía de inicio rápido”.

¡Gracias por toda la información útil que proporcionaste! Lo solucionaremos lo antes posible.

7 Me gusta

Así que los pasos exactos para reproducir el error son:

  • Asegurarse de que discourse_narrative_bot_welcome_post_type esté configurado en “Enviar un mensaje de bienvenida con una guía de inicio rápido a todos los nuevos usuarios”

Luego:

  • Enviar una invitación a un mensaje usando un correo electrónico no vinculado a una cuenta existente
  • Ahora puedes ver al usuario en espera en el sitio; ve a la página de administración de usuarios. El usuario solo está en espera y no activado, tal como debería ser
  • Abrir el foro en una ventana de navegación privada
  • Hacer clic en “Crear nueva cuenta”
  • Crear una nueva cuenta usando la dirección de correo electrónico del primer paso
  • Activar la cuenta en una ventana privada y continuar al sitio
  • Como administrador del sitio, actualizar la página del usuario en espera y la cuenta seguirá estando en espera pero activa

¿Suena correcto, @tshenry?

7 Me gusta