homebridge-pioneer-avr-2025
Version:
A Pioneer AVR plugin for homebridge. This plugin is designed for Pioneer models that use Telnet Commands (e.g., VSX-922). It may not be compatible with newer models (e.g., VSX-LX304).
98 lines • 3.07 kB
TypeScript
import PioneerAvr from './pioneer-avr/pioneerAvr';
import type { Service, PlatformAccessory } from 'homebridge';
import type { PioneerAvrPlatform } from './pioneer-avr-platform';
export interface Device {
name: string;
origName: string;
host: string;
port: number;
source: string;
fqdn: string;
maxVolume?: number;
minVolume?: number;
inputSwitches?: string[];
listeningMode?: string;
listeningModeFallback?: string;
listeningModeOther?: string;
}
declare class PioneerAvrAccessory {
private device;
private informationService;
tvService: Service;
private volumeServiceLightbulb;
private listeningServiceSwitch;
private telnetConnectedServiceSwitch;
private tvSpeakerService;
enabledServices: Service[];
avr: PioneerAvr;
private name;
private manufacturer;
private model;
private host;
private maxVolume;
private prefsDir;
private inputCacheFile;
private inputCache;
private log;
platform: PioneerAvrPlatform;
accessory: PlatformAccessory;
private version;
private writeVisbilityTimeout;
private telnetConnectedServiceSwitchDisconnectTimeout;
private lastListeningSwitchPressTime;
private readonly LOCK_INTERVAL_LISTENING_SWITCH;
constructor(device: Device, platform: PioneerAvrPlatform, accessory: PlatformAccessory);
handleInputSwitches(): Promise<void>;
/**
* Prepares the accessory's information service.
*/
private prepareInformationService;
/**
* Sets up the Television service to control the AVR's power and input selection.
*/
private prepareTvService;
/**
* Prepares the Television Speaker service for volume control.
*/
private prepareTvSpeakerService;
/**
* Prepares the Lightbulb service for volume control.
*/
private prepareVolumeService;
/**
* Prepares the Switch service for check/control if telnet connected.
*/
private timeoutFunctionSetSwitchTelnetConnected;
private prepareTelnetConnectedService;
/**
* Prepares the Switch service for listening mode control.
*/
private prepareListeningService;
/**
* Prepares the input source service to allow selection of various AVR inputs.
*/
private addInputSourceService;
/**
* Returns the enabled HomeKit services.
*/
getServices(): Service[];
private getPowerOn;
private setPowerOn;
private getActiveIdentifier;
private setActiveIdentifier;
private setVolumeSwitch;
private getVolume;
private setVolume;
private getMuted;
private setMuted;
private getMutedInverted;
private setMutedInverted;
private remoteKeyPress;
updateInputSwitchStates(activeInputId: string): void;
private lastInputSwitchPressTime;
private timeoutupdateInputSwitchStates;
private readonly LOCK_INTERVAL_INPUT_SWITCH;
addInputSwitch(host: string, inputToSwitches: string[]): void;
}
export default PioneerAvrAccessory;
//# sourceMappingURL=pioneer-avr-accessory.d.ts.map