예제 #1
0
 protected override IMonitorEntity_MsgTgt CreateMonitorTarget(IMonitorEntity parent, IFreeformEntity_MsgTgt request)
 {
     FFTgt_G2H_GIM_GameIDInfo tgtSrc = request as FFTgt_G2H_GIM_GameIDInfo;
     if (tgtSrc != null)
     {
         MonTgt_G2H_GIM_GameIDInfo tgtDest = new MonTgt_G2H_GIM_GameIDInfo()
         {
             GMUNumber = tgtSrc.GMUNumber,
             AssetNumber = tgtSrc.AssetNumber,
             ManufacturerID = tgtSrc.ManufacturerID,
             SerialNumber = tgtSrc.SerialNumber,
             MACAddress = tgtSrc.MACAddress,
             SASVersion = tgtSrc.SASVersion,
             GMUVersion = tgtSrc.GMUVersion
         };
         return tgtDest;
     }
     return null;
 }
예제 #2
0
        protected override IMonitorEntity_MsgTgt CreateMonitorTarget(IMonitorEntity parent, IFreeformEntity_MsgTgt request)
        {
            FFTgt_G2H_GIM_GameIDInfo tgtSrc = request as FFTgt_G2H_GIM_GameIDInfo;

            if (tgtSrc != null)
            {
                MonTgt_G2H_GIM_GameIDInfo tgtDest = new MonTgt_G2H_GIM_GameIDInfo()
                {
                    GMUNumber      = tgtSrc.GMUNumber,
                    AssetNumber    = tgtSrc.AssetNumber,
                    ManufacturerID = tgtSrc.ManufacturerID,
                    SerialNumber   = tgtSrc.SerialNumber,
                    MACAddress     = tgtSrc.MACAddress,
                    SASVersion     = tgtSrc.SASVersion,
                    GMUVersion     = tgtSrc.GMUVersion
                };
                return(tgtDest);
            }
            return(null);
        }
