/// <summary> /// Public method to set the volume of a zone. /// </summary> /// <param name="zoneAddress">Zone Adress, containing device and zone id.</param> /// <param name="volumeLevel">Volume level.</param> public void CommandSetVolume(Address zoneAddress, int volumeLevel) { checkZoneDeviceId(zoneAddress.DeviceId); INuvoEssentiaSingleCommand command = new NuvoEssentiaSingleCommand( ENuvoEssentiaCommands.SetVolume, convertAddressZone2EssentiaZone(zoneAddress), NuvoEssentiaCommand.calcVolume2NuvoEssentia(volumeLevel)); sendCommandToDevice(zoneAddress, command); }
/// <summary> /// Public method to set a zone state, according to a zone state object passed in. /// </summary> /// <param name="zoneAddress">Zone Adress, containing device and zone id.</param> /// <param name="zoneState">Zone state, which shall be applied.</param> public void SetZoneState(Address zoneAddress, ZoneState zoneState) { if (zoneState.PowerStatus) { INuvoEssentiaCommand command = new NuvoEssentiaCommand( ENuvoEssentiaCommands.SetZoneStatus, convertAddressZone2EssentiaZone(zoneAddress), convertAddressSource2EssentiaSource(zoneState.Source), NuvoEssentiaCommand.calcVolume2NuvoEssentia(zoneState.Volume)); sendCommandToDevice(zoneAddress, command); } else { INuvoEssentiaSingleCommand command = new NuvoEssentiaSingleCommand( ENuvoEssentiaCommands.TurnZoneOFF, convertAddressZone2EssentiaZone(zoneAddress)); sendCommandToDevice(zoneAddress, command); } }