这里会显示出您选择的修订版和当前版本之间的差别。
即时消息接口_android [2015/02/08 06:45] gonghuojin [2. 发送IM消息] |
即时消息接口_android [2017/08/23 08:44] |
||
---|---|---|---|
行 1: | 行 1: | ||
- | ===== IM消息接口 ===== | ||
- | 目的是提供发送IM的能力接口。支持各种类型的IM消息,并且易于扩展。 | ||
- | |||
- | ---- | ||
- | |||
- | ==== 1. 注册消息监听器 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 注册消息监听器 | ||
- | * @param messageListener MessageListener监听器实例 | ||
- | * @return void | ||
- | */ | ||
- | UCSMessage.addMessageListener (MessageListener messageListener); | ||
- | |||
- | </code> | ||
- | |||
- | ==== 2. 发送IM消息 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 发送IM消息 | ||
- | * @param receiverId 接收方的Client账号或者是群组id | ||
- | * @param text 发送文本内容。最大长度为500 | ||
- | * @param filePath 发送的附件全路径 | ||
- | * @param msgType 开发者自定义消息类型 | ||
- | 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); | ||
- | | ||
- | </code> | ||
- | |||
- | ==== 3. 开始录制音频 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 开始录制音频 | ||
- | * @param filePath 保存音频文件的全路径 | ||
- | * @param recordListener RecordListener实例,录音停止时会通过该回调监听器的 onFinishedRecordingVoice(int duration)函数返回并还有录音时长 | ||
- | * @return boolean true录制语音成功;false录制语音失败。 | ||
- | */ | ||
- | UCSMessage.startVoiceRecord (String filePath,RecordListener recordListener ); | ||
- | </code> | ||
- | |||
- | ==== 4. 停止录制语音 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 停止录制音频 | ||
- | * @param | ||
- | * @return void | ||
- | */ | ||
- | UCSMessage.stopVoiceRecord (); | ||
- | </code> | ||
- | |||
- | ==== 5. 播放语音 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 播放语音 | ||
- | * @param filePath 播放音频文件的全路径 | ||
- | * @param recordListener 播放录音结束后会通过该类的onFinishedPlayingVoice()函数返回 | ||
- | * @return void | ||
- | */ | ||
- | UCSMessage.startPlayerVoice ( String filePath,RecordListener recordListener) | ||
- | </code> | ||
- | |||
- | ==== 6. 停止播放语音 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 停止播放语音 | ||
- | * @param | ||
- | * @return void | ||
- | */ | ||
- | UCSMessage.stopPlayerVoice (); | ||
- | </code> | ||
- | |||
- | ==== 7. 获取语音时长 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 获取语音时长 | ||
- | * @param filePath 音频文件的全路径 | ||
- | * @return long 秒级别的文件时长 | ||
- | */ | ||
- | UCSMessage.getVoiceDuration(String filePath) | ||
- | </code> | ||
- | |||
- | ==== 8. 下载附件 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 下载附件 | ||
- | * @param fileUrl 下载文件的Url | ||
- | * @param filePath 文件保存的本地路径 | ||
- | * @param msgId 接收到消息的id,与UcsMessage相关的消息 | ||
- | * @param fileListener 文件下载进度监听器MessageListener实例 | ||
- | * @return void | ||
- | */ | ||
- | UCSMessage.downloadAttached (String fileUrl,String filePath,String msgId,MessageListener fileListener) | ||
- | |||
- | </code> | ||
- | |||
- | |||
- | ===== IM消息回调接口 ===== | ||
- | |||
- | ---- | ||
- | |||
- | ==== 1. 收到消息 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 收到IM消息回调 | ||
- | * @param reason 收到的消息状态码 | ||
- | * @param msg 消息结构体 | ||
- | * @return void | ||
- | */ | ||
- | onReceiveUcsMessage(UcsReason reason , UcsMessage msg) | ||
- | </code> | ||
- | | ||
- | ==== 2. 发送IM消息回调 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 发送IM消息回调,该函数会回调两次,第一次为调用sendUcsMessage(…)时会生成UcsMessage对像回调一次,第二次为UcsMessage 对像被发送成功时在回调一次。 | ||
- | * @param reason 发送消息的状态码 | ||
- | * @param data 消息结构体 | ||
- | * @return void | ||
- | */ | ||
- | onSendUcsMessage(UcsReason reason , UcsMessage data) | ||
- | </code> | ||
- | |||
- | ==== 3. 下载IM附件回调 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 下载IM附件回调 | ||
- | * @param filePath 下载IM附件的本地路径 | ||
- | * @param msgId 接收到的消息id | ||
- | * @param size 附件总大小 | ||
- | * @param curProgress 附件当前下载大小 | ||
- | * @return void | ||
- | */ | ||
- | onDownloadAttached(String msgId,String filePath,int size,int curProgress) | ||
- | </code> | ||
- | |||
- | ==== 4. 发送附件进度回调 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 发送附件进度回调 | ||
- | * @param progress 发送附件的进度/总大小为100 | ||
- | * @return void | ||
- | */ | ||
- | onSendFileProgress(int progress) | ||
- | </code> | ||
- | |||
- | ==== 5. 播放音频结束回调 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 播放语音结束回调 | ||
- | * @param | ||
- | * @return void | ||
- | */ | ||
- | onFinishedPlayingVoice() | ||
- | </code> | ||
- | |||
- | ==== 6. 停止录音回调 ==== | ||
- | |||
- | <code java> | ||
- | /** | ||
- | * 停止录音回调 | ||
- | * @param duration 录制语音的时长 | ||
- | * @return void | ||
- | */ | ||
- | onFinishedRecordingVoice (int duration) | ||
- | </code> |