Пример #1
0
        public static KNXmessage CreateFAHFunctionPropertyCommand(FaHDevice faHDevice, PropertyControlTypes propertyControlType, byte ObjectID, byte PropertyID, byte[] payload = null)
        {
            if (payload == null)
            {
                payload = new byte[0];
            }
            KNXmessage kNXmessage = new KNXmessage(knxControlField.KnxPacketType.KNX_PacketShort);

            kNXmessage.DestinationAddressType = KNXmessage.DestinationAddressFieldType.Group;
            kNXmessage.SourceAddress          = new KNXAddress(1);
            kNXmessage.TargetAddress          = faHDevice.KnxAddress;
            kNXmessage.HopCount = 6;
            kNXmessage.DestinationAddressType = KNXmessage.DestinationAddressFieldType.Individual;
            kNXmessage.Payload.NewPayload(KNXAdpu.ApduType.FunctionPropertyCommand, (uint)(5 + payload.Length));
            kNXmessage.Payload.ReadablePayloadPacket = new FAHFunctionPropertyCommand(kNXmessage.Payload);
            FAHFunctionPropertyCommand newPkg = (FAHFunctionPropertyCommand)kNXmessage.Payload.ReadablePayloadPacket;

            newPkg.PropertyControl = propertyControlType;
            if (payload.Length != 0)
            {
                kNXmessage.Payload.UpdateBytes(payload, 5, payload.Length);
            }
            newPkg.ObjectID   = ObjectID;
            newPkg.PropertyID = PropertyID;
            return(kNXmessage);
        }
Пример #2
0
 public void GetPropertyControlForReply(ref byte[] ControlSecondIndex, ref PropertyControlTypes propertyControl)
 {
     propertyControl    = this.PropertyControl;
     ControlSecondIndex = this.FPCpayload;
 }