tigase数据库结构(十三)

一、Tigase数据库有很多张表,其中最主要的是3张表:tig_users,tig_nodes和tig_pairs。 #tig_users

tig_users存储用户信息,有uid(主键,用户ID),user_id(用户名),usr_pw(用户密码)等字段。 1.1 tig_users表 这个表定义了基本的用户信息,包括:

uid		唯一主键
user_id	Jid
sha1_user_id=sha1(user_id)
user_pw  =ALG(pass)   只有使用默认AUTH才有用,ALT=MD5(pass|userid+pass)..
acc_create_time       创建时间
last_login			最后登录时间
online_status			在线状态(默认0)
failed_logins          登录失败次数
account_status		必须>0有效

二、tig_nodes

tig_nodes是存储节点信息(用于把数据以层次的形式表现),有nid(主键,节点ID),parent_nid(父节点ID),uid(用户ID),node(节点类型)5个字段。每个uid对应5个节点:root,offline,privacy,invisible和msgoffline,以下是uid为14的用户对应的5个节点。

其结构层次如下:

root--privacy--offline

        |           |

   invisible   msgoffline

默认用户有一个root节点。 数据库是一个“递归格式的”标准树形表,有一个parent_nid指向父节点。 主要属性: 节点:nid 用户:uid 父类节点:parent_nid 节点名称:node

三、tig_pairs

tig_pairs没有主键,以(key,value)的形式存储节点的具体数据。uid为14的用户在tig_pairs中的数据如下: pval字段以XML格式存储,各行的含义如下:

(1)第1行是privacy-list,对应tig_nodes中的invisible节点,暂时不清楚什么意思;

(2)第2行是roster,对应tig_nodes中的root节点,存储该用户的好友列表;

(3)第3-5行是messages,对应tig_nodes中的msgoffline节点,即离线信息,表明当前该用户有3条未接收的离线信息。

msg_history 这个表用来存放用户离线时需要送到的消息。 属性: 消息标识 msg_id 时间 ts 发送者id sender_uid 接收者id receiver_uid 消息类型 msg_type 消息内容 message

StanzaType

error,                                      // Common type
	get, set, result,                         // iq types
	available, unavailable, probe, subscribe, // presence types
	subscribed, unsubscribe, unsubscribed,    // presence types
	chat, groupchat, headline, normal,        // message types
	valid, invalid,                           // Dialback verification packets
	terminate,                                // Bosh - session termination stanza
invisible;                                // Other unknown types...

订阅发布(pubsub)Schema

tig_pubsub_service_jids 描述了订阅发布服务,这种设计允许支持多个订阅发布服务。 属性: 服务id 服务jid 服务jid sha1

tig_pubsub_nodes

节点是一个订阅发布消息的“主题”,支持树形结构,也就是高层节点发布,下层的节点也会收到。 消息订阅者订阅某个“节点”,消息发布这把消息发布发布某个节点,从而实现了双向透明的消息交换。 属性: 节点标识 node_id 服务id service_id 节点名称 name 名称sha1 name_sha1 节点类型: 0|1 节点标题 title 节点描述 description 创建者id creator_id 创建时间 creation_date 配置(xml) configuration collection_id

tig_pubsub_jids 存储订阅用户信息,属性: id jid 用户id

节点/用户关系(tig_pubsub_affiliations)

posted @ 2021-04-26 11:17  venblenJan°  阅读(225)  评论(0编辑  收藏  举报