iOS 消息收发

处理用户消息的收发。消息发送由 UserAgentProxy 服务类提供,消息的接收由客户端实现 MessageDelegate来被动接收。

注册 MessageDelegate

MessageDelegate 实现用于接收消息, MessageDelegate 说明

proxy.messageDelegate = xx;

发送文本消息

发送给个人

    /**
     * 向个人发送文本消息
     * @param peerId 对方用户ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成, 可用于消息去重
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendTextMessageToUser:(NSString*)peerId content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

发送给群组

    /**
     * 向群组发送文本消息
     * @param groupId 群组ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @param extraType 富文本消息标识
     * @return true 表示调用成功
     */
-(BOOL) sendTextMessageToGroup:(NSString*)groupId content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend extraType:(NSInteger)extraType;
 

图片、语音、视频消息的文件处理

露脸云提供了文件上传下载服务,详见 客户端 RSET 相关接口;也可以自己实现.

发送图片消息

发送给个人

    /**
     * 向个人发送图片消息
     * @param peerName 对方用户ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendImageUrlToUser:(NSString*)peerName content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

发送给群组

    /**
     * 向群组发送图片消息
     * @param groupName 群组ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @param extraType 富文本消息标识
     * @return true 表示调用成功
     */
-(BOOL) sendImageUrlToGroup:(NSString*)groupName content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend extraType:(NSInteger)extraType;
 

发送音频消息

发送给个人

    /**
     * 向个人发送语音消息
     * @param peerName 对方用户ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendAudioUrlToUser:(NSString*)peerName content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

发送给群组

    /**
     * 向群组发送语音消息
     * @param groupName 群组ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @param extraType 富文本消息标识
     * @return true 表示调用成功
     */
-(BOOL) sendAudioUrlToGroup:(NSString*)groupName content:(NSString*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend extraType:(NSInteger)extraType;

发送视频消息

发送给个人

    /**
     * 向个人发送视频消息
     * @param peerName 对方用户ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendVideoMessageToUser:(NSString*)peerName describe:(NSString*)describe shortUrl:(NSString*)shortUrl videoUrl:(NSString*)videoUrl msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

发送给群组

    /**
     * 向群组发送视频消息
     * @param groupName 群组ID
     * @param content 消息内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @param extraType 富文本消息标识
     * @return true 表示调用成功
     */
-(BOOL) sendVideoMessageToGroup:(NSString*)groupName describe:(NSString*)describe shortUrl:(NSString*)shortUrl videoUrl:(NSString*)videoUrl msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend extraType:(NSInteger)extraType;

回复消息已收到

    /**
     * 确认消息已收到
     * @param messageId 消息全局uuid
     * @return true 表示调用成功
     */
-(BOOL) messageReceived:(UInt64)messageId;

回复消息已阅读

    /**
     * 确认消息已阅读
     * @param messageId 消息全局uuid
     * @return true 表示调用成功
     */
-(BOOL) messageRead:(UInt64)messageId;

向个人发送透传消息

    /**
     * 向个人发送透传消息
     * @param peerId 对方用户ID
     * @param content 二进制内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendForwardDataToUser:(NSString*)peerId content:(NSData*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

通话中,向对方或者群组发送不可靠透传消息

    /**
     * 通话中,向对方或者群组发送不可靠透传消息
     * @param userId 对方或群组ID
     * @param content 二进制内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendForwardDataInCall:(NSString*)userId content:(NSData*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;

群组通话中,向群组发送可靠透传透传消息

    /**
     * 通话中,向群组发送可靠透传透传消息
     * @param groupId 群组ID
     * @param content 二进制内容
     * @param msgUUID 消息uuid,客户端本地生成
     * @param resend 重复发送标识
     * @return true 表示调用成功
     */
-(BOOL) sendForwardDataToGroup:(NSString*)groupId content:(NSData*)content msgUUID:(NSString*)msgUUID resendFlag:(BOOL)resend;