UNPKG

knxnetjs

Version:

A TypeScript library for KNXnet/IP communication

59 lines 1.69 kB
/** * KNX USB Transfer Protocol implementation * Handles the KNX USB Transfer Protocol Header and Body structures */ export declare enum KNXUSBTransferProtocolId { KNXTunnel = 1, BusAccessServerFeatureService = 15 } export declare enum KNXUSBTransferEMIId { EMI1 = 1, EMI2 = 2, cEMI = 3 } export interface KNXUSBTransferHeader { protocolVersion: number; headerLength: number; bodyLength: number; protocolId: number; emiId: number; manufacturerCode: number; } export interface KNXUSBTransferBody { emiMessageCode: number; data: Buffer; } export declare class KNXUSBTransferFrame { header: KNXUSBTransferHeader; body: KNXUSBTransferBody; constructor(header: KNXUSBTransferHeader, body: KNXUSBTransferBody); /** * Creates a KNX USB Transfer Frame from a Buffer */ static fromBuffer(buffer: Buffer): KNXUSBTransferFrame; /** * Converts the frame to a Buffer */ toBuffer(): Buffer; /** * Creates a KNX USB Transfer Frame for cEMI data */ static createForCEMI(cemiData: Buffer, manufacturerCode?: number): KNXUSBTransferFrame; /** * Creates a KNX USB Transfer Frame for bus access */ static createForBusAccess(service: number, feature: number, value: Buffer): KNXUSBTransferFrame; /** * Validates if a buffer contains a valid KNX USB Transfer Frame */ static isValid(buffer: Buffer): boolean; /** * Gets the cEMI data from the frame body */ getCEMIData(): Buffer | null; /** * Returns frame information as a string for debugging */ toString(): string; } //# sourceMappingURL=knx-usb-transfer.d.ts.map