IMSDK
即时通信 IM 提供全球接入、单聊、群聊、消息推送、资料关系链托管、账号鉴权等全方位解决方案,并提供完备的 App 接入、后台管理接口。
V2TIMMessage

Public 成员函数

 V2TIMMessage ()
 
String getMsgID ()
 
long getTimestamp ()
 
String getSender ()
 
String getNickName ()
 
String getFriendRemark ()
 
String getFaceUrl ()
 
String getNameCard ()
 
String getGroupID ()
 
String getUserID ()
 
int getStatus ()
 
int getElemType ()
 
V2TIMTextElem getTextElem ()
 
V2TIMCustomElem getCustomElem ()
 
V2TIMImageElem getImageElem ()
 
V2TIMSoundElem getSoundElem ()
 
V2TIMVideoElem getVideoElem ()
 
V2TIMFileElem getFileElem ()
 
V2TIMLocationElem getLocationElem ()
 
V2TIMFaceElem getFaceElem ()
 
V2TIMMergerElem getMergerElem ()
 
V2TIMGroupTipsElem getGroupTipsElem ()
 
String getLocalCustomData ()
 
void setLocalCustomData (String localCustomData)
 
int getLocalCustomInt ()
 
void setLocalCustomInt (int localCustomInt)
 
void setCloudCustomData (String data)
 
String getCloudCustomData ()
 
boolean isSelf ()
 
boolean isRead ()
 
boolean isPeerRead ()
 
boolean isNeedReadReceipt ()
 
void setNeedReadReceipt (boolean needReadReceipt)
 
boolean isBroadcastMessage ()
 
int getPriority ()
 
V2TIMOfflinePushInfo getOfflinePushInfo ()
 
List< String > getGroupAtUserList ()
 
long getSeq ()
 
long getRandom ()
 
boolean isExcludedFromUnreadCount ()
 
void setExcludedFromUnreadCount (boolean excludedFromUnreadCount)
 
boolean isExcludedFromLastMessage ()
 
void setExcludedFromLastMessage (boolean excludedFromLastMessage)
 
boolean isExcludedFromContentModeration ()
 
void setExcludedFromContentModeration (boolean excludedFromContentModeration)
 
String getCustomModerationConfigurationID ()
 
void setCustomModerationConfigurationID (String customModerationConfigurationID)
 
boolean isSupportMessageExtension ()
 
void setSupportMessageExtension (boolean supportExtension)
 
boolean hasRiskContent ()
 
V2TIMUserFullInfo getRevokerInfo ()
 
String getRevokeReason ()
 
String toString ()
 

静态 Public 属性

static final int V2TIM_MSG_STATUS_SENDING = 1
 
static final int V2TIM_MSG_STATUS_SEND_SUCC = 2
 
static final int V2TIM_MSG_STATUS_SEND_FAIL = 3
 
static final int V2TIM_MSG_STATUS_HAS_DELETED = 4
 
static final int V2TIM_MSG_STATUS_LOCAL_IMPORTED = 5
 
static final int V2TIM_MSG_STATUS_LOCAL_REVOKED = 6
 
static final int V2TIM_PRIORITY_DEFAULT = 0
 
static final int V2TIM_PRIORITY_HIGH = 1
 
static final int V2TIM_PRIORITY_NORMAL = 2
 
static final int V2TIM_PRIORITY_LOW = 3
 
static final int V2TIM_ELEM_TYPE_NONE = 0
 
static final int V2TIM_ELEM_TYPE_TEXT = 1
 
static final int V2TIM_ELEM_TYPE_CUSTOM = 2
 
static final int V2TIM_ELEM_TYPE_IMAGE = 3
 
static final int V2TIM_ELEM_TYPE_SOUND = 4
 
static final int V2TIM_ELEM_TYPE_VIDEO = 5
 
static final int V2TIM_ELEM_TYPE_FILE = 6
 
static final int V2TIM_ELEM_TYPE_LOCATION = 7
 
static final int V2TIM_ELEM_TYPE_FACE = 8
 
static final int V2TIM_ELEM_TYPE_GROUP_TIPS = 9
 
static final int V2TIM_ELEM_TYPE_MERGER = 10
 
static final int V2TIM_RECEIVE_MESSAGE = 0
 
static final int V2TIM_NOT_RECEIVE_MESSAGE = 1
 
static final int V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE = 2
 
static final int V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE_EXCEPT_AT = 3
 
static final int V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_READ = 0
 
static final int V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_UNREAD = 1
 

Protected 成员函数

void setGroupAtUserList (List< String > userIDList)
 

构造及析构函数说明

◆ V2TIMMessage()

V2TIMMessage ( )
inline

成员函数说明

