예제 #1
0
        public void SendCommand(int installationNo, MonitorEntity_MsgTgt target)
        {
            try
            {
                target.InstallationNo = installationNo;
                MonMsg_H2G msg = new MonMsg_H2G();
                msg.AddTarget(target);

                MonitorExecutionContext ctx = new MonitorExecutionContext()
                {
                    H2GMessage = msg
                };

                MonitorHandlerFactory.Current.Execute(ctx);
            }
            catch (Exception ex)
            {
                Log.Exception(ex);
            }
        }
예제 #2
0
        /// <summary>
        /// TO process GameIdInfo message
        /// </summary>
        /// <param name="request"></param>
        /// <returns></returns>
        private bool ProcessGameIdInfoMessage(MonMsg_G2H request)
        {
            try
            {
                MonTgt_G2H_GIM_GameIDInfo monTgtMsg = request.Targets[0] as MonTgt_G2H_GIM_GameIDInfo;
                if (monTgtMsg == null)
                {
                    return(false);
                }

                int?   installationNo = 0;
                string assetNo        = string.Empty;
                char?  gamePrefix     = '\0';

                if (GIM_DataAccess.GetInstance().InsertGMULogin(monTgtMsg, request.IpAddress, ref installationNo, ref assetNo, ref gamePrefix))
                {
                    MonMsg_H2G monH2G_Msg = new MonMsg_H2G();
                    MonTgt_H2G_GIM_GameIDInfo monH2G_GameIdInfo_Msg = new MonTgt_H2G_GIM_GameIDInfo();

                    monH2G_Msg.FaultSource    = Convert.ToInt32(FaultSource.GIM_Event);
                    monH2G_Msg.FaultType      = Convert.ToInt32(FaultType_GIM.Game_Id_Info_H2G);
                    monH2G_Msg.IpAddress      = request.IpAddress;
                    monH2G_Msg.InstallationNo = installationNo.GetValueOrDefault();

                    monH2G_GameIdInfo_Msg.SourceAddress   = new System.Net.IPAddress(Convert.ToByte(request.IpAddress));
                    monH2G_GameIdInfo_Msg.AssetNumber     = assetNo;
                    monH2G_GameIdInfo_Msg.PokerGamePrefix = gamePrefix.ToString();

                    monH2G_Msg.AddTarget(monH2G_GameIdInfo_Msg);
                    this.ProcessH2GMessage(monH2G_Msg);
                    return(true);
                }
                return(false);
            }
            catch (Exception ex)
            {
                Log.Exception(ex);
                return(false);
            }
        }