- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
会话优化处理方案
通讯功能评估实现思路序号功能模块功能描述现阶段实现思路服务器接口融云接口本地缓存策略1历史会话列表包括内容:系统消息历史会话好友历史会话群组历史会话包括元素:头像(系统消息、好友头像、群组头像)姓名(系统消息、好友姓名、群组名称)最后一条历史会话会话时间通过融云获取会话列表getCoversationList发送3个参数到java接口重新处理当前会话列表数据:会话列表内容、服务器ip地址、当前是云版还是局版Java接口getConListReList根据融云的会话列表循环对会话内容进行重构判断当前会话类型:是私人会话、系统会话还是群组会话私人会话:根据融云返回的当前人target_id发送http请求查询人员姓名和头像地址getPersonTxByYw,重组到会话json中返回群组会话:根据融云返回的当前群组id发送http请求查询当前群组的组名和群组头像地址,重组到会话json中返回系统会话:如果当前会话类型为系统消息,则重构会话中发送人id=admin;姓名=系统消息;头像=app中默认系统消息头像接循环,获取每条会话消息的内容,对文字类型信息进行重构处理包含表情的img标签,根据服务器端表情文字和表情图片的json文件将img转化成表情文字替换文字中的换行和回车特殊标签返回app后,重构当前会话json数据,对发送和接收时间,通过data.js解析格林日志时间为正确时间格式通过artemplate.js渲染页面根据未读取条数,设置app图标的右上角总未读数通过hanmer.js循环绑定长按删除当前会话方法app获取历史聊天列表后,重构当前会话后返回json类型:java开发:周枫getConListReList(String con_list, String ip_addr, intapp_type)根据身份和人员id获取当前人员头像类型:lua开发:胡悦getPersonTxByYw(intperson_id, intidentity_id, String yw, intrandom_num)根据群组id和平台类型获取群组名称和头像类型:lua开发:吴缤queryGroupInfoById(String id, intapp_type)获取会话列表注:会话列表按照时间从前往后排列,如果有置顶会话,则置顶会话在前代码示例:rong.getConversationList(function (ret, err) {api.toast({ msg: JSON.stringify(ret.result) });})返回值{ status: success, result: [ {conversationTitle: Ironman, // 会话标题conversationType: PRIVATE, // 参见 会话类型 枚举 draft: , // 文字消息草稿的内容targetId: group001, // 消息目标 IdlatestMessage: {text: Hello world!, extra: }, // 最后一条消息的内容sentStatus: SENT, // 参见 发送出的消息状态 *notificationStatus: NOTIFY, // 会话通知状态,2.0.0将不再提供此字段,可通过 getConversationNotificationStatus 获取objectName: RC:TxtMsg, // 消息类型,参见 /android_message.html#_内置内容类消息recievedStatus: READ, // 参见 接收到的消息状态senderUserId: 55, // 发送消息的用户 IdunreadMessageCount: 10, // 本会话的未读消息数receivedTime: 1418968547905, // 收到消息的时间戳,从 1970 年 1 月 1 日 0 点 0 分 0 秒开始到现在的毫秒数sentTime: 1418968488063, // 发送消息的时间戳,从 1970 年 1 月 1 日 0 点 0 分 0 秒开始到现在的毫秒数isTop: false, // 置顶状态latestMessageId: 608 // 本会话最后一条消息 Id } ]}根据数据库表t_hh_message查询2监听融云发送的新消息根据融云接口获取融云发送的新消息如果系统消息是群组变更,则重构通讯录发送新消息到会话页面重新渲染会话历史页面融云初始化后,设置融云监听新消息接口setOnReceiveMessageListe
文档评论(0)