◆ getMsgID()

String getMsgID ( )
inline

获取消息 ID

返回

◆ getTimestamp()

long getTimestamp ( )
inline

获取消息 UTC 时间戳

返回

◆ getSender()

String getSender ( )
inline

获取消息发送者 userID

返回
发送者 userID

◆ getNickName()

String getNickName ( )
inline

获取消息发送者昵称

返回
发送者昵称

◆ getFriendRemark()

String getFriendRemark ( )
inline

获取好友备注。如果没有拉取过好友信息或者不是好友,返回 null

返回
好友备注

◆ getFaceUrl()

String getFaceUrl ( )
inline

获取发送者头像 url

返回
头像 url

◆ getNameCard()

String getNameCard ( )
inline

如果是群组消息,nameCard 为发送者的群名片

返回
群名片

◆ getGroupID()

String getGroupID ( )
inline

如果是群组消息,groupID 为接收消息的群组 ID,否则为 null

返回
群组 ID

◆ getUserID()

String getUserID ( )
inline

如果是单聊消息,userID 为会话用户 ID,否则为 null。 假设自己和 userA 聊天,无论是自己发给 userA 的消息还是 userA 发给自己的消息,这里的 userID 均为 userA

返回

◆ getStatus()

int getStatus ( )
inline

查询消息状态

返回
消息发送状态

◆ getElemType()

int getElemType ( )
inline

消息类型

◆ getTextElem()

V2TIMTextElem getTextElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_TEXT,textElem 会存储文本消息内容

◆ getCustomElem()

V2TIMCustomElem getCustomElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_CUSTOM,customElem 会存储自定义消息内容

◆ getImageElem()

V2TIMImageElem getImageElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_IMAGE,imageElem 会存储图片消息内容

◆ getSoundElem()

V2TIMSoundElem getSoundElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_SOUND,soundElem 会存储语音消息内容

◆ getVideoElem()

V2TIMVideoElem getVideoElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_VIDEO,videoElem 会存储视频消息内容

◆ getFileElem()

V2TIMFileElem getFileElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_FILE,fileElem 会存储文件消息内容

◆ getLocationElem()

V2TIMLocationElem getLocationElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_LOCATION,locationElem 会存储地理位置消息内容

◆ getFaceElem()

V2TIMFaceElem getFaceElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_FACE,faceElem 会存储表情消息内容

◆ getMergerElem()

V2TIMMergerElem getMergerElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_RELAY,relayElem 会存储转发消息内容

◆ getGroupTipsElem()

V2TIMGroupTipsElem getGroupTipsElem ( )
inline

消息类型 为 V2TIM_ELEM_TYPE_GROUP_TIPS,groupTipsElem 会存储群 tips 消息内容

◆ getLocalCustomData()

String getLocalCustomData ( )
inline

获取消息自定义数据(本地保存,不会发送到对端,程序卸载重装后失效)

返回

◆ setLocalCustomData()

void setLocalCustomData ( String  localCustomData)
inline

设置消息自定义数据(本地保存,不会发送到对端,程序卸载重装后失效)

参数
localCustomData

◆ getLocalCustomInt()

int getLocalCustomInt ( )
inline

获取消息自定义数据(本地保存,不会发送到对端,程序卸载重装后失效)

返回

◆ setLocalCustomInt()

void setLocalCustomInt ( int  localCustomInt)
inline

设置消息自定义数据,可以用来标记语音、视频消息是否已经播放(本地保存,不会发送到对端,程序卸载重装后失效)

参数
localCustomInt

◆ setCloudCustomData()

void setCloudCustomData ( String  data)
inline

设置云端自定义数据(云端保存,会发送到对端,程序卸载重装后还能拉取到)

◆ getCloudCustomData()

String getCloudCustomData ( )
inline

获取云端自定义数据

◆ isSelf()

boolean isSelf ( )
inline

消息发送者是否是自己

◆ isRead()

boolean isRead ( )
inline

消息自己是否已读

◆ isPeerRead()

boolean isPeerRead ( )
inline

该字段为 true 的条件是消息 timestamp <= 对端标记会话已读的时间

◆ isNeedReadReceipt()

boolean isNeedReadReceipt ( )
inline

群消息在使用该功能之前,需要先到 IM 控制台设置已读回执支持的群类型

◆ setNeedReadReceipt()

void setNeedReadReceipt ( boolean  needReadReceipt)
inline

消息是否需要已读回执

注意
请注意:

群聊消息 6.1 及以上版本支持该特性,需要您先到 IM 控制台配置支持已读回执的群类型。

单聊消息 6.2 及以上版本支持该特性。

群聊消息和单聊消息都需要购买旗舰版套餐包。

