using System; using System.Data; using System.Collections; //using BasicData; ////using bizFacade; //using SystemFramework; using System.Configuration; //using MesWork; using MQTTnet.Client.Connecting; using MQTTnet.Client.Disconnecting; using MQTTnet.Client.Receiving; using MQTTnet; using System.Threading.Tasks; namespace MesServerFunctions { public partial class MIS_SendMessage { /// /// /// public static string MqttTargetTopic = ConfigurationManager.AppSettings["MqttTargetTopic"]; /// /// /// static new MesWebFun_base.MisWebInterface misWebInterface = new MesWebFun_base.MisWebInterface(); /// /// /// static readonly Object locker = new Object(); /// /// 发消息给通讯服务器 /// /// public static string asyncSendMessage(string Message) { lock (locker) { //"MES|MachinePlan|OpName|Value var array = Message.Split('|'); var cmd = array[1]; var opName = array[2]; var topic = $"{MqttTargetTopic}/{opName}"; Task.Run(() => Mqtt.Publish(topic, Message)); var responseStr = misWebInterface.WebSocket_Function(Message); if (responseStr.Length > 0) { Task.Run(() => Mqtt.Publish(topic, $"MES|{cmd}_Resources|{opName}|{responseStr}")); } return responseStr; } } public static string asyncSendMessageDemo(string Message) { lock (locker) { //"MES|MachinePlan|OpName|Value var array = Message.Split('|'); var cmd = array[1]; var opName = array[2]; var topic = $"{MqttTargetTopic}/{opName}"; //Mqtt.Publish(topic, Message); string responseStr = ""; //var responseStr = misWebInterface.WebSocket_Function(Message); //if (responseStr.Length > 0) //{ // Mqtt.Publish(topic, $"MES|{cmd}_Resources|{opName}|{responseStr}"); //} return responseStr; } } /// /// 发消息给通讯服务器 /// /// public static string asyncSendMessageQos0(string Message) { lock (locker) { //"MES|MachinePlan|OpName|Value var array = Message.Split('|'); var cmd = array[1]; var opName = array[2]; var topic = $"{MqttTargetTopic}/{opName}"; Mqtt.PublishQos0(topic, Message); return ""; } } } }