Fixora
Unidad 2 · Versionamiento y datosDiccionario de datos

Chat

Conversación entre cliente y proveedor ligada a cada solicitud, con mensajes y adjuntos.

Módulo con 3 tablas: conversations, request_messages, message_attachments. Las convenciones de tipos y llaves están en la página del diccionario.

Diagrama

Solo se muestran las llaves primarias (PK) y foráneas (FK). Las tablas sin columnas (service_requests, users) pertenecen a otros módulos.

Tablas

conversations

Conversación asociada a una solicitud.

ColumnaTipoLlaveDescripción
UniqueIDBIGINTPKIdentificador único del registro.
request_idBIGINTFK → service_requestsReferencia a service_requests.
statusVARCHAREstado de la conversación (por ejemplo: abierta, cerrada).
created_atDATETIMEFecha y hora de creación del registro.

request_messages

Mensajes de una conversación.

ColumnaTipoLlaveDescripción
UniqueIDBIGINTPKIdentificador único del registro.
conversation_idBIGINTFK → conversationsReferencia a conversations.
sender_idBIGINTFK → usersReferencia a users.
messageVARCHARTexto del mensaje.
message_reply_idBIGINTFK → request_messagesMensaje al que responde; nulo si no es una respuesta.
client_uuidVARCHARIdentificador generado por la app para evitar mensajes duplicados al reintentar el envío.
read_atDATETIMEFecha y hora en que se leyó; nulo si aún no se lee.
created_atDATETIMEFecha y hora de creación del registro.

message_attachments

Archivos adjuntos a un mensaje.

ColumnaTipoLlaveDescripción
UniqueIDBIGINTPKIdentificador único del registro.
message_idBIGINTFK → request_messagesReferencia a request_messages.
storage_keyVARCHARLlave del archivo en el almacenamiento (no la URL).
mime_typeENUMTipo MIME del archivo (imagen, PDF, etc.).
size_bytesINTTamaño del archivo en bytes.
created_atDATETIMEFecha y hora de creación del registro.

En esta página