UNPKG

homebridge-denon-heos-audio

Version:

Control your Denon speakers via AVR Control and/or HeosCLI

54 lines 2.1 kB
import { DenonClientAvrControl } from "./denonClientAvrControl.js"; import { DenonClientHeosCli } from "./denonClientHeosCli.js"; import * as DenonProtocol from "./denonProtocol.js"; export class DenonClientHybrid { controlMode = DenonProtocol.ControlMode.HYBRID; serialNumber; clientAvrControl; clientHeosCli; constructor(serialNumber, host, connect_timeout, response_timeout, debugLogCallback, powerUpdateCallback, muteUpdateCallback, volumeUpdateCallback) { this.clientAvrControl = new DenonClientAvrControl(serialNumber, host, connect_timeout, response_timeout, debugLogCallback, powerUpdateCallback, undefined, undefined); this.clientHeosCli = new DenonClientHeosCli(serialNumber, host, connect_timeout, response_timeout, debugLogCallback, undefined, muteUpdateCallback, volumeUpdateCallback); this.serialNumber = serialNumber; } isConnected() { return this.clientAvrControl.isConnected() || this.clientHeosCli.isConnected(); } getPower() { return this.clientAvrControl.getPower(); } setPower(power) { return this.clientAvrControl.setPower(power); } getPlaying(raceStatus) { return this.clientHeosCli.getPlaying(raceStatus); } setPlaying(playing) { return this.clientHeosCli.setPlaying(playing); } async setPlayNext() { return this.clientHeosCli.setPlayNext(); } async setPlayPrevious() { return this.clientHeosCli.setPlayPrevious(); } getMute(raceStatus) { return this.clientHeosCli.getMute(raceStatus); } setMute(mute) { return this.clientHeosCli.setMute(mute); } getVolume(raceStatus) { return this.clientHeosCli.getVolume(raceStatus); } setVolume(volume) { return this.clientHeosCli.setVolume(volume); } setVolumeUp(volumeIncrement) { return this.clientHeosCli.setVolumeUp(volumeIncrement); } setVolumeDown(volumeDecrement) { return this.clientHeosCli.setVolumeDown(volumeDecrement); } } //# sourceMappingURL=denonClientHybrid.js.map