开放式社交公共网络(OSPN)之十一:企业现有系统接入OSPN服务器篇

开放式社交公共网络(OSPN)之十一

企业现有系统接入OSPN服务器篇

一、建立映射

  企业现有系统接入OSPN网络,用户的账户需要与OSN账户进行一个映射。映射方式可以是在用户数据库中增加一个字段用以存放OSN账户,也可以另外建立一张映射表。

二、搭建OSN-CONNECTOR服务(以下简称OSNC)

OSN-CONNECTOR下载地址
搭建方法请参照github里的说明。
需要注意的是启动OSNC时需要配置IMS的地址。
企业IM服务通过OSNC服务与OSPN网络进行数据交换。

三、企业原有的IM服务(以下简称IMS)需要与OSNC服务完成数据交换。

IM服务里需要配置OSNC的IP和端口。
同时企业IMS的逻辑需要进行小范围的修改。IMS逻辑上的兼容请参照下面的流程。

  • 发送和接收跨界消息流程:
    我们假设userA是IMS1的用户,userB是IMS2的用户,现在userA要发送一条消息给userB。
    1.userA将消息封装并且签名以后发送给IMS1,IMS1通过OSPN网络通知userB来获取消息(OSNC1的作用是连接OSPN网络,因此IMS1会发送message消息给OSNC1)。
    2.所有OSNC接到找人的通知以后,都会给与自己绑定的IMS发送一条finduser的命令。这个过程是单向过程,其他节点收到以后不会回复OSNC1。IMS判断userB是否是自己的用户,不是则不予以回复。
    3.当IMS2接收到finduser命令时,IMS2会发送getmsglist命令给IMS1(通过OSPN网络)。
    4.IMS1接收到getmsglist命令以后发送消息源列表给IMS2(通过OSPN网络)。
    5.IMS2转发给userB。userB选择自己需要的消息,发送getmsg给IMS2。
    6.IMS2发送getmsg命令给IMS1(通过OSPN网络)。
    7.IMS1接收到getmsg消息以后,发送消息集合给IMS2(通过OSPN网络)。
    8.IMS2转发给userB。
    9.userB验证签名以后发送带签名的回执给IMS2,IMS2发送给IMS1(通过OSPN网络)。
    10.IMS1验证签名以后删除掉缓存的消息。

根据以上流程,企业IMS的消息发送流程需要做如下修改

  1. 客户端发送消息时,会自动判断对方是否使用同一软件。如果使用同一软件,消息格式和流程维持不变。
  2. IMS接收到消息时,根据消息格式决定流程。跨界消息走跨界流程。消息缓存在IMS上建议保留一个月或者7天。
  3. 《OSN-CONNECTOR 接口文档》文档介绍了如何与OSNC进行通信。请参考例子osn-imsdemo
  4. 《开放式社交网络通信协议》文档介绍了如何处理各种消息。请参考例子osn-imsdemo

更多的细节请参见开放式社交公共网络IM服务设计方案

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值