mirror of
https://github.com/home-assistant/core.git
synced 2025-04-23 16:57:53 +00:00
Make Oven setpoint follow temperature UoM in SmartThings (#140666)
This commit is contained in:
parent
a2102f9b98
commit
85b6b3a360
@ -132,6 +132,7 @@ class SmartThingsSensorEntityDescription(SensorEntityDescription):
|
||||
capability_ignore_list: list[set[Capability]] | None = None
|
||||
options_attribute: Attribute | None = None
|
||||
exists_fn: Callable[[Status], bool] | None = None
|
||||
use_temperature_unit: bool = False
|
||||
|
||||
|
||||
CAPABILITY_TO_SENSORS: dict[
|
||||
@ -573,7 +574,7 @@ CAPABILITY_TO_SENSORS: dict[
|
||||
key=Attribute.OVEN_SETPOINT,
|
||||
translation_key="oven_setpoint",
|
||||
device_class=SensorDeviceClass.TEMPERATURE,
|
||||
native_unit_of_measurement=UnitOfTemperature.FAHRENHEIT,
|
||||
use_temperature_unit=True,
|
||||
value_fn=lambda value: value if value != 0 else None,
|
||||
)
|
||||
]
|
||||
@ -1018,7 +1019,10 @@ class SmartThingsSensor(SmartThingsEntity, SensorEntity):
|
||||
attribute: Attribute,
|
||||
) -> None:
|
||||
"""Init the class."""
|
||||
super().__init__(client, device, {capability})
|
||||
capabilities_to_subscribe = {capability}
|
||||
if entity_description.use_temperature_unit:
|
||||
capabilities_to_subscribe.add(Capability.TEMPERATURE_MEASUREMENT)
|
||||
super().__init__(client, device, capabilities_to_subscribe)
|
||||
self._attr_unique_id = f"{device.device.device_id}{entity_description.unique_id_separator}{entity_description.key}"
|
||||
self._attribute = attribute
|
||||
self.capability = capability
|
||||
@ -1033,7 +1037,12 @@ class SmartThingsSensor(SmartThingsEntity, SensorEntity):
|
||||
@property
|
||||
def native_unit_of_measurement(self) -> str | None:
|
||||
"""Return the unit this state is expressed in."""
|
||||
unit = self._internal_state[self.capability][self._attribute].unit
|
||||
if self.entity_description.use_temperature_unit:
|
||||
unit = self._internal_state[Capability.TEMPERATURE_MEASUREMENT][
|
||||
Attribute.TEMPERATURE
|
||||
].unit
|
||||
else:
|
||||
unit = self._internal_state[self.capability][self._attribute].unit
|
||||
return (
|
||||
UNITS.get(unit, unit)
|
||||
if unit
|
||||
|
@ -110,6 +110,7 @@ def mock_smartthings() -> Generator[AsyncMock]:
|
||||
"da_rvc_normal_000001",
|
||||
"da_ks_microwave_0101x",
|
||||
"da_ks_range_0101x",
|
||||
"da_ks_oven_01061",
|
||||
"hue_color_temperature_bulb",
|
||||
"hue_rgbw_color_bulb",
|
||||
"c2c_shade",
|
||||
|
@ -0,0 +1,566 @@
|
||||
{
|
||||
"components": {
|
||||
"main": {
|
||||
"ovenSetpoint": {
|
||||
"ovenSetpointRange": {
|
||||
"value": null
|
||||
},
|
||||
"ovenSetpoint": {
|
||||
"value": 220,
|
||||
"timestamp": "2025-03-15T12:06:07.818Z"
|
||||
}
|
||||
},
|
||||
"refresh": {},
|
||||
"samsungce.doorState": {
|
||||
"doorState": {
|
||||
"value": "closed",
|
||||
"timestamp": "2025-03-15T09:25:35.157Z"
|
||||
}
|
||||
},
|
||||
"samsungce.microwavePower": {
|
||||
"supportedPowerLevels": {
|
||||
"value": null
|
||||
},
|
||||
"powerLevel": {
|
||||
"value": "0W",
|
||||
"timestamp": "2025-03-15T12:06:07.803Z"
|
||||
}
|
||||
},
|
||||
"samsungce.waterReservoir": {
|
||||
"slotState": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"samsungce.kitchenDeviceDefaults": {
|
||||
"defaultOperationTime": {
|
||||
"value": null
|
||||
},
|
||||
"defaultOvenMode": {
|
||||
"value": "Convection",
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
},
|
||||
"defaultOvenSetpoint": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"execute": {
|
||||
"data": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"samsungce.deviceIdentification": {
|
||||
"micomAssayCode": {
|
||||
"value": null
|
||||
},
|
||||
"modelName": {
|
||||
"value": null
|
||||
},
|
||||
"serialNumber": {
|
||||
"value": null
|
||||
},
|
||||
"serialNumberExtra": {
|
||||
"value": null
|
||||
},
|
||||
"modelClassificationCode": {
|
||||
"value": null
|
||||
},
|
||||
"description": {
|
||||
"value": null
|
||||
},
|
||||
"releaseYear": {
|
||||
"value": null
|
||||
},
|
||||
"binaryId": {
|
||||
"value": "TP1X_DA-KS-OVEN-01061",
|
||||
"timestamp": "2025-03-13T20:35:02.073Z"
|
||||
}
|
||||
},
|
||||
"samsungce.ovenDrainageRequirement": {
|
||||
"drainageRequirement": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"ocf": {
|
||||
"st": {
|
||||
"value": null
|
||||
},
|
||||
"mndt": {
|
||||
"value": null
|
||||
},
|
||||
"mnfv": {
|
||||
"value": "AKS-WW-TP1X-21-OVEN_40211229",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnhw": {
|
||||
"value": "Realtek",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"di": {
|
||||
"value": "9447959a-0dfa-6b27-d40d-650da525c53f",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnsl": {
|
||||
"value": "http://www.samsung.com",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"dmv": {
|
||||
"value": "res.1.1.0,sh.1.1.0",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"n": {
|
||||
"value": "[oven] Samsung",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnmo": {
|
||||
"value": "TP1X_DA-KS-OVEN-01061|40457041|50030018001611000A00000000000000",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"vid": {
|
||||
"value": "DA-KS-OVEN-01061",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnmn": {
|
||||
"value": "Samsung Electronics",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnml": {
|
||||
"value": "http://www.samsung.com",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnpv": {
|
||||
"value": "DAWIT 3.0",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"mnos": {
|
||||
"value": "TizenRT 3.1",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"pi": {
|
||||
"value": "9447959a-0dfa-6b27-d40d-650da525c53f",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
},
|
||||
"icv": {
|
||||
"value": "core.1.1.0",
|
||||
"timestamp": "2025-01-08T17:29:14.260Z"
|
||||
}
|
||||
},
|
||||
"remoteControlStatus": {
|
||||
"remoteControlEnabled": {
|
||||
"value": "true",
|
||||
"timestamp": "2025-03-15T09:47:55.406Z"
|
||||
}
|
||||
},
|
||||
"samsungce.kitchenDeviceIdentification": {
|
||||
"regionCode": {
|
||||
"value": "EU",
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
},
|
||||
"modelCode": {
|
||||
"value": "NQ7000B-/EU7",
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
},
|
||||
"fuel": {
|
||||
"value": null
|
||||
},
|
||||
"type": {
|
||||
"value": "oven",
|
||||
"timestamp": "2025-01-08T17:29:12.924Z"
|
||||
},
|
||||
"representativeComponent": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"samsungce.kitchenModeSpecification": {
|
||||
"specification": {
|
||||
"value": {
|
||||
"single": [
|
||||
{
|
||||
"mode": "NoOperation",
|
||||
"supportedOperations": [],
|
||||
"supportedOptions": {}
|
||||
},
|
||||
{
|
||||
"mode": "Autocook",
|
||||
"supportedOperations": [],
|
||||
"supportedOptions": {}
|
||||
},
|
||||
{
|
||||
"mode": "Convection",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 40,
|
||||
"max": 230,
|
||||
"default": 160,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "FanConventional",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 40,
|
||||
"max": 230,
|
||||
"default": 180,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "LargeGrill",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 150,
|
||||
"max": 230,
|
||||
"default": 220,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "FanGrill",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 40,
|
||||
"max": 230,
|
||||
"default": 180,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "MicroWaveGrill",
|
||||
"supportedOperations": ["set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 40,
|
||||
"max": 200,
|
||||
"default": 200,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:00:10",
|
||||
"max": "01:30:00",
|
||||
"default": "00:00:30",
|
||||
"resolution": "00:00:10"
|
||||
},
|
||||
"powerLevel": {
|
||||
"default": "300W",
|
||||
"supportedValues": ["100W", "180W", "300W", "450W", "600W"]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "MicroWaveConvection",
|
||||
"supportedOperations": ["set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 40,
|
||||
"max": 200,
|
||||
"default": 180,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:00:10",
|
||||
"max": "01:30:00",
|
||||
"default": "00:00:30",
|
||||
"resolution": "00:00:10"
|
||||
},
|
||||
"powerLevel": {
|
||||
"default": "300W",
|
||||
"supportedValues": ["100W", "180W", "300W", "450W", "600W"]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "AirFryer",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 150,
|
||||
"max": 230,
|
||||
"default": 220,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "MicroWave",
|
||||
"supportedOperations": ["set"],
|
||||
"supportedOptions": {
|
||||
"operationTime": {
|
||||
"min": "00:00:10",
|
||||
"max": "01:30:00",
|
||||
"default": "00:00:30",
|
||||
"resolution": "00:00:10"
|
||||
},
|
||||
"powerLevel": {
|
||||
"default": "800W",
|
||||
"supportedValues": [
|
||||
"100W",
|
||||
"180W",
|
||||
"300W",
|
||||
"450W",
|
||||
"600W",
|
||||
"700W",
|
||||
"800W"
|
||||
]
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "Deodorization",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"operationTime": {
|
||||
"min": "00:00:10",
|
||||
"max": "00:15:00",
|
||||
"default": "00:05:00",
|
||||
"resolution": "00:00:10"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "KeepWarm",
|
||||
"supportedOperations": ["start", "set"],
|
||||
"supportedOptions": {
|
||||
"temperature": {
|
||||
"C": {
|
||||
"min": 60,
|
||||
"max": 100,
|
||||
"default": 60,
|
||||
"resolution": 5
|
||||
}
|
||||
},
|
||||
"operationTime": {
|
||||
"min": "00:01:00",
|
||||
"max": "10:00:00",
|
||||
"default": "01:00:00",
|
||||
"resolution": "00:01:00"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"mode": "SteamClean",
|
||||
"supportedOperations": ["set"],
|
||||
"supportedOptions": {}
|
||||
}
|
||||
]
|
||||
},
|
||||
"timestamp": "2025-01-08T17:29:14.757Z"
|
||||
}
|
||||
},
|
||||
"custom.disabledCapabilities": {
|
||||
"disabledCapabilities": {
|
||||
"value": [
|
||||
"samsungce.waterReservoir",
|
||||
"samsungce.ovenDrainageRequirement"
|
||||
],
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
}
|
||||
},
|
||||
"samsungce.definedRecipe": {
|
||||
"definedRecipe": {
|
||||
"value": {
|
||||
"cavityId": "0",
|
||||
"recipeType": "0",
|
||||
"categoryId": 0,
|
||||
"itemId": 0,
|
||||
"servingSize": 0,
|
||||
"browingLevel": 0,
|
||||
"option": 0
|
||||
},
|
||||
"timestamp": "2025-03-15T12:06:07.803Z"
|
||||
}
|
||||
},
|
||||
"samsungce.driverVersion": {
|
||||
"versionNumber": {
|
||||
"value": 22100101,
|
||||
"timestamp": "2025-01-08T17:29:12.924Z"
|
||||
}
|
||||
},
|
||||
"samsungce.softwareUpdate": {
|
||||
"targetModule": {
|
||||
"value": null
|
||||
},
|
||||
"otnDUID": {
|
||||
"value": "43CB2ZD4VUEGW",
|
||||
"timestamp": "2025-03-13T20:35:02.073Z"
|
||||
},
|
||||
"lastUpdatedDate": {
|
||||
"value": null
|
||||
},
|
||||
"availableModules": {
|
||||
"value": [],
|
||||
"timestamp": "2025-03-13T20:35:02.073Z"
|
||||
},
|
||||
"newVersionAvailable": {
|
||||
"value": false,
|
||||
"timestamp": "2025-03-13T20:35:02.073Z"
|
||||
},
|
||||
"operatingState": {
|
||||
"value": null
|
||||
},
|
||||
"progress": {
|
||||
"value": null
|
||||
}
|
||||
},
|
||||
"temperatureMeasurement": {
|
||||
"temperatureRange": {
|
||||
"value": null
|
||||
},
|
||||
"temperature": {
|
||||
"value": 30,
|
||||
"unit": "C",
|
||||
"timestamp": "2025-03-15T12:06:32.918Z"
|
||||
}
|
||||
},
|
||||
"samsungce.ovenOperatingState": {
|
||||
"completionTime": {
|
||||
"value": "2025-03-15T12:06:09.550Z",
|
||||
"timestamp": "2025-03-15T12:06:09.554Z"
|
||||
},
|
||||
"operatingState": {
|
||||
"value": "running",
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
},
|
||||
"progress": {
|
||||
"value": 0,
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
},
|
||||
"ovenJobState": {
|
||||
"value": "preheat",
|
||||
"timestamp": "2025-03-15T12:06:07.803Z"
|
||||
},
|
||||
"operationTime": {
|
||||
"value": "00:00:00",
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
}
|
||||
},
|
||||
"ovenMode": {
|
||||
"supportedOvenModes": {
|
||||
"value": ["Others", "Bake", "Broil", "ConvectionBroil", "warming"],
|
||||
"timestamp": "2025-01-08T17:29:14.757Z"
|
||||
},
|
||||
"ovenMode": {
|
||||
"value": "Bake",
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
}
|
||||
},
|
||||
"ovenOperatingState": {
|
||||
"completionTime": {
|
||||
"value": "2025-03-15T12:06:09.550Z",
|
||||
"timestamp": "2025-03-15T12:06:09.554Z"
|
||||
},
|
||||
"machineState": {
|
||||
"value": "running",
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
},
|
||||
"progress": {
|
||||
"value": 0,
|
||||
"unit": "%",
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
},
|
||||
"supportedMachineStates": {
|
||||
"value": null
|
||||
},
|
||||
"ovenJobState": {
|
||||
"value": "preheat",
|
||||
"timestamp": "2025-03-15T12:06:07.803Z"
|
||||
},
|
||||
"operationTime": {
|
||||
"value": 0,
|
||||
"timestamp": "2025-03-15T12:06:07.866Z"
|
||||
}
|
||||
},
|
||||
"samsungce.ovenMode": {
|
||||
"supportedOvenModes": {
|
||||
"value": [
|
||||
"NoOperation",
|
||||
"Autocook",
|
||||
"Convection",
|
||||
"FanConventional",
|
||||
"LargeGrill",
|
||||
"FanGrill",
|
||||
"MicroWaveGrill",
|
||||
"MicroWaveConvection",
|
||||
"AirFryer",
|
||||
"MicroWave",
|
||||
"Deodorization",
|
||||
"KeepWarm",
|
||||
"SteamClean"
|
||||
],
|
||||
"timestamp": "2025-01-08T17:29:14.757Z"
|
||||
},
|
||||
"ovenMode": {
|
||||
"value": "Convection",
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
}
|
||||
},
|
||||
"samsungce.lamp": {
|
||||
"brightnessLevel": {
|
||||
"value": "high",
|
||||
"timestamp": "2025-03-15T12:06:07.956Z"
|
||||
},
|
||||
"supportedBrightnessLevel": {
|
||||
"value": ["off", "high"],
|
||||
"timestamp": "2025-03-15T12:06:07.758Z"
|
||||
}
|
||||
},
|
||||
"samsungce.kidsLock": {
|
||||
"lockState": {
|
||||
"value": "unlocked",
|
||||
"timestamp": "2025-03-13T20:35:02.170Z"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,153 @@
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"deviceId": "9447959a-0dfa-6b27-d40d-650da525c53f",
|
||||
"name": "[oven] Samsung",
|
||||
"label": "Oven",
|
||||
"manufacturerName": "Samsung Electronics",
|
||||
"presentationId": "DA-KS-OVEN-01061",
|
||||
"deviceManufacturerCode": "Samsung Electronics",
|
||||
"locationId": "a81dc8da-5a3f-43b6-8c8a-1309f37eeeb9",
|
||||
"ownerId": "97ee2149-9de0-3287-8245-24d6fd1609aa",
|
||||
"roomId": "eb2167dd-8b8d-4131-b59e-5dd391b2e151",
|
||||
"deviceTypeName": "Samsung OCF Oven",
|
||||
"components": [
|
||||
{
|
||||
"id": "main",
|
||||
"label": "main",
|
||||
"capabilities": [
|
||||
{
|
||||
"id": "ocf",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "execute",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "refresh",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "remoteControlStatus",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "ovenSetpoint",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "ovenMode",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "ovenOperatingState",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "temperatureMeasurement",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.deviceIdentification",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.doorState",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.definedRecipe",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.kitchenDeviceIdentification",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.kitchenDeviceDefaults",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.driverVersion",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.ovenMode",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.ovenOperatingState",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.microwavePower",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.lamp",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.kitchenModeSpecification",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.kidsLock",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.softwareUpdate",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.waterReservoir",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "samsungce.ovenDrainageRequirement",
|
||||
"version": 1
|
||||
},
|
||||
{
|
||||
"id": "custom.disabledCapabilities",
|
||||
"version": 1
|
||||
}
|
||||
],
|
||||
"categories": [
|
||||
{
|
||||
"name": "Oven",
|
||||
"categoryType": "manufacturer"
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"createTime": "2025-01-08T17:29:12.549Z",
|
||||
"profile": {
|
||||
"id": "eb34598f-f96a-3420-a90a-71693052eaa3"
|
||||
},
|
||||
"ocf": {
|
||||
"ocfDeviceType": "oic.d.oven",
|
||||
"name": "[oven] Samsung",
|
||||
"specVersion": "core.1.1.0",
|
||||
"verticalDomainSpecVersion": "res.1.1.0,sh.1.1.0",
|
||||
"manufacturerName": "Samsung Electronics",
|
||||
"modelNumber": "TP1X_DA-KS-OVEN-01061|40457041|50030018001611000A00000000000000",
|
||||
"platformVersion": "DAWIT 3.0",
|
||||
"platformOS": "TizenRT 3.1",
|
||||
"hwVersion": "Realtek",
|
||||
"firmwareVersion": "AKS-WW-TP1X-21-OVEN_40211229",
|
||||
"vendorId": "DA-KS-OVEN-01061",
|
||||
"vendorResourceClientServerVersion": "Realtek Release 3.1.211122",
|
||||
"lastSignupTime": "2025-01-08T17:29:08.536664213Z",
|
||||
"transferCandidate": false,
|
||||
"additionalAuthCodeRequired": false
|
||||
},
|
||||
"type": "OCF",
|
||||
"restrictionTier": 0,
|
||||
"allowed": null,
|
||||
"executionContext": "CLOUD",
|
||||
"relationships": []
|
||||
}
|
||||
],
|
||||
"_links": {}
|
||||
}
|
@ -398,6 +398,39 @@
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_devices[da_ks_oven_01061]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
'config_entries': <ANY>,
|
||||
'config_entries_subentries': <ANY>,
|
||||
'configuration_url': 'https://account.smartthings.com',
|
||||
'connections': set({
|
||||
}),
|
||||
'disabled_by': None,
|
||||
'entry_type': None,
|
||||
'hw_version': 'Realtek',
|
||||
'id': <ANY>,
|
||||
'identifiers': set({
|
||||
tuple(
|
||||
'smartthings',
|
||||
'9447959a-0dfa-6b27-d40d-650da525c53f',
|
||||
),
|
||||
}),
|
||||
'is_new': False,
|
||||
'labels': set({
|
||||
}),
|
||||
'manufacturer': 'Samsung Electronics',
|
||||
'model': 'TP1X_DA-KS-OVEN-01061',
|
||||
'model_id': None,
|
||||
'name': 'Oven',
|
||||
'name_by_user': None,
|
||||
'primary_config_entry': <ANY>,
|
||||
'serial_number': None,
|
||||
'suggested_area': None,
|
||||
'sw_version': 'AKS-WW-TP1X-21-OVEN_40211229',
|
||||
'via_device_id': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_devices[da_ks_range_0101x]
|
||||
DeviceRegistryEntrySnapshot({
|
||||
'area_id': None,
|
||||
|
@ -2085,6 +2085,404 @@
|
||||
'state': '-17',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_completion_time-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': None,
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.oven_completion_time',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.TIMESTAMP: 'timestamp'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Completion time',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'completion_time',
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.completionTime',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_completion_time-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'timestamp',
|
||||
'friendly_name': 'Oven Completion time',
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_completion_time',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '2025-03-15T12:06:09+00:00',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_job_state-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'options': list([
|
||||
'cleaning',
|
||||
'cooking',
|
||||
'cooling',
|
||||
'draining',
|
||||
'preheat',
|
||||
'ready',
|
||||
'rinsing',
|
||||
'finished',
|
||||
'scheduled_start',
|
||||
'warming',
|
||||
'defrosting',
|
||||
'sensing',
|
||||
'searing',
|
||||
'fast_preheat',
|
||||
'scheduled_end',
|
||||
'stone_heating',
|
||||
'time_hold_preheat',
|
||||
]),
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.oven_job_state',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Job state',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'oven_job_state',
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenJobState',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_job_state-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'enum',
|
||||
'friendly_name': 'Oven Job state',
|
||||
'options': list([
|
||||
'cleaning',
|
||||
'cooking',
|
||||
'cooling',
|
||||
'draining',
|
||||
'preheat',
|
||||
'ready',
|
||||
'rinsing',
|
||||
'finished',
|
||||
'scheduled_start',
|
||||
'warming',
|
||||
'defrosting',
|
||||
'sensing',
|
||||
'searing',
|
||||
'fast_preheat',
|
||||
'scheduled_end',
|
||||
'stone_heating',
|
||||
'time_hold_preheat',
|
||||
]),
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_job_state',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'preheat',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_machine_state-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'options': list([
|
||||
'ready',
|
||||
'running',
|
||||
'paused',
|
||||
]),
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.oven_machine_state',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Machine state',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'oven_machine_state',
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.machineState',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_machine_state-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'enum',
|
||||
'friendly_name': 'Oven Machine state',
|
||||
'options': list([
|
||||
'ready',
|
||||
'running',
|
||||
'paused',
|
||||
]),
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_machine_state',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'running',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_oven_mode-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'options': list([
|
||||
'conventional',
|
||||
'bake',
|
||||
'bottom_heat',
|
||||
'convection_bake',
|
||||
'convection_roast',
|
||||
'broil',
|
||||
'convection_broil',
|
||||
'steam_cook',
|
||||
'steam_bake',
|
||||
'steam_roast',
|
||||
'steam_bottom_heat_plus_convection',
|
||||
'microwave',
|
||||
'microwave_plus_grill',
|
||||
'microwave_plus_convection',
|
||||
'microwave_plus_hot_blast',
|
||||
'microwave_plus_hot_blast_2',
|
||||
'slim_middle',
|
||||
'slim_strong',
|
||||
'slow_cook',
|
||||
'proof',
|
||||
'dehydrate',
|
||||
'others',
|
||||
'strong_steam',
|
||||
'descale',
|
||||
'rinse',
|
||||
]),
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': <EntityCategory.DIAGNOSTIC: 'diagnostic'>,
|
||||
'entity_id': 'sensor.oven_oven_mode',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.ENUM: 'enum'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Oven mode',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'oven_mode',
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenMode',
|
||||
'unit_of_measurement': None,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_oven_mode-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'enum',
|
||||
'friendly_name': 'Oven Oven mode',
|
||||
'options': list([
|
||||
'conventional',
|
||||
'bake',
|
||||
'bottom_heat',
|
||||
'convection_bake',
|
||||
'convection_roast',
|
||||
'broil',
|
||||
'convection_broil',
|
||||
'steam_cook',
|
||||
'steam_bake',
|
||||
'steam_roast',
|
||||
'steam_bottom_heat_plus_convection',
|
||||
'microwave',
|
||||
'microwave_plus_grill',
|
||||
'microwave_plus_convection',
|
||||
'microwave_plus_hot_blast',
|
||||
'microwave_plus_hot_blast_2',
|
||||
'slim_middle',
|
||||
'slim_strong',
|
||||
'slow_cook',
|
||||
'proof',
|
||||
'dehydrate',
|
||||
'others',
|
||||
'strong_steam',
|
||||
'descale',
|
||||
'rinse',
|
||||
]),
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_oven_mode',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': 'bake',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_set_point-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': None,
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.oven_set_point',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Set point',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': 'oven_setpoint',
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.ovenSetpoint',
|
||||
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_set_point-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'temperature',
|
||||
'friendly_name': 'Oven Set point',
|
||||
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_set_point',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '220',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_temperature-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
}),
|
||||
'area_id': None,
|
||||
'capabilities': dict({
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
}),
|
||||
'config_entry_id': <ANY>,
|
||||
'config_subentry_id': <ANY>,
|
||||
'device_class': None,
|
||||
'device_id': <ANY>,
|
||||
'disabled_by': None,
|
||||
'domain': 'sensor',
|
||||
'entity_category': None,
|
||||
'entity_id': 'sensor.oven_temperature',
|
||||
'has_entity_name': True,
|
||||
'hidden_by': None,
|
||||
'icon': None,
|
||||
'id': <ANY>,
|
||||
'labels': set({
|
||||
}),
|
||||
'name': None,
|
||||
'options': dict({
|
||||
}),
|
||||
'original_device_class': <SensorDeviceClass.TEMPERATURE: 'temperature'>,
|
||||
'original_icon': None,
|
||||
'original_name': 'Temperature',
|
||||
'platform': 'smartthings',
|
||||
'previous_unique_id': None,
|
||||
'supported_features': 0,
|
||||
'translation_key': None,
|
||||
'unique_id': '9447959a-0dfa-6b27-d40d-650da525c53f.temperature',
|
||||
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_oven_01061][sensor.oven_temperature-state]
|
||||
StateSnapshot({
|
||||
'attributes': ReadOnlyDict({
|
||||
'device_class': 'temperature',
|
||||
'friendly_name': 'Oven Temperature',
|
||||
'state_class': <SensorStateClass.MEASUREMENT: 'measurement'>,
|
||||
'unit_of_measurement': <UnitOfTemperature.CELSIUS: '°C'>,
|
||||
}),
|
||||
'context': <ANY>,
|
||||
'entity_id': 'sensor.oven_temperature',
|
||||
'last_changed': <ANY>,
|
||||
'last_reported': <ANY>,
|
||||
'last_updated': <ANY>,
|
||||
'state': '30',
|
||||
})
|
||||
# ---
|
||||
# name: test_all_entities[da_ks_range_0101x][sensor.vulcan_completion_time-entry]
|
||||
EntityRegistryEntrySnapshot({
|
||||
'aliases': set({
|
||||
|
Loading…
x
Reference in New Issue
Block a user