예제 #3
0
        static void Main(string[] args)
        {
            Console.Title = "ExCommsServer Testing";
            Console.SetWindowSize(80, 58);

            BMCRegistryHelper.ActiveInstallationType = BMCCategorizedInstallationTypes.Exchange;
            Log.AddAppFileLoggingSystem();
            Log.GlobalWriteToExternalLog += Log_GlobalWriteToExternalLog;

            TestPIDData();
            //MonMsg_H2G monH2G = new MonMsg_H2G();
            //MonTgt_H2G_AckNack nack = new MonTgt_H2G_AckNack();
            //nack.Nack = true;
            //monH2G.AddTarget(nack);
            //var msg2 = MonitorEntityFactory.CreateEntity(monH2G);
            //var ffBuffer = FreeformEntityFactory.CreateBuffer(msg2);

            var configStore = ExMonitorServerConfigStoreFactory.Store;
            var cat = ErrorEventCategoryFactory.Categories;

            string barcode = "889900027000052237";
            TicketIDInfo idInfo = new TicketIDInfo(barcode);
            int seqno = idInfo.SequenceNumber;
            //byte[] packed = FreeformHelper.GetBCDToBytes(sUnpacked, sUnpacked.Length / 2);
            //string sUnpacked2 = packed.GetBCDValueString(0, 0, 9);
            
            

            //EncryptSecurity();

            //var dr = ExCommsDataContext.Current.GetMeterDeltaForPlayerSession(27, "1000012345", "IR");
            //ExecutionStepsTest();
            //return;

            //ExCommsHostingModuleTypeHelper.Current.SetAll();
            //_server = new ExCommsServerImpl(ExecutorServiceFactory.CreateExecutorService());
            //_server.Start();
            IExecutorService exec = ExecutorServiceFactory.CreateExecutorService();
            //ExecutionStepFactory.Initialize(exec, false, ExecutionStepDeviceTypes.GMU);
            //FFMsgHandlerFactory.Initialize(exec, FFTgtHandlerDeviceTypes.GMU, () =>
            //{
            //    return new FFMsgTransmitter();
            //});
            MonTgt_G2H_GIM_GameIDInfo target = new MonTgt_G2H_GIM_GameIDInfo();
            MonTgt_G2H_GVA_TED_Request r = new MonTgt_G2H_GVA_TED_Request();
            //TestGIM();

            //Console.ForegroundColor = ConsoleColor.Cyan;
            //GenerateKeys(SECURITY_KEY_INDEX.TICKET_KEY, IPADDR);
            //GenerateKeys(SECURITY_KEY_INDEX.EFT_KEY, IPADDR);
            //Console.ForegroundColor = ConsoleColor.Yellow;
            Console.WriteLine("Start ExComms Server?");
            Console.ResetColor();
            string anser = "y";// Console.ReadLine();

            if (anser == "y")
            {
                var activators =
                    MEFHelper.GetExportedValues<IExCommsServerHostFactoryActivator>();

                ExCommsServerHostFactoryActivatorFactory factory = new ExCommsServerHostFactoryActivatorFactory(exec,
                    ExCommsHostingModuleType.CommunicationServer |
                    ExCommsHostingModuleType.MonitorServer4CommsServer |
                    ExCommsHostingModuleType.MonitorServer4MonProcessor
                    ,
                    activators);
                factory.Start();
            }

            long ticks = DateTime.Now.Ticks;
            byte[] lohi = FFDataTypeHelper.GetInt64Bytes(ticks, FFEndianType.LittleEndian);
            //TestGIM();

            while (true)
            {
                Console.ForegroundColor = ConsoleColor.Yellow;
                Console.WriteLine("Press any key to continue...");
                Console.ResetColor();
                string s = Console.ReadLine();
                if (s == "q") return;

                //TestEncryptedTicketMessage();
                //InitKeyExchangeStart();
                //if (s == "k1") InitKeyExchangeStartG2H();
                //if (s == "k2") InitKeyExchangeEnd();
                //if (s == "t") GenerateKeys(SECURITY_KEY_INDEX.TICKET_KEY);
                //if (s == "e") GenerateKeys(SECURITY_KEY_INDEX.EFT_KEY);
                if (s == "g") ExecutionStepsTest();
                if (s == "ss") EncryptSecurity();
                if (s == "pci") TestPlayerCardIn();
                if (s == "pco") TestPlayerCardOut();
                if (s == "bal") TestECashBalanceRequest();
            }
            //TestKeyExchangePartialKey();
            return;

            //short sval = 9999;
            //short ss1 = sval;
            //List<byte> ll = new List<byte>();
            //while (true)
            //{
            //    byte b1 = (byte)(ss1 % 10);
            //    ll.Add(b1);
            //    ss1 /= 10;
            //}

            byte[] b1234 = new byte[] { 0x12, 0x34, 0x56, 0x78 };
            ulong u = b1234.GetBytesToBCDUInt64(0, 4);
            int v = 99999;
            byte b1 = (byte)(v & 0x0F);
            byte b2 = (byte)((v >> 4) & 0x0F);
            byte[] buf = "1000500026".GetBCDToBytes(5);
            byte[] iv = FFDataTypeHelper.GetInt32Bytes(99999, FFEndianType.LittleEndian);
            byte[] sb1 = FFDataTypeHelper.GetInt16Bytes(9999, FFEndianType.LittleEndian);
            byte[] sb2 = FFDataTypeHelper.GetInt16Bytes(9999, FFEndianType.BigEndian);
            short s1 = FFDataTypeHelper.GetInt16(sb1, FFEndianType.LittleEndian);
            short s2 = FFDataTypeHelper.GetInt16(sb2, FFEndianType.BigEndian);

            string cc = "1A345";
            byte[] b = cc.GetHexBytesValue(2);
            //FF_AppId_SessionIds sval = FFEnumParserFactory.GetAppId<FF_GmuId_SessionIds, FF_AppId_SessionIds>(FF_GmuId_SessionIds.ECash);
            //FF_GmuId_SessionIds ss2 = FFEnumParserFactory.GetGmuId<FF_AppId_SessionIds, FF_GmuId_SessionIds>(FF_AppId_SessionIds.GIM);

            //byte b = 23;
            //FF_AppId_SessionIds ss3 = b.GetAppId<FF_GmuId_SessionIds, FF_AppId_SessionIds>();
        }