im::floo::floolib::BMXChatService
聊天Service
Public Functions
Name | |
---|---|
synchronized void | delete() |
void | sendMessage(BMXMessage msg) 发送消息,消息状态变化会通过listener通知 |
void | resendMessage(BMXMessage msg) 重新发送消息,消息状态变化会通过listener通知 |
void | recallMessage(BMXMessage msg) 撤回消息,消息状态变化会通过listener通知 |
[BMXErrorCode] | forwardMessage(BMXMessageList list, BMXConversation to, BMXMessage newMsg) 合并转发消息 |
void | forwardMessage(BMXMessage msg) 简单转发消息,用户应当通过BMXMessage::createForwardMessage()先创建转发消息 |
void | ackMessage(BMXMessage msg) 发送已读回执 |
void | ackMessageDelivered(BMXMessage msg) 发送送达回执 |
void | ackPlayMessage(BMXMessage msg) 发送已播放回执 |
void | readCancel(BMXMessage msg) 标记此消息为未读,该消息同步到当前用户的所有设备 |
void | readAllMessage(BMXMessage msg) 标记此消息及之前全部消息为已读,该消息同步到当前用户的所有设备 |
void | removeMessage(BMXMessage msg, boolean synchronize) 删除此消息,该消息同步到当前用户的其它设备 |
void | removeMessage(BMXMessage msg) |
void | downloadThumbnail(BMXMessage msg, BMXChatService.ThumbnailStrategy strategy) 下载缩略图,下载状态变化和进度通过listener通知 缩略图生成策略,1 - 第三方服务器生成, 2 - 本地服务器生成,默认值是 1。 |
void | downloadThumbnail(BMXMessage msg) |
void | downloadAttachment(BMXMessage msg) 下载附件,下载状态变化和进度通过listener通知 |
void | downloadAttachmentByUrl(long msgId, String url, String path) 下载附件,下载状态变化和进度通过listener通知 |
void | cancelUploadAttachment(BMXMessage msg) 取消上传附件 |
void | cancelDownloadAttachment(BMXMessage msg) 取消上传附件 |
int | transferingNum() 上传或下载中的文件数 |
[BMXErrorCode] | insertMessages(BMXMessageList list) 插入消息 |
BMXMessage | getMessage(long msgId) 读取一条消息 |
void | deleteConversation(long conversationId, boolean synchronize) 删除会话 |
void | deleteConversation(long conversationId) |
BMXConversation | openConversation(long conversationId, BMXConversation.Type type, boolean createIfNotExist) 打开一个会话 |
BMXConversation | openConversation(long conversationId, BMXConversation.Type type) |
String | attachmentDir() 获取附件保存路径 |
String | attachmentDirForConversation(long conversationId) 获取会话的附件保存路径 |
BMXConversationList | getAllConversations() 获取所有会话 |
int | getAllConversationsUnreadCount() 获取所有会话的全部未读数(标记为屏蔽的个人和群组的未读数不统计在内) |
[BMXErrorCode] | retrieveHistoryMessages(BMXConversation conversation, long refMsgId, long size, BMXMessageList result) 拉取历史消息 |
[BMXErrorCode] | searchMessagesByKeyWords(String keywords, long refTime, long size, BMXMessageListList result, BMXConversation.Direction arg4) 搜索消息 |
[BMXErrorCode] | searchMessagesByKeyWords(String keywords, long refTime, long size, BMXMessageListList result) |
[BMXErrorCode] | searchMessages(String keywords, long refTime, long size, BMXMessageListList result, BMXConversation.Direction arg4) 搜索消息 |
[BMXErrorCode] | searchMessages(String keywords, long refTime, long size, BMXMessageListList result) |
[BMXErrorCode] | getGroupAckMessageUserIdList(BMXMessage msg, ListOfLongLong groupMemberIdList) 获取发送的群组消息已读用户id列表 |
[BMXErrorCode] | getGroupAckMessageUnreadUserIdList(BMXMessage msg, ListOfLongLong groupMemberIdList) 获取发送的群组消息未读用户id列表 |
[BMXErrorCode] | getGroupPlayAckMessageUserIdList(BMXMessage msg, ListOfLongLong groupMemberIdList) 获取发送的群组消息已播放用户id列表 |
[BMXErrorCode] | getGroupUnPlayAckMessageUserIdList(BMXMessage msg, ListOfLongLong groupMemberIdList) 获取发送的群组消息未播放用户id列表 |
void | addChatListener(BMXChatServiceListener listener) 添加聊天监听者 |
void | removeChatListener(BMXChatServiceListener listener) 移除聊天监听者 |
Protected Functions
Name | |
---|---|
BMXChatService(long cPtr, boolean cMemoryOwn) | |
void | finalize() |
long | getCPtr(BMXChatService obj) |
Protected Attributes
Name | |
---|---|
transient boolean | swigCMemOwn |
Public Functions Documentation
function delete
inline synchronized void delete()
Example:
function sendMessage
inline void sendMessage(
BMXMessage msg
)
发送消息,消息状态变化会通过listener通知
Parameters:
- msg 发送的消息
Example:
function resendMessage
inline void resendMessage(
BMXMessage msg
)
重新发送消息,消息状态变化会通过listener通知
Parameters:
- msg 重新发送的消息
Example:
function recallMessage
inline void recallMessage(
BMXMessage msg
)
撤回消息,消息状态变化会通过listener通知
Parameters:
- msg 撤回的消息
Example:
function forwardMessage
inline BMXErrorCode forwardMessage(
BMXMessageList list,
BMXConversation to,
BMXMessage newMsg
)
合并转发消息
Parameters:
- list 转发的消息列表
- to 消息被转发到的会话
- newMsg 转发的消息列表合并后生成的新的单条转发消息
Return: [BMXErrorCode]
Example:
function forwardMessage
inline void forwardMessage(
BMXMessage msg
)
简单转发消息,用户应当通过BMXMessage::createForwardMessage()先创建转发消息
Parameters:
- msg 转发的消息
Example:
function ackMessage
inline void ackMessage(
BMXMessage msg
)
发送已读回执
Parameters:
- msg 需要发送已读回执的消息
Example:
function ackMessageDelivered
inline void ackMessageDelivered(
BMXMessage msg
)
发送送达回执
Parameters:
- msg 需要发送送达回执的消息
Example:
function ackPlayMessage
inline void ackPlayMessage(
BMXMessage msg
)
发送已播放回执
Parameters:
- msg 需要发送已读回播放的消息
Example:
function readCancel
inline void readCancel(
BMXMessage msg
)
标记此消息为未读,该消息同步到当前用户的所有设备
Parameters:
- msg 需要发送消息已读取消的消息
Example:
function readAllMessage
inline void readAllMessage(
BMXMessage msg
)
标记此消息及之前全部消息为已读,该消息同步到当前用户的所有设备
Parameters:
- msg 需要标记为此消息以前全部消息为已读的消息
Example:
function removeMessage
inline void removeMessage(
BMXMessage msg,
boolean synchronize
)
删除此消息,该消息同步到当前用户的其它设备
Parameters:
- msg 需要删除的消息
- synchronize 是否同步到其它设备,不同步的情况下只会删除本地存储的该条消息
Example:
function removeMessage
inline void removeMessage(
BMXMessage msg
)
Example:
function downloadThumbnail
inline void downloadThumbnail(
BMXMessage msg,
BMXChatService.ThumbnailStrategy strategy
)
下载缩略图,下载状态变化和进度通过listener通知 缩略图生成策略,1 - 第三方服务器生成, 2 - 本地服务器生成,默认值是 1。
Parameters:
- msg 需要下载缩略图的消息
- strategy 缩略图生成策略,1 - 第三方服务器生成, 2 - 本地服务器生成,默认值是 1。
Example:
function downloadThumbnail
inline void downloadThumbnail(
BMXMessage msg
)
Example:
function downloadAttachment
inline void downloadAttachment(
BMXMessage msg
)
下载附件,下载状态变化和进度通过listener通知
Parameters:
- msg 需要下载附件的消息
Example:
function downloadAttachmentByUrl
inline void downloadAttachmentByUrl(
long msgId,
String url,
String path
)
下载附件,下载状态变化和进度通过listener通知
Parameters:
- msgId 需要下载附件的消息
- url 文件远程地址
- path 文件本地路径
Example:
function cancelUploadAttachment
inline void cancelUploadAttachment(
BMXMessage msg
)
取消上传附件
Parameters:
- msg 需要取消上传附件的消息
Example:
function cancelDownloadAttachment
inline void cancelDownloadAttachment(
BMXMessage msg
)
取消上传附件
Parameters:
- msg 需要取消上传附件的消息
Example:
function transferingNum
inline int transferingNum()
上传或下载中的文件数
Return: 文件数
Example:
function insertMessages
inline BMXErrorCode insertMessages(
BMXMessageList list
)
插入消息
Parameters:
- list 插入消息列表
Return: [BMXErrorCode]
Example:
function getMessage
inline BMXMessage getMessage(
long msgId
)
读取一条消息
Parameters:
- msgId 需要获取消息的消息id
Return: BMXMessage
Example:
function deleteConversation
inline void deleteConversation(
long conversationId,
boolean synchronize
)
删除会话
Parameters:
- conversationId 需要删除会话的会话id
- synchronize 是否同步删除其它设备该会话,默认为false,仅删除本设备会话
Example:
function deleteConversation
inline void deleteConversation(
long conversationId
)
Example:
function openConversation
inline BMXConversation openConversation(
long conversationId,
BMXConversation.Type type,
boolean createIfNotExist
)
打开一个会话
Parameters:
- conversationId 需要打开的会话的会话id
- type 会话的类型,单聊还是群聊。
- createIfNotExist 会话不存在的情况下是否要创建本地会话,默认为创建
Return: BMXConversation
Example:
function openConversation
inline BMXConversation openConversation(
long conversationId,
BMXConversation.Type type
)
Example:
function attachmentDir
inline String attachmentDir()
获取附件保存路径
Return: std::string
Example:
function attachmentDirForConversation
inline String attachmentDirForConversation(
long conversationId
)
获取会话的附件保存路径
Parameters:
- conversationId 需要获取会话附件路径的会话id
Return: std::string
Example:
function getAllConversations
inline BMXConversationList getAllConversations()
获取所有会话
Return: BMXConversationList
Example:
function getAllConversationsUnreadCount
inline int getAllConversationsUnreadCount()
获取所有会话的全部未读数(标记为屏蔽的个人和群组的未读数不统计在内)
Return: int
Example:
function retrieveHistoryMessages
inline BMXErrorCode retrieveHistoryMessages(
BMXConversation conversation,
long refMsgId,
long size,
BMXMessageList result
)
拉取历史消息
Parameters:
- conversation 需要拉取历史消息的会话
- refMsgId 拉取会话消息的起始消息Id
- size 拉取的最大消息条数
- result 拉取操作获取的消息列表,外部初始化传入空列表。
Return: [BMXErrorCode]
Example:
function searchMessagesByKeyWords
inline BMXErrorCode searchMessagesByKeyWords(
String keywords,
long refTime,
long size,
BMXMessageListList result,
BMXConversation.Direction arg4
)
搜索消息
Parameters:
- keywords 搜索的关键字
- refTime 搜索消息的起始时间
- size 搜索的最大消息条数
- result 搜索到的消息结果列表,外部初始化传入空列表。
- arg4 消息搜索方向,默认(Direction::Up)是从更早的消息中搜索
Return: [BMXErrorCode]
Example:
function searchMessagesByKeyWords
inline BMXErrorCode searchMessagesByKeyWords(
String keywords,
long refTime,
long size,
BMXMessageListList result
)
Example:
function searchMessages
inline BMXErrorCode searchMessages(
String keywords,
long refTime,
long size,
BMXMessageListList result,
BMXConversation.Direction arg4
)
搜索消息
Parameters:
- keywords 搜索的关键字
- refTime 搜索消息的起始时间
- size 搜索的最大消息条数
- result 搜索到的消息结果列表,外部初始化传入空列表。
- arg4 消息搜索方向,默认(Direction::Up)是从更早的消息中搜索
Return: [BMXErrorCode]
Example:
function searchMessages
inline BMXErrorCode searchMessages(
String keywords,
long refTime,
long size,
BMXMessageListList result
)
Example:
function getGroupAckMessageUserIdList
inline BMXErrorCode getGroupAckMessageUserIdList(
BMXMessage msg,
ListOfLongLong groupMemberIdList
)
获取发送的群组消息已读用户id列表
Parameters:
- msg 需要获取已读用户id列表的消息
- groupMemberIdList 对该条消息已读的用户id列表,初始传入为空列表
Return: [BMXErrorCode]
Example:
function getGroupAckMessageUnreadUserIdList
inline BMXErrorCode getGroupAckMessageUnreadUserIdList(
BMXMessage msg,
ListOfLongLong groupMemberIdList
)
获取发送的群组消息未读用户id列表
Parameters:
- msg 需要获取未读用户id列表的消息
- groupMemberIdList 对该条消息未读的用户id列表,初始传入为空列表
Return: [BMXErrorCode]
Example:
function getGroupPlayAckMessageUserIdList
inline BMXErrorCode getGroupPlayAckMessageUserIdList(
BMXMessage msg,
ListOfLongLong groupMemberIdList
)
获取发送的群组消息已播放用户id列表
Parameters:
- msg 需要获取已播放用户id列表的消息
- groupMemberIdList 对该条消息已播放的用户id列表,初始传入为空列表
Return: [BMXErrorCode]
Example:
function getGroupUnPlayAckMessageUserIdList
inline BMXErrorCode getGroupUnPlayAckMessageUserIdList(
BMXMessage msg,
ListOfLongLong groupMemberIdList
)
获取发送的群组消息未播放用户id列表
Parameters:
- msg 需要获取未播放用户id列表的消息
- groupMemberIdList 对该条消息未播放的用户id列表,初始传入为空列表
Return: [BMXErrorCode]
Example:
function addChatListener
inline void addChatListener(
BMXChatServiceListener listener
)
添加聊天监听者
Parameters:
- listener 聊天监听者
Example:
function removeChatListener
inline void removeChatListener(
BMXChatServiceListener listener
)
移除聊天监听者
Parameters:
- listener 聊天监听者
Protected Functions Documentation
Example:
function BMXChatService
inline BMXChatService(
long cPtr,
boolean cMemoryOwn
)
Example:
function finalize
inline void finalize()
Example:
function getCPtr
static inline long getCPtr(
BMXChatService obj
)
Protected Attributes Documentation
variable swigCMemOwn
transient boolean swigCMemOwn;
Example:
Updated on 2022-01-26 at 17:18:31 +0800