UNPKG

knxnetjs

Version:

A TypeScript library for KNXnet/IP communication

45 lines 1.59 kB
import { EventEmitter } from "events"; import { KNXBusInterface } from "../types"; import { CEMIFrame } from "../frames"; export declare class KNXNetTunnelingImpl extends EventEmitter implements KNXBusInterface { private socket; private isConnected; private readonly options; private connectionId; private sequenceCounter; private heartbeatTimer; private connectionTimer; private serverEndpoint; private localEndpoint; private readonly busmonitorMode; constructor(serverAddress: string, serverPort?: number, localPort?: number, busmonitorMode?: boolean); open(): Promise<void>; send(frame: CEMIFrame): Promise<void>; close(): Promise<void>; /** * Check if this connection is in busmonitor mode */ isBusmonitorMode(): boolean; on(event: "recv", listener: (frame: CEMIFrame) => void): this; on(event: "error", listener: (error: Error) => void): this; private setupSocket; private establishConnection; private createConnectRequestFrame; private createTunnelingRequestFrame; private createHPAI; private parseHPAI; private isConnectResponse; private isTunnelingAck; private parseConnectResponse; private parseTunnelingAck; private handleIncomingMessage; private handleTunnelingRequest; private sendTunnelingAck; private handleConnectionStateRequest; private sendConnectionStateResponse; private sendDisconnectRequest; private startHeartbeat; private sendConnectionStateRequest; private cleanup; } //# sourceMappingURL=tunneling.d.ts.map