コード例 #1
0
ファイル: WGAccess.cs プロジェクト: radtek/smartaccess
        public bool SetSuperPwds(Controller controller, int doorIndex, List <string> pwds)
        {
            WGPacket packet = new WGPacket(0x8C);

            packet.SetDevSn(controller.sn);
            packet.SetDoorNum(doorIndex);
            try
            {
                packet.SetSuperPwds(pwds);
            }
            catch (Exception ex)
            {
                log.Error("密码转换发生异常:", ex);
                return(false);
            }

            DoSend(packet, controller.ip, controller.port);
            List <WGPacket> packets = WGRecievePacketAddClose(1);

            if (packets.Count == 1)
            {
                return(packets[0].data[0] == 1);
            }
            return(false);
        }
コード例 #2
0
ファイル: WGAccess.cs プロジェクト: radtek/smartaccess
        public bool OpenRemoteControllerDoor(Controller controller, int doorNum)
        {
            WGPacket packet = new WGPacket(0x40);

            packet.SetDevSn(controller.sn);
            packet.SetDoorNum(doorNum);
            DoSend(packet, controller.ip, controller.port);
            List <WGPacket> packets = WGRecievePacketAddClose(1);

            if (packets.Count == 1)
            {
                return(packets[0].data[0] == 1);
            }
            return(false);
        }
コード例 #3
0
ファイル: WGAccess.cs プロジェクト: radtek/smartaccess
        public bool SetDoorControlStyle(Controller controller, int doorNum, DoorControlStyle ctrlStyle, int delaySecond = 3)
        {
            WGPacket packet = new WGPacket(0x80);

            packet.SetDevSn(controller.sn);
            packet.SetDoorNum(doorNum);
            packet.SetCtrlStyle(ctrlStyle, delaySecond);
            DoSend(packet, controller.ip, controller.port);
            List <WGPacket> packets = WGRecievePacketAddClose(1);

            if (packets.Count == 1)
            {
                return(packets[0].data[0] > 0);
            }
            return(false);
        }