UNPKG

eufy-security-client

Version:

Client to comunicate with Eufy-Security devices

50 lines (49 loc) 1.5 kB
import { TypedEmitter } from "tiny-typed-emitter"; import { PushClientEvents } from "./interfaces"; export declare class PushClient extends TypedEmitter<PushClientEvents> { private readonly HOST; private readonly PORT; private readonly MCS_VERSION; private readonly HEARTBEAT_INTERVAL; private loggedIn; private streamId; private lastStreamIdReported; private currentDelay; private client?; private heartbeatTimeout?; private reconnectTimeout?; private persistentIds; private static proto; private pushClientParser; private auth; private constructor(); static init(auth: { androidId: string; securityToken: string; }): Promise<PushClient>; private initialize; getPersistentIds(): Array<string>; setPersistentIds(ids: Array<string>): void; connect(): void; private buildLoginRequest; private buildHeartbeatPingRequest; private buildHeartbeatAckRequest; private onSocketData; private onSocketConnect; private onSocketClose; private onSocketError; private handleParsedMessage; private handleHeartbeatPing; private handleHeartbeatAck; private convertPayloadMessage; private getStreamId; private newStreamIdAvailable; private scheduleHeartbeat; private sendHeartbeat; isConnected(): boolean; private getHeartbeatInterval; private getCurrentDelay; private resetCurrentDelay; private scheduleReconnect; close(): void; }