Desvendando as tabelas de Mensagens do Banco de dados OpenFire

Este artigo mapear algumas das tabela relacionadas ao plugin Monitoring do OpenFire, com ele você pode descobrir como estão sendo armazenadas as informações de conversas no servidor de banco de dados HSQLDB, a consequentemente manipular estas informações quando necessário.

Primeiramente vamos configurar o ambiente para rodar o gerenciador gráfico do HSQLDB.

  1.  Informe o local onde se encontra a arquivo jar do Gerenciador de banco de Dados Gráfico no CLASSPATH do Java através da linha de comando Exemplo:
    CLASSPATH=/usr/share/openfire/lib/hsqldb.jar
  2. Configure o arquivo de acesso ao Banco.deve ser criado o arquivo embedded-db.rc  e configurado com o seguinte conteúdo:# Connection settings for the embedded Openfire database.
    urlid embedded-db
    url jdbc:hsqldb:/var/lib/openfire/embedded-db/openfire
    username sa
    password
  3. Agora por linha de comando chame o gerenciador Gráfico.
    java -cp $CLASSPATH org.hsqldb.util.DatabaseManagerSwing –rcfile embedded-db.rc –urlid embedded-dbUma tela igual a abaixo será aberta:
    openfire2
  4. As tabelas abaixo são as que contem informações de mensagens, procure por informações e compreenda seu funcionamento, com um conhecimento básico em SQL você entenderá tudo o ambiente.Tabela OfMessageArchive – Guarda as mensagens das conversas.CONVERSATIONID – Identificador único de cada conversar
    FROMJID        – Identificado do usuário que enviou a mensagem
    TOJID          – Identificado do usuário que recebeu a mensagem
    SENTDATE       – Data de envio no formato
    BODY           – Corpo da Mensagem

    Tabela OfConversation – mostra estatisticas da conversa
    CONVERSATIONID – Identificador único de cada conversar
    ROOM           – Sala de conversa
    ISEXTERNAL     –
    STARTDATE      – Data de Inicio da Conversa
    LASTACTIVITY   – Data de Inicio da Conversa
    MESSAGECOUNT   – Quantida de mensagem da conversa

    Tabela Ofconparticipant –  Conferências realizadas no OpenFire
    CONVERSATIONID – Identificador único de cada conversar
    JOINDATE       –
    LEFTDATE       –
    BAREJID        –
    JIDRESOURCE    –
    NICKNAME       –

  5. Este artigo pode ser atualizado constantemente, até termos todas tabelas mapeadas e desvendadas.

 

Sobre Marcio Junior Vieira

Atualmente atua como Cientista de Dados da Ambiente Livre. Evangelista de tecnologias Open Source e Free Software desde 1999. Data Scientist, Data Engineer e Big Data Expert. Certified Pentaho Solutions Consultant. Alfresco ECM & Activiti BPM e Camunda BPM Expert. Scala, Java, PHP, Python and JavaScript Programmer.
Esta entrada foi publicada em Open Source e marcada com a tag , . Adicione o link permanente aos seus favoritos.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *