@koush/ring-client-api
Version:
Unofficial API for Ring doorbells, cameras, security alarm system and smart lighting
56 lines (55 loc) • 1.62 kB
TypeScript
/// <reference types="node" />
import { RtpSplitter, SrtpOptions } from '@homebridge/camera-utils';
import { DingKind } from './ring-types';
export interface RtpStreamOptions extends SrtpOptions {
port: number;
rtcpPort: number;
}
export interface RtpOptions {
audio: RtpStreamOptions;
video: RtpStreamOptions;
}
export interface RtpStreamDescription extends RtpStreamOptions {
ssrc?: number;
iceUFrag?: string;
icePwd?: string;
}
export interface RtpDescription {
address: string;
audio: RtpStreamDescription;
video: RtpStreamDescription;
}
export declare function isStunMessage(message: Buffer): boolean;
export declare function sendStunBindingRequest({ rtpDescription, rtpSplitter, rtcpSplitter, localUfrag, type, }: {
rtpSplitter: RtpSplitter;
rtcpSplitter: RtpSplitter;
rtpDescription: RtpDescription;
localUfrag?: string;
type: 'video' | 'audio';
}): void;
export declare function createStunResponder(rtpSplitter: RtpSplitter): void;
export interface LiveCallSession {
alexa_port: 18443;
app_session_token: string;
availability_zone: 'availability-zone';
custom_timer: {
max_sec: number;
};
ding_id: string;
ding_kind: DingKind;
doorbot_id: number;
exp: number;
ip: string;
port: number;
private_ip: string;
rms_fqdn: string;
rms_version: string;
rsp_port: number;
rtsp_port: number;
session_id: string;
sip_port: number;
webrtc_port: number;
webrtc_url: string;
wwr_port: number;
}
export declare function parseLiveCallSession(sessionId: string): LiveCallSession;