Class Message
-
- All Implemented Interfaces:
public class Message消息实体,用来容纳和存储客户端收到的消息信息,对应聊天界面中的消息。
rongcloud
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public enumMessage.MessageDirection消息方向枚举。
public enumMessage.SentStatus发送出的消息的状态。
public classMessage.ReceivedStatus接收到的消息的状态。
是一个按位标记的枚举,可以进行位运算。
-
Field Summary
Fields Modifier and Type Field Description public ConversationTypeconversationTypepublic StringtargetIdpublic StringchannelIdpublic intmessageIdpublic Message.MessageDirectionmessageDirectionpublic StringsenderUserIdpublic Message.ReceivedStatusreceivedStatuspublic Message.SentStatussentStatuspublic longreceivedTimepublic longsentTimepublic longreadTimepublic StringobjectNamepublic MessageContentcontentpublic Stringextrapublic ReadReceiptInforeadReceiptInfopublic ReadReceiptInfoV4readReceiptInfoV4public MessageConfigmessageConfigpublic MessagePushConfigmessagePushConfigpublic booleanisOfflinepublic Map<String, String>expansionpublic List<String>directedUserIdspublic booleanisEmptyContentpublic final static Creator<Message>CREATOR
-
Method Summary
Modifier and Type Method Description ConversationTypegetConversationType()获取会话类型。 voidsetConversationType(ConversationType conversationType)设置会话类型。 StringgetTargetId()获取目标 id。 根据不同的 conversationType,可能是用户 id、讨论组 id、群组 id 或聊天室 id。 voidsetTargetId(String targetId)设置目标 id。 根据不同的 conversationType,可能是用户 id、讨论组 id、群组 id 或聊天室 id。 StringgetChannelId()获取频道 id voidsetChannelId(String channelId)设置频道 id,长度限制 20 字符 intgetMessageId()获取本地存储的消息的唯一值(数据库索引唯一值)。 voidsetMessageId(int messageId)设置本地存储的消息的唯一值(数据库索引唯一值)。 Message.MessageDirectiongetMessageDirection()获取消息方向。 voidsetMessageDirection(Message.MessageDirection messageDirection)设置消息方向。 StringgetSenderUserId()获取发送消息的用户 id。 voidsetSenderUserId(String senderUserId)设置发送消息的用户 id。 Message.ReceivedStatusgetReceivedStatus()获取消息的接收状态。 voidsetReceivedStatus(Message.ReceivedStatus receivedStatus)设置消息的接收状态。 Message.SentStatusgetSentStatus()获取消息的发送状态。 voidsetSentStatus(Message.SentStatus sentStatus)设置消息的发送状态。 longgetReceivedTime()获取消息接收时间(Unix 时间戳、毫秒)。 接收时间为消息到达接收客户端时客户端的本地时间。 voidsetReceivedTime(long receivedTime)设置消息接收时间(Unix 时间戳、毫秒)。 接收时间为消息到达接收客户端时客户端的本地时间。 longgetSentTime()获取消息发送时间(Unix 时间戳、毫秒)。 发送时间为消息从发送客户端到达服务器时的服务器时间。 voidsetSentTime(long sentTime)设置消息发送时间(Unix 时间戳、毫秒)。 发送时间为消息从发送客户端到达服务器时的服务器时间。 longgetReadTime()voidsetReadTime(long readTime)StringgetObjectName()获取消息对象名称。 消息对象名称即 io.rong.imlib. voidsetObjectName(String objectName)设置消息对象名称。 消息对象名称即 io.rong.imlib. MessageContentgetContent()获取消息内容。 voidsetContent(MessageContent content)设置消息内容。 StringgetExtra()获取消息的附加信息。 voidsetExtra(String extra)设置消息的附加信息。 ReadReceiptInfogetReadReceiptInfo()获取已读回执状态 voidsetReadReceiptInfo(ReadReceiptInfo readReceiptInfo)设置已读回执状态 ReadReceiptInfoV4getReadReceiptInfoV4()获取已读回执 V4 信息 voidsetReadReceiptInfoV4(ReadReceiptInfoV4 readReceiptInfo)设置已读回执 V4 信息 MessageConfiggetMessageConfig()获取消息配置 voidsetMessageConfig(MessageConfig messageConfig)设置消息配置 MessagePushConfiggetMessagePushConfig()获取推送配置 voidsetMessagePushConfig(MessagePushConfig messagePushConfig)设置推送配置 booleanisOffline()是否是离线消息 从数据库获取的消息,该字段无效 只在接收消息的回调方法中有效如果消息为离线消息,则为 YES 其他情况均为 NO voidsetOffline(boolean offLine)设置是否是离线消息 Map<String, String>getExpansion()消息扩展信息列表 List<String>getDirectedUserIds()获取定向用户列表 单聊会话类型返回空 voidsetDirectedUserIds(List<String> directedUserIds)设置定向用户列表 booleanisEmptyContent()static Messageobtain(String targetId, ConversationType type, MessageContent content)构造函数。 static Messageobtain(ConversationIdentifier conversationIdentifier, MessageContent content)构造函数。 static Messageobtain(String targetId, ConversationType type, String channelId, MessageContent content)构造函数。 voidwriteToParcel(Parcel dest, int flags)intdescribeContents()StringgetUId()获取服务器消息唯一 id(在同一个 AppKey 下全局唯一) voidsetUId(String UId)设置服务器消息唯一 id(在同一个 AppKey 下全局唯一) GroupReadReceiptInfoV2getGroupReadReceiptInfoV2()获取已读回执 V2 信息 voidsetGroupReadReceiptInfoV2(GroupReadReceiptInfoV2 v2)设置已读回执 V2 信息 booleanisCanIncludeExpansion()消息是否可以包含扩展信息 该属性在消息发送时确定,发送之后不能再做修改;扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。 voidsetExpansion(HashMap<String, String> expansion)设置消息扩展信息列表 扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。 默认消息扩展字典 key 长度不超过 32 ,value 长度不超过 4096 ,单次设置扩展数量最大为 20,消息的扩展总数不能超过 300 booleanisMayHasMoreMessagesBefore()booleanisHasChanged()消息是否被修改过 booleanisDisableUpdateLastMessage()booleanisNeedReceipt()booleanisSentReceipt()inthashCode()booleanequals(Object o)StringtoString()voidsetCanIncludeExpansion(boolean canIncludeExpansion)设置是否可以包含扩展信息 voidsetHasChanged(boolean hasChanged)设置消息是否被修改过 voidsetDisableUpdateLastMessage(boolean disableUpdateLastMessage)voidsetNeedReceipt(boolean needReceipt)voidsetSentReceipt(boolean sentReceipt)-
-
Method Detail
-
getConversationType
ConversationType getConversationType()
获取会话类型。
- Returns:
会话类型。
-
setConversationType
void setConversationType(ConversationType conversationType)
设置会话类型。
- Parameters:
conversationType- 会话类型。
-
getTargetId
String getTargetId()
获取目标 id。
根据不同的 conversationType,可能是用户 id、讨论组 id、群组 id 或聊天室 id。
- Returns:
目标 id 的值。
-
setTargetId
void setTargetId(String targetId)
设置目标 id。
根据不同的 conversationType,可能是用户 id、讨论组 id、群组 id 或聊天室 id。
- Parameters:
targetId- 目标 id 的值。
-
getChannelId
String getChannelId()
获取频道 id
- Returns:
频道 id
-
setChannelId
void setChannelId(String channelId)
设置频道 id,长度限制 20 字符
- Parameters:
channelId- 频道 id
-
getMessageId
int getMessageId()
获取本地存储的消息的唯一值(数据库索引唯一值)。
- Returns:
消息本地存储的消息的唯一值(数据库索引唯一值)。
-
setMessageId
void setMessageId(int messageId)
设置本地存储的消息的唯一值(数据库索引唯一值)。
- Parameters:
messageId- 本地存储的消息的唯一值(数据库索引唯一值)。
-
getMessageDirection
Message.MessageDirection getMessageDirection()
获取消息方向。
- Returns:
消息方向。
-
setMessageDirection
void setMessageDirection(Message.MessageDirection messageDirection)
设置消息方向。
- Parameters:
messageDirection- 消息方向。
-
getSenderUserId
String getSenderUserId()
获取发送消息的用户 id。
- Returns:
发送消息的用户 id。
-
setSenderUserId
void setSenderUserId(String senderUserId)
设置发送消息的用户 id。
- Parameters:
senderUserId- 发送消息的用户 id。
-
getReceivedStatus
Message.ReceivedStatus getReceivedStatus()
获取消息的接收状态。
- Returns:
消息的接收状态。
-
setReceivedStatus
void setReceivedStatus(Message.ReceivedStatus receivedStatus)
设置消息的接收状态。
- Parameters:
receivedStatus- 消息的接收状态。
-
getSentStatus
Message.SentStatus getSentStatus()
获取消息的发送状态。
- Returns:
消息的发送状态。
-
setSentStatus
void setSentStatus(Message.SentStatus sentStatus)
设置消息的发送状态。
- Parameters:
sentStatus- 消息的发送状态。
-
getReceivedTime
long getReceivedTime()
获取消息接收时间(Unix 时间戳、毫秒)。
接收时间为消息到达接收客户端时客户端的本地时间。
- Returns:
消息接收时间(Unix 时间戳、毫秒)。
-
setReceivedTime
void setReceivedTime(long receivedTime)
设置消息接收时间(Unix 时间戳、毫秒)。
接收时间为消息到达接收客户端时客户端的本地时间。
- Parameters:
receivedTime- 消息接收时间(Unix 时间戳、毫秒)。
-
getSentTime
long getSentTime()
获取消息发送时间(Unix 时间戳、毫秒)。
发送时间为消息从发送客户端到达服务器时的服务器时间。
- Returns:
消息发送时间(Unix 时间戳、毫秒)。
-
setSentTime
void setSentTime(long sentTime)
设置消息发送时间(Unix 时间戳、毫秒)。
发送时间为消息从发送客户端到达服务器时的服务器时间。
- Parameters:
sentTime- 消息发送时间(Unix 时间戳、毫秒)。
-
getReadTime
long getReadTime()
-
setReadTime
void setReadTime(long readTime)
-
getObjectName
String getObjectName()
获取消息对象名称。
消息对象名称即 io.rong.imlib.MessageTag 注解中的 value 值。
- Returns:
消息对象名称。
-
setObjectName
void setObjectName(String objectName)
设置消息对象名称。
消息对象名称即 io.rong.imlib.MessageTag 注解中的 value 值。
- Parameters:
objectName- 消息对象名称。
-
getContent
MessageContent getContent()
获取消息内容。
- Returns:
消息内容。
-
setContent
void setContent(MessageContent content)
设置消息内容。
- Parameters:
content- 消息内容。
-
getExtra
String getExtra()
获取消息的附加信息。
- Returns:
消息的附加信息。
-
setExtra
void setExtra(String extra)
设置消息的附加信息。
- Parameters:
extra- 消息的附加信息。
-
getReadReceiptInfo
ReadReceiptInfo getReadReceiptInfo()
获取已读回执状态
- Returns:
已读回执状态
-
setReadReceiptInfo
void setReadReceiptInfo(ReadReceiptInfo readReceiptInfo)
设置已读回执状态
- Parameters:
readReceiptInfo- 已读回执状态
-
getReadReceiptInfoV4
ReadReceiptInfoV4 getReadReceiptInfoV4()
获取已读回执 V4 信息
- Returns:
已读回执 V4 信息
-
setReadReceiptInfoV4
void setReadReceiptInfoV4(ReadReceiptInfoV4 readReceiptInfo)
设置已读回执 V4 信息
- Parameters:
readReceiptInfo- 已读回执 V4 信息
-
getMessageConfig
MessageConfig getMessageConfig()
获取消息配置
- Returns:
MessageConfig 消息配置
-
setMessageConfig
void setMessageConfig(MessageConfig messageConfig)
设置消息配置
- Parameters:
messageConfig- 消息配置
-
getMessagePushConfig
MessagePushConfig getMessagePushConfig()
获取推送配置
- Returns:
MessagePushConfig 推送配置
-
setMessagePushConfig
void setMessagePushConfig(MessagePushConfig messagePushConfig)
设置推送配置
- Parameters:
messagePushConfig- 推送配置
-
isOffline
boolean isOffline()
是否是离线消息
从数据库获取的消息,该字段无效
只在接收消息的回调方法中有效
如果消息为离线消息,则为 YES 其他情况均为 NO
-
setOffline
void setOffline(boolean offLine)
设置是否是离线消息
- Parameters:
offLine- 是否是离线消息
-
getExpansion
Map<String, String> getExpansion()
消息扩展信息列表
- Returns:
消息扩展信息列表
-
getDirectedUserIds
List<String> getDirectedUserIds()
获取定向用户列表
单聊会话类型返回空
- Returns:
定向用户列表
- Since:
5.8.0
-
setDirectedUserIds
void setDirectedUserIds(List<String> directedUserIds)
设置定向用户列表
- Parameters:
directedUserIds- 定向用户列表- Since:
5.8.0
-
isEmptyContent
boolean isEmptyContent()
-
obtain
static Message obtain(String targetId, ConversationType type, MessageContent content)
构造函数。
- Parameters:
targetId- 会话 idtype- 会话类型content- 消息内容- Returns:
消息实体
-
obtain
static Message obtain(ConversationIdentifier conversationIdentifier, MessageContent content)
构造函数。
- Parameters:
conversationIdentifier- 会话标识content- 消息内容- Returns:
消息实体
-
obtain
static Message obtain(String targetId, ConversationType type, String channelId, MessageContent content)
构造函数。
- Parameters:
targetId- 会话 idtype- 会话类型channelId- 会话 channelIdcontent- 消息内容- Returns:
消息实体
-
writeToParcel
void writeToParcel(Parcel dest, int flags)
-
describeContents
int describeContents()
-
getUId
String getUId()
获取服务器消息唯一 id(在同一个 AppKey 下全局唯一)
- Returns:
uid 服务器消息唯一 id(在同一个 AppKey 下全局唯一)
-
setUId
void setUId(String UId)
设置服务器消息唯一 id(在同一个 AppKey 下全局唯一)
- Parameters:
UId- 服务器消息唯一 id(在同一个 AppKey 下全局唯一)
-
getGroupReadReceiptInfoV2
GroupReadReceiptInfoV2 getGroupReadReceiptInfoV2()
获取已读回执 V2 信息
- Returns:
已读回执 V2 信息
-
setGroupReadReceiptInfoV2
void setGroupReadReceiptInfoV2(GroupReadReceiptInfoV2 v2)
设置已读回执 V2 信息
- Parameters:
v2- 已读回执 V2 信息
-
isCanIncludeExpansion
boolean isCanIncludeExpansion()
消息是否可以包含扩展信息
该属性在消息发送时确定,发送之后不能再做修改;扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。
- Returns:
消息是否可以包含扩展信息
-
setExpansion
void setExpansion(HashMap<String, String> expansion)
设置消息扩展信息列表
扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。
默认消息扩展字典 key 长度不超过 32 ,value 长度不超过 4096 ,单次设置扩展数量最大为 20,消息的扩展总数不能超过 300
- Parameters:
expansion- 消息扩展信息列表
-
isMayHasMoreMessagesBefore
boolean isMayHasMoreMessagesBefore()
-
isHasChanged
boolean isHasChanged()
消息是否被修改过
- Returns:
是否被修改过
-
isDisableUpdateLastMessage
boolean isDisableUpdateLastMessage()
-
isNeedReceipt
boolean isNeedReceipt()
-
isSentReceipt
boolean isSentReceipt()
-
hashCode
int hashCode()
-
equals
boolean equals(Object o)
-
toString
String toString()
-
setCanIncludeExpansion
void setCanIncludeExpansion(boolean canIncludeExpansion)
设置是否可以包含扩展信息
- Parameters:
canIncludeExpansion- 是否可以包含扩展信息
-
setHasChanged
void setHasChanged(boolean hasChanged)
设置消息是否被修改过
- Parameters:
hasChanged- 是否被修改过
-
setDisableUpdateLastMessage
void setDisableUpdateLastMessage(boolean disableUpdateLastMessage)
-
setNeedReceipt
void setNeedReceipt(boolean needReceipt)
-
setSentReceipt
void setSentReceipt(boolean sentReceipt)
-
-
-
-