¿Qué es un Post? (Pregunta sobre la API de Discourse)

Estoy intentando medir e informar con precisión la actividad de un foro que administro con Discourse. Creo que no entiendo fundamentalmente qué es una “Publicación” (Post).

En la API, hay “Temas” (Topics) y “Publicaciones” (Posts). Por ejemplo, si quiero obtener Publicaciones, puedo usar filter=5:

/user_actions.json?offset=0&username=NOMBRE_DE_USUARIO&filter=5

(¿Alguien puede decirme qué es “offset”?)

Aquí está el misterio. Las Publicaciones no parecen incluir los Temas. ¿Es este el comportamiento esperado?

¿Qué son las Publicaciones en relación con las Respuestas? No parecen ser un superconjunto.

¿Son las Publicaciones en la API las mismas que obtenemos en el informe (Admin –\u003e Informes –\u003e Publicaciones)?

Agradecería cualquier ayuda.

1 me gusta

Por lo que puedo ver, el parámetro filter=5 para las publicaciones en /user_actions.json?offset=0&username=USERNAME&filter=5 no corresponde a las Publicaciones del informe. Parece que las Publicaciones del informe incluyen tanto las publicaciones (filter=5) como los temas (filter=4).

Asumo que las publicaciones deberían ser respuestas + temas. Sería bueno que alguien con más conocimientos confirmara esto.

Si es así, puedo intentar usar respuestas (filter 6) y temas (filter 4). Sin embargo, me preocupa un poco, ya que el informe en el administrador de Discourse muestra los números correctos y esperados.

Intenta buscar un ejemplo de cómo usar la API de Discourse para generar informes.

1 me gusta

Sí, las publicaciones están dentro de un tema. Por lo tanto, buscar nuevas publicaciones no buscará nuevos temas.

Cuando creas un tema, también has creado una publicación: la primera publicación es parte del tema.
Sin embargo, todas las respuestas subsiguientes también se consideran publicaciones; estás publicando tus respuestas. :slightly_smiling_face:

En cuanto al offset y si las publicaciones en la API son las mismas que en Administración → Informes → Publicaciones, dejaré eso en manos de otra persona.

1 me gusta

¿Esto ayuda en algo?

3 Me gusta

En primer lugar, gracias por tu ayuda.

Usando /user_actions.json?offset=0&username=USERNAME&filter=5, parece que no estoy obteniendo una publicación contada si fue la primera publicación de un tema.

Es posible que esté usando la API incorrectamente.

Tengo una cuenta de prueba con 7 actividades.

  • 3 temas, cada uno con una publicación
  • 4 respuestas a temas existentes.

Cuando filtro por “publicaciones”, obtengo un recuento de 4, no los 7 esperados.

Para obtener el recuento de publicaciones esperado de 7, creo que necesito agregar “respuestas” y “temas”.

Por lo que entiendo, creo que el filter de 5 debería devolver tanto las publicaciones que son la primera publicación de un tema como las respuestas, ¿verdad?

Me encantaría recibir ayuda para entender cómo obtener el recuento de publicaciones para usuarios específicos con la API.

 query = {'username': username, 'filter': '5'};

  var response = await getRequest(
      path: '/user_actions.json',
      queryParameters: query);

Eso es correcto. Todos los temas tienen un primer mensaje como parte de la creación del tema. No se podría crear un tema con solo un encabezado. Ese primer mensaje no se cuenta como un mensaje (respuesta) en una consulta de mensajes (filtro-5).

Cuando consultas mensajes, esa es una consulta de nuevas respuestas a temas existentes, excluyendo al OP. Ese es el comportamiento esperado: mostrar solo los mensajes nuevos.
Para incluir los temas (creados por ese usuario) como parte de la consulta, el Filtro=4 debería devolver los temas que ese usuario creó (incluyendo los OPs como parte del recuento [3]) y sus respuestas [4]. Eso devolvería los 7 que ves en el informe. 3 temas creados + 4 respuestas para dar un recuento de 7 (3 OPs + 4 respuestas).

Cualquier otra persona con más conocimientos, por favor siéntete libre de intervenir.

4 Me gusta

@JimPas, gracias por tu ayuda. Es muy útil. Con este conocimiento, avanzo con el panel de la aplicación con más confianza. Que tengas un buen día. Es muy amable de tu parte ayudar a un extraño como yo.

3 Me gusta

Igual aquí, @JimPas, muy útil y muy agradecido. Gracias.

2 Me gusta