eufy-security-client
Version:
Client to comunicate with Eufy-Security devices
50 lines (49 loc) • 1.5 kB
TypeScript
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;
}