using Google.Protobuf; using Google.Protobuf.WellKnownTypes; using Newtonsoft.Json; using ServerCore; using ServerBase; using ServerCommon; using ServerCommon.BusinessLogDomain; using MetaAssets; namespace GameServer.PacketHandler; [PacketHandler("", typeof(ServerMessage.Types.JoinPartyMemberNoti), typeof(NtfJoinPartyMemberMQPacketHandler), typeof(RabbitMQ4Game))] public class NtfJoinPartyMemberMQPacketHandler : PacketRecvHandler { public override async Task onProcessPacket(ISession session, IMessage recvMessage) { var msg = recvMessage as ServerMessage; ArgumentNullException.ThrowIfNull(msg); Log.getLogger().info($"HandleJoinPartyMemberNoti"); var result = new Result(); var joinMemberInfo = JsonConvert.DeserializeObject(msg.JoinPartyMemberNoti.JoinPartyMemberInfo); if (joinMemberInfo == null) { var err_msg = $"joinMemberInfo is null"; result.setFail(ServerErrorCode.JoiningPartyMemberInfoIsNull, err_msg); Log.getLogger().error(result.toBasicString()); return result; } var handler = new NotifyJoinPartyMemberHandler(); await handler.recvJoinPartyMember(msg.JoinPartyMemberNoti); return new(); } }