floo::BMXMessage
消息
#include <bmx_message.h>
Inherits from BMXBaseObject
Public Types
enum class
DeliveryStatus { New, Delivering, Deliveried, Failed, Recalled} 消息投递状态
enum class
MessageType { Single, Group, System} 消息类型
enum class
ContentType { Text, Image, Voice, Video, File, Location, Command, Forward} 消息内容类型
enum class
DeliveryQos { AtLastOnce, AtMostOnce, ExactlyOnce} 消息投递质量
Public Functions
virtual
~BMXMessage() 析构函数
int64_t
msgId() 消息唯一ID
int64_t
clientMsgId() 消息客户端ID,仅在消息发送端存在
int64_t
fromId() 消息发送方ID
int64_t
toId() 消息接收方ID
type() 消息类型
int64_t
conversationId() 消息所属会话ID
deliveryStatus() 消息投递状态
void
setDeliveryStatus(DeliveryStatus ) 设置消息投递状态
int64_t
serverTimestamp() 消息时间戳(服务端收到时的时间)
void
setServerTimestamp(int64_t ) 设置时间戳(服务端收到时的时间)
int64_t
clientTimestamp() 本地时间戳(消息创建或者收到时的本地时间)
void
setClientTimestamp(int64_t ) 设置消息本地时间戳
bool
isPlayed() 语音或者视频消息是否播放过,仅对收到的音视频消息有效
void
setIsPlayed(bool ) 设置语音或者视频消息是否播放过,仅对收到的音视频消息有效
bool
isPlayAcked() 对于发送方表示是否收到了已播放回执,对于接收方表示是否发送了已播放回执
void
setIsPlayAcked(bool ) 设置已播放回执
bool
isReceiveMsg() 是否接收的消息
void
setIsReceiveMsg(bool ) 设置是否接收的消息
bool
isRead() 消息是否已读标志
void
setIsRead(bool ) 消息是否已读标志
bool
isReadAcked() 对于发送方表示是否收到了已读回执,对于接收方表示是否发送了已读回执
void
setIsReadAcked(bool ) 设置已读回执
bool
isDeliveryAcked() 对于发送方表示消息是否已投递到对方,对于接收方表示是否发送了消息已到达回执
void
setIsDeliveryAcked(bool ) 设置投递回执
const std::string &
content() 消息文本内容
void
setContent(const std::string & content) 消息文本内容
contentType() 消息内容类型,如果带附件就表示附件类型,不带附件就是文本类型
BMXMessageAttachmentPtr
attachment() 消息附件,BMXMessage拥有附件的所有权,负责释放
BMXMessageConfigPtr
config() 消息的配置信息
void
setConfig(BMXMessageConfigPtr ) 设置消息配置信息
const JSON &
extension() 消息扩展信息
void
setExtension(const JSON & ) 设置消息扩展信息
deliveryQos() 消息投递QOS
void
setDeliveryQos(DeliveryQos qos) 设置消息投递QOS
const std::string &
senderName() 消息发送者的显示名称
void
setSenderName(const std::string & senderName) 设置消息的发送者显示名称
int
groupAckCount() 群消息已读AckCount数目
void
setGroupAckCount(int count) 设置消息已读groupAckCount数目(SDK 内部调用接口,上层不应该调用)
int
groupAckUnreadCount() 群消息未读AckCount数目
void
setGroupAckUnreadCount(int count) 设置消息未读groupAckCount数目(SDK 内部调用接口,上层不应该调用)
bool
groupAckReadAll() 群消息是否全部已读
int
groupPlayAckCount() 群消息已播放AckCount数目(仅用于音频/视频附件消息)
void
setGroupPlayAckCount(int count) 设置消息已播放groupAckCount数目(SDK 内部调用接口,上层不应该调用)(仅用于音频/视频附件消息)
int
groupPlayAckUnreadCount() 群消息未播放AckCount数目(仅用于音频/视频附件消息)
void
setGroupPlayAckUnreadCount(int count) 设置消息未播放groupAckCount数目(SDK 内部调用接口,上层不应该调用)(仅用于音频/视频附件消息)
bool
groupPlayAckReadAll() 群消息是否全部已播放
void
setPriority(int priority) 设置消息的扩散优先级,默认为0。0表示扩散,数字越小扩散的越多。
int
priority() 消息的扩散优先级
void
setPushMessageMode(bool ) 设置消息是否为推送消息。
bool
isPushMessage() 消息是否是推送消息
BMXMessagePtr
createMessage(int64_t from, int64_t to, MessageType type, int64_t conversationId, const std::string & content) 创建发送文本消息
BMXMessagePtr
createMessage(int64_t from, int64_t to, MessageType type, int64_t conversationId, BMXMessageAttachmentPtr attachment) 创建发送附件消息
BMXMessagePtr
createCommandMessage(int64_t from, int64_t to, MessageType type, int64_t conversationId, const std::string & content) 创建发送命令消息(命令消息通过content字段或者extension字段存放命令信息)
BMXMessagePtr
createMessage(int64_t msgId, int64_t from, int64_t to, MessageType type, int64_t conversationId, const std::string & content, int64_t serverTimestamp) 创建收到的消息
BMXMessagePtr
createMessage(int64_t msgId, int64_t from, int64_t to, MessageType type, int64_t conversationId, BMXMessageAttachmentPtr attachment, int64_t serverTimestamp) 创建收到的消息
BMXMessagePtr
createCommandMessage(int64_t msgId, int64_t from, int64_t to, MessageType type, int64_t conversationId, const std::string & content, int64_t serverTimestamp) 创建收到的命令消息(命令消息通过content字段或者extension字段存放命令信息)
BMXMessagePtr
createForwardMessage(BMXMessagePtr msg, int64_t from, int64_t to, MessageType type, int64_t conversationId) 创建转发消息
Public Types Documentation
enum DeliveryStatus
New
新创建消息
Delivering
消息投递中
Deliveried
消息已投递
Failed
消息投递失败
Recalled
消息已撤回
消息投递状态
enum MessageType
Single
单聊消息
Group
群聊消息
System
系统消息
消息类型
enum ContentType
Text
文本消息
Image
图片消息
Voice
语音消息
Video
视频片段消息
File
文件消息
Location
位置消息
Command
命令消息
Forward
转发消息
消息内容类型
enum DeliveryQos
AtLastOnce
最少投递一次
AtMostOnce
最多投递一次
ExactlyOnce
仅投递一次
消息投递质量
Public Functions Documentation
function ~BMXMessage
析构函数
function msgId
消息唯一ID
Return: int64_t
function clientMsgId
消息客户端ID,仅在消息发送端存在
Return: int64_t
function fromId
消息发送方ID
Return: int64_t
function toId
消息接收方ID
Return: int64_t
function type
消息类型
Return: MessageType
function conversationId
消息所属会话ID
Return: int64_t
function deliveryStatus
消息投递状态
Return: DeliveryStatus
function setDeliveryStatus
设置消息投递状态
function serverTimestamp
消息时间戳(服务端收到时的时间)
Return: int64_t
function setServerTimestamp
设置时间戳(服务端收到时的时间)
function clientTimestamp
本地时间戳(消息创建或者收到时的本地时间)
Return: int64_t
function setClientTimestamp
设置消息本地时间戳
function isPlayed
语音或者视频消息是否播放过,仅对收到的音视频消息有效
Return: bool
function setIsPlayed
设置语音或者视频消息是否播放过,仅对收到的音视频消息有效
function isPlayAcked
对于发送方表示是否收到了已播放回执,对于接收方表示是否发送了已播放回执
Return: bool
function setIsPlayAcked
设置已播放回执
function isReceiveMsg
是否接收的消息
Return: bool
function setIsReceiveMsg
设置是否接收的消息
function isRead
消息是否已读标志
Return: bool
function setIsRead
消息是否已读标志
function isReadAcked
对于发送方表示是否收到了已读回执,对于接收方表示是否发送了已读回执
Return: bool
function setIsReadAcked
设置已读回执
function isDeliveryAcked
对于发送方表示消息是否已投递到对方,对于接收方表示是否发送了消息已到达回执
Return: bool
function setIsDeliveryAcked
设置投递回执
function content
消息文本内容
Return: std::string
function setContent
消息文本内容
Parameters:
content 消息文本内容
function contentType
消息内容类型,如果带附件就表示附件类型,不带附件就是文本类型
Return: ContentType
function attachment
消息附件,BMXMessage拥有附件的所有权,负责释放
Return: BMXMessageAttachmentPtr
function config
消息的配置信息
Return: JSON(std::string)
function setConfig
设置消息配置信息
function extension
消息扩展信息
Return: JSON(std::string)
function setExtension
设置消息扩展信息
function deliveryQos
消息投递QOS
Return: DeliveryQos
function setDeliveryQos
设置消息投递QOS
Parameters:
qos 消息投递QOS
function senderName
消息发送者的显示名称
Return: std::string
function setSenderName
设置消息的发送者显示名称
Parameters:
senderName 消息文本内容
function groupAckCount
群消息已读AckCount数目
Return: int
function setGroupAckCount
设置消息已读groupAckCount数目(SDK 内部调用接口,上层不应该调用)
Parameters:
count 设置群消息已读数目
function groupAckUnreadCount
群消息未读AckCount数目
Return: int
function setGroupAckUnreadCount
设置消息未读groupAckCount数目(SDK 内部调用接口,上层不应该调用)
Parameters:
count 设置群消息未读数目
function groupAckReadAll
群消息是否全部已读
Return: bool
function groupPlayAckCount
群消息已播放AckCount数目(仅用于音频/视频附件消息)
Return: int
function setGroupPlayAckCount
设置消息已播放groupAckCount数目(SDK 内部调用接口,上层不应该调用)(仅用于音频/视频附件消息)
Parameters:
count 设置群消息已读数目
function groupPlayAckUnreadCount
群消息未播放AckCount数目(仅用于音频/视频附件消息)
Return: int
function setGroupPlayAckUnreadCount
设置消息未播放groupAckCount数目(SDK 内部调用接口,上层不应该调用)(仅用于音频/视频附件消息)
Parameters:
count 设置群消息未播放数目
function groupPlayAckReadAll
群消息是否全部已播放
Return: bool
function setPriority
设置消息的扩散优先级,默认为0。0表示扩散,数字越小扩散的越多。
Parameters:
priority 设置群消息未读数目
取值范围0-10。普通人在聊天室发送的消息级别默认为5,可以丢弃。管理员默认为0不会丢弃。其它值可以根据业务自行设置。
function priority
消息的扩散优先级
Return: int
function setPushMessageMode
设置消息是否为推送消息。
function isPushMessage
消息是否是推送消息
Return: bool
function createMessage
创建发送文本消息
Parameters:
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
content 消息内容
function createMessage
创建发送附件消息
Parameters:
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
attachment 附件
function createCommandMessage
创建发送命令消息(命令消息通过content字段或者extension字段存放命令信息)
Parameters:
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
content 消息内容
function createMessage
创建收到的消息
Parameters:
msgId 消息id
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
content 消息内容
serverTimestamp 服务器时间戳
function createMessage
创建收到的消息
Parameters:
msgId 消息id
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
attachment 附件
serverTimestamp 服务器时间戳
function createCommandMessage
创建收到的命令消息(命令消息通过content字段或者extension字段存放命令信息)
Parameters:
msgId 消息id
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
content 消息内容
serverTimestamp 服务器时间戳
function createForwardMessage
创建转发消息
Parameters:
msg 要转发的消息
from 消息发送者
to 消息接收者
type 消息类型
conversationId 会话id
Updated on 2022-01-26 at 17:20:40 +0800
Last updated
Was this helpful?