/// <summary> /// 发送消息 /// </summary> /// <param name="MQContent">消息内容</param> /// <param name="ServerName">接收端程序名,必须在服务端注册</param> public void SendMQ(string MQContent) { client.Connect(); IOutgoingMessage message = client.CreateMessage(); message.MessageData = Encoding.UTF8.GetBytes(MQContent); message.Send(); client.Disconnect(); }
static void Main(string[] args) { Thread.Sleep(1000); //Create MDSClient object to connect to DotNetMQ //Name of this application: LapScore.MessageService.Listener var mdsClient = new MDSClient("LapScore.MessageService.Listener"); //Register to MessageReceived event to get messages. mdsClient.MessageReceived += MDSClient_MessageReceived; //Connect to DotNetMQ server mdsClient.Connect(); //Wait user to press enter to terminate application // Console.WriteLine("Press enter to exit..."); // Console.ReadLine(); while (KeepALive == true) { } //Disconnect from DotNetMQ server mdsClient.Disconnect(); }
public plcserver(int loopTime, string applicationName) { ApplicationName = applicationName; // Create MDSClient object to connect to DotNetMQ // Name of this application: PLCServer mdsClient = new MDSClient(ApplicationName); // Connect to DotNetMQ server try { mdsClient.Connect(); } catch (Exception ex) { Logger.Error(ex.Message, ex); // esco this.Exit(); } // Register to MessageReceived event to get messages. mdsClient.MessageReceived += PLCServer_MessageReceived; LoopTime = loopTime; timer.Elapsed += timer_Elapsed; timer.Enabled = true; Logger.InfoFormat("{0} application ready", ApplicationName); }
private Controller() { // Name of this application: HMIClient ApplicationName = "Interface"; // Name of the plc server application: PLCServer PLCServerApplicationName = "PLCServer"; model = new Model(); timer = new DispatcherTimer(); // Create MDSClient object to connect to DotNetMQ mdsClient = new MDSClient(ApplicationName); // Connect to DotNetMQ server try { mdsClient.Connect(); } catch (Exception ex) { Logger.Warn(ex.Message, ex); } // connetto a plcserver PLCServerConnect(); // Register to MessageReceived event to get messages. mdsClient.MessageReceived += hmi_MessageReceived; // timer timer.Interval = TimeSpan.FromMilliseconds(LoopTime); timer.Tick += timer_Tick; timer.IsEnabled = true; }
static void Main() { //Create MDSClient object to connect to DotNetMQ //Name of this application: Application1 var mdsClient = new MDSClient("Application1"); //Connect to DotNetMQ server mdsClient.Connect(); Console.WriteLine("Write a text and press enter to send to Application2. Write 'exit' to stop application."); while (true) { //Get a message from user var messageText = Console.ReadLine(); if (string.IsNullOrEmpty(messageText) || messageText == "exit") { break; } //Create a DotNetMQ Message to send to Application2 var message = mdsClient.CreateMessage(); //Set destination application name message.DestinationApplicationName = "Application2"; //message.DestinationServerName = "this_server2"; //Set message data message.MessageData = Encoding.UTF8.GetBytes(messageText); //Send message message.Send(); } //Disconnect from DotNetMQ server mdsClient.Disconnect(); }
private Controller() { //// Name of this application: Interface //ApplicationName = Settings.Default.ApplicationName; //// Name of the plc server application: PLCServer //PLCServerApplicationName = Settings.Default.ApplicationName; model = new Model(); // Create MDSClient object to connect to DotNetMQ mdsClient = new MDSClient(ApplicationName); // Connect to DotNetMQ server try { mdsClient.Connect(); } catch (Exception ex) { Logger.Warn(ex.Message, ex); } // connetto a plcserver PLCServerConnect(); // Register to MessageReceived event to get messages. mdsClient.MessageReceived += hmi_MessageReceived; }
private Controller(int loopTime, string applicationName, string managerApplicationName) { // Name of this application ApplicationName = applicationName; // Name of the manager application ManagerApplicationName = managerApplicationName; model = new Model(); // Create MDSClient object to connect to DotNetMQ mdsClient = new MDSClient(ApplicationName); // Connect to DotNetMQ server try { mdsClient.Connect(); } catch (Exception ex) { Logger.Warn(ex.Message, ex); } // Register to MessageReceived event to get messages. mdsClient.MessageReceived += hmi_MessageReceived; // connessione al manager ManagerConnect(); LoopTime = loopTime; timer.Elapsed += timer_Elapsed; timer.Enabled = true; Logger.InfoFormat("{0} Application ready", ApplicationName); }
private static void Ts() { mdsClient = new MDSClient("ExtractionTransformationProcess"); mdsClient.Connect(); while (true) { try { var tmp = Console.ReadLine().ToLower().Trim(); var parts = tmp.Split(null); var cmd = parts[0]; switch (cmd) { case "exit": case "quit": break; case "help": case "h": ShowHelp(); break; case "q": if (parts.Length < 2) { Console.WriteLine("need parameter"); } DateTime paratime; if (!DateTime.TryParseExact(parts[1], "yyyyMMddHHmmss", null, System.Globalization.DateTimeStyles.None, out paratime)) { Console.WriteLine("error time format"); } Send(paratime, 58, @"C:\Users\yinweiwen\Desktop\Vibration\9999_1_20140723151516925.odb", 415); break; case "qz1": Send(DateTime.Now, 95, parts[1], 2782); break; case "qzall": SendAll(); break; case "circ": // 测试消息通知 var interval = Convert.ToInt32(parts[1]); CircTest(interval); break; } } catch (System.Exception ex) { Console.WriteLine(ex.Message); } } }
static void Main(string[] args) { var mdsClient = new MDSClient("StockServer"); mdsClient.MessageReceived += MDSClient_MessageReceived; mdsClient.Connect(); Console.WriteLine("Press enter to exit..."); Console.ReadLine(); mdsClient.Disconnect(); }
static void Main(string[] args) { MDSClient mdsClient = new MDSClient(Utils.MQConfigHelper.MQQualityHelper.ServiceName, Utils.MQConfigHelper.MQQualityHelper.Ip, Utils.MQConfigHelper.MQQualityHelper.Port); mdsClient.MessageReceived += new MessageReceivedHandler(mdsClient_MessageReceived); mdsClient.Connect(); Console.WriteLine("按回车键退出"); Console.ReadLine(); mdsClient.Disconnect(); }
public void Send(object message) { var outgoingMessage = client.CreateMessage(); outgoingMessage.MessageData = GeneralHelper.SerializeObject(message); try { outgoingMessage.Send(); } finally { client.Connect(); outgoingMessage.Send(); } }
public void Initialize() { Thread.Sleep(1000); //Create MDSClient object to connect to DotNetMQ //Name of this application: LapScore.MessageService.Listener var mdsClient = new MDSClient("LapScore.MessageService.GUI"); //Register to MessageReceived event to get messages. mdsClient.MessageReceived += MDSClient_MessageReceived; //Connect to DotNetMQ server mdsClient.Connect(); }
public void Start() { mdsClient = new MDSClient("WirelessReceiver"); try { mdsClient.Connect(); Console.WriteLine("启动服务"); isConnect = true; } catch (Exception ex) { log.Error(ex.Message); Console.WriteLine("启动服务失败"); } }
/// <summary> /// /// </summary> /// <param name="args"></param> static void Main(string[] args) { while (true) { //实例化客户端 var mdsClient = new MDSClient("SyncService", "127.0.0.1", 10905); //链接SERVER mdsClient.Connect(); var message = mdsClient.CreateMessage(); message.MessageData = System.Text.Encoding.UTF8.GetBytes(Guid.NewGuid().ToString()); message.Send(); Console.WriteLine("00"); mdsClient.Disconnect(); System.Threading.Thread.Sleep(1000); } }
static void Main(string[] args) { //Create MDSClient object to connect to DotNetMQ //Name of this application: Application2 var mdsClient = new MDSClient("Application2"); //Register to MessageReceived event to get messages. mdsClient.MessageReceived += MDSClient_MessageReceived; //Connect to DotNetMQ server mdsClient.Connect(); //Wait user to press enter to terminate application Console.WriteLine("Press enter to exit..."); Console.ReadLine(); //Disconnect from DotNetMQ server mdsClient.Disconnect(); }
static void Main(string[] args) { Console.WriteLine("Press enter to query a stock status"); Console.ReadLine(); //Connect to DotNetMQ var mdsClient = new MDSClient("StockClient"); mdsClient.MessageReceived += mdsClient_MessageReceived; mdsClient.Connect(); //Create a stock request message var stockQueryMessage = new StockQueryMessage { StockCode = "S01" }; //Create a MDS message var requestMessage = mdsClient.CreateMessage(); requestMessage.DestinationApplicationName = "StockServer"; requestMessage.TransmitRule = MessageTransmitRules.NonPersistent; requestMessage.MessageData = GeneralHelper.SerializeObject(stockQueryMessage); //Send message and get response var responseMessage = requestMessage.SendAndGetResponse(); //Get stock query result message from response message var stockResult = (StockQueryResultMessage)GeneralHelper.DeserializeObject(responseMessage.MessageData); //Write stock query result Console.WriteLine("StockCode = " + stockResult.StockCode); Console.WriteLine("ReservedStockCount = " + stockResult.ReservedStockCount); Console.WriteLine("TotalStockCount = " + stockResult.TotalStockCount); //Acknowledge received message responseMessage.Acknowledge(); Console.ReadLine(); //Disconnect from DotNetMQ server. mdsClient.Disconnect(); }
static void Main(string[] args) { //Create MDSClient object to connect to DotNetMQ //Name of this application: Application1 var mdsClient = new MDSClient("LapScore.Server"); //Connect to DotNetMQ server //mdsClient.Connect(); //Register to MessageReceived event to get messages. mdsClient.MessageReceived += MDSClient_MessageReceived; //Connect to DotNetMQ server mdsClient.Connect(); while (KeepALive == true) { } mdsClient.Disconnect(); }
public Manager(int loopTime, string applicationName, string plcserverApplicationName) { ApplicationName = applicationName; PLCServerApplicationName = plcserverApplicationName; Logger.InfoFormat("{0} application ready", ApplicationName); // Create MDSClient object to connect to DotNetMQ // Name of this application: PLCServer mdsClient = new MDSClient(ApplicationName); mdsClient.AutoAcknowledgeMessages = true; // Connect to DotNetMQ server try { mdsClient.Connect(); } catch (Exception ex) { Logger.Error(ex.Message, ex); // esco this.Exit(); } // configurazione // data path // xml file name // opctags filename // lista plc connessi copn plcname,ipaddress // lettura del dominio dei tags LoadOPCTags(@"C:\Users\uts.MARINI\Documents\projects\cyb500n\Versione 9.6.x\Exe\OPCTags.xls", "plc4"); LoadOPCTags(@"C:\Users\uts.MARINI\Documents\projects\cyb500n\Versione 9.6.x\Exe\OPCTags.xls", "plc4cist"); LoadOPCTags(@"C:\Users\uts.MARINI\Documents\projects\cyb500n\Versione 9.6.x\Exe\OPCTags.xls", "plc5"); LoadOPCTags(@"C:\Users\uts.MARINI\Documents\projects\cyb500n\Versione 9.6.x\Exe\OPCTags.xls", "plc2"); LoadOPCTags(@"C:\Users\uts.MARINI\Documents\projects\cyb500n\Versione 9.6.x\Exe\OPCTags.xls", "WamFoam"); // Register to MessageReceived event to get messages. mdsClient.MessageReceived += Manager_MessageReceived; PLCServerConnect(); // spostare su plcserver PLCAdd("plc4", "213.131.0.161"); PLCAdd("plc4cist", "213.131.0.161"); PLCAdd("plc5", "213.131.0.161"); PLCAdd("plc2", "213.131.0.161"); PLCAdd("WamFoam", "213.131.0.161"); // configurazione // lettura del dominio degli oggetti MariniImpiantoTree.InitializeFromXmlFile(@"C:\Users\uts.MARINI\Documents\projects\new-project\oms\MariniImpianto\impianto-test.xml"); mariniImpiantoTree = MariniImpiantoTree.Instance; SubscribePLCTags(mariniImpiantoTree); LoopTime = loopTime; timer.Elapsed += timer_Elapsed; timer.Enabled = true; Logger.InfoFormat("{0} application ready", ApplicationName); }
private static void Main(string[] args) { Ts(); return; var mdsClient = new MDSClient("ET"); mdsClient.Connect(); bool isAuto = false; int autoCount = 100; Console.WriteLine("输入(auto),自动执行100次"); isAuto = Console.ReadLine() == "auto"; while (true) { if (!isAuto) { string str = Console.ReadLine(); if (str == "end") { break; } } else { if (autoCount-- <= 0) { break; } } Task[] ts = new Task[100]; for (int i = 0; i < 100; i++) { ts[i] = new Task(() => { Random ran = new Random(); int number = ran.Next(0, 10); var message = mdsClient.CreateMessage(); message.DestinationApplicationName = "DataCalc"; message.MessageData = GeneralHelper.SerializeObject(new RequestDataCalcMessage() { StructId = number, DateTime = DateTime.Now }); message.TransmitRule = MDS.Communication.Messages.MessageTransmitRules.NonPersistent; message.Send(); Console.WriteLine("发送消息:结构物编号{0},采集时间:{1}", number, DateTime.Now); }); } foreach (Task task in ts) { task.Start(); } Thread.Sleep(200); } mdsClient.Disconnect(); Console.ReadLine(); }
public DotNetMQHandler(string applicationName, string ipAddress, int port) { client = new MDSClient(applicationName, ipAddress, port); client.MessageReceived += client_MessageReceived; client.Connect(); }
static void Main(string[] args) { Thread.Sleep(1000); System.Timers.Timer UpdateClock = new System.Timers.Timer(); UpdateClock.Enabled = false; UpdateClock.Interval = 500; UpdateClock.Elapsed += new System.Timers.ElapsedEventHandler(UpdateClock_Elapsed); Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; string _Title = @"Lap Score v0.1"; //Create MDSClient object to connect to DotNetMQ //Name of this application: Application1 //Connect to DotNetMQ server mdsClient.Connect(); Guid testAccount = Guid.NewGuid(); clock.Init(testAccount); while (true) { if (_IsRecording) { Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.DarkBlue; Console.Write(_Title + "..."); Console.ForegroundColor = ConsoleColor.Red; Console.WriteLine("Recording"); } else { Console.BackgroundColor = ConsoleColor.White; Console.ForegroundColor = ConsoleColor.DarkBlue; Console.Write(_Title + "..."); Console.WriteLine("Not Recording"); } Console.BackgroundColor = ConsoleColor.Black; Console.ForegroundColor = ConsoleColor.White; Console.WriteLine("Commands are......."); Console.WriteLine("Press (R) to record."); Console.WriteLine("Press (Q) to quite."); Console.WriteLine("Press (space) to start race , twice to reset."); Console.WriteLine("Press (0-9) for car numbers."); var xmlSave = new XmlDocument(); Car car = new Car { Driver = new Driver { Name = "David" }, Number = 1, Transponder = "123121" }; CarRegistrationMessage carmessage = new CarRegistrationMessage(); carmessage.Init(testAccount, car); System.Xml.Serialization.XmlSerializer x = new System.Xml.Serialization.XmlSerializer(carmessage.GetType()); StringWriter writer = new StringWriter(); x.Serialize(writer, carmessage); SendMessage(mdsClient, "LapScore.MessageService.Listener", carmessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.NonPersistent); SendMessage(mdsClient, "LapScore.Server", carmessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); Car car1 = new Car { Driver = new Driver { Name = "Ed" }, Number = 2, Transponder = "123121" }; carmessage = new CarRegistrationMessage(); carmessage.Init(testAccount, car1); x = new System.Xml.Serialization.XmlSerializer(carmessage.GetType()); writer = new StringWriter(); x.Serialize(writer, carmessage); SendMessage(mdsClient, "LapScore.MessageService.Listener", carmessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.NonPersistent); SendMessage(mdsClient, "LapScore.Server", carmessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); var keypress = Console.ReadKey(); //Get a message from user if (keypress.Key == ConsoleKey.Q) { QuitMessage record = new QuitMessage(); record.Init(testAccount); x = new System.Xml.Serialization.XmlSerializer(record.GetType()); writer = new StringWriter(); x.Serialize(writer, record); SendMessage(mdsClient, "LapScore.MessageService.Listener", writer.ToString(), MDS.Communication.Messages.MessageTransmitRules.NonPersistent); SendMessage(mdsClient, "LapScore.Server", writer.ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); break; } else if (keypress.Key == ConsoleKey.R) { RecordMessage record = new RecordMessage(); record.Init(testAccount); x = new System.Xml.Serialization.XmlSerializer(record.GetType()); writer = new StringWriter(); x.Serialize(writer, record); SendMessage(mdsClient, "LapScore.MessageService.Listener", writer.ToString(), MDS.Communication.Messages.MessageTransmitRules.NonPersistent); SendMessage(mdsClient, "LapScore.Server", writer.ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); _IsRecording = !_IsRecording; } else if (keypress.Key == ConsoleKey.Spacebar) { if (_IsClockStarted == false) { _ClockStartTime = DateTime.UtcNow; clock.Payload.Loop = 0; clock.Payload.Elapsed = 0; clock.Payload.Remaining = 5000; } UpdateClock.Enabled = _IsClockStarted = !_IsClockStarted; } else if ((keypress.KeyChar >= 48) && (keypress.KeyChar <= 58)) { var carNumber = keypress.KeyChar - 48; LapRegistrationMessage newMessage = new LapRegistrationMessage(); newMessage.Init(testAccount, "111111", carNumber, DateTime.UtcNow.Ticks - _ClockStartTime.Ticks); SendMessage(mdsClient, "LapScore.MessageService.Listener", newMessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.NonPersistent); SendMessage(mdsClient, "LapScore.Server", newMessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); if (_IsRecording) { SendMessage(mdsClient, "LapScore.MessageService.Recorder", newMessage.AsXml().ToString(), MDS.Communication.Messages.MessageTransmitRules.StoreAndForward); } } Console.Clear(); } //Disconnect from DotNetMQ server mdsClient.Disconnect(); }