本客服平台由提供产品服务

学习yun2win web端代码

黄晶发表于:2016年08月25日 17:59:03更新于:2016年08月25日 18:09:21


   首先我们从github(https://github.com/yun2win/yun2win-sdk-web)下载完整的yun2win web demo,解压后打开如图下:

 

css存放样式文件,images存放图片,js存放脚本,index.html登录界面 main.html主界面 register.html注册界面 videoAudio.html音视频界面

 

我们接下来主讲脚本部分:

一、IM的整体结构:

Users获取当前用户实例(Users.getInstance().getCurrentUser())

当前用户下有如下实体:contact(联系人)、message(消息)、userSession(群组)userConversation(用户会话)session(会话)sessionMembser(会话成员)

当前用户选择某个联系人或者群组进行通话,就会生成一个用户会话,然后再构成会话进行通信,所有的消息都再会话下面

 

1、3rd文件夹下面主要是一些第三方的库文件

common的utils.js主要是一些时间转换,数组操作等工具方法

core文件夹中config主要配置服务器基本访问地址和imtoken地址

contact.js 联系人管理

message.js 消息管理

session.js 会话管理

sesionMember.js会话成员管理

user.js 用户管理

userconversation.js 用户会话管理

userSession.js 会话管理

utils.js http通信工具

y2wIMSDK.min.js IM通信SDK

y2wVideo.js 音视频管理

2、widget文件夹下面:

chat.js聊天界面处理

chatInfo.js 个人资料查看修改 群资料查看修改

chooseAvatar.js 头像修改

selector.js 弹出的选择群或者联系人界面

tab.js 左边的tab选择

y2wIMBridge.js IM连接管理

 

二、接下来我们对IMF连接管理进行分析:(y2wIMBridge.js)

getSyncStatus setSyncStatus获取和设置消息发送状态

handleSync_Message 打开当前会话,同步消息

handleSync_UserConversation 同步用户会话

handleSync_Contact 同步联系人

handleMessage 同步后处理

onDisconnected 断开返回断开代号

onConnectionStatusChanged   IM连接状态改变处理

onUpdateSession 发送消息Session过期更新Session

onSendMessage 发送完消息回调

onMessage 接收消息

y2wIMBridge.prototype.connect   IM连接

y2wIMBridge.prototype.disconnect  IM断开

y2wIMBridge.prototype.sendMessage 发送消息

 

 

IM发送消息,先把消息所有消息放再list里面,然后逐条发送(发送的消息分未个人对个人发送消息,群聊消息,系统消息等)

y2wIMBridge.prototype.addToSendList = function(obj){

    this.sendList.push(obj);

    if(this.sendList.length == 1){

        this.handleSendMessage();

    }

}

 

根据不同的类型组装不同的消息提发送出去

 

好了,差不多就介绍到这里,下次有空再讲web的yun2win如何接入。


    您需要登录后才可以回复