#region << 版 本 注 释 >> /*---------------------------------------------------------------- * 创建者:13118 * 创建时间:2022/3/17 15:08:35 * 版本:V1.0.0 * 描述: * * ---------------------------------------------------------------- * 修改人: * 时间: * 修改说明: * * 版本:V1.0.1 *----------------------------------------------------------------*/ #endregion << 版 本 注 释 >> using ARI.EAP.HOST.SRD; using ARI.EAP.HOST.Utilities; using Glorysoft.SECS.EQP.Utilities; using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Timers; namespace ARI.EAP.HOST.Common { /// /// MESHeartBit 的摘要说明 /// 提供与MES的连接心跳 /// public class MESHeartBit { private Timer timer; private string url = Configuration.conf.httpConfiguration.heartBitUrl; public MESHeartBit() { timer = new Timer(60000); timer.Elapsed += new ElapsedEventHandler(Method); timer.AutoReset = true; timer.Enabled = true; } public void Method(object source, ElapsedEventArgs e) { string httpContent = SECSUtil.ToJson(new MESHeartBitParam()); HttpUtils.sentPOST(url,httpContent); } public void Method() { string httpContent = SECSUtil.ToJson(new MESHeartBitParam()); HttpUtils.sentPOST(url, httpContent); } public void MethodClose() { MESHeartBitParam mESHeartBitParam = new MESHeartBitParam(); mESHeartBitParam.eapStatus = "stop"; mESHeartBitParam.connectStatus = "disconnected"; mESHeartBitParam.mqStatus = "disconnected"; string httpContent = SECSUtil.ToJson(mESHeartBitParam); HttpUtils.sentPOST(url, httpContent); } } [Serializable] public class MESHeartBitParam { public string connectStatus { get; set; } public string deviceId { get; set; } public string eapStatus { get; set; } public string equipmentName { get; set; } public string ip { get; set; } public string mqStatus { get; set; } public string port { get; set; } public MESHeartBitParam() { this.deviceId = Configuration.conf.connectSetting.deviceId; this.equipmentName = Configuration.conf.connectSetting.name; this.ip = Configuration.conf.connectSetting.remoteIp; this.port = Configuration.conf.connectSetting.remotePort; this.connectStatus = Global.MF.ConnectStatus.Text; this.mqStatus = Global.MF.MQStatus.Text; this.eapStatus = "start"; } } }