使用方法
注:在对接3.0以上版本是请参考demo的ChatRoom3Activity和Private3Activity页面
连接服务器,游客连接
/**
* @param listener 连接监听,注:当不使用时调用removeConnectListener(IChat.OnConnectListener listener)
*/
connect(IChat.OnConnectListener listener)
登录
/**
* 注:3.0以上版本在聊天页面切换用户时需要在新用户登录成功后调用joinChatRoom(),否则可能导致新用户无法收发消息
* @param userInfo 用户信息
* @param connectionListener 连接监听
*/
login(CNUserInfo cnUserInfo, IChat.OnConnectListener onConnectionListener)
退出
/**
* @param listener 连接监听
*/
logOut(IChat.OnConnectListener onConnectionListener)
断开连接
/**
* @param isReceivePush 传入true,断开连接但是接收push消息,传入false,断开连接不接收 push消息,注:3.0以上暂不支持push消息功能
*/
disconnect(boolean isReceivePush)
加入聊天室(如果聊天室不存在则创建聊天室)
/**
* @param roomId 聊天室Id
* @param defMessageCount 接收历史消息条数,-1时不拉取任何消息,0时拉取 10条消息
* @param listener 监听
*/
joinChatRoom(String roomId, int defMessageCount, IChat.OnOperationListener listener)
加入已存在的聊天室
/**
* @param roomId 聊天室Id
* @param defMessageCount 接收历史消息条数,-1时不拉取任何消息,0时拉取 10条消息
* @param listener 监听
*/
joinExistChatRoom(String roomId, int defMessageCount, IChat.OnOperationListener listener)
退出聊天室
/**
* @param roomId 聊天室Id
* @param listener 监听
*/
quitChatRoom(String roomId, IChat.OnOperationListener listener)
获取房间信息
/**
* @param chatRoomId 聊天室id
* @param defMemberCount 获取聊天室成员信息条数
* @param order 聊天室成员是列表是升序还是降序,升序, 返回最早加入的用户列表; 降序, 返回最晚加入的用户列表。
* @param resultCallback 回调
*/
getChatRoomInfo(String roomId, IChat.OnOperationListener listener)
发送文本消息
/**
* @param conversationType 发送消息类型:PRIVATE-->发送私聊消息,CHATROOM-->想聊天室发送消息
* @param targetId 目标id
* @param message 消息体
* @param listener 发送消息监听
*/
sendMessage(String conversationType, String targetId, String message, IChat.OnSendMessageListener listener)
发送图片消息
/**
* @param conversationType 发送消息类型:PRIVATE-->发送私聊消息,CHATROOM-->想聊天室发送消息
* @param targetId 目标id
* @param url 本地图片地址
* @param url2 3.0以上版本此参数传空,sdk直接生成缩略图
* @param listener 发送消息监听
*/
sendImaMessage(String conversationType, String targetId, Uri url, Uri url2, IChat.OnSendMessageListener listener)
发送语音消息
/**
* @param conversationType 发送消息类型:PRIVATE-->发送私聊消息,CHATROOM-->想聊天室发送消息
* @param targetId 目标id
* @param uri 本地文件地址
* @param time 时长
* @param listener 发送消息监听
*/
sendVoiceMessage(String conversationType, String targetId, Uri uri, int time, IChat.OnSendMessageListener listener)
发送视频消息(3.0以上支持)
/**
* @param conversationType 发送消息类型:PRIVATE-->发送私聊消息,CHATROOM-->想聊天室发送消息
* @param targetId 目标id
* @param videoPath 本地文件地址
* @param coverPath 截图地址
* @param duration 时长
* @param listener 发送消息监听
*/
sendUgcVideoMessage(String conversationType, String targetId, String videoPath, String coverPath, long duration, IChat.OnSendMessageListener listener)
获取当前连接状态
ConnectionStatus getCurrentConnectionStatus()
获取当前用户信息
CNUserInfo getCurrentUserInfo()
获取私聊本地最近消息,最多20条,适用于消息列表中展示用的(3.0以上支持)
/**
* @param targetId 聊天室id
* @param count 消息数量
*/
List<CNBaseMessage> getPrivateLocalLastMessage(String targetId, int count)
获取聊天室本地最近消息,最多20条,适用于消息列表中展示用的(3.0以上支持)
/**
* @param targetId 聊天室id
* @param count 消息数量
*/
List<CNBaseMessage> getChatRoomLocalLastMessage(String targetId, int count)
仅获取私聊本地聊天记录(3.0以上支持)
/**
* @param targetId 目标Id
* @param count 从最后一条消息往前的消息数
* @param lastMsg 已取得的最后一条消息,null时代表从最新数据开始
* @param listener 获取历史消息监听
*/
getPrivateLocalMessage(String targetId, int count, CNBaseMessage cnBaseMessage, IChat.OnLatestMessageListener listener)
仅获取聊天室本地聊天记录(3.0以上支持)
/**
* @param targetId 目标Id
* @param count 从最后一条消息往前的消息数
* @param lastMsg 已取得的最后一条消息,null时代表从最新数据开始
* @param listener 获取历史消息监听
*/
getChatRoomLocalMessage(String targetId, int count,CNBaseMessage cnBaseMessage, IChat.OnLatestMessageListener listener)
获取私聊漫游消息
/**
* @param targetId 目标 Id
* @param count 数量
* @param listener 获取历史消息监听
*/
getPrivateLateMessage(String targetId, int count, IChat.OnLatestMessageListener listener)
获取私聊漫游消息(3.0以上支持)
/**
* @param targetId 目标 Id
* @param count 从最后一条消息往前的消息数
* @param lastMsg 已取得的最后一条消息
* @param listener 获取历史消息监听
*/
getPrivateLateMessage(String targetId, int count, CNBaseMessage cnBaseMessage, IChat.OnLatestMessageListener listener)
获取聊天室漫游消息
/**
* @param targetId 目标 Id
* @param count 数量
* @param listener 获取历史消息监听
*/
getChatRoomMessage(String targetId, int count, IChat.OnLatestMessageListener listener)
获取聊天室漫游消息(3.0以上支持)
/**
* @param targetId 目标 Id
* @param count 从最后一条消息往前的消息数
* @param lastMsg 已取得的最后一条消息
* @param listener 获取历史消息监听
*/
getChatRoomMessage(String targetId, int count, CNBaseMessage cnBaseMessage, IChat.OnLatestMessageListener listener)
修改用户信息
/**
* @param userName 用户名
* @param headUrl 用户头像地址
*/
modifyUser(String userName, String headUrl)
设置接收聊天室消息监听
/**
* @param listener 接收消息监听,注:CNChatSDK不处理自己发送的消息,注:当不使用时调用removeReceiveMessageListener(IChat.OnReceiveMessageListener listener)
*/
setOnReceiveChatroomMessageListener(IChat.OnReceiveMessageListener listener)
设置接收私聊消息监听
/**
* @param listener 接收消息监听,注:CNChatSDK不处理自己发送的消息,注:当不使用时调用removeReceiveMessageListener(IChat.OnReceiveMessageListener listener)
*/
setOnReceivePrivateMessageListener(IChat.OnReceiveMessageListener listener)
设置连接状态监听
/**
* @param listener 连接状态监听,注:当不使用时调用removeConnectStatusListener(IChat.OnConnectStatusListener listener)
*/
setOnConnectStatusListener(IChat.OnConnectStatusListener listener)
被踢下线监听
/**
* @param listener 被踢下线监听
*/
setKickedOfflineListener(IChat.OnKickedOfflineListener listener)
设置上传进度监听(3.0以上支持)
/**
* @param listener 上传进度监听,注:当不使用时调用removeUploadProgressListener(IChat.OnUploadProgressListener listener)
*/
setUploadProgressListener(IChat.OnUploadProgressListenerlistener)
删除连接状态监听
/**
* @param listener 连接状态监听
*/
removeConnectStatusListener(IChat.OnConnectStatusListener listener)
删除接收消息监听
/**
* @param listener 接收监听
*/
removeReceiveMessageListener(IChat.OnReceiveMessageListener listener)
删除连接监听
/**
* @param listener 连接监听
*/
removeConnectListener(IChat.OnConnectListener listener)
删除上传进度监听(3.0以上支持)
/**
* @param listener 上传进度监听
*/
removeUploadProgressListener(IChat.OnUploadProgressListener listener)
获取聊天sdk版本信息(3.0以上支持)
getVersion()
获取评论信息
/*
* @param string 节目id
* @param string 页号
* @param string 条数
*/
readAllComment(String id, inti page,int pageSize, final CommentListCallbackcallback)
点赞
/*
*@param String id 节目id
*@param String sid 用户id
*@param String commentId 评论id
*/
praiseComment(String id, String sid, String commentId, final CommenlCallback callback)
评论
/*
*@param String id 节目id
*@param String sid 用户id
*@param String comment 评论内容
*/
praiseComment(String id, String sid, String comment, final CommenlCallback callback)
获取节目评论数
/*
*@param String id 节目id
*/
programComment(String id , fianl CommentPraogramCallback callback)