◆ isBroadcastMessage()

boolean isBroadcastMessage ( )
inline

是否是广播消息,仅直播群支持(6.5 及以上版本支持,需要您购买旗舰版套餐)

◆ getPriority()

int getPriority ( )
inline

消息优先级

◆ getOfflinePushInfo()

V2TIMOfflinePushInfo getOfflinePushInfo ( )
inline

消息的离线推送信息

◆ getGroupAtUserList()

List<String> getGroupAtUserList ( )
inline

◆ setGroupAtUserList()

void setGroupAtUserList ( List< String >  userIDList)
inlineprotected

◆ getSeq()

long getSeq ( )
inline

消息的序列号

群聊中的消息序列号云端生成,在群里是严格递增且唯一的。 单聊中的序列号是本地生成,不能保证严格递增且唯一。

返回

◆ getRandom()

long getRandom ( )
inline

消息随机码

◆ isExcludedFromUnreadCount()

boolean isExcludedFromUnreadCount ( )
inline

获取消息是否不计入会话未读数

5.3.425 及以上版本支持

返回
true - 不计入会话未读数,false - 计入会话未读数

◆ setExcludedFromUnreadCount()

void setExcludedFromUnreadCount ( boolean  excludedFromUnreadCount)
inline

消息是否不计入会话未读数:默认为 false,表明需要计入会话未读数,设置为 true,表明不需要计入会话未读数

5.3.425 及以上版本支持, 会议群(Meeting)默认不支持该字段

◆ isExcludedFromLastMessage()

boolean isExcludedFromLastMessage ( )
inline

获取消息是否不计入会话 lastMessage

5.4.666 及以上版本支持

返回
true - 不计入 lastMessage,false - 计入 lastMessage

◆ setExcludedFromLastMessage()

void setExcludedFromLastMessage ( boolean  excludedFromLastMessage)
inline

消息是否不计入会话 lastMsg:默认为 false,表明需要计入会话 lastMsg,设置为 true,表明不需要计入会话 lastMessage

5.4.666 及以上版本支持

◆ isExcludedFromContentModeration()

boolean isExcludedFromContentModeration ( )
inline

获取消息是否不过内容审核(包含【本地审核】和【云端审核】)

7.1 及以上版本支持

只有在开通【本地审核】或【云端审核】功能后,isExcludedFromContentModeration 获取才有效

返回
true - 不过内容审核,false - 过内容审核

◆ setExcludedFromContentModeration()

void setExcludedFromContentModeration ( boolean  excludedFromContentModeration)
inline

消息是否不过内容审核(包含【本地审核】和【云端审核】)

7.1 及以上版本支持

只有在开通【本地审核】或【云端审核】功能后,excludedFromContentModeration 设置才有效,设置为 true,表明不过内容审核,设置为 false:表明过内容审核。

【本地审核】开通流程请参考 本地审核功能

【云端审核】开通流程请参考 云端审核功能

◆ getCustomModerationConfigurationID()

String getCustomModerationConfigurationID ( )
inline

获取消息自定义审核配置 ID

◆ setCustomModerationConfigurationID()

void setCustomModerationConfigurationID ( String  customModerationConfigurationID)
inline

