===== 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)