UNPKG

homebridge-shinobi

Version:

A Homebridge plugin integrating Shinobi for motion detector cameras

37 lines 1.73 kB
/// <reference types="node" /> /// <reference types="node" /> import { ChildProcess } from 'child_process'; import { CameraController, CameraStreamingDelegate, HAP, PlatformConfig, PrepareStreamCallback, PrepareStreamRequest, SnapshotRequest, SnapshotRequestCallback, StreamingRequest, StreamRequestCallback } from 'homebridge'; import { ShinobiHomebridgePlatform } from './platform'; import { Monitor } from './shinobiMonitorAccessory'; declare type SessionInfo = { address: string; videoPort: number; videoSRTP: Buffer; videoSSRC: number; }; /** * Shinobi Camera Streaming Delegate */ export declare class ShinobiStreamingDelegate implements CameraStreamingDelegate { private readonly platform; private readonly hap; private readonly monitor; readonly config: PlatformConfig; controller: CameraController | undefined; private readonly imageSource; private readonly videoSource; pendingSessions: Record<string, SessionInfo>; ongoingSessions: Record<string, ChildProcess>; constructor(platform: ShinobiHomebridgePlatform, hap: HAP, monitor: Monitor, config: PlatformConfig); handleSnapshotRequest(request: SnapshotRequest, callback: SnapshotRequestCallback): void; prepareStream(request: PrepareStreamRequest, callback: PrepareStreamCallback): Promise<void>; handleStreamRequest(request: StreamingRequest, callback: StreamRequestCallback): Promise<void>; shutdown(): Promise<void>; shouldSubStreamBeActive(): boolean; getSubStreamIsActive(): Promise<boolean>; toggleSubStreamActive(subStreamShouldBeActive: any): Promise<void>; setRequiredSubStreamState(): Promise<void>; } export {}; //# sourceMappingURL=shinobiStreamingDelegate.d.ts.map