




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
精品文档 1欢迎下载 tigasetigase 开发指南开发指南 tigasetigase 组件插件配置组件插件配置 tigase 启动时会初始化并启动相关组件和插件 启动的组件或开通监听端口号或访问数据 库或者创建线程池 默认有些组件和插件非必须 我们也用不到 为了避免资源浪费 需 要在配置中注释这些组件 组件如下表格所示 红字的组件说明 组件如下表格所示 红字的组件说明 tigase 组件说明 Amp 高级消息处理 Bosh 提供客户端 http 长连接 c2s 提供客户端 tcp 连接 cl comp 内置集群组件 eventbus 事件总线 内部处理 message archive 消息归档 monitor 监控 muc 聊天室 proxy 代理 pubsub 发布订阅 s2s tigase 服务端节点之间交互 精品文档 2欢迎下载 sess man 会话管理 配置文件配置启动组件 配置文件配置启动组件 修改init properties message router components msg receivers id names s bosh cl comp eventbus s2s sess man 插件如下表格所示 红字的插件说明 tigas 插件说明 参数说明 jabber iq register 注册服务 message archive xep 0136 消息归档 jabber iq auth 简单用户认证 urn ietf params xml ns xmpp sasl SASL 协商 urn ietf params xml ns xmpp bind 资源绑定 urn ietf params xml ns xmpp session session 绑定 jabber iq roster 联系人名单管理 presence state xmpp 顶级元素 上线广播 jabber iq privacy 隐身协议 jabber iq version 客户端版本 http jabber org protocol stats 是否发送统计信息 指向 jabber org 发送 startls tls 加密 msgoffline 离线消息 vcard temp 临时的 vCard 精品文档 3欢迎下载 tigas 插件说明 http jabber org protocol commands 管理 virtual domains 的特别命令 jabber iq private 私有数据存储 urn xmpp ping 心跳检测 presence subscription 发布订阅插件 domain filter basic filter domain 拦截器 amp basic filter 高级消息处理 zlib basic filter zlib 压缩 message carbons basic filter 将 stanzas 投递到用户指定的资源 disco basic filter 服务发现 配置文件配置启动组件 配置文件配置启动组件 修改init properties sess man plugins s session close session open default handler urn ietf params xml ns xmpp sasl urn ietf params xml ns xmpp bind urn ietf params xml ns xmpp session jabber iq roster jabber iq privacy jabber iq version http jabber org protocol stats starttls vcard temp http jabber org protocol commands jabber iq private urn xmpp ping amp disco domain filter zlib message carbons vcard xep 0292 urn xmpp time TigaseTigase 数据库表数据库表 Tigase 用户信息 权限信息 离线消息信息 在线离线状态信息都存储在数据库中 但有 些数据我们不需要让 tigagse 存储 更新 比如在线离线状态信息 如果每个用户登录 登 出都让 tigase 更新表的字段 并发高了 显然数据库承受不了 为了避免资源浪费也需要 避免这些操作 登录状态上线更新登录状态上线更新 精品文档 4欢迎下载 上线状态更新是在验证用户名和密码时更新 验证功能是需要我们自定义的 仅需修改 tigase 验证模块的一小块代码即可 下图贴出 tigase 源码修改方式 登录状态下线更新登录状态下线更新 下线状态更新是在用户退出 连接断开等时更新 修改代码也比较简单 tigasetigase 权限验证权限验证 云果登陆流程时需要验证权限 权限验证需要分匿名用户和企业客服两种 匿名用户默认验 证都可以通过 企业客服需要验证是否在用户中心登陆成功 企业客服登陆企业客服登陆 1 登陆用户中心 登陆成功后 用户中心会保存 cookieid 至缓存中 精品文档 5欢迎下载 2 带着用户名 cookieid 同 tigase 服务端建立连接 3 从缓存中获取验证信息 4 如果认证通过和 tigase 连接上 tigase 的验证是需要我们自定义开发的 只需要在 tigase 权限验证模块修改即可 tigasetigase 在线坐席获取在线坐席获取 匿名用户登陆需要根据客户名分配一个在线坐席会话 tigase roster 插件是用于返回好友列表 可 以修改用来分配坐席列表 精品文档 6欢迎下载 插件的调用是在 SessionManager 中调用 客户端获取好友列表 客户端获取好友列表 varvar iqiq iq iq type type get get id id getmyroster getmyroster c query c query xmlns xmlns Strophe NS ROSTER Strophe NS ROSTER tree tree connection send iq connection send iq tigasetigase 消息转发流程消息转发流程 用户在发消息给客服时 如果客服不在线 需要分配给机器人客服 机器人客服是以 tigase 客户端 方式使用的 并且为了负载均衡会有多个机器人客服 所以还需要分配 分配这块功能需要修改 tigase sessionmanage 组件处理消息模块的一段代码 Tigase 所有的消息都会经 sessionmanager 进行处理 精品文档 7欢迎下载 Packet 类中没有 setStanzaTo 方法需要修改加入 精品文档 8欢迎下载 tigasetigase 离线消息存储离线消息存储 tigase 在用户不在线时 会把消息存储在数据库中 默认是关系型数据库 这块我们是需要存储到 hbase 等 nosql 数据库中的 这块功能需要修改下源码 tigase 已经写好的离线消息插件 此外 tigase 默认的离线消息存储是有条数限制的 需要修改配置文件 tigasetigase 用户连接断开通知客服用户连接断开通知客服 client 与 server 连接断开 SessionManager 会接收到断开消息 会话断开是通过 SessionCloseProc 插件实现 断开通知客服需要在连接断开时 发一条消息给客服 JID 通知 精品文档 9欢迎下载 Packet 类中没有 setStanzaTo 方法需要修改加入 精品文档 10欢迎下载 tigasetigase 组件插件开发组件插件开发 tigase 组件插件开发 官方开发文档有详细介绍 可直接阅读 tigase DevelopmentGuide pd 已上传上传到 svn 云果以后需要自定义一些组件 插件实现自定义功能 tigasetigase 配置文件配置文件 云果基于 tigase 源码开发功能时 需要增加一些自定义的配置 关于配置文件模块 tigase 是作为 一个组件开发的 所以我们仅需要简单修改一下配置文件模块 tigasetigase sslssl SSL Secure Sockets Layer 安全套接层 及其继任者传输层安全 Transport Layer Security TLS 是为网络通信提供安全及数据完整性的一种安全协议 TLS 与 SSL 在传输层对网络 连接进行加密 Tigase 支持 ssl 通信功能 底层使用 NIO JSSE 实现 1 1 启用 ssl 修改 init properties 增加配置 精品文档 11欢迎下载 bosh ports 5280 5281 bosh connections 5281 socket ssl bosh connections 5281 type accept 注 注 5280 端口号用于正常通信 5281 端口号用于 ssl 通信 2 2 js 连接 tigase ssl 由原来的访问地址 http ip 5280 改为 https ip 5281 即可正常访问 注 注 由于 https 请求浏览器需要可信证书才允许访问 否则会拒绝访问 需要把访问的 https 地址 设置为可信才能访问或者加入可信证书 导入 pem 文件至浏览器下面 3 会介绍 3 3 ssl 证书 tigase 发布的包解压后 在 certs 目录中包含了密钥和证书 其中后缀名位 pem 是 ssl 钥匙包含了 公钥和私钥匙 tigase 启动时会为每个 domain 生成一个 domain pem 文件 如果不配置 domain 使用 default pem 文件 pem 文件也可以使用 openssl 生成 上线系统建议自己生成 pem 文件可以导入至浏览器证书中 这样浏览器才不会禁止你的 https 请求 证书如下所示 注 注 上线系统外网使用 ssl 一般采用第三方的收费的商用证书 客户端导入证书非常 shan 麻烦 浏 览器内部会有一些 CA ROOT 证书 一般包含了常用的商用证书 tigasetigase 负载均衡负载均衡 Tigase 从 5 2 0 版开始 引入了负载均衡功能 可以把终端访问用户重定向到最适合的集群节点上 此 负载均衡功能依赖于 see other host 的 XMPP 流错误消息 stream error message 此机制背后的基 本原则是如果用户当前正尝试连接的节点与返回消息的节点不是集群中 的同一个节点 那么用户将被重 定向 此原则需要获得用户的 JID 实现重定向 精品文档 12欢迎下载 一 可用的实现一 可用的实现 此 Tigase 的实现跟其他实现一样 是可扩展的 支持不同的 可插拨的重定向策略 实现了 SeeOtherHostIfc 接口 当前有三种可用的策略 1 SeeOtherHost 策略 此策略是最基本的实现 它会返回 init properties 配置文件中的单个主机名或当前的主机名 2 SeeOtherHostHashed 策略 这是 Tigase 默认使用的策略 它对用户的 JID 值的进行哈希计算 根据哈希值来把终端连接重定向 到 SeeOtherHostIfc 的集群环境中的节点 所有有效的节点是根据默认的集群组成和所有连接到集 群并工作的节点共同决定 也可以把所有的节点配置到 init properties 中 3 SeeOtherHostDB 策略 此策略是 SeeOtherHost 策略的扩展实现 它根据 Tigase 数据库的 user id 和 node id 配对的形式 来决定终端用户应该被重定向到哪一个节点 二 配置选项二 配置选项 下面是实际的负载均衡重定向最基本的相关配置 cm see other host 它可能的值包括 tigase server xmppclient SeeOtherHost tigase server xmppclient SeeOtherHostHashed tigase server xmppclient SeeOtherHostDB none disables redirection 说明 前三行为三种重定向策略 最后一种是不使用重定向策略 其余的所有选项都是以连接管理器 per connection manager 为基础进行配置的 因此这些选项都需 要加上相应的连接管理器 ID 作为前缀 比如 c2s bosh ws 的配置 下面以 c2s 配置为例 c2s cm see other host default host host1 host2 host3 用分号来间隔重定向的主机节点名 精品文档 13欢迎下载 c2s cm see other host active OPEN LOGIN 用分号来间隔终端用户可以被重定向的阶段
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 第3单元-《思乡曲》说课稿-2025-2026学年粤教版初中音乐七年级下册
- 2025国际设备采购合同的当事人被称为甲乙双方
- 七年级生物上册 第一单元 第一章 第二节调查周边环境中的生物说课稿 (新版)新人教版
- 2025荆州计算机硬件采购与维护服务合同
- 音乐知识教学设计-2025-2026学年初中音乐七年级下册(2024)人音版(2024 主编:赵季平杜永寿)
- 潍坊事业单位笔试真题2025
- 2025合同模板:解除房屋租赁合同协议书范本
- 2025年通辽市国企考试真题
- 2025房屋租赁代理合同
- 2025绿源小区前期物业管理合同
- 麻醉科职责及管理制度
- 教科版五年级上册科学期中测试卷附答案(夺分金卷)
- 药房管理规章制度目录
- 中职第1课 社会主义在中国的确立和探索试题
- 2025年辽宁省交投集团招聘笔试参考题库含答案解析
- 2024年版高尔夫球场场地租赁及会员服务协议3篇
- 香港 信托合同范本
- 少先队活动课《民族团结一家亲-同心共筑中国梦》课件
- 阀门培训课件
- 《焦化机械设备维护检修标准》
- DB11∕T 899-2019 盆栽蝴蝶兰栽培技术规程
评论
0/150
提交评论