This description contains only basic description of schema and only basic part of it. More collections may be created if additional components of Tigase XMPP Server are loaded and configured to use MongoDB.
Basic schema for UserRespository and AuthRepository consists of two collections: . tig_users - contains list of users . tig_nodes - contains data related to users in tree-like way
tig_users collection contains the following fields:
Table 2. tig_users
Name | Description |
---|---|
_id |
id of user which is SHA256 hash of users jid (raw byte array) |
user_id |
contains full user jid |
domain |
domain to which user belongs for easier lookup of users by domain |
password |
password of user (or hash of password) |
tig_nodes collection contains the following fields
Table 3. tig_nodes
Name | Description |
---|---|
_id |
id of row autogenerated by MongoDB |
uid |
id of user which is SHA256 hash of users jid (raw byte array) |
node |
full path of node in tree-like structure separated by / (may not exist) |
key |
key for which value for node is set |
value |
value which is set for node key |
Tigase XMPP Server also uses additional collections for storage of Offline Messages
Table 4. msg_history collection
Name | Description |
---|---|
from |
full user jid of message sender |
from_hash |
SHA256 hash of message sender jid as raw byte array |
to |
full users jid of message recipient |
to_hash |
SHA256 hash of message recipient full jid as raw byte array |
ts |
timestamp of message as date |
message |
serialized XML stanza containing message |
expire-at |
timestamp of expiration of message (if message contains AMP expire-at set) |