@@ -1868,11 +1868,11 @@ async def req_remote_climate(self):
18681868
18691869 result_rcc = await response_rcc .json ()
18701870
1871- if self . _remote_climate_control_forced :
1872- try :
1873- # check if there is a 'profile' in the result... and if not, we will create a default one!
1874- a_profiles_obj = result_rcc . get ( "rccUserProfiles" , [])
1875- if a_profiles_obj is None or not isinstance ( a_profiles_obj , Iterable ) or len ( a_profiles_obj ) == 0 :
1871+ try :
1872+ # check if there is a 'profile' in the result... and if not, we will create a default one!
1873+ a_profiles_obj = result_rcc . get ( "rccUserProfiles" , [])
1874+ if a_profiles_obj is None or not isinstance ( a_profiles_obj , Iterable ) or len ( a_profiles_obj ) == 0 :
1875+ if self . _remote_climate_control_forced :
18761876 _LOGGER .info (f"{ self .vli } req_remote_climate(): creating a default 'remote climate control' profile for the vehicle" )
18771877 result_rcc ["rccUserProfiles" ] = [
18781878 {"preferenceType" : "RccHeatedWindshield_Rq" , "preferenceValue" : "Off" },
@@ -1884,8 +1884,11 @@ async def req_remote_climate(self):
18841884 {"preferenceType" : "RccRightRearClimateSeat_Rq" , "preferenceValue" : "Off" },
18851885 {"preferenceType" : "SetPointTemp_Rq" , "preferenceValue" : "22_0" }
18861886 ]
1887- except BaseException as e :
1888- _LOGGER .info (f"{ self .vli } req_remote_climate(): Error while check for empty 'rccUserProfiles' for vehicle { self .vin } - { type (e ).__name__ } - { e } " )
1887+ else :
1888+ _LOGGER .warning (f"{ self .vli } req_remote_climate(): NO 'remote climate control' profile for the vehicle exits - please create one vie the FordPass App - TIA" )
1889+
1890+ except BaseException as e :
1891+ _LOGGER .info (f"{ self .vli } req_remote_climate(): Error while check for empty 'rccUserProfiles' for vehicle { self .vin } - { type (e ).__name__ } - { e } " )
18891892
18901893 if self ._LOCAL_LOGGING :
18911894 await self ._local_logging ("rcc" , result_rcc )
@@ -2184,15 +2187,32 @@ def _get_command_object_ford(command_key, url_param_value):
21842187 async def start_charge (self ):
21852188 # VALUE_CHARGE, CHARGE_NOW, CHARGE_DT, CHARGE_DT_COND, CHARGE_SOLD, HOME_CHARGE_NOW, HOME_STORE_CHARGE, HOME_CHARGE_DISCHARGE
21862189 # START_GLOBAL_CHARGE
2187- return await self .__request_and_poll_command_ford (command_key = START_CHARGE_KEY )
2188-
2190+ # worked till 2026/04/20...
2191+ # return await self.__request_and_poll_command_ford(command_key=START_CHARGE_KEY)
2192+ return await self .__request_and_poll_command_autonomic (baseurl = AUTONOMIC_BETA_URL ,
2193+ write_command = "startGlobalChargeCommand" ,
2194+ properties = None ,
2195+ data_version = "1.0.1" ,
2196+ wait_for_state = True )
21892197 async def cancel_charge (self ):
21902198 # CANCEL_GLOBAL_CHARGE
2191- return await self .__request_and_poll_command_ford (command_key = CANCEL_CHARGE_KEY )
2199+ # worked till 2026/04/20...
2200+ # return await self.__request_and_poll_command_ford(command_key=CANCEL_CHARGE_KEY)
2201+ return await self .__request_and_poll_command_autonomic (baseurl = AUTONOMIC_BETA_URL ,
2202+ write_command = "cancelGlobalChargeCommand" ,
2203+ properties = None ,
2204+ data_version = "1.0.1" ,
2205+ wait_for_state = True )
21922206
21932207 async def pause_charge (self ):
21942208 # PAUSE_GLOBAL_CHARGE
2195- return await self .__request_and_poll_command_ford (command_key = PAUSE_CHARGE_KEY )
2209+ # worked till 2026/04/20...
2210+ # return await self.__request_and_poll_command_ford(command_key=PAUSE_CHARGE_KEY)
2211+ return await self .__request_and_poll_command_autonomic (baseurl = AUTONOMIC_BETA_URL ,
2212+ write_command = "pauseGlobalChargeCommand" ,
2213+ properties = None ,
2214+ data_version = "1.0.1" ,
2215+ wait_for_state = True )
21962216
21972217
21982218 # ***********************************************************
@@ -2658,6 +2678,9 @@ async def __request_and_poll_command_autonomic(self, baseurl, write_command, pro
26582678 "wakeUp" : True
26592679 }
26602680
2681+ if properties == None :
2682+ data .pop ("properties" )
2683+
26612684 # currently only the beta autonomic endpoint supports/needs the version tag
26622685 if baseurl != AUTONOMIC_BETA_URL :
26632686 del data ["version" ]
0 commit comments