logout (点击查看详情) 退出登录,但长连接中断的状态。通常情况下,此时可以接收到离线推送的消息。logout 退出登录。SetSelfStatus(点击查看详情) 设置 current_user_status 字段来设置自己的自定义状态。
如果您提前调用 SetUserStatusChangedCallback(点击查看详情) 添加了 SDK 监听器,设置成功后会触发 UserStatusChangedCallback(点击查看详情)回调。SetSelfStatus 接口时,设置 current_user_status 为空来主动清除状态。SetSelfStatus 不需要升级到专业版、专业版Plus或企业版,也无需开启控制台开关。// 设置用户状态UserStatus status = new UserStatus{user_status_identifier = "userID",user_status_status_type = TIMUserStatusType.kTIMUserStatusType_Online};TIMResult res = TencentIMSDK.SetSelfStatus(status, (int code, string desc, string result, string user_data)=>{// 设置用户状态异步结果});
GetUserStatus,设置 identifier_array 仅包含自己的 userID,可查询自己的状态。// 查询用户状态TIMResult res = TencentIMSDK.GetUserStatus(new List<string> {"userID1"}, (int code, string desc, List<UserStatus> results, string user_data)=>{// 查询用户状态异步结果});
identifier_array 为其他人的 userID 列表,可查询其他人的状态。GetUserStatus 会报错。

UserStatusChangedCallback 回调。详情请参见下文的 状态变更通知。UserStatusChangedCallback 回调中收到所有好友的状态变更通知。
好友状态自动通知开关如下图所示:

SubscribeUserStatus 主动订阅。订阅后可以在 UserStatusChangedCallback 回调中所订阅的好友的状态变更通知。SubscribeUserStatus 会报错。

// 订阅用户状态TIMResult res = TencentIMSDK.SubscribeUserStatus(new List<string> {"userID1"}, (int code, string desc, string result, string user_data)=>{// 订阅用户状态异步结果});
// 取消订阅用户状态TIMResult res = TencentIMSDK.UnsubscribeUserStatus(new List<string> {"userID1"}, (int code, string desc, string result, string user_data)=>{// 取消订阅用户状态异步结果});
SetUserStatusChangedCallback 添加了 SDK 监听器,设置成功后,当自己的状态发生变更时,会触发 UserStatusChangedCallback 回调,您可以在其中获取到自己的最新状态。UserStatusChangedCallback 回调。SubscribeUserStatus 主动订阅好友状态。当好友的状态发生变更时,会自动触发 UserStatusChangedCallback 回调。
SubscribeUserStatus 的使用有限制,参考上文 订阅用户状态。SubscribeUserStatus 主动订阅好友状态,那么当好友状态发生变更时,您将无法感知到。SubscribeUserStatus 主动订阅。当该用户状态发生变更时,会触发 UserStatusChangedCallback 回调。
SubscribeUserStatus 的使用有限制,参考上文 订阅用户状态。//设置用户状态变更通知回调TencentIMSDK.SetUserStatusChangedCallback((List<UserStatus> json_user_status_array, string user_data)=>{// 处理回调逻辑});
UserStatusChangedCallback (点击查看详情) 通知。SetSelfStatus 接口不限制专业版、专业版Plus或企业版。GetUserStatus 查询自己的状态,不限制专业版、专业版Plus或企业版。GetUserStatus 除了查询自己外的其他能力,均需要升级到专业版、专业版Plus或企业版。SubscribeUserStatus / UnsubscribeUserStatus 接口的所有能力,均需要升级到专业版、专业版Plus或企业版。SetSelfStatus 接口不限频。GetUserStatus 查询自己的状态,不限频。GetUserStatus 除了查询自己的状态外,默认限制 5 秒 20 次请求,单次查询最大用户数不超过 500。SubscribeUserStatus 接口,默认限制 5 秒 20 次请求,单次订阅最大用户数不超过 100。UnsubscribeUserStatus 接口,默认限制 5 秒 20 次请求,单次取消订阅最大用户数不超过 100。文档反馈