-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature Request: Tapo C720 spotlight on / off control that is NOT timed #715
Comments
I have this info here. i enabled debug logging and then reloaded the camera, and then stopped debug logging 2024-11-27 23:31:07.916 DEBUG (MainThread) [custom_components.tapo_control] {'getTimezone': [{'system': {'basic': {'timing_mode': 'manual', 'zone_id': 'Australia/Canberra', 'timezone': 'UTC+10:00'}}}], 'getAlertTypeList': [{'msg_alarm': {'alert_type': {'alert_type_list': ['Siren', 'Emergency', 'Red Alert']}}}], 'getNightVisionCapability': [{'image_capability': {'supplement_lamp': {'supplement_lamp_type': ['infrared_lamp', 'white_lamp'], 'night_vision_mode_range': ['inf_night_vision']}}}], 'getDeviceInfo': [{'device_info': {'basic_info': {'device_type': 'SMART.IPCAMERA', 'device_info': 'C720 1.0 IPC', 'features': 3, 'barcode': '', 'device_model': 'C720', 'sw_version': '1.1.13 Build 240605 Rel.57257n', 'device_name': 'C720 1.0', 'hw_version': '1.0', 'device_alias': 'Floodlight 1', 'mobile_access': '0', 'mac': '7C-F1-7E-64-60-04', 'dev_id': '80219C254EC65412CDF9228D495129812332483B', 'hw_id': '62992BD7256BE676C319809E05EB5CD6', 'oem_id': 'D959D86BEE99ED0014F66F3BC81549D3', 'hw_desc': '00000000000000000000000000000000', 'manufacturer_name': 'TP-LINK', 'region': 'EU', 'ffs': False, 'is_cal': True, 'avatar': 'camera c720', 'has_set_location_info': 1, 'longitude': 1511229, 'latitude': -338073, 'no_rtsp_constrain': 1}}}], 'getDetectionConfig': [{'motion_detection': {'motion_det': {'enabled': 'off', 'sensitivity': 'medium', 'digital_sensitivity': '60', 'people_enabled': 'off', 'vehicle_enabled': 'off', 'non_vehicle_enabled': 'off'}}}], 'getPersonDetectionConfig': [{'people_detection': {'detection': {'enabled': 'off', 'sensitivity': '60'}}}], 'getVehicleDetectionConfig': [{'vehicle_detection': {'detection': {'enabled': 'off', 'sensitivity': '60'}}}], 'getBCDConfig': [False], 'getPetDetectionConfig': [{'pet_detection': {'detection': {'enabled': 'off', 'sensitivity': '60'}}}], 'getBarkDetectionConfig': [False], 'getMeowDetectionConfig': [False], 'getGlassDetectionConfig': [False], 'getTamperDetectionConfig': [{'tamper_detection': {'tamper_det': {'enabled': 'off', 'sensitivity': 'medium', 'digital_sensitivity': '50'}}}], 'getLensMaskConfig': [{'lens_mask': {'lens_mask_info': {'enabled': 'off'}}}], 'getLdc': [{'image': {'switch': {'schedule_end_time': '64800', 'schedule_start_time': '21600', 'clear_licence_plate_mode': 'off', 'switch_mode': 'common', 'rotate_type': 'off', 'flip_type': 'off', 'ldc': 'off', 'night_vision_mode': 'inf_night_vision', 'full_color_people_enhance': 'off', 'full_color_min_keep_time': '30', 'wtl_intensity_level': '5', 'wtl_force_time': '1800', 'overexposure_people_suppression': 'off', 'best_view_distance': '0', 'image_scene_mode': 'normal', 'image_scene_mode_common': 'normal', 'image_scene_mode_shedday': 'normal', 'image_scene_mode_shednight': 'normal', 'image_scene_mode_autoday': 'normal', 'image_scene_mode_autonight': 'normal'}, 'common': {'chroma': '50', 'luma': '50', 'sharpness': '50', 'saturation': '50', 'contrast': '50', 'inf_delay': '5', 'wd_gain': '50', 'exp_gain': '100', 'smartir_level': '0', 'auto_exp_gain_max': '0', 'wb_R_gain': '50', 'wb_B_gain': '50', 'wb_G_gain': '50', 'wtl_sensitivity': '4', 'wtl_delay': '5', 'wtl_sensitivity_day2night': '1400', 'wtl_sensitivity_night2day': '9100', 'iris_level': '160', 'lock_red_gain': '0', 'lock_gr_gain': '0', 'lock_gb_gain': '0', 'lock_blue_gain': '0', 'lock_red_colton': '0', 'lock_green_colton': '0', 'lock_blue_colton': '0', 'focus_limited': '10', 'inf_start_time': '64800', 'inf_end_time': '21600', 'wtl_start_time': '64800', 'wtl_end_time': '21600', 'inf_sensitivity_day2night': '1400', 'inf_sensitivity_night2day': '9100', 'wide_dynamic': 'off', 'high_light_compensation': 'off', 'dehaze': 'off', 'eis': 'off', 'auto_exp_antiflicker': 'off', 'inf_type': 'auto', 'inf_sensitivity': '4', 'wtl_type': 'auto', 'backlight': 'off', 'area_compensation': 'default', 'smartir': 'auto_ir', 'exp_type': 'auto', 'manual_exp_iso_gain': '0', 'manual_exp_us': '50', 'exp_level': '0', 'shutter': '1/25', 'style': 'standard', 'focus_type': 'manual', 'wb_type': 'auto', 'lock_source': 'local', 'smartwtl': 'auto_wtl', 'smartwtl_level': '3', 'smartwtl_digital_level': '50', 'light_freq_mode': 'auto'}}}], 'getLastAlarmInfo': [{'msg_alarm': {'chn1_msg_alarm_info': {'enabled': 'off', 'light_alarm_enabled': 'on', 'alarm_mode': ['sound'], 'alarm_type': '0', 'light_type': '0', 'sound_alarm_enabled': 'on', 'alarm_volume': 'high', 'alarm_duration': '0'}}}], 'getLedStatus': [{'led': {'config': {'enabled': 'off'}}}], 'getTargetTrackConfig': [False], 'getPresetConfig': [False], 'getFirmwareUpdateStatus': [{'cloud_config': {'upgrade_status': {'state': 'normal', 'lastUpgradingSuccess': True}}}], 'getMediaEncrypt': [{'cet': {'media_encrypt': {'enabled': 'on'}}}], 'getConnectionType': [{'link_type': 'wifi', 'ssid': 'FlyingPenguin', 'rssiValue': -28, 'rssi': '4'}], 'getAlarmConfig': [False], 'getAlarmPlan': [False], 'getSirenTypeList': [False, False], 'getSirenConfig': [False], 'getAlertConfig': [{'msg_alarm': {'chn1_msg_alarm_info': {'enabled': 'off', 'light_alarm_enabled': 'on', 'alarm_mode': ['sound'], 'alarm_type': '0', 'light_type': '0', 'sound_alarm_enabled': 'on', 'alarm_volume': 'high', 'alarm_duration': '0'}, 'capability': {'usr_def_audio_alarm_support': '1', 'usr_def_audio_alarm_max_num': '15', 'alarm_volume_support': '1', 'alarm_duration_support': '1', 'alert_event_type_support': '1', 'usr_def_start_file_id': '8195', 'usr_def_audio_type': '0', 'usr_def_audio_max_duration': '15'}, 'usr_def_audio': []}}], 'getLightTypeList': [False], 'getSirenStatus': [False, False], 'getLightFrequencyInfo': [{'image': {'common': {'chroma': '50', 'luma': '50', 'sharpness': '50', 'saturation': '50', 'contrast': '50', 'inf_delay': '5', 'wd_gain': '50', 'exp_gain': '100', 'smartir_level': '0', 'auto_exp_gain_max': '0', 'wb_R_gain': '50', 'wb_B_gain': '50', 'wb_G_gain': '50', 'wtl_sensitivity': '4', 'wtl_delay': '5', 'wtl_sensitivity_day2night': '1400', 'wtl_sensitivity_night2day': '9100', 'iris_level': '160', 'lock_red_gain': '0', 'lock_gr_gain': '0', 'lock_gb_gain': '0', 'lock_blue_gain': '0', 'lock_red_colton': '0', 'lock_green_colton': '0', 'lock_blue_colton': '0', 'focus_limited': '10', 'inf_start_time': '64800', 'inf_end_time': '21600', 'wtl_start_time': '64800', 'wtl_end_time': '21600', 'inf_sensitivity_day2night': '1400', 'inf_sensitivity_night2day': '9100', 'wide_dynamic': 'off', 'high_light_compensation': 'off', 'dehaze': 'off', 'eis': 'off', 'auto_exp_antiflicker': 'off', 'inf_type': 'auto', 'inf_sensitivity': '4', 'wtl_type': 'auto', 'backlight': 'off', 'area_compensation': 'default', 'smartir': 'auto_ir', 'exp_type': 'auto', 'manual_exp_iso_gain': '0', 'manual_exp_us': '50', 'exp_level': '0', 'shutter': '1/25', 'style': 'standard', 'focus_type': 'manual', 'wb_type': 'auto', 'lock_source': 'local', 'smartwtl': 'auto_wtl', 'smartwtl_level': '3', 'smartwtl_digital_level': '50', 'light_freq_mode': 'auto'}}}], 'getLightFrequencyCapability': [False], 'getChildDeviceList': [False], 'getRotationStatus': [{'image': {'switch': {'schedule_end_time': '64800', 'schedule_start_time': '21600', 'clear_licence_plate_mode': 'off', 'switch_mode': 'common', 'rotate_type': 'off', 'flip_type': 'off', 'ldc': 'off', 'night_vision_mode': 'inf_night_vision', 'full_color_people_enhance': 'off', 'full_color_min_keep_time': '30', 'wtl_intensity_level': '5', 'wtl_force_time': '1800', 'overexposure_people_suppression': 'off', 'best_view_distance': '0', 'image_scene_mode': 'normal', 'image_scene_mode_common': 'normal', 'image_scene_mode_shedday': 'normal', 'image_scene_mode_shednight': 'normal', 'image_scene_mode_autoday': 'normal', 'image_scene_mode_autonight': 'normal'}}}], 'getNightVisionModeConfig': [{'image': {'switch': {'schedule_end_time': '64800', 'schedule_start_time': '21600', 'clear_licence_plate_mode': 'off', 'switch_mode': 'common', 'rotate_type': 'off', 'flip_type': 'off', 'ldc': 'off', 'night_vision_mode': 'inf_night_vision', 'full_color_people_enhance': 'off', 'full_color_min_keep_time': '30', 'wtl_intensity_level': '5', 'wtl_force_time': '1800', 'overexposure_people_suppression': 'off', 'best_view_distance': '0', 'image_scene_mode': 'normal', 'image_scene_mode_common': 'normal', 'image_scene_mode_shedday': 'normal', 'image_scene_mode_shednight': 'normal', 'image_scene_mode_autoday': 'normal', 'image_scene_mode_autonight': 'normal'}}}], 'getWhitelampStatus': [{'status': 1, 'rest_time': 1082}], 'getWhitelampConfig': [{'image': {'switch': {'schedule_end_time': '64800', 'schedule_start_time': '21600', 'clear_licence_plate_mode': 'off', 'switch_mode': 'common', 'rotate_type': 'off', 'flip_type': 'off', 'ldc': 'off', 'night_vision_mode': 'inf_night_vision', 'full_color_people_enhance': 'off', 'full_color_min_keep_time': '30', 'wtl_intensity_level': '5', 'wtl_force_time': '1800', 'overexposure_people_suppression': 'off', 'best_view_distance': '0', 'image_scene_mode': 'normal', 'image_scene_mode_common': 'normal', 'image_scene_mode_shedday': 'normal', 'image_scene_mode_shednight': 'normal', 'image_scene_mode_autoday': 'normal', 'image_scene_mode_autonight': 'normal'}}}], 'getMsgPushConfig': [{'msg_push': {'chn1_msg_push_info': {'notification_enabled': 'on', 'rich_notification_enabled': 'off'}}}], 'getSdCardStatus': [{'harddisk_manage': {'hd_info': [{'hd_info_1': {'disk_name': '1', 'rw_attr': 'r', 'status': 'offline', 'detect_status': 'offline', 'write_protect': '0', 'percent': '0', 'type': 'local', 'record_duration': '0', 'record_free_duration': '0', 'record_start_time': '0', 'loop_record_status': '0', 'total_space': '0B', 'total_space_accurate': '0B', 'free_space': '0B', 'free_space_accurate': '0B', 'video_total_space': '0B', 'video_total_space_accurate': '0B', 'video_free_space': '0B', 'video_free_space_accurate': '0B', 'picture_total_space': '0B', 'picture_total_space_accurate': '0B', 'picture_free_space': '0B', 'picture_free_space_accurate': '0B', 'crossline_total_space': '0B', 'crossline_total_space_accurate': '0B', 'crossline_free_space': '0B', 'crossline_free_space_accurate': '0B', 'msg_push_total_space': '0B', 'msg_push_total_space_accurate': '0B', 'msg_push_free_space': '0B', 'msg_push_free_space_accurate': '0B'}}]}}], 'getCircularRecordingConfig': [{'harddisk_manage': {'harddisk': {'loop': 'on'}}}], 'getRecordPlan': [{'record_plan': {'chn1_channel': {'enabled': 'on', 'monday': '["0000-2400:2"]', 'tuesday': '["0000-2400:2"]', 'wednesday': '["0000-2400:2"]', 'thursday': '["0000-2400:2"]', 'friday': '["0000-2400:2"]', 'saturday': '["0000-2400:2"]', 'sunday': '["0000-2400:2"]'}}}], 'getAudioConfig': [{'audio_config': {'speaker': {'volume': '100', 'mute': 'off', 'output_device_type': 'SpeakerOut'}, 'microphone': {'sampling_rate': '8', 'channels': '1', 'encode_type': 'G711alaw', 'mute': 'off', 'volume': '100', 'input_device_type': 'MicIn', 'noise_cancelling': 'on', 'factory_noise_cancelling': 'off', 'bitrate': '64', 'echo_cancelling': 'off'}}}], 'getFirmwareAutoUpgradeConfig': [{'auto_upgrade': {'common': {'enabled': 'off', 'time': '03:00', 'random_range': '120'}}}], 'getVideoQualities': [{'video': {'main': {'quality': '3', 'bitrate': '2048', 'frame_rate': '65561', 'smart_codec': 'off', 'encode_type': 'H264', 'resolution': '25601440', 'bitrate_type': 'vbr', 'name': 'VideoEncoder_1', 'default_bitrate': '2048'}}}], 'getVideoCapability': [{'video_capability': {'main': {'encode_types': ['H264', 'H265'], 'frame_rates': ['65551', '65556', '65561'], 'bitrates': ['256', '512', '1024', '1536', '2048'], 'bitrate_types': ['cbr', 'vbr'], 'resolutions': ['25601440', '19201080'], 'qualitys': ['1', '3', '5'], 'minor_stream_support': '1', 'change_fps_support': '1'}}}]} .. |
In this below example, the light was ON via the light button on the tapo app Events stopped. |
This already exists for cameras that support it, not all cameras do support it though, so it only shows up on ones that do. If this is possible via an app let me know and we can reopen. |
the tapo app lets me arbitrarily turn on the light. it has a separate (separate to then ha timer light) setting for auto off when manually powered on. |
Can the auto off be turned off completely so that the light stays on indefinitely? |
theres also another time for time off when the light is turned on automatically, like with the motion sensor or person detection and finally the ha timer on setting which appears nowhere on the app |
My camera is hw v1 and has firmware 1.1.13 |
For others out there, this is my automation to restart the light when it goes off.
|
@JurajNyiri do you need me to do a packet capture of the camera receiving the app lightbulb-on command or is the above data enough? |
i see |
@PetePeter communication will be encrypted so that will lead you nowhere. |
:| not tomorrow, but one day. |
ergh pain. |
ergh with nox and httptoolkit i was able to get some lines that mention stok and everything inside is gibberish does that help or not? i had to use nox cos google avd doesnt bridge the network and my spare android is one android too old to get lineage and root that. sigh |
@PetePeter reach out to me on discord, if you can share the camera / account I can probably figure it out. |
download_2024-12-01_02-06-22.zip stoks figure what out via discord? |
How to implement this feature. |
Untested code is available in library pytapo at https://github.com/JurajNyiri/pytapo/pull/130/files What is needed:
|
Is your feature request related to a problem? Please describe.
The Tapo C720 works with the spotlight control, but the spotlight control is a timed one. One timed as per 5, 10, 15 or 30 minutes. This timer is not visible in the tplink app, only in HA. Tp link shows other timers that sound like it, but which have no effect on it.
Describe the solution you'd like
I would like a new toggle to exist, one for just spotlight on - without a timer. I can do a timer with an automation / script if need be.
Describe alternatives you've considered
I can set the timer to 30minutes
Additional context
happy to help debug or try out beta code
The text was updated successfully, but these errors were encountered: