homekit: thermostat temp display unit. intercom cleanup.

This commit is contained in:
Koushik Dutta
2022-01-20 23:21:54 -08:00
parent 942a1b3b1b
commit 711d576320
4 changed files with 14 additions and 6 deletions

View File

@@ -1,12 +1,12 @@
{
"name": "@scrypted/homekit",
"version": "0.0.166",
"version": "0.0.170",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "@scrypted/homekit",
"version": "0.0.166",
"version": "0.0.170",
"dependencies": {
"hap-nodejs": "file:../../external/HAP-NodeJS",
"lodash": "^4.17.21",

View File

@@ -40,5 +40,5 @@
"@types/qrcode": "^1.4.1",
"@types/url-parse": "^1.4.3"
},
"version": "0.0.166"
"version": "0.0.170"
}

View File

@@ -23,7 +23,6 @@ import { CharacteristicEventTypes, DataStreamConnection, Service, WithUUID } fro
import { RecordingManagement } from 'hap-nodejs/src/lib/camera';
import { defaultObjectDetectionContactSensorTimeout } from '../camera-mixin';
import os from 'os';
import { levelToFfmpeg, profileToFfmpeg } from './camera/camera-utils';
const { log, mediaManager, deviceManager, systemManager } = sdk;
@@ -77,6 +76,8 @@ addSupportedType({
session.videoReturn?.close();
session.audioReturn?.close();
session.rtpSink?.destroy();
if (twoWayAudio)
device.stopIntercom();
}
@@ -186,6 +187,7 @@ addSupportedType({
const msos = await device.getVideoStreamOptions();
selectedStream = msos.find(mso => mso.name === streamingChannel);
}
console.log('isHomeKitHub', isHomeKitHub, 'selected stream', selectedStream?.name || 'Default/undefined');
const tryReconfigureBitrate = () => {
if (!isHomeKitHub)

View File

@@ -94,8 +94,14 @@ addSupportedType({
bindCharacteristic(device, ScryptedInterface.TemperatureSetting, service, Characteristic.CoolingThresholdTemperature,
() => Math.max(device.thermostatSetpointHigh || 0, 10));
bindCharacteristic(device, ScryptedInterface.TemperatureSetting, service, Characteristic.TemperatureDisplayUnits,
() => device.temperatureUnit === TemperatureUnit.C ? Characteristic.TemperatureDisplayUnits.CELSIUS : Characteristic.TemperatureDisplayUnits.FAHRENHEIT);
bindCharacteristic(device, ScryptedInterface.Thermometer, service, Characteristic.TemperatureDisplayUnits,
() => device.temperatureUnit === TemperatureUnit.F ? Characteristic.TemperatureDisplayUnits.FAHRENHEIT : Characteristic.TemperatureDisplayUnits.CELSIUS);
service.getCharacteristic(Characteristic.TemperatureDisplayUnits)
.on(CharacteristicEventTypes.SET, (value: CharacteristicValue, callback: CharacteristicSetCallback) => {
callback();
device.setTemperatureUnit(value === Characteristic.TemperatureDisplayUnits.FAHRENHEIT ? TemperatureUnit.F : TemperatureUnit.C);
});
bindCharacteristic(device, ScryptedInterface.Thermometer, service, Characteristic.CurrentTemperature,
() => device.temperature || 0);