TencentImPlugin class
Properties
-
hashCode
→ int
-
The hash code for this object.
no setterinherited
-
runtimeType
→ Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
noSuchMethod(Invocation invocation)
→ dynamic
-
Invoked when a nonexistent method or property is accessed.
inherited
-
toString()
→ String
-
A string representation of this object.
inherited
Static Methods
-
accept({required String inviteID, required String data})
→ Future<String?>
-
接收方接收邀请
inviteID 邀请ID
data 自定义数据
-
acceptFriendApplication({required FindFriendApplicationEntity application, required FriendApplicationAgreeTypeEnum responseType})
→ Future<FriendOperationResultEntity>
-
同意好友申请
application 查找好友申请对象实体
responseType 建立关系类型
-
acceptGroupApplication({required FindGroupApplicationEntity application, String reason = ""})
→ dynamic
-
同意某一条加群申请
application 申请对象
reason 理由
-
addFriend({required FriendAddApplicationEntity info})
→ Future<FriendOperationResultEntity>
-
添加好友
info 申请对象
-
addFriendsToFriendGroup({required String groupName, required List<String> userIDList})
→ Future<List<FriendOperationResultEntity>>
-
添加好友到分组
groupName 组名
userIDList 好友ID
-
addInvitedSignaling({required SignalingInfoEntity info})
→ dynamic
-
添加邀请信令(可以用于群离线推送消息触发的邀请信令)
info 信令信息对象
-
addListener(TencentImListenerValue func)
→ dynamic
-
添加消息监听
-
addToBlackList({required List<String> userIDList})
→ Future<List<FriendOperationResultEntity>>
-
添加用户到黑名单
userIDList 用户ID列表
-
cancel({required String inviteID, required String data})
→ Future<String?>
-
邀请方取消邀请
inviteID 邀请ID
data 自定义数据
-
checkFriend({required String userID, required FriendTypeEnum checkType})
→ Future<FriendCheckResultEntity>
-
检查好友关系
userID 用户ID
checkType 检测类型类型
-
createFriendGroup({required String groupName, required List<String> userIDList})
→ Future<List<FriendOperationResultEntity>>
-
新建好友分组
groupName 组名
userIDList 用户列表
-
createGroup({required GroupInfoEntity info, List<GroupCreateMemberEntity>? memberList})
→ Future<String?>
-
创建群,
info对象建议使用GroupInfoEntity.create,进行创建
info 群信息对象
memberList 指定初始的群成员(直播群 AVChatRoom 不支持指定初始群成员,memberList 请传 null)
Return 群ID
-
deleteConversation({String? conversationID, String? userID, String? groupID})
→ dynamic
-
删除会话(
conversationID | userID | groupID 参数三选一)
conversationID 会话ID
userID 用户ID
groupID 群ID
-
deleteFriendApplication({required FindFriendApplicationEntity application})
→ dynamic
-
删除好友申请
application 查找好友申请对象实体
-
deleteFriendGroup({required List<String> groupNameList})
→ dynamic
-
删除好友分组
groupNameList 分组名称
-
deleteFriendsFromFriendGroup({required String groupName, required List<String> userIDList})
→ Future<List<FriendOperationResultEntity>>
-
从分组中删除好友
groupName 组名
userIDList 好友ID
-
deleteFromBlackList({required List<String> userIDList})
→ Future<List<FriendOperationResultEntity>>
-
从黑名单中删除
userIDList 用户ID列表
-
deleteFromFriendList({required List<String> userIDList, required FriendTypeEnum deleteType})
→ Future<List<FriendOperationResultEntity>>
-
删除好友
userIDList 好友ID列表,ID 建议一次最大 100 个,因为数量过多可能会导致数据包太大被后台拒绝,后台限制数据包最大为 1M
deleteType 删除类型
-
deleteGroupAttributes({required String groupID, List<String>? keys})
→ dynamic
-
删除指定群属性,keys 传 null 则清空所有群属性。
groupID 群ID
keys 群属性Key,keys 传 null 则清空所有群属性。
-
deleteMessageFromLocalStorage({required FindMessageEntity message})
→ dynamic
-
删除本地消息
message 消息对象
-
deleteMessages({required List<FindMessageEntity> message})
→ dynamic
-
删除本地及漫游消息
该接口会删除本地历史的同时也会把漫游消息即保存在服务器上的消息也删除,卸载重装后无法再拉取到。需要注意的是:
-
dismissGroup({required String groupID})
→ dynamic
-
解散群
groupID 群ID
-
downloadFile({required FindMessageEntity message, required String path})
→ dynamic
-
下载视频
message 消息对象
path 下载路径
-
downloadSound({required FindMessageEntity message, required String path})
→ dynamic
-
下载语音
message 消息对象
path 下载路径
-
downloadVideo({required FindMessageEntity message, required String path})
→ dynamic
-
下载视频
message 消息对象
path 下载路径
-
downloadVideoThumbnail({required FindMessageEntity message, required String path})
→ dynamic
-
下载视频缩略图
message 消息对象
path 下载路径
-
findMessages({required List<FindMessageEntity> messages})
→ Future<List<MessageEntity>>
-
查找消息列表
messages 需要获得的消息查找对象
-
getBlackList()
→ Future<List<FriendInfoEntity>>
-
获得黑名单列表
-
getC2CHistoryMessageList({required String userID, required int count, FindMessageEntity? lastMsg})
→ Future<List<MessageEntity>>
-
获得单聊历史记录
userId 用户ID
count 拉取消息的个数,不宜太多,会影响消息拉取的速度,这里建议一次拉取 20 个
lastMsg 获取消息的起始消息,如果传 null,起始消息为会话的最新消息
-
getConversation({String? conversationID, String? userID, String? groupID})
→ Future<ConversationEntity>
-
获得指定会话(
conversationID | userID | groupID 参数三选一)
conversationID 会话ID
userID 用户ID
groupID 群ID
-
getConversationList({int nextSeq = 0, int count = 100})
→ Future<ConversationResultEntity>
-
获取会话列表
nextSeq 分页拉取的游标,第一次默认取传 0,后续分页拉传上一次分页拉取成功回调里的 nextSeq
count 分页拉取的个数,一次分页拉取不宜太多,会影响拉取的速度,建议每次拉取 100 个会话
-
getFriendApplicationList()
→ Future<FriendApplicationResultEntity>
-
获取好友申请列表
-
getFriendGroups({List<String>? groupNameList})
→ Future<List<FriendGroupEntity>>
-
获取分组信息
groupNameList 分组名称
-
getFriendList()
→ Future<List<FriendInfoEntity>>
-
获得好友列表
-
getFriendsInfo({required List<String> userIDList})
→ Future<List<FriendInfoResultEntity>>
-
获得指定好友信息
userIDList 好友ID列表
-
getGroupApplicationList()
→ Future<GroupApplicationResultEntity>
-
获取加群的申请列表
-
getGroupAttributes({required String groupID, List<String>? keys})
→ Future<Map<String, String>>
-
获取指定群属性,keys 传 null 则获取所有群属性。
groupID 群ID
keys 群属性Key,keys 传 null 则清空所有群属性。
-
getGroupHistoryMessageList({required String groupID, required int count, FindMessageEntity? lastMsg})
→ Future<List<MessageEntity>>
-
获得群聊历史记录
groupID 群ID
count 拉取消息的个数,不宜太多,会影响消息拉取的速度,这里建议一次拉取 20 个
lastMsg 获取消息的起始消息,如果传 null,起始消息为会话的最新消息
-
getGroupMemberList({required String groupID, GroupMemberFilterEnum filter = GroupMemberFilterEnum.All, int nextSeq = 0})
→ Future<GroupMemberInfoResultEntity>
-
获取群成员列表。
groupID 群ID
filter 指定群成员类型
nextSeq 分页拉取标志,第一次拉取填0,回调成功如果 nextSeq 不为零,需要分页,传入再次拉取,直至为0。
-
getGroupMembersInfo({required String groupID, required List<String> memberList})
→ Future<List<GroupMemberEntity>>
-
获取指定的群成员资料。
groupID 群ID
memberList 群成员列表
-
getGroupOnlineMemberCount({required String groupID})
→ Future<int>
-
获取指定群在线人数
groupID 群ID
-
getGroupsInfo({required List<String> groupIDList})
→ Future<List<GroupInfoResultEntity>>
-
拉取群资料
groupIDList 群ID列表
-
getHistoryMessageList({String? userID, String? groupID, required int count, GetMessageTypeEnum type = GetMessageTypeEnum.GetCloudOlderMsg, FindMessageEntity? lastMsg})
→ Future<List<MessageEntity>>
-
获取历史消息高级接口
userID 用户ID
groupID 群聊ID
count 拉取消息的个数,不宜太多,会影响消息拉取的速度,这里建议一次拉取 20 个
lastMsg 获取消息的起始消息,如果传 null,起始消息为会话的最新消息
type 拉取消息类型,可以设置拉取本地、云端更老或则更新的消息。
-
getJoinedGroupList()
→ Future<List<GroupInfoEntity>>
-
获取已经加入的群列表(不包括已加入的直播群)
-
getLoginStatus()
→ Future<LoginStatusEnum>
-
获得用户登录状态
Return 用户当前登录状态
-
getLoginUser()
→ Future<String?>
-
获得当前登录用户
Return 当前用户ID
-
getServerTime()
→ Future<int>
-
获取服务器当前时间
Return 服务器时间,单位 s
-
getSignalingInfo({required FindMessageEntity message})
→ Future<SignalingInfoEntity>
-
获取信令信息
message 消息对象
Return V2TIMSignalingInfo 信令信息,如果为 null,则 msg 不是一条信令消息。
-
getUsersInfo({required List<String> userIDList})
→ Future<List<UserEntity>>
-
获取用户资料
userList 用户ID列表
-
getVersion()
→ Future<String>
-
获取SDK版本
Return SDK版本
-
initGroupAttributes({required String groupID, required Map<String, String> attributes})
→ dynamic
-
初始化群属性,会清空原有的群属性列表
groupID 群ID
attributes 群属性
-
initSDK({required String appid, LogPrintLevel logPrintLevel = LogPrintLevel.error})
→ dynamic
-
初始化SDK
appid 应用ID
logPrintLevel 日志打印级别
-
insertGroupMessageToLocalStorage({required String groupID, required String sender, required MessageNode node})
→ dynamic
-
向群组消息列表中添加一条消息
groupID 群ID
sender 发送人
message 消息对象
-
invite({required String invitee, required String data, OfflinePushInfoEntity? offlinePushInfo, bool onlineUserOnly = false, int timeout = 0})
→ Future<String?>
-
邀请某个人
invitee 被邀请人用户 ID
data 自定义数据
onlineUserOnly 是否只有在线用户才能收到邀请,如果设置为 true,只有在线用户才能收到, 并且 invite 操作也不会产生历史消息(针对该次 invite 的后续 cancel、accept、reject、timeout 操作也同样不会产生历史消息)。
offlinePushInfo 离线推送信息,其中 desc 为必填字段,推送的时候会默认展示 desc 信息。
timeout 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发 onInvitationTimeout 回调
Return 邀请 ID,如果邀请失败,返回 null
-
inviteInGroup({required String groupID, required List<String> inviteeList, required String data, bool onlineUserOnly = false, int timeout = 0})
→ Future<String?>
-
邀请群内的某些人
groupID 发起邀请所在群组
inviteeList 被邀请人列表,inviteeList 必须已经在 groupID 群里,否则邀请无效
data 自定义数据
onlineUserOnly 是否只有在线用户才能收到邀请,如果设置为 true,只有在线用户才能收到, 并且 invite 操作也不会产生历史消息(针对该次 invite 的后续 cancel、accept、reject、timeout 操作也同样不会产生历史消息)。
timeout 超时时间,单位秒,如果设置为 0,SDK 不会做超时检测,也不会触发 onInvitationTimeout 回调
Return 邀请 ID,如果邀请失败,返回 null
-
inviteUserToGroup({required String groupID, required List<String> userList})
→ Future<List<GroupMemberOperationResultEntity>>
-
邀请他人入群
groupID 群ID
userList 用户ID列表
-
joinGroup({required String groupID, required String message})
→ dynamic
-
加入群
groupID 群ID
message 描述
-
kickGroupMember({required String groupID, required List<String> memberList, String reason = ""})
→ Future<List<GroupMemberOperationResultEntity>>
-
踢人
groupID 群ID
memberList 群成员ID列表
reason 理由
-
login({required String userID, required String userSig})
→ dynamic
-
登录腾讯云IM
userID 用户ID
userSig 用户签名
-
logout()
→ dynamic
-
退出登录腾讯云IM
-
markC2CMessageAsRead({required String userID})
→ dynamic
-
设置单聊已读
groupID 群ID
-
markGroupMessageAsRead({required String groupID})
→ dynamic
-
设置群聊已读
groupID 群ID
-
markMessageAsRead({String? userID, String? groupID})
→ dynamic
-
设置聊天记录为已读,此为 markC2CMessageAsRead 和 markGroupMessageAsRead 的封装
userID 用户ID
groupID 群ID
-
muteGroupMember({required String groupID, required String userID, required int seconds})
→ dynamic
-
禁言(只有管理员或群主能够调用)。
groupID 群ID
userID 用户ID
seconds 禁言时长
-
quitGroup({required String groupID})
→ dynamic
-
退出群
groupID 群ID
-
refuseFriendApplication({required FindFriendApplicationEntity application})
→ Future<FriendOperationResultEntity>
-
拒绝好友申请
application 查找好友申请对象实体
-
refuseGroupApplication({required FindGroupApplicationEntity application, String reason = ""})
→ dynamic
-
拒绝某一条加群申请
application 申请对象
reason 理由
-
reject({required String inviteID, required String data})
→ Future<String?>
-
接收方拒绝邀请
inviteID 邀请ID
data 自定义数据
-
removeListener(TencentImListenerValue func)
→ dynamic
-
移除消息监听
-
renameFriendGroup({required String oldName, required String newName})
→ dynamic
-
修改分组名称
oldName 旧名称
newName 新名称
-
resendMessage({required FindMessageEntity message, String? receiver, String? groupID, bool ol = false, int? localCustomInt, String? localCustomStr, MessagePriorityEnum priority = MessagePriorityEnum.Default, OfflinePushInfoEntity? offlinePushInfo})
→ Future<String?>
-
重发消息
message 消息查找对象
receiver 消息接收者的 userID, 如果是发送 C2C 单聊消息,只需要指定 receiver 即可。
groupID 目标群组 ID,如果是发送群聊消息,只需要指定 groupID 即可。
ol 是否为在线消息(无痕),如果为true,将使用 sendOnlineMessage 通道进行消息发送
localCustomInt 自定义Int
localCustomStr 自定义Str
priority 消息优先级,仅针对群聊消息有效。请把重要消息设置为高优先级(比如红包、礼物消息),高频且不重要的消息设置为低优先级(比如点赞消息)。
offlinePushInfo 离线推送时携带的标题和内容。
Return 消息ID
-
revokeMessage({required FindMessageEntity message})
→ dynamic
-
撤回消息
message 消息查找对象
-
sendMessage({String? receiver, String? groupID, required MessageNode node, bool ol = false, int? localCustomInt, String? localCustomStr, MessagePriorityEnum priority = MessagePriorityEnum.Default, OfflinePushInfoEntity? offlinePushInfo})
→ Future<String?>
-
发送消息
receiver 消息接收者的 userID, 如果是发送 C2C 单聊消息,只需要指定 receiver 即可。
groupID 目标群组 ID,如果是发送群聊消息,只需要指定 groupID 即可。
ol 是否为在线消息(无痕),如果为true,将使用 sendOnlineMessage 通道进行消息发送
localCustomInt 自定义Int
localCustomStr 自定义Str
node 消息节点
priority 消息优先级,仅针对群聊消息有效。请把重要消息设置为高优先级(比如红包、礼物消息),高频且不重要的消息设置为低优先级(比如点赞消息)。
offlinePushInfo 离线推送时携带的标题和内容。
Return 消息ID
-
setConversationDraft({String? conversationID, String? userID, String? groupID, String? draftText})
→ dynamic
-
设置会话草稿(
conversationID | userID | groupID 参数三选一)
conversationID 会话ID
userID 用户ID
groupID 群ID
draftText 草稿内容,null代表取消设置
-
setFriendApplicationRead()
→ dynamic
-
设置好友申请为已读
-
setFriendInfo({required FriendInfoEntity info})
→ dynamic
-
设置好友资料
info 好友资料
-
setGroupApplicationRead()
→ dynamic
-
标记申请列表为已读
-
setGroupAttributes({required String groupID, required Map<String, String> attributes})
→ dynamic
-
设置群属性。已有该群属性则更新其 value 值,没有该群属性则添加该属性。
groupID 群ID
attributes 群属性
-
setGroupInfo({required GroupInfoEntity info})
→ dynamic
-
修改群资料
info 群信息
-
setGroupMemberInfo({required String groupID, required GroupMemberEntity info})
→ dynamic
-
修改指定的群成员资料。
groupID 群ID
info 群成员对象
-
setGroupMemberRole({required String groupID, required String userID, required GroupMemberRoleEnum role})
→ dynamic
-
切换群成员的角色。
groupID 群ID
userID 用户ID
role 角色
-
setMessageLocalCustomInt({required FindMessageEntity message, required int data})
→ dynamic
-
设置消息本地Int
message 消息对象
data 数据对象
-
setMessageLocalCustomStr({required FindMessageEntity message, required String data})
→ dynamic
-
设置消息本地Str
message 消息对象
data 数据对象
-
setOfflinePushConfig({required String token, required int bussid})
→ dynamic
-
设置离线推送Token,Android使用setOfflinePushConfig,IOS使用setAPNS
token Token
bussid 推送证书 ID,是在 IM 控制台上生成的
-
setReceiveMessageOpt({required String groupID, required GroupReceiveMessageOptEnum opt})
→ dynamic
-
修改群消息接收选项
groupID 群ID
opt 消息接收选项
-
setSelfInfo({required UserEntity info})
→ dynamic
-
修改个人资料,注意:此接口调用后马上调用 getUsersInfo 可能会刷新不及时,可以使用Future.
info 资料对象
-
setUnreadBadge({required int number})
→ dynamic
-
设置未读桌标,Android使用doBackground,IOS更改setAPNSListener值
number 桌标数量
-
transferGroupOwner({required String groupID, required String userID})
→ dynamic
-
转让群主
groupID 群ID
userID 用户ID
-
unInitSDK()
→ dynamic
-
反初始化SDK