codecamp

数据库设计参考

MySql 数据库参见  https://github.com/easysoft/xuanxuan/blob/master/ranzhi/db/xuanxuan.sql

Chat 表

存储会话数据。

名称类型必须/可选说明
idnumber必须存储在远程数据库的id,客户端根据此id值是否设置来判定是否为远程保存的对象
gidstring必须当客户端向系统提交新的会话时,会创建全局唯一的id
namestring可选会话名称,当为空时,客户端会自动生成会话名称
typestring可选表明会话类型:system(系统), one2one(一对一), gourp(多人讨论组), project, product等
adminsstring可选会话管理员用户列表
committersstring可选会话允许发言用户清单
subjectint可选主题会话关联的主题(product, project等)ID
publicbool可选是否公共会话
createdBystring必须创建者的账号
createdDatedatetime必须创建会话时服务器的时间戳
editedBystring可选编辑者的账号
editedDatedatetime可选编辑会话时服务器的时间戳
lastActiveTimedatetime可选会话最后一次发送消息时服务器的时间戳
[users]关联数据集必须包含此会话的所有成员,和每个成员加入此会话的时间
[messages]关联数据集必须包含此会话的所有消息

Message 表

存储会话消息数据。

名称类型必须/可选说明
idnumber必须存储在远程数据库的id,客户端根据此id值是否设置来判定是否为远程保存的对象
gidstring必须当客户端向系统提交新的消息时,会创建全局唯一的id
cgidstring必须此消息所属于的会话的gid属性,会话根据此值来查询包含的消息
userstring可选此消息发送者的用户名,广播类的消息没有此值
datenumber必须消息发送的时间戳
typestring可选消息的类型,为"normal"(默认), "broadcast"
contentstring必须消息的内容,如果消息内容类型不是文本,则已此值为json格式的对象
contentTypestring必须消息内容的类型,为"text"(默认), "emoticon", "image", "file"

UserMessageStatus

记录消息状态。

名称类型必须/可选说明
usernumber必须离线消息的目标用户id,对应用户表的id
gidstring必须当客户端向系统提交新的消息时,会创建全局唯一的id
statusstring必须消息状态

ChatsOfUser 表

存储参与会话的成员数据。

名称类型必须/可选说明
idnumber必须存储在远程数据库的id
cgidstring必须会话的gid属性
usernumber必须用户id,对应用户表的id
ordernumber可选会话显示顺序
starbool可选用户是否收藏会话
hidebool可选用户是否隐藏会话
mutebool可选用户是否开启免打扰
quitdatetime可选用户退出会话时服务器的时间戳
joindatetime必须用户加入会话时服务器的时间戳

 


服务器配置与运行
API说明
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }