7 #ifndef _NIM_SDK_CPP_TEAM_H_
8 #define _NIM_SDK_CPP_TEAM_H_
26 class NIM_SDK_CPPWRAPPER_DLL_API
Team {
30 typedef std::function<void(
int team_count,
const std::list<nim::TeamInfo>& team_info_list)>
32 typedef std::function<void(
int count,
const std::list<nim::TeamMemberProperty>& all_my_member_info_list)>
34 typedef std::function<void(
const std::string& tid,
int member_count,
const std::list<TeamMemberProperty>& props)>
38 typedef std::function<void(NIMResCode error_code,
const std::string& tid,
const std::list<TeamMemberProperty>& team_member_propertys)>
40 typedef std::function<void(NIMResCode,
const std::string&,
const std::map<std::string, std::string>&)>
44 typedef std::function<void(
const std::list<std::string>& success_ids,
const std::list<std::string>& failure_ids)>
46 typedef std::function<void(
const std::string& tid,
47 const std::list<std::string>& success_ids,
48 const std::list<std::string>& failure_ids,
49 const std::list<std::string>& ignored_ids)>
50 TeamMsgAckReadCallback;
51 typedef std::function<void(NIMResCode error_code,
const std::list<nim::TeamInfo>& team_info_list,
const std::list<std::string>& fail_list)>
59 static void RegTeamEventCb(
const TeamEventCallback& cb,
const std::string& json_extension =
"");
79 static bool CreateTeamAsync(
const TeamInfo& team_info,
80 const std::list<std::string>& ids,
81 const std::string& invitation_postscript,
83 const std::string& json_extension =
"");
104 static bool InviteAsync(
const std::string& tid,
105 const std::list<std::string>& ids,
106 const std::string& invitation_postscript,
108 const std::string& json_extension =
"");
131 static bool InviteAsync2(
const std::string& tid,
132 const std::list<std::string>& ids,
133 const std::string& invitation_postscript,
134 const std::string& invitation_attachment,
136 const std::string& json_extension =
"");
155 static bool KickAsync(
const std::string& tid,
156 const std::list<std::string>& ids,
158 const std::string& json_extension =
"");
170 static bool LeaveAsync(
const std::string& tid,
const TeamEventCallback& cb,
const std::string& json_extension =
"");
182 static bool DismissAsync(
const std::string& tid,
const TeamEventCallback& cb,
const std::string& json_extension =
"");
198 static bool UpdateTeamInfoAsync(
const std::string& tid,
201 const std::string& json_extension =
"");
221 static bool ApplyJoinAsync(
const std::string& tid,
222 const std::string& reason,
224 const std::string& json_extension =
"");
244 static bool PassJoinApplyAsync(
const std::string& tid,
245 const std::string& applicant_id,
247 const std::string& json_extension =
"");
267 static bool RejectJoinApplyAsync(
const std::string& tid,
268 const std::string& applicant_id,
269 const std::string& reason,
271 const std::string& json_extension =
"");
288 static bool AddManagersAsync(
const std::string& tid,
289 const std::list<std::string>& ids,
291 const std::string& json_extension =
"");
308 static bool RemoveManagersAsync(
const std::string& tid,
309 const std::list<std::string>& ids,
311 const std::string& json_extension =
"");
331 static bool TransferTeamAsync(
const std::string& tid,
332 const std::string& new_owner_id,
335 const std::string& json_extension =
"");
379 static bool AcceptInvitationAsync(
const std::string& tid,
380 const std::string& invitor_id,
382 const std::string& json_extension =
"");
401 static bool RejectInvitationAsync(
const std::string& tid,
402 const std::string& invitor_id,
403 const std::string& reason,
405 const std::string& json_extension =
"");
441 static bool QueryTeamMembersAsync(
const std::string& tid,
const QueryTeamMembersCallback& cb,
const std::string& json_extension =
"");
454 static bool QueryTeamMemberAsync(
const std::string& tid,
455 const std::string&
id,
457 const std::string& json_extension =
"");
465 static TeamMemberProperty QueryTeamMemberBlock(
const std::string& tid,
const std::string&
id);
474 static bool QueryTeamInfoAsync(
const std::string& tid,
const QueryTeamInfoCallback& cb,
const std::string& json_extension =
"");
481 static TeamInfo QueryTeamInfoBlock(
const std::string& tid);
492 static bool QueryTeamInfoOnlineAsync(
const std::string& tid,
const TeamEventCallback& cb,
const std::string& json_extension =
"");
500 static bool ParseTeamInfo(
const std::string& json_team_info,
TeamInfo& team_info);
506 static void UnregTeamCb();
526 static bool MuteMemberAsync(
const std::string& tid,
527 const std::string& member_id,
530 const std::string& json_extension =
"");
554 static bool MuteAsync(
const std::string& tid,
bool set_mute,
const TeamEventCallback& cb,
const std::string& json_extension =
"");
569 static void TeamMsgAckRead(
const std::string& tid,
570 const std::list<IMMessage>& msgs,
572 const std::string& json_extension =
"");
587 static void TeamMsgAckReadEx(
const std::string& tid,
588 const std::list<IMMessage>& msgs,
589 const TeamMsgAckReadCallback& cb,
590 const std::string& json_extension =
"");
605 static void TeamMsgQueryUnreadList(
const std::string& tid,
608 const std::string& json_extension =
"");
625 static void TeamMsgQueryUnreadList(
const std::string& tid,
627 const std::list<std::string>& accids,
629 const std::string& json_extension =
"");
650 static bool QueryTeamInfoByKeywordAsync(
const std::string& keyword,
const QueryTeamsInfoCallback& cb,
const std::string& json_extension =
"");
664 static void UpdateTInfoLocal(
const std::list<TeamInfo>& team_infos,
const UpdateTInfoLocalCallback& cb,
const std::string& json_extension =
"");
691 #endif //_NIM_SDK_CPP_TEAM_H_