===== IM消息接口 ===== 目的是提供发送IM的能力接口。支持各种类型的IM消息,并且易于扩展。 ---- ==== 1. 注册消息监听器 ==== /** * 注册消息监听器 * @param messageListener MessageListener监听器实例 * @return void */ UCSMessage.addMessageListener (MessageListener messageListener); ==== 2. 发送IM消息 ==== /** * 发送IM消息 * @param receiverId 接收方的Client账号或者是群组id * @param text 发送文本内容。最大长度为500 * @param filePath 发送的附件全路径 * @param extra_mime 开发者自定义消息类型 1:文本,支持最大文本长度500 2:图片,支持jpg、jpeg、png、bmp格式 3:音频,只支持amr格式 4:视频 10-19:自定义文本 20-29:自定义附件) * @return NSString 消息id */ UCSMessage.sendUcsMessage ( String receiverId, String text, String filePath , int extra_mime); ==== 3. 开始录制音频 ==== /** * 开始录制音频 * @param filePath 保存音频文件的全路径 * @param recordListener RecordListener实例,录音停止时会通过该回调监听器的 onFinishedRecordingVoice(int duration)函数返回并还有录音时长 * @return boolean true录制语音成功;false录制语音失败。 */ UCSMessage.startVoiceRecord (String filePath,RecordListener recordListener ); ==== 4. 停止录制语音 ==== /** * 停止录制音频 * @param * @return void */ UCSMessage.stopVoiceRecord (); ==== 5. 播放语音 ==== /** * 播放语音 * @param filePath 播放音频文件的全路径 * @param recordListener 播放录音结束后会通过该类的onFinishedPlayingVoice()函数返回 * @return void */ UCSMessage.startPlayerVoice ( String filePath,RecordListener recordListener) ==== 6. 停止播放语音 ==== /** * 停止播放语音 * @param * @return void */ UCSMessage.stopPlayerVoice (); ==== 7. 获取语音时长 ==== /** * 获取语音时长 * @param filePath 音频文件的全路径 * @return long 秒级别的文件时长 */ UCSMessage.getVoiceDuration(String filePath) ==== 8. 下载附件 ==== /** * 下载附件 * @param fileUrl 下载文件的Url * @param filePath 文件保存的本地路径 * @param msgId 接收到消息的id,与UcsMessage相关的消息 * @param fileListener 文件下载进度监听器MessageListener实例 * @return void */ UCSMessage.downloadAttached (String fileUrl,String filePath,String msgId,MessageListener fileListener) ===== IM消息回调接口 ===== ---- ==== 1. 收到消息 ==== /** * 收到IM消息回调 * @param reason 收到的消息状态码 * @param msg 消息结构体 * @return void */ onReceiveUcsMessage(UcsReason reason , UcsMessage msg) ==== 2. 发送IM消息回调 ==== /** * 发送IM消息回调,该函数会回调两次,第一次为调用sendUcsMessage(…)时会生成UcsMessage对像回调一次,第二次为UcsMessage 对像被发送成功时在回调一次。 * @param reason 发送消息的状态码 * @param data 消息结构体 * @return void */ onSendUcsMessage(UcsReason reason , UcsMessage data) ==== 3. 下载IM附件回调 ==== /** * 下载IM附件回调 * @param filePath 下载IM附件的本地路径 * @param msgId 接收到的消息id * @param size 附件总大小 * @param curProgress 附件当前下载大小 * @return void */ onDownloadAttached(String msgId,String filePath,int size,int curProgress) ==== 4. 发送附件进度回调 ==== /** * 发送附件进度回调 * @param progress 发送附件的进度/总大小为100 * @return void */ onSendFileProgress(int progress) ==== 5. 播放音频结束回调 ==== /** * 播放语音结束回调 * @param * @return void */ onFinishedPlayingVoice() ==== 6. 停止录音回调 ==== /** * 停止录音回调 * @param duration 录制语音的时长 * @return void */ onFinishedRecordingVoice (int duration)