예제 #1
0
        public NodeEvent GetEvent(ZWaveNode node, byte[] message)
        {
            NodeEvent nodeEvent = null;

            if (message.Length > 7)
            {
                byte[] manufacturerId = new byte[2] {
                    message[2], message[3]
                };
                byte[] typeId = new byte[2] {
                    message[4], message[5]
                };
                byte[] productId = new byte[2] {
                    message[6], message[7]
                };

                var manufacturerSpecs = new ManufacturerSpecificInfo()
                {
                    TypeId         = BitConverter.ToString(typeId).Replace("-", ""),
                    ProductId      = BitConverter.ToString(productId).Replace("-", ""),
                    ManufacturerId = BitConverter.ToString(manufacturerId).Replace("-", "")
                };
                node.ManufacturerSpecific.ManufacturerId = manufacturerSpecs.ManufacturerId;
                node.ManufacturerSpecific.TypeId         = manufacturerSpecs.TypeId;
                node.ManufacturerSpecific.ProductId      = manufacturerSpecs.ProductId;
                nodeEvent = new NodeEvent(node, EventParameter.ManufacturerSpecific, manufacturerSpecs, 0);
            }

            return(nodeEvent);
        }
        public NodeEvent GetEvent(ZWaveNode node, byte[] message)
        {
            NodeEvent nodeEvent = null;

            if (message.Length > 7)
            {
                byte[] manufacturerId = new byte[2] { message[2], message[3] };
                byte[] typeId = new byte[2] { message[4], message[5] };
                byte[] productId = new byte[2] { message[6], message[7] };

                var manufacturerSpecs = new ManufacturerSpecificInfo() {
                    TypeId = BitConverter.ToString(typeId).Replace("-", ""),
                    ProductId = BitConverter.ToString(productId).Replace("-", ""),
                    ManufacturerId = BitConverter.ToString(manufacturerId).Replace("-", "")
                };
                node.ManufacturerSpecific.ManufacturerId = manufacturerSpecs.ManufacturerId;
                node.ManufacturerSpecific.TypeId = manufacturerSpecs.TypeId;
                node.ManufacturerSpecific.ProductId = manufacturerSpecs.ProductId;
                nodeEvent = new NodeEvent(node, EventParameter.ManufacturerSpecific, manufacturerSpecs, 0);
            }

            return nodeEvent;
        }
예제 #3
0
 public ZWaveNode()
 {
     Data = new List<NodeData>();
     CommandClasses = new List<NodeCommandClass>();
     ProtocolInfo = new NodeCapabilities();
     NodeInformationFrame = new byte[]{ };
     SecuredNodeInformationFrame = new byte[]{ };
     ManufacturerSpecific = new ManufacturerSpecificInfo();
 }