blueair-api 1.37.0__tar.gz → 1.38.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {blueair_api-1.37.0 → blueair_api-1.38.0}/PKG-INFO +1 -1
- {blueair_api-1.37.0 → blueair_api-1.38.0}/pyproject.toml +1 -1
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/device_aws.py +4 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/model_enum.py +1 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api.egg-info/PKG-INFO +1 -1
- {blueair_api-1.37.0 → blueair_api-1.38.0}/tests/test_device_aws.py +61 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/LICENSE +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/README.md +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/setup.cfg +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/__init__.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/callbacks.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/const.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/device.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/errors.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/http_aws_blueair.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/http_blueair.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/intermediate_representation_aws.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/stub.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/util.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/util_bootstrap.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/util_http.py +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api.egg-info/SOURCES.txt +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api.egg-info/dependency_links.txt +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api.egg-info/requires.txt +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api.egg-info/top_level.txt +0 -0
- {blueair_api-1.37.0 → blueair_api-1.38.0}/tests/test_intermediate_representation_aws.py +0 -0
@@ -59,6 +59,7 @@ class DeviceAws(CallbacksMixin):
|
|
59
59
|
pm2_5 : AttributeType[int] = None
|
60
60
|
pm10 : AttributeType[int] = None
|
61
61
|
tVOC : AttributeType[int] = None
|
62
|
+
VOC : AttributeType[int] = None
|
62
63
|
temperature : AttributeType[int] = None
|
63
64
|
humidity : AttributeType[int] = None
|
64
65
|
filter_usage_percentage : AttributeType[int] = None
|
@@ -99,6 +100,7 @@ class DeviceAws(CallbacksMixin):
|
|
99
100
|
self.pm2_5 = sensor_data_safe_get("pm2_5")
|
100
101
|
self.pm10 = sensor_data_safe_get("pm10")
|
101
102
|
self.tVOC = sensor_data_safe_get("tVOC")
|
103
|
+
self.VOC = sensor_data_safe_get("VOC")
|
102
104
|
self.temperature = sensor_data_safe_get("t")
|
103
105
|
self.humidity = sensor_data_safe_get("h")
|
104
106
|
self.fan_speed_0 = sensor_data_safe_get("fsp0")
|
@@ -262,4 +264,6 @@ class DeviceAws(CallbacksMixin):
|
|
262
264
|
return ModelEnum.MAX_311I_PLUS
|
263
265
|
if self.sku == "112929":
|
264
266
|
return ModelEnum.BLUE_SIGNATURE
|
267
|
+
if self.sku == "112793":
|
268
|
+
return ModelEnum.PET_AIR_PRO
|
265
269
|
return ModelEnum.UNKNOWN
|
@@ -363,6 +363,7 @@ class EmptyDeviceAwsTest(DeviceAwsTestBase):
|
|
363
363
|
assert device.pm2_5 is NotImplemented
|
364
364
|
assert device.pm10 is NotImplemented
|
365
365
|
assert device.tVOC is NotImplemented
|
366
|
+
assert device.VOC is NotImplemented
|
366
367
|
assert device.temperature is NotImplemented
|
367
368
|
assert device.humidity is NotImplemented
|
368
369
|
assert device.name is NotImplemented
|
@@ -417,6 +418,7 @@ class H35iTest(DeviceAwsTestBase):
|
|
417
418
|
assert device.pm2_5 is NotImplemented
|
418
419
|
assert device.pm10 is NotImplemented
|
419
420
|
assert device.tVOC is NotImplemented
|
421
|
+
assert device.VOC is NotImplemented
|
420
422
|
assert device.temperature is None
|
421
423
|
assert device.humidity is None
|
422
424
|
assert device.name == "Bedroom"
|
@@ -470,6 +472,7 @@ class Max311iTest(DeviceAwsTestBase):
|
|
470
472
|
assert device.pm2_5 is None
|
471
473
|
assert device.pm10 is NotImplemented
|
472
474
|
assert device.tVOC is NotImplemented
|
475
|
+
assert device.VOC is NotImplemented
|
473
476
|
assert device.temperature is NotImplemented
|
474
477
|
assert device.humidity is NotImplemented
|
475
478
|
assert device.name == "Loft"
|
@@ -524,6 +527,7 @@ class T10iTest(DeviceAwsTestBase):
|
|
524
527
|
assert device.pm2_5 is None
|
525
528
|
assert device.pm10 is NotImplemented
|
526
529
|
assert device.tVOC is NotImplemented
|
530
|
+
assert device.VOC is NotImplemented
|
527
531
|
assert device.temperature is None
|
528
532
|
assert device.humidity is None
|
529
533
|
assert device.name == "Allen's Office"
|
@@ -580,6 +584,7 @@ class Protect7470iTest(DeviceAwsTestBase):
|
|
580
584
|
assert device.pm2_5 == 0
|
581
585
|
assert device.pm10 == 0
|
582
586
|
assert device.tVOC == 134
|
587
|
+
assert device.VOC is NotImplemented
|
583
588
|
assert device.temperature == 23
|
584
589
|
assert device.humidity == 55
|
585
590
|
assert device.name == "air filter in room"
|
@@ -634,6 +639,7 @@ class Max211iTest(DeviceAwsTestBase):
|
|
634
639
|
assert device.pm2_5 is None
|
635
640
|
assert device.pm10 is None
|
636
641
|
assert device.tVOC is NotImplemented
|
642
|
+
assert device.VOC is NotImplemented
|
637
643
|
assert device.temperature is NotImplemented
|
638
644
|
assert device.humidity is NotImplemented
|
639
645
|
assert device.name == "Bedroom Purifier"
|
@@ -664,3 +670,58 @@ class Max211iTest(DeviceAwsTestBase):
|
|
664
670
|
assert device.ap_sub_mode is NotImplemented
|
665
671
|
assert device.fan_speed_0 is None
|
666
672
|
assert device.temperature_unit is NotImplemented
|
673
|
+
|
674
|
+
|
675
|
+
class PetAirProTest(DeviceAwsTestBase):
|
676
|
+
"""Tests for PetPro."""
|
677
|
+
|
678
|
+
def setUp(self):
|
679
|
+
super().setUp()
|
680
|
+
with open(resources.files().joinpath('device_info/pet_air_pro.json')) as sample_file:
|
681
|
+
info = json.load(sample_file)
|
682
|
+
self.device_info_helper.info.update(info)
|
683
|
+
|
684
|
+
async def test_attributes(self):
|
685
|
+
|
686
|
+
await self.device.refresh()
|
687
|
+
self.api.device_info.assert_awaited_with("fake-name-api", "fake-uuid")
|
688
|
+
|
689
|
+
with assert_fully_checked(self.device) as device:
|
690
|
+
|
691
|
+
assert device.model == ModelEnum.PET_AIR_PRO
|
692
|
+
|
693
|
+
assert device.pm1 is None
|
694
|
+
assert device.pm2_5 is None
|
695
|
+
assert device.pm10 is None
|
696
|
+
assert device.tVOC is NotImplemented
|
697
|
+
assert device.VOC is NotImplemented
|
698
|
+
assert device.temperature is NotImplemented
|
699
|
+
assert device.humidity is NotImplemented
|
700
|
+
assert device.name == "PetAir Pro"
|
701
|
+
assert device.firmware == "1.0.3"
|
702
|
+
assert device.mcu_firmware == "1.0.3"
|
703
|
+
assert device.serial_number == "111279300002313310000090"
|
704
|
+
assert device.sku == "112793"
|
705
|
+
|
706
|
+
assert device.standby is False
|
707
|
+
assert device.night_mode is NotImplemented
|
708
|
+
assert device.germ_shield is NotImplemented
|
709
|
+
assert device.brightness == 100.0
|
710
|
+
assert device.child_lock is False
|
711
|
+
assert device.fan_speed == 91.0
|
712
|
+
assert device.fan_auto_mode is NotImplemented
|
713
|
+
assert device.filter_usage_percentage == 5.0
|
714
|
+
assert device.wifi_working is False
|
715
|
+
assert device.wick_usage_percentage is NotImplemented
|
716
|
+
assert device.auto_regulated_humidity is NotImplemented
|
717
|
+
assert device.water_shortage is NotImplemented
|
718
|
+
assert device.wick_dry_mode is NotImplemented
|
719
|
+
assert device.main_mode == 0.0
|
720
|
+
assert device.heat_temp is NotImplemented
|
721
|
+
assert device.heat_sub_mode is NotImplemented
|
722
|
+
assert device.heat_fan_speed is NotImplemented
|
723
|
+
assert device.cool_sub_mode is NotImplemented
|
724
|
+
assert device.cool_fan_speed is NotImplemented
|
725
|
+
assert device.ap_sub_mode == 1.0
|
726
|
+
assert device.fan_speed_0 is None
|
727
|
+
assert device.temperature_unit is NotImplemented
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{blueair_api-1.37.0 → blueair_api-1.38.0}/src/blueair_api/intermediate_representation_aws.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|