陈嘉乐
2020-12-04 dcb9b9b5561b4e6d1eaf1e602e8ae054e578ec6e
HDL_ON/DAL/DriverLayer/Control.cs
@@ -76,10 +76,28 @@
        /// 网关通讯ID
        /// </summary>
        public string GatewayId;
        bool _isRemote = false;
        /// <summary>
        /// 是否为远程连接
        /// </summary>
        public bool IsRemote = false;
        public bool IsRemote {
            get
            {
                return _isRemote;
            }
            set
            {
                _isRemote = value;
                if(value)
                {
                    DAL.Mqtt.MqttClient.InitState();
                }else
                {
                    DAL.Mqtt.MqttClient.DisConnectRemote();
                }
            }
        }
        /// <summary>
        /// 通讯地址IP
        /// </summary>
@@ -161,7 +179,12 @@
        public void SearchLoaclGateway()
        {
            OpenUdp(DB_ResidenceData.residenceData.GatewayType == 0 ? 6000 : 8585);
            new System.Threading.Thread(() =>
            {
                for (int i = 0; i < 5; i++)
                {
                    if (GatewayOnline)
                        break;
            if (DB_ResidenceData.residenceData.GatewayType == 0)
            {
                myUdp.ControlBytesSend(Command.ReadGateway, 255, 255, new byte[] { (byte)new Random().Next(255), (byte)new Random().Next(255) });
@@ -170,6 +193,10 @@
            {
                myUdp.SearchLocalGateway();
            }
                    System.Threading.Thread.Sleep(500);
                }
            })
            { IsBackground = true }.Start();
        }
        /// <summary>
@@ -353,6 +380,7 @@
                            Ins.GatewayOnline = true;
                            Ins.GatewayId = device.gatewayId;
                            reportIp = "239.0.168.188";// device.ip_address;
                            Ins.IsRemote = false;
                        }
                        break;
                }