diff --git a/README.md b/README.md index 2f3834d64..e4df39bc4 100644 --- a/README.md +++ b/README.md @@ -204,7 +204,7 @@ The following devices have been tested and confirmed as working. If your device - **Cameras**: C100, C110, C210, C220, C225, C325WB, C520WS, C720, TC65, TC70 - **Doorbells and chimes**: D100C, D130, D230 - **Vacuums**: RV20 Max Plus, RV30 Max -- **Hubs**: H100, H200 +- **Hubs**: H100, H200, H500 - **Hub-Connected Devices[^3]**: S200B, S200D, T100, T110, T300, T310, T315 diff --git a/SUPPORTED.md b/SUPPORTED.md index f081b1945..ab5715ebf 100644 --- a/SUPPORTED.md +++ b/SUPPORTED.md @@ -341,6 +341,8 @@ All Tapo devices require authentication.
Hub-Connected Devices may work acros - Hardware: 1.0 (EU) / Firmware: 1.3.2 - Hardware: 1.0 (EU) / Firmware: 1.3.6 - Hardware: 1.0 (US) / Firmware: 1.3.6 +- **H500** + - Hardware: 1.0 (EU) / Firmware: 1.3.8 ### Hub-Connected Devices diff --git a/tests/fixtures/smartcam/H500(EU)_1.0_1.3.8.json b/tests/fixtures/smartcam/H500(EU)_1.0_1.3.8.json new file mode 100644 index 000000000..46e358383 --- /dev/null +++ b/tests/fixtures/smartcam/H500(EU)_1.0_1.3.8.json @@ -0,0 +1,383 @@ +{ + "discovery_result": { + "error_code": 0, + "result": { + "decrypted_data": { + "connect_ssid": "", + "connect_type": "wired", + "device_id": "0000000000000000000000000000000000000000", + "http_port": 443, + "owner": "00000000000000000000000000000000", + "sd_status": "offline" + }, + "device_id": "00000000000000000000000000000000", + "device_model": "H500", + "device_name": "#MASKED_NAME#", + "device_type": "SMART.TAPOHUB", + "encrypt_info": { + "data": "", + "key": "", + "sym_schm": "AES" + }, + "encrypt_type": [ + "3" + ], + "factory_default": false, + "hardware_version": "1.0", + "ip": "127.0.0.123", + "isResetWiFi": false, + "is_support_iot_cloud": true, + "mac": "CC-BA-BD-00-00-00", + "mgt_encrypt_schm": { + "is_support_https": true + }, + "sv": 1 + } + }, + "getAlertConfig": {}, + "getAppComponentList": { + "app_component": { + "app_component_list": [ + { + "name": "dateTime", + "version": 1 + }, + { + "name": "system", + "version": 4 + }, + { + "name": "led", + "version": 1 + }, + { + "name": "firmware", + "version": 2 + }, + { + "name": "account", + "version": 1 + }, + { + "name": "quickSetup", + "version": 1 + }, + { + "name": "hubRecord", + "version": 2 + }, + { + "name": "deviceShare", + "version": 1 + }, + { + "name": "siren", + "version": 2 + }, + { + "name": "childControl", + "version": 1 + }, + { + "name": "childQuickSetup", + "version": 1 + }, + { + "name": "childInherit", + "version": 1 + }, + { + "name": "deviceLoad", + "version": 1 + }, + { + "name": "subg", + "version": 2 + }, + { + "name": "iotCloud", + "version": 1 + }, + { + "name": "diagnose", + "version": 1 + }, + { + "name": "preWakeUp", + "version": 1 + }, + { + "name": "supportRE", + "version": 1 + }, + { + "name": "testSignal", + "version": 1 + }, + { + "name": "dataDownload", + "version": 1 + }, + { + "name": "testChildSignal", + "version": 1 + }, + { + "name": "ringLog", + "version": 1 + }, + { + "name": "usbsharemanage", + "version": 1 + }, + { + "name": "hardDisk", + "version": 1 + }, + { + "name": "playbackDelete", + "version": 1 + }, + { + "name": "usrDefAudio", + "version": 1 + }, + { + "name": "mirrorscreen", + "version": 1 + }, + { + "name": "AIEnhance", + "version": 1 + }, + { + "name": "faceDetection", + "version": 1 + }, + { + "name": "snapshot", + "version": 2 + }, + { + "name": "faceTracking", + "version": 1 + }, + { + "name": "matter", + "version": 1 + }, + { + "name": "matterControl", + "version": 1 + }, + { + "name": "localSmart", + "version": 1 + }, + { + "name": "generalCameraManage", + "version": 1 + }, + { + "name": "multiLensCamMgmt", + "version": 1 + }, + { + "name": "playback", + "version": 6 + }, + { + "name": "chime", + "version": 2 + }, + { + "name": "hubPlayback", + "version": 1 + }, + { + "name": "migrate", + "version": 1 + }, + { + "name": "aovStorage", + "version": 1 + } + ] + } + }, + "getCircularRecordingConfig": { + "harddisk_manage": { + "harddisk": { + "loop": "on" + } + } + }, + "getClockStatus": { + "system": { + "clock_status": { + "local_time": "2025-11-28 11:01:38", + "seconds_from_1970": 1764324098 + } + } + }, + "getConnectionType": { + "link_type": "ethernet" + }, + "getDeviceInfo": { + "device_info": { + "basic_info": { + "avatar": "gateway", + "bind_status": true, + "child_num": 1, + "dev_id": "0000000000000000000000000000000000000000", + "device_alias": "#MASKED_NAME#", + "device_info": "H500 1.0", + "device_model": "H500", + "device_name": "#MASKED_NAME#", + "device_type": "SMART.TAPOHUB", + "has_set_location_info": 0, + "hw_id": "00000000000000000000000000000000", + "hw_version": "1.0", + "latitude": 0, + "local_ip": "127.0.0.123", + "longitude": 0, + "mac": "CC-BA-BD-00-00-00", + "matter_controller_leader_dev_id": "802D238EAE1FA896C535295A843FBC1324A6A258", + "matter_controller_occupation": "leader", + "need_sync_sha1_password": 0, + "oem_id": "00000000000000000000000000000000", + "product_name": "Smart HomeBase", + "region": "EU", + "status": "configured", + "subg_phyid": "f863p35", + "sw_version": "1.3.8 Build 20251024 rel.82184" + }, + "info": { + "avatar": "gateway", + "bind_status": true, + "child_num": 1, + "dev_id": "0000000000000000000000000000000000000000", + "device_alias": "#MASKED_NAME#", + "device_info": "H500 1.0", + "device_model": "H500", + "device_name": "#MASKED_NAME#", + "device_type": "SMART.TAPOHUB", + "has_set_location_info": 0, + "hw_id": "00000000000000000000000000000000", + "hw_version": "1.0", + "latitude": 0, + "local_ip": "127.0.0.123", + "longitude": 0, + "mac": "CC-BA-BD-00-00-00", + "matter_controller_leader_dev_id": "802D238EAE1FA896C535295A843FBC1324A6A258", + "matter_controller_occupation": "leader", + "need_sync_sha1_password": 0, + "oem_id": "00000000000000000000000000000000", + "product_name": "Smart HomeBase", + "region": "EU", + "status": "configured", + "subg_phyid": "f863p35", + "sw_version": "1.3.8 Build 20251024 rel.82184" + } + } + }, + "getFirmwareAutoUpgradeConfig": { + "auto_upgrade": { + "common": { + "enabled": "on", + "random_range": 120, + "time": "03:00" + } + } + }, + "getFirmwareUpdateStatus": { + "cloud_config": { + "upgrade_status": { + "lastUpgradingSuccess": true, + "state": "normal" + } + } + }, + "getLedStatus": { + "led": { + "config": { + ".name": "config", + ".type": "led", + "enabled": "on" + } + } + }, + "getMatterSetupInfo": { + "setup_code": "00000000000", + "setup_payload": "00:0.00000000000000000" + }, + "getMediaEncrypt": { + "cet": { + "media_encrypt": { + "enabled": "on" + } + } + }, + "getSdCardStatus": { + "harddisk_manage": { + "hd_info": [ + { + "hd_info_1": { + "detect_status": "failed", + "disk_name": "1", + "free_space": "8.14 GB", + "loop_record_status": "1", + "percent": "100", + "rw_attr": "rw", + "status": "normal", + "total_space": "10.00 GB", + "type": "local", + "video_free_space": "7.64 GB", + "video_total_space": "9.50 GB", + "write_protect": "0" + } + } + ] + } + }, + "getSirenConfig": { + "duration": 300, + "siren_type": "Doorbell Ring 1", + "volume": "6" + }, + "getSirenStatus": { + "status": "off", + "time_left": 0 + }, + "getSirenTypeList": { + "siren_type_list": [ + "Doorbell Ring 1", + "Doorbell Ring 2", + "Doorbell Ring 3", + "Doorbell Ring 4", + "Doorbell Ring 5", + "Doorbell Ring 6", + "Doorbell Ring 7", + "Doorbell Ring 8", + "Doorbell Ring 9", + "Doorbell Ring 10", + "Phone Ring", + "Dripping Tap", + "Alarm 1", + "Alarm 2", + "Alarm 3", + "Alarm 4", + "Alarm 5", + "Connection 1", + "Connection 2" + ] + }, + "getTimezone": { + "system": { + "basic": { + "timezone": "UTC+01:00", + "zone_id": "Europe/Amsterdam" + } + } + } +}