@@ -116,20 +116,28 @@ def gather_all_configs(self) -> FoscamDeviceInfo:
116116 is_open_wdr = None
117117 is_open_hdr = None
118118 reserve3 = product_info .get ("reserve4" )
119- reserve3_int = int (reserve3 ) if reserve3 is not None else 0
120- supports_wdr_adjustment_val = bool (int (reserve3_int & 256 ))
121- supports_hdr_adjustment_val = bool (int (reserve3_int & 128 ))
122- if supports_wdr_adjustment_val :
123- ret_wdr , is_open_wdr_data = self .session .getWdrMode ()
124- mode = is_open_wdr_data ["mode" ] if ret_wdr == 0 and is_open_wdr_data else 0
125- is_open_wdr = bool (int (mode ))
126- elif supports_hdr_adjustment_val :
127- ret_hdr , is_open_hdr_data = self .session .getHdrMode ()
128- mode = is_open_hdr_data ["mode" ] if ret_hdr == 0 and is_open_hdr_data else 0
129- is_open_hdr = bool (int (mode ))
130-
119+ model = product_info .get ("model" )
120+ model_int = int (model ) if model is not None else 7002
121+ if model_int > 7001 :
122+ reserve3_int = int (reserve3 ) if reserve3 is not None else 0
123+ supports_wdr_adjustment_val = bool (int (reserve3_int & 256 ))
124+ supports_hdr_adjustment_val = bool (int (reserve3_int & 128 ))
125+ if supports_wdr_adjustment_val :
126+ ret_wdr , is_open_wdr_data = self .session .getWdrMode ()
127+ mode = (
128+ is_open_wdr_data ["mode" ] if ret_wdr == 0 and is_open_wdr_data else 0
129+ )
130+ is_open_wdr = bool (int (mode ))
131+ elif supports_hdr_adjustment_val :
132+ ret_hdr , is_open_hdr_data = self .session .getHdrMode ()
133+ mode = (
134+ is_open_hdr_data ["mode" ] if ret_hdr == 0 and is_open_hdr_data else 0
135+ )
136+ is_open_hdr = bool (int (mode ))
137+ else :
138+ supports_wdr_adjustment_val = False
139+ supports_hdr_adjustment_val = False
131140 ret_sw , software_capabilities = self .session .getSWCapabilities ()
132-
133141 supports_speak_volume_adjustment_val = (
134142 bool (int (software_capabilities .get ("swCapabilities1" )) & 32 )
135143 if ret_sw == 0
0 commit comments