Skip to content

Support

Elena Molino edited this page Jan 19, 2023 · 11 revisions

El microservicio de Soporte es el responsable de gestionar todas las peticiones de ayuda de los usuarios de la aplicación. En concreto, se tramitarán las incidencias producidas y los reportes de mensajes ofensivos. En el caso de las incidencias, el usuario debe rellenar un Ticket explicando el problema encontrado y asignarle una prioridad, posteriormente el técnico será el encargado de modificar el estado de dicha petición. Sin embargo, para denunciar un mensaje ofensivo, el usuario debe rellenar un Report indicando el mensaje y la infracción producida.

Módulos

Endpoint principal: /support/v1/

Ticket

Attributes

  • authorId
  • reviewerId
  • songId
  • title
  • text
  • status: ('sent', 'rejected', 'validated')
  • priority: ('low', 'medium', 'high')
  • createDate
  • updateDate

CRUD

  • (CREATE) Create ticket
  • (READ) List tickets
  • (UPDATE) Edit ticket
  • (DELETE) Delete ticket

Endpoints

  • GET /tickets
  • GET /tickets/user/:id
  • GET /tickets/:id
  • POST /tickets
  • PATCH /tickets/:id
  • DELETE /tickets/:id

Reports

Attributes

  • authorId
  • reviewerId
  • messageId
  • title
  • text
  • status: ('sent', 'rejected', 'approved')
  • createDate
  • updateDate

CRUD

  • (CREATE) Create report
  • (READ) List reports
  • (UPDATE) Edit report
  • (DELETE) Delete report

Endpoints

  • GET /reports
  • GET /reports/user/:id
  • GET /reports/:id
  • POST /reports
  • PATCH /reports/:id
  • DELETE /reports/:id

Integración con APIs internas

Soporte se conecta directamente con las APIs de mensajería y usuarios. La ocasión en las que se ejecuta la integración es la siguiente:

  • Un Report es aceptado por un técnico como ofensivo, se banea el mensaje y se obtiene el usuario para enviarle un email a través de Sendgrid:
    • (Messages) PATCH /message/{id}/report
    • (Users) GET /users/{id}

Soporte también se integra con el microservicio de canciones. De forma que cuando un ticket creado directamente desde la vista de una canción es validado, se actualiza la URL del vídeo de la canción.

  • (Songs) PUT /songs/

Integración con API externa

Soporte está asociada con una API de envío de correos, SendGrid. Esta se emplea para enviar correos electrónicos a los usuarios a los que le han aceptado un Report, en el que se le informa sobre el baneo del mensaje.

Clone this wiki locally