This commit is contained in:
aozhiwei 2020-09-29 15:14:45 +08:00
parent 8fff4a8407
commit 66e478516c

View File

@ -101,7 +101,34 @@ void SyncHelper::SyncGuildMemberUpdate(Guild* guild,
GuildMember* member,
int reason)
{
ss::SS_IM_GuildMemberUpdateRequest* notifymsg = new ss::SS_IM_GuildMemberUpdateRequest;
notifymsg->set_seqid(App::Instance()->NewUUID());
notifymsg->set_guild_id(guild->GuildId());
notifymsg->set_sender_id(member->account_id);
notifymsg->set_target_id(member->account_id);
notifymsg->set_reason(reason);
BroadcastIMConnMsg(*notifymsg);
pending_request_hash_[notifymsg->seqid()] =
a8::Timer::Instance()->AddDeadLineTimer
(
1000 * 10,
a8::XParams()
.SetSender(notifymsg)
.SetParam1(notifymsg->seqid()),
[] (const a8::XParams& param)
{
ss::SS_IM_GuildMemberUpdateRequest* notifymsg =
(ss::SS_IM_GuildMemberUpdateRequest*)param.sender.GetUserData();
SyncHelper::Instance()->SS_IM_GuildMemberUpdateRequest_TimeOut(notifymsg);
},
[] (const a8::XParams& param)
{
ss::SS_IM_GuildMemberUpdateRequest* notifymsg =
(ss::SS_IM_GuildMemberUpdateRequest*)param.sender.GetUserData();
delete notifymsg;
SyncHelper::Instance()->RemovePendingRequest(param.param1);
}
);
}
void SyncHelper::SyncGuildMemberQuit(Guild* guild,