Class Conversation
-
- All Implemented Interfaces:
public class Conversation
会话的实体,用来容纳和存储客户端的会话信息,对应会话列表中的会话。
rongcloud
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description public enum
Conversation.PublicServiceType
公众服务类型枚举。
public enum
Conversation.ConversationType
会话类型枚举。
public enum
Conversation.ConversationNotificationStatus
会话提醒状态。
-
Field Summary
Fields Modifier and Type Field Description public Conversation.ConversationType
conversationType
public String
targetId
public String
channelId
public String
conversationTitle
public String
portraitUrl
public int
unreadMessageCount
public boolean
isTop
public boolean
isTopForTag
public long
operationTime
public String
senderUserName
public String
draft
public Conversation.ConversationNotificationStatus
notificationStatus
public int
mentionedCount
public int
pushNotificationLevel
public IRongCoreEnum.UltraGroupChannelType
channelType
public long
firstUnreadMsgSendTime
public final static Creator<Conversation>
CREATOR
-
Constructor Summary
Constructors Constructor Description Conversation()
默认构造函数。 Conversation(Parcel in)
-
Method Summary
Modifier and Type Method Description Conversation.ConversationType
getConversationType()
获取会话类型。 void
setConversationType(Conversation.ConversationType conversationType)
设置会话类型。 String
getTargetId()
获取会话 id。 根据不同的 conversationType,可能是聊天 id、讨论组 id、群组 id 或聊天室 id。 void
setTargetId(String targetId)
设置会话 id。 根据不同的 conversationType,可能是聊天 id、讨论组 id、群组 id 或聊天室 id。 String
getChannelId()
消息所属会话的业务标识。 void
setChannelId(String channelId)
设置 消息所属会话的业务标识,长度限制 20 字符 String
getConversationTitle()
获取会话标题。 void
setConversationTitle(String conversationTitle)
设置会话标题。 String
getPortraitUrl()
获取会话头像地址 void
setPortraitUrl(String portraitUrl)
设置会话头像地址 int
getUnreadMessageCount()
获取未读消息数。 void
setUnreadMessageCount(int unreadMessageCount)
设置未读消息数。 boolean
isTop()
获取置顶状态。 void
setTop(boolean isTop)
设置置顶状态。 boolean
isTopForTag()
获取表示当前会话在此 tag 下的置顶状态。 仅在通过tag获取会话时{#getConversationsFromTagByPage},此字段有效。 void
setTopForTag(boolean isTopForTag)
设置表示当前会话在此 tag 下的置顶状态。 long
getOperationTime()
获取该会话的操作时间(Unix时间戳、毫秒),用于分页获取会话列表时传入的时间戳 初始值与 sentTime 相同,置顶等操作会更新此时间戳 void
setOperationTime(long operationTime)
设置该会话的操作时间(Unix时间戳、毫秒) String
getSenderUserName()
获取发送消息的用户名称。 void
setSenderUserName(String senderUserName)
设置发送消息的用户名称。 String
getDraft()
获取会话中存在的草稿。 void
setDraft(String draft)
设置会话中存在的草稿。 Conversation.ConversationNotificationStatus
getNotificationStatus()
获取消息通知状态。 void
setNotificationStatus(Conversation.ConversationNotificationStatus notificationStatus)
设置获取通知消息状态。 int
getMentionedCount()
获取本会话里自己被 @ 的未读消息数。 void
setMentionedCount(int count)
设置本会话里自己被 @ 的未读消息数。 int
getPushNotificationLevel()
获取免打扰通知级别 void
setPushNotificationLevel(int pushNotificationLevel)
设置免打扰通知级别 IRongCoreEnum.UltraGroupChannelType
getChannelType()
获取会话的超级群频道类型 void
setChannelType(IRongCoreEnum.UltraGroupChannelType channelType)
设置会话的超级群频道类型 long
getFirstUnreadMsgSendTime()
获取会话中第一条未读消息时间戳(Unix时间戳、毫秒) void
setFirstUnreadMsgSendTime(long firstUnreadMsgSendTime)
设置会话中第一条未读消息时间戳(Unix时间戳、毫秒) static Conversation
obtain(Conversation.ConversationType type, String id, String title)
构造函数。 void
writeToParcel(Parcel dest, int flags)
int
describeContents()
ReceivedStatus
getReceivedStatus()
获取会话中最后一条消息的接收状态。 void
setReceivedStatus(ReceivedStatus receivedStatus)
设置会话中最后一条消息的接收状态。 SentStatus
getSentStatus()
获取会话中最后一条消息的发送状态。 void
setSentStatus(SentStatus sentStatus)
设置会话中最后一条消息的发送状态。 long
getReceivedTime()
获取会话中最后一条消息的接收时间(Unix时间戳、毫秒)。 接收时间为消息到达接收客户端时客户端的本地时间。 void
setReceivedTime(long receivedTime)
设置会话中最后一条消息的接收时间(Unix时间戳、毫秒)。 long
getSentTime()
获取会话中最后一条消息的发送时间(Unix时间戳、毫秒) 发送时间为消息从发送客户端到达服务器时的服务器时间。 void
setSentTime(long sentTime)
设置会话中最后一条消息的发送时间(Unix时间戳、毫秒) 发送时间为消息从发送客户端到达服务器时的服务器时间。 String
getObjectName()
获取消息对象名称。 消息对象名称即 io.rong.imlib. void
setObjectName(String objectName)
设置消息对象名称。 消息对象名称即 io.rong.imlib. String
getSenderUserId()
获取发送消息的用户 id。 void
setSenderUserId(String senderUserId)
设置发送消息的用户 id。 int
getLatestMessageId()
获取本会话最后一条消息 id。(数据库索引唯一值) void
setLatestMessageId(int latestMessageId)
设置本会话最后一条消息 id。(数据库索引唯一值) MessageContent
getLatestMessage()
获取会话中最后一条消息内容。 void
setLatestMessage(MessageContent latestMessageContent)
设置会话中最后一条消息内容。 int
getUnreadMentionedCount()
获取本会话里自己被 @ 的未读消息数。 int
getUnreadMentionedMeCount()
获取本会话里仅自己被 @ 的未读消息数。 MessageDirection
getLatestMessageDirection()
获取消息方向。 void
setLatestMessageDirection(MessageDirection latestMessageDirection)
设置消息方向。 String
getLatestMessageExtra()
获取消息的附加信息。 void
setLatestMessageExtra(String latestMessageExtra)
设置消息的附加信息。 String
getLatestMessageUId()
获取服务器消息唯一 id(在同一个 AppKey 下全局唯一) void
setLatestMessageUId(String latestMessageUId)
设置服务器消息唯一 id(在同一个 AppKey 下全局唯一) ReadReceiptInfo
getLatestMessageReadReceiptInfo()
获取最后一条消息已读回执状态 void
setLatestMessageReadReceiptInfo(ReadReceiptInfo latestMessageReadReceiptInfo)
设置最后一条消息已读回执状态 MessageConfig
getLatestMessageConfig()
获取消息配置 void
setLatestMessageConfig(MessageConfig latestMessageConfig)
设置消息配置 boolean
isLatestCanIncludeExpansion()
消息是否可以包含扩展信息 该属性在消息发送时确定,发送之后不能再做修改;扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。 void
setLatestCanIncludeExpansion(boolean latestCanIncludeExpansion)
设置是否可以包含扩展信息 Map<String, String>
getLatestExpansion()
获取最后一条消息消息扩展信息列表 void
setLatestExpansion(Map<String, String> latestExpansion)
设置最后一条消息消息扩展信息列表 Message
getMessage()
获取会话的LatestMessage void
setMessage(Message latestMessage)
会话的LatestMessage void
setMentionedMeCount(int count)
设置本会话里仅自己被 @ 的未读消息数。 -
-
Method Detail
-
getConversationType
Conversation.ConversationType getConversationType()
获取会话类型。
- Returns:
会话类型。
-
setConversationType
void setConversationType(Conversation.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()
消息所属会话的业务标识。
- Returns:
消息所属会话的业务标识。
-
setChannelId
void setChannelId(String channelId)
设置 消息所属会话的业务标识,长度限制 20 字符
- Parameters:
channelId
- 消息所属会话的业务标识。
-
getConversationTitle
String getConversationTitle()
获取会话标题。
- Returns:
会话标题。
-
setConversationTitle
void setConversationTitle(String conversationTitle)
设置会话标题。
- Parameters:
conversationTitle
- 会话标题。
-
getPortraitUrl
String getPortraitUrl()
获取会话头像地址
- Returns:
会话头像地址
-
setPortraitUrl
void setPortraitUrl(String portraitUrl)
设置会话头像地址
- Parameters:
portraitUrl
- 会话头像地址
-
getUnreadMessageCount
int getUnreadMessageCount()
获取未读消息数。
- Returns:
未读消息数。
-
setUnreadMessageCount
void setUnreadMessageCount(int unreadMessageCount)
设置未读消息数。
- Parameters:
unreadMessageCount
- 未读消息数。
-
isTop
boolean isTop()
获取置顶状态。
- Returns:
置顶状态。
-
setTop
void setTop(boolean isTop)
设置置顶状态。
- Parameters:
isTop
- 置顶状态。
-
isTopForTag
boolean isTopForTag()
获取表示当前会话在此 tag 下的置顶状态。
仅在通过tag获取会话时{#getConversationsFromTagByPage},此字段有效。
- Returns:
置顶状态。
- Since:
5.6.4
-
setTopForTag
void setTopForTag(boolean isTopForTag)
设置表示当前会话在此 tag 下的置顶状态。
- Parameters:
isTopForTag
- 置顶状态。- Since:
5.6.4
-
getOperationTime
long getOperationTime()
获取该会话的操作时间(Unix时间戳、毫秒),用于分页获取会话列表时传入的时间戳
初始值与 sentTime 相同,置顶等操作会更新此时间戳
- Returns:
操作时间
- Since:
5.6.8
-
setOperationTime
void setOperationTime(long operationTime)
设置该会话的操作时间(Unix时间戳、毫秒)
- Parameters:
operationTime
- 操作时间- Since:
5.6.8
-
getSenderUserName
String getSenderUserName()
获取发送消息的用户名称。
- Returns:
发送消息的用户名称。
-
setSenderUserName
void setSenderUserName(String senderUserName)
设置发送消息的用户名称。
- Parameters:
senderUserName
- 发送消息的用户名称。
-
getDraft
String getDraft()
获取会话中存在的草稿。
- Returns:
会话中存在的草稿。
-
setDraft
void setDraft(String draft)
设置会话中存在的草稿。
- Parameters:
draft
- 会话中存在的草稿。
-
getNotificationStatus
Conversation.ConversationNotificationStatus getNotificationStatus()
获取消息通知状态。
- Returns:
消息通知状态。
-
setNotificationStatus
void setNotificationStatus(Conversation.ConversationNotificationStatus notificationStatus)
设置获取通知消息状态。
- Parameters:
notificationStatus
- 消息状态。
-
getMentionedCount
@Deprecated() int getMentionedCount()
获取本会话里自己被 @ 的未读消息数。
- Returns:
被@的未读消息数量
-
setMentionedCount
void setMentionedCount(int count)
设置本会话里自己被 @ 的未读消息数。
- Parameters:
count
- 未读消息数。
-
getPushNotificationLevel
int getPushNotificationLevel()
获取免打扰通知级别
- Returns:
免打扰通知级别
-
setPushNotificationLevel
void setPushNotificationLevel(int pushNotificationLevel)
设置免打扰通知级别
- Parameters:
pushNotificationLevel
- 免打扰通知级别
-
getChannelType
IRongCoreEnum.UltraGroupChannelType getChannelType()
获取会话的超级群频道类型
- Returns:
频道类型
- Since:
5.2.4
-
setChannelType
void setChannelType(IRongCoreEnum.UltraGroupChannelType channelType)
设置会话的超级群频道类型
- Parameters:
channelType
- 频道类型- Since:
5.2.4
-
getFirstUnreadMsgSendTime
long getFirstUnreadMsgSendTime()
获取会话中第一条未读消息时间戳(Unix时间戳、毫秒)
- Returns:
第一条未读消息时间戳
- Since:
5.2.5
-
setFirstUnreadMsgSendTime
void setFirstUnreadMsgSendTime(long firstUnreadMsgSendTime)
设置会话中第一条未读消息时间戳(Unix时间戳、毫秒)
- Parameters:
firstUnreadMsgSendTime
- 第一条未读消息时间戳- Since:
5.2.5
-
obtain
static Conversation obtain(Conversation.ConversationType type, String id, String title)
构造函数。
- Parameters:
type
- 会话类型。id
- 会话 id。title
- 会话标题。
-
writeToParcel
void writeToParcel(Parcel dest, int flags)
-
describeContents
int describeContents()
-
getReceivedStatus
ReceivedStatus getReceivedStatus()
获取会话中最后一条消息的接收状态。
- Returns:
会话中最后一条消息的接收状态。
-
setReceivedStatus
void setReceivedStatus(ReceivedStatus receivedStatus)
设置会话中最后一条消息的接收状态。
- Parameters:
receivedStatus
- 会话中最后一条消息的接收状态。
-
getSentStatus
SentStatus getSentStatus()
获取会话中最后一条消息的发送状态。
- Returns:
会话中最后一条消息的发送状态。
-
setSentStatus
void setSentStatus(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时间戳、毫秒)
-
getObjectName
String getObjectName()
获取消息对象名称。
消息对象名称即 io.rong.imlib.MessageTag 注解中的 value 值。
- Returns:
消息对象名称。
-
setObjectName
void setObjectName(String objectName)
设置消息对象名称。
消息对象名称即 io.rong.imlib.MessageTag 注解中的 value 值。
- Parameters:
objectName
- 消息对象名称。
-
getSenderUserId
String getSenderUserId()
获取发送消息的用户 id。
- Returns:
发送消息的用户 id。
-
setSenderUserId
void setSenderUserId(String senderUserId)
设置发送消息的用户 id。
- Parameters:
senderUserId
- 发送消息的用户 id。
-
getLatestMessageId
int getLatestMessageId()
获取本会话最后一条消息 id。(数据库索引唯一值)
- Returns:
本会话最后一条消息 id。
-
setLatestMessageId
void setLatestMessageId(int latestMessageId)
设置本会话最后一条消息 id。(数据库索引唯一值)
- Parameters:
latestMessageId
- 本会话最后一条消息 id。
-
getLatestMessage
MessageContent getLatestMessage()
获取会话中最后一条消息内容。
- Returns:
会话中最后一条消息内容。
-
setLatestMessage
void setLatestMessage(MessageContent latestMessageContent)
设置会话中最后一条消息内容。
- Parameters:
latestMessageContent
- 会话中最后一条消息内容。
-
getUnreadMentionedCount
int getUnreadMentionedCount()
获取本会话里自己被 @ 的未读消息数。
- Returns:
被@的未读消息数量
-
getUnreadMentionedMeCount
int getUnreadMentionedMeCount()
获取本会话里仅自己被 @ 的未读消息数。
- Returns:
被@的未读消息数量
-
getLatestMessageDirection
MessageDirection getLatestMessageDirection()
获取消息方向。
- Returns:
消息方向。
-
setLatestMessageDirection
void setLatestMessageDirection(MessageDirection latestMessageDirection)
设置消息方向。
- Parameters:
latestMessageDirection
- 消息方向。
-
getLatestMessageExtra
String getLatestMessageExtra()
获取消息的附加信息。
- Returns:
消息的附加信息。
-
setLatestMessageExtra
void setLatestMessageExtra(String latestMessageExtra)
设置消息的附加信息。
- Parameters:
latestMessageExtra
- 消息的附加信息。
-
getLatestMessageUId
String getLatestMessageUId()
获取服务器消息唯一 id(在同一个 AppKey 下全局唯一)
- Returns:
uid 服务器消息唯一 id(在同一个 AppKey 下全局唯一)
-
setLatestMessageUId
void setLatestMessageUId(String latestMessageUId)
设置服务器消息唯一 id(在同一个 AppKey 下全局唯一)
- Parameters:
latestMessageUId
- 服务器消息唯一 id(在同一个 AppKey 下全局唯一)
-
getLatestMessageReadReceiptInfo
ReadReceiptInfo getLatestMessageReadReceiptInfo()
获取最后一条消息已读回执状态
- Returns:
已读回执状态
-
setLatestMessageReadReceiptInfo
void setLatestMessageReadReceiptInfo(ReadReceiptInfo latestMessageReadReceiptInfo)
设置最后一条消息已读回执状态
- Parameters:
latestMessageReadReceiptInfo
- 已读回执状态
-
getLatestMessageConfig
MessageConfig getLatestMessageConfig()
获取消息配置
- Returns:
MessageConfig 消息配置
-
setLatestMessageConfig
void setLatestMessageConfig(MessageConfig latestMessageConfig)
设置消息配置
- Parameters:
latestMessageConfig
- 消息配置
-
isLatestCanIncludeExpansion
boolean isLatestCanIncludeExpansion()
消息是否可以包含扩展信息
该属性在消息发送时确定,发送之后不能再做修改;扩展信息只支持单聊和群组,其它会话类型不能设置扩展信息。
- Returns:
消息是否可以包含扩展信息
-
setLatestCanIncludeExpansion
void setLatestCanIncludeExpansion(boolean latestCanIncludeExpansion)
设置是否可以包含扩展信息
- Parameters:
latestCanIncludeExpansion
- 是否可以包含扩展信息
-
getLatestExpansion
Map<String, String> getLatestExpansion()
获取最后一条消息消息扩展信息列表
- Returns:
消息扩展信息列表
-
setLatestExpansion
void setLatestExpansion(Map<String, String> latestExpansion)
设置最后一条消息消息扩展信息列表
- Parameters:
latestExpansion
- 消息扩展信息列表
-
getMessage
Message getMessage()
获取会话的LatestMessage
- Since:
5.8.0
-
setMessage
void setMessage(Message latestMessage)
会话的LatestMessage
- Since:
5.8.0
-
setMentionedMeCount
void setMentionedMeCount(int count)
设置本会话里仅自己被 @ 的未读消息数。
- Parameters:
count
- 未读消息数。
-
-
-
-