ejabberd: ¿Cómo funciona mod_archive_odbc?

He hecho algo similar a lo que quieres lograr, es decir. agregando nuevas columnas a las tablas de la base de datos ejabberd y almacenando datos adicionales. Entonces, sí, puede agregar más columnas a las tablas, pero para que ejabberd almacene datos, deberá modificar la fuente de mod_archive_odbc y volver a compilarla. Para eso necesitarás estar familiarizado con Erlang.

Por lo que recuerdo, no tenía una experiencia significativa con Erlang cuando lo había hecho hace aproximadamente un año. Creo que incluso si conoce suficiente programación secuencial en Erlang para leer, entender la fuente y depurar, debería estar bien. Le sugiero que lea los primeros capítulos del libro “Learn you some erlang” (Gratis para leer en línea – Tabla de contenido) y luego pruebe algunos programas simples antes de continuar con esta tarea.

También puede intentar hacer esta pregunta en la lista de correo de ejabberd para obtener respuestas más relevantes. Antes de modificar mod_archive_odbc, yo también había hecho una pregunta allí. Puede encontrar este hilo útil: [ejabberd] Archivar mensajes de chat junto con algunos datos adicionales usando mod_archive_odbc

Con respecto a la ruptura de la conversación, mod_archive_odbc almacena los datos del chat en dos tablas: archive_collections y archive_messages con cada archive_message que tiene una referencia a la identificación de la colección. Entonces, puede intentar modificar la creación de colecciones según su lógica, aunque puede haber un mejor enfoque según el requisito.