设置消息自定义审核配置 ID(从 7.8 版本开始支持) 在开通【云端审核】功能后,您可以请前往 控制台 (云端审核 -> 审核配置 -> 自定义配置 -> 添加自定义配置) 获取配置 ID。 【自定义审核】配置流程请参考 [云端审核功能](https://cloud.tencent.com/document/product/269/78633a5efc9e8-a7ec-40e3-9b18-8ed1910f589c)

注意
该字段需要发消息前设置,仅用于控制发消息时的消息审核策略,其值不会存储在漫游和本地

◆ isSupportMessageExtension()

boolean isSupportMessageExtension ( )
inline

是否支持消息扩展(6.7 及其以上版本支持,需要您购买旗舰版套餐)

◆ setSupportMessageExtension()

void setSupportMessageExtension ( boolean  supportExtension)
inline

设置支持消息扩展(6.7 及其以上版本支持,需要您购买旗舰版套餐)

直播群(AVChatRoom)消息不支持该功能。 您需要先到 IM 控制台配置该功能。

◆ hasRiskContent()

boolean hasRiskContent ( )
inline

消息是否被标记为有安全风险(7.4 及其以上版本支持)

注意

暂时只支持语音和视频消息。

只有在开通【云端审核】功能后才生效,【云端审核】开通流程请参考 云端审核功能

如果您发送的语音或视频消息内容不合规,云端异步审核后会触发 SDK 的 onRecvMessageModified 回调,回调里的 message 对象该字段值为 true。

◆ getRevokerInfo()

V2TIMUserFullInfo getRevokerInfo ( )
inline

获取消息撤回者(从 7.4 版本开始支持)

返回
消息撤回者
注意
仅当消息为撤回状态时有效

◆ getRevokeReason()

String getRevokeReason ( )
inline

消息撤回原因 (从 7.4 版本开始支持)

返回
消息撤回原因
注意
仅当消息为撤回状态时有效

◆ toString()

String toString ( )
inline

结构体成员变量说明

◆ V2TIM_MSG_STATUS_SENDING

final int V2TIM_MSG_STATUS_SENDING = 1
static

消息发送中

◆ V2TIM_MSG_STATUS_SEND_SUCC

final int V2TIM_MSG_STATUS_SEND_SUCC = 2
static

消息发送成功

◆ V2TIM_MSG_STATUS_SEND_FAIL

final int V2TIM_MSG_STATUS_SEND_FAIL = 3
static

消息发送失败

◆ V2TIM_MSG_STATUS_HAS_DELETED

final int V2TIM_MSG_STATUS_HAS_DELETED = 4
static

消息被删除

◆ V2TIM_MSG_STATUS_LOCAL_IMPORTED

final int V2TIM_MSG_STATUS_LOCAL_IMPORTED = 5
static

导入到本地的消息

◆ V2TIM_MSG_STATUS_LOCAL_REVOKED

final int V2TIM_MSG_STATUS_LOCAL_REVOKED = 6
static

被撤销的消息

◆ V2TIM_PRIORITY_DEFAULT

final int V2TIM_PRIORITY_DEFAULT = 0
static

默认为普通优先级

◆ V2TIM_PRIORITY_HIGH

final int V2TIM_PRIORITY_HIGH = 1
static

高优先级,一般用于礼物等重要消息

◆ V2TIM_PRIORITY_NORMAL

final int V2TIM_PRIORITY_NORMAL = 2
static

普通优先级,一般用于普通消息

◆ V2TIM_PRIORITY_LOW

final int V2TIM_PRIORITY_LOW = 3
static

低优先级,一般用于点赞消息

◆ V2TIM_ELEM_TYPE_NONE

final int V2TIM_ELEM_TYPE_NONE = 0
static

没有元素

◆ V2TIM_ELEM_TYPE_TEXT

final int V2TIM_ELEM_TYPE_TEXT = 1
static

文本消息

◆ V2TIM_ELEM_TYPE_CUSTOM

final int V2TIM_ELEM_TYPE_CUSTOM = 2
static

自定义消息

◆ V2TIM_ELEM_TYPE_IMAGE

final int V2TIM_ELEM_TYPE_IMAGE = 3
static

图片消息

◆ V2TIM_ELEM_TYPE_SOUND

final int V2TIM_ELEM_TYPE_SOUND = 4
static

语音消息

◆ V2TIM_ELEM_TYPE_VIDEO

final int V2TIM_ELEM_TYPE_VIDEO = 5
static

视频消息

◆ V2TIM_ELEM_TYPE_FILE

final int V2TIM_ELEM_TYPE_FILE = 6
static

文件消息

◆ V2TIM_ELEM_TYPE_LOCATION

final int V2TIM_ELEM_TYPE_LOCATION = 7
static

地理位置消息

◆ V2TIM_ELEM_TYPE_FACE

final int V2TIM_ELEM_TYPE_FACE = 8
static

表情消息

◆ V2TIM_ELEM_TYPE_GROUP_TIPS

final int V2TIM_ELEM_TYPE_GROUP_TIPS = 9
static

群 Tips 消息(存消息列表)

◆ V2TIM_ELEM_TYPE_MERGER

final int V2TIM_ELEM_TYPE_MERGER = 10
static

转发消息

◆ V2TIM_RECEIVE_MESSAGE

final int V2TIM_RECEIVE_MESSAGE = 0
static

在线正常接收消息,离线时会进行离线推送

◆ V2TIM_NOT_RECEIVE_MESSAGE

final int V2TIM_NOT_RECEIVE_MESSAGE = 1
static

不会接收到消息

◆ V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE

final int V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE = 2
static

在线正常接收消息,离线不会有推送通知

◆ V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE_EXCEPT_AT

final int V2TIM_RECEIVE_NOT_NOTIFY_MESSAGE_EXCEPT_AT = 3
static

在线正常接收消息,离线只接收@消息的离线推送

◆ V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_READ

final int V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_READ = 0
static

群消息已读成员列表

◆ V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_UNREAD

final int V2TIM_GROUP_MESSAGE_READ_MEMBERS_FILTER_UNREAD = 1
static

群消息未读成员列表