knxultimate
Version:
KNX IP protocol implementation for Node. This is the ENGINE of Node-Red KNX-Ultimate node.
40 lines (39 loc) • 2.54 kB
TypeScript
/// <reference types="node" />
import KNXHeader from './KNXHeader';
import KNXSearchRequest from './KNXSearchRequest';
import KNXSearchResponse from './KNXSearchResponse';
import KNXDescriptionRequest from './KNXDescriptionRequest';
import KNXDescriptionResponse from './KNXDescriptionResponse';
import KNXConnectRequest from './KNXConnectRequest';
import KNXConnectResponse from './KNXConnectResponse';
import KNXConnectionStateRequest from './KNXConnectionStateRequest';
import KNXConnectionStateResponse from './KNXConnectionStateResponse';
import KNXDisconnectRequest from './KNXDisconnectRequest';
import KNXDisconnectResponse from './KNXDisconnectResponse';
import KNXTunnelingRequest from './KNXTunnelingRequest';
import KNXTunnelingAck from './KNXTunnelingAck';
import KNXRoutingIndication from './KNXRoutingIndication';
import KNXSecureSessionRequest from './KNXSecureSessionRequest';
import HPAI from './HPAI';
import TunnelCRI from './TunnelCRI';
import CEMIMessage from './cEMI/CEMIMessage';
export type KnxResponse = KNXConnectResponse | KNXSearchResponse | KNXDescriptionResponse | KNXConnectionStateResponse | KNXDisconnectResponse | KNXTunnelingAck | KNXRoutingIndication;
export type KnxRequest = KNXConnectRequest | KNXSearchRequest | KNXDescriptionRequest | KNXConnectionStateRequest | KNXDisconnectRequest | KNXTunnelingRequest;
export type KnxMessage = KnxResponse | KnxRequest;
export default class KNXProtocol {
static parseMessage(buffer: Buffer): {
knxHeader: KNXHeader;
knxMessage: KnxMessage;
knxData: Buffer;
};
static newKNXSearchRequest(hpai: HPAI): KNXSearchRequest;
static newKNXDescriptionRequest(hpai: HPAI): KNXDescriptionRequest;
static newKNXConnectRequest(cri: TunnelCRI, hpaiControl?: HPAI, hpaiData?: HPAI): KNXConnectRequest;
static newKNXConnectionStateRequest(channelID: number, hpaiControl?: HPAI): KNXConnectionStateRequest;
static newKNXDisconnectRequest(channelID: number, hpaiControl?: HPAI): KNXDisconnectRequest;
static newKNXDisconnectResponse(channelID: number, status: number): KNXDisconnectResponse;
static newKNXTunnelingACK(channelID: number, seqCounter: number, status: number): KNXTunnelingAck;
static newKNXTunnelingRequest(channelID: number, seqCounter: number, cEMIMessage: CEMIMessage): KNXTunnelingRequest;
static newKNXRoutingIndication(cEMIMessage: CEMIMessage): KNXRoutingIndication;
static newKNXSecureSessionRequest(cri: TunnelCRI, hpaiData?: HPAI, jKNXSecureKeyring?: any): KNXSecureSessionRequest;
}