hyundai-kia-connect-api 3.10.0__tar.gz → 3.10.7__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.
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/PKG-INFO +1 -1
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/README.rst +1 -1
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/HyundaiBlueLinkAPIUSA.py +46 -22
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/KiaUvoAPIUSA.py +3 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/KiaUvoApiAU.py +3 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/KiaUvoApiCA.py +3 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/KiaUvoApiCN.py +3 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/KiaUvoApiEU.py +24 -14
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/Vehicle.py +8 -2
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/utils.py +15 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/PKG-INFO +1 -1
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/setup.py +1 -1
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/AUTHORS.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/CONTRIBUTING.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/HISTORY.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/LICENSE +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/MANIFEST.in +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/Makefile +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/authors.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/conf.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/contributing.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/history.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/index.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/installation.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/make.bat +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/readme.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/docs/usage.rst +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/ApiImpl.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/Token.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/VehicleManager.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/__init__.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/const.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/exceptions.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/SOURCES.txt +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/dependency_links.txt +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/not-zip-safe +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/requires.txt +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api.egg-info/top_level.txt +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/requirements.txt +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/setup.cfg +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/tests/__init__.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/tests/au_login_test.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/tests/ca_login_test.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/tests/eu_check_response_for_errors_test.py +0 -0
- {hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/tests/eu_login_test.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: hyundai_kia_connect_api
|
3
|
-
Version: 3.10.
|
3
|
+
Version: 3.10.7
|
4
4
|
Summary: Python Boilerplate contains all the boilerplate you need to create a Python package.
|
5
5
|
Home-page: https://github.com/fuatakgun/hyundai_kia_connect_api
|
6
6
|
Author: Fuat Akgun
|
@@ -102,4 +102,4 @@ Example of getting trip info of the current month and day (vm is VehicleManager
|
|
102
102
|
vm.update_day_trip_info(vehicle.id, day.yyyymmdd)
|
103
103
|
if vehicle.day_trip_info is not None:
|
104
104
|
for trip in reversed(vehicle.day_trip_info.trip_list): # show oldest first
|
105
|
-
print(f"{day.yyyymmdd},{trip.hhmmss},{trip.drive_time},{trip.idle_time},{trip.distance},{trip.avg_speed},{trip.max_speed}")
|
105
|
+
print(f"{day.yyyymmdd},{trip.hhmmss},{trip.drive_time},{trip.idle_time},{trip.distance},{trip.avg_speed},{trip.max_speed}")
|
@@ -16,12 +16,14 @@ from .const import (
|
|
16
16
|
SEAT_STATUS,
|
17
17
|
DISTANCE_UNITS,
|
18
18
|
TEMPERATURE_UNITS,
|
19
|
+
ENGINE_TYPES,
|
19
20
|
)
|
20
|
-
from .utils import get_child_value
|
21
|
+
from .utils import get_child_value, get_float
|
21
22
|
from .ApiImpl import ApiImpl, ClimateRequestOptions
|
22
23
|
from .Token import Token
|
23
24
|
from .Vehicle import Vehicle
|
24
25
|
|
26
|
+
|
25
27
|
CIPHERS = "DEFAULT@SECLEVEL=1"
|
26
28
|
|
27
29
|
_LOGGER = logging.getLogger(__name__)
|
@@ -256,6 +258,9 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
256
258
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
257
259
|
state, "vehicleStatus.washerFluidStatus"
|
258
260
|
)
|
261
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
262
|
+
state, "vehicleStatus.breakOilStatus"
|
263
|
+
)
|
259
264
|
vehicle.smart_key_battery_warning_is_on = get_child_value(
|
260
265
|
state, "vehicleStatus.smartKeyBatteryWarning"
|
261
266
|
)
|
@@ -420,8 +425,8 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
420
425
|
if state["vehicleStatus"] is not None:
|
421
426
|
vehicle_location_result = None
|
422
427
|
if vehicle.odometer:
|
423
|
-
if vehicle.odometer <
|
424
|
-
state["vehicleDetails"], "odometer"
|
428
|
+
if vehicle.odometer < get_float(
|
429
|
+
get_child_value(state["vehicleDetails"], "odometer")
|
425
430
|
):
|
426
431
|
vehicle_location_result = self._get_vehicle_location(token, vehicle)
|
427
432
|
else:
|
@@ -467,10 +472,16 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
467
472
|
result = []
|
468
473
|
for entry in response["enrolledVehicleDetails"]:
|
469
474
|
entry = entry["vehicleDetails"]
|
475
|
+
entry_engine_type = None
|
476
|
+
if entry["evStatus"] == "N":
|
477
|
+
entry_engine_type = ENGINE_TYPES.ICE
|
478
|
+
elif entry["evStatus"] == "E":
|
479
|
+
entry_engine_type = ENGINE_TYPES.EV
|
470
480
|
vehicle: Vehicle = Vehicle(
|
471
481
|
id=entry["regid"],
|
472
482
|
name=entry["nickName"],
|
473
483
|
VIN=entry["vin"],
|
484
|
+
engine_type=entry_engine_type,
|
474
485
|
model=entry["modelCode"],
|
475
486
|
registration_date=["enrollmentDate"],
|
476
487
|
timezone=self.data_timezone,
|
@@ -508,8 +519,10 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
508
519
|
self, token: Token, vehicle: Vehicle, options: ClimateRequestOptions
|
509
520
|
) -> str:
|
510
521
|
_LOGGER.debug(f"{DOMAIN} - Start engine..")
|
511
|
-
|
512
|
-
|
522
|
+
if vehicle.engine_type == ENGINE_TYPES.EV:
|
523
|
+
url = self.API_URL + "evc/fatc/start"
|
524
|
+
else:
|
525
|
+
url = self.API_URL + "rcs/rsc/start"
|
513
526
|
|
514
527
|
headers = self._get_vehicle_headers(token, vehicle)
|
515
528
|
_LOGGER.debug(f"{DOMAIN} - Start engine headers: {headers}")
|
@@ -533,22 +546,30 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
533
546
|
if options.rear_right_seat is None:
|
534
547
|
options.rear_right_seat = 0
|
535
548
|
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
|
540
|
-
|
541
|
-
|
542
|
-
|
543
|
-
|
544
|
-
|
545
|
-
"
|
546
|
-
"
|
547
|
-
"
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
549
|
+
if vehicle.engine_type == ENGINE_TYPES.EV:
|
550
|
+
data = {
|
551
|
+
"airCtrl": int(options.climate),
|
552
|
+
"airTemp": {"value": str(options.set_temp), "unit": 1},
|
553
|
+
"defrost": options.defrost,
|
554
|
+
"heating1": int(options.heating),
|
555
|
+
}
|
556
|
+
else:
|
557
|
+
data = {
|
558
|
+
"Ims": 0,
|
559
|
+
"airCtrl": int(options.climate),
|
560
|
+
"airTemp": {"unit": 1, "value": options.set_temp},
|
561
|
+
"defrost": options.defrost,
|
562
|
+
"heating1": int(options.heating),
|
563
|
+
"igniOnDuration": options.duration,
|
564
|
+
"seatHeaterVentInfo": {
|
565
|
+
"drvSeatHeatState": options.front_left_seat,
|
566
|
+
"astSeatHeatState": options.front_right_seat,
|
567
|
+
"rlSeatHeatState": options.rear_left_seat,
|
568
|
+
"rrSeatHeatState": options.rear_right_seat,
|
569
|
+
},
|
570
|
+
"username": token.username,
|
571
|
+
"vin": vehicle.id,
|
572
|
+
}
|
552
573
|
_LOGGER.debug(f"{DOMAIN} - Start engine data: {data}")
|
553
574
|
|
554
575
|
response = self.sessions.post(url, json=data, headers=headers)
|
@@ -560,7 +581,10 @@ class HyundaiBlueLinkAPIUSA(ApiImpl):
|
|
560
581
|
def stop_climate(self, token: Token, vehicle: Vehicle) -> None:
|
561
582
|
_LOGGER.debug(f"{DOMAIN} - Stop engine..")
|
562
583
|
|
563
|
-
|
584
|
+
if vehicle.engine_type == ENGINE_TYPES.EV:
|
585
|
+
url = self.API_URL + "evc/fatc/stop"
|
586
|
+
else:
|
587
|
+
url = self.API_URL + "rcs/rsc/stop"
|
564
588
|
|
565
589
|
headers = self._get_vehicle_headers(token, vehicle)
|
566
590
|
|
@@ -302,6 +302,9 @@ class KiaUvoAPIUSA(ApiImpl):
|
|
302
302
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
303
303
|
state, "lastVehicleInfo.vehicleStatusRpt.vehicleStatus.washerFluidStatus"
|
304
304
|
)
|
305
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
306
|
+
state, "lastVehicleInfo.vehicleStatusRpt.vehicleStatus.breakOilStatus"
|
307
|
+
)
|
305
308
|
vehicle.smart_key_battery_warning_is_on = get_child_value(
|
306
309
|
state,
|
307
310
|
"lastVehicleInfo.vehicleStatusRpt.vehicleStatus.smartKeyBatteryWarning",
|
@@ -623,6 +623,9 @@ class KiaUvoApiAU(ApiImpl):
|
|
623
623
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
624
624
|
state, "status.washerFluidStatus"
|
625
625
|
)
|
626
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
627
|
+
state, "status.breakOilStatus"
|
628
|
+
)
|
626
629
|
vehicle.fuel_level = get_child_value(state, "status.fuelLevel")
|
627
630
|
vehicle.fuel_level_is_low = get_child_value(state, "status.lowFuelLight")
|
628
631
|
vehicle.air_control_is_on = get_child_value(state, "status.airCtrlOn")
|
@@ -276,6 +276,9 @@ class KiaUvoApiCA(ApiImpl):
|
|
276
276
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
277
277
|
state, "status.washerFluidStatus"
|
278
278
|
)
|
279
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
280
|
+
state, "status.breakOilStatus"
|
281
|
+
)
|
279
282
|
vehicle.tire_pressure_rear_left_warning_is_on = bool(
|
280
283
|
get_child_value(state, "status.tirePressureLamp.tirePressureLampRL")
|
281
284
|
)
|
@@ -617,6 +617,9 @@ class KiaUvoApiCN(ApiImpl):
|
|
617
617
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
618
618
|
state, "status.washerFluidStatus"
|
619
619
|
)
|
620
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
621
|
+
state, "status.breakOilStatus"
|
622
|
+
)
|
620
623
|
vehicle.fuel_level = get_child_value(state, "status.fuelLevel")
|
621
624
|
vehicle.fuel_level_is_low = get_child_value(state, "status.lowFuelLight")
|
622
625
|
vehicle.air_control_is_on = get_child_value(state, "status.airCtrlOn")
|
@@ -707,6 +707,9 @@ class KiaUvoApiEU(ApiImpl):
|
|
707
707
|
vehicle.washer_fluid_warning_is_on = get_child_value(
|
708
708
|
state, "vehicleStatus.washerFluidStatus"
|
709
709
|
)
|
710
|
+
vehicle.brake_fluid_warning_is_on = get_child_value(
|
711
|
+
state, "vehicleStatus.breakOilStatus"
|
712
|
+
)
|
710
713
|
vehicle.fuel_level = get_child_value(state, "vehicleStatus.fuelLevel")
|
711
714
|
vehicle.fuel_level_is_low = get_child_value(state, "vehicleStatus.lowFuelLight")
|
712
715
|
vehicle.air_control_is_on = get_child_value(state, "vehicleStatus.airCtrlOn")
|
@@ -779,6 +782,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
779
782
|
).json()
|
780
783
|
_LOGGER.debug(f"{DOMAIN} - Lock Action Response: {response}")
|
781
784
|
_check_response_for_errors(response)
|
785
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
782
786
|
return response["msgId"]
|
783
787
|
|
784
788
|
def charge_port_action(
|
@@ -793,6 +797,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
793
797
|
).json()
|
794
798
|
_LOGGER.debug(f"{DOMAIN} - Charge Port Action Response: {response}")
|
795
799
|
_check_response_for_errors(response)
|
800
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
796
801
|
return response["msgId"]
|
797
802
|
|
798
803
|
def start_climate(
|
@@ -833,6 +838,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
833
838
|
).json()
|
834
839
|
_LOGGER.debug(f"{DOMAIN} - Start Climate Action Response: {response}")
|
835
840
|
_check_response_for_errors(response)
|
841
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
836
842
|
return response["msgId"]
|
837
843
|
|
838
844
|
def stop_climate(self, token: Token, vehicle: Vehicle) -> str:
|
@@ -854,6 +860,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
854
860
|
).json()
|
855
861
|
_LOGGER.debug(f"{DOMAIN} - Stop Climate Action Response: {response}")
|
856
862
|
_check_response_for_errors(response)
|
863
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
857
864
|
return response["msgId"]
|
858
865
|
|
859
866
|
def start_charge(self, token: Token, vehicle: Vehicle) -> str:
|
@@ -866,6 +873,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
866
873
|
).json()
|
867
874
|
_LOGGER.debug(f"{DOMAIN} - Start Charge Action Response: {response}")
|
868
875
|
_check_response_for_errors(response)
|
876
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
869
877
|
return response["msgId"]
|
870
878
|
|
871
879
|
def stop_charge(self, token: Token, vehicle: Vehicle) -> str:
|
@@ -878,6 +886,7 @@ class KiaUvoApiEU(ApiImpl):
|
|
878
886
|
).json()
|
879
887
|
_LOGGER.debug(f"{DOMAIN} - Stop Charge Action Response: {response}")
|
880
888
|
_check_response_for_errors(response)
|
889
|
+
token.device_id = self._get_device_id(self._get_stamp())
|
881
890
|
return response["msgId"]
|
882
891
|
|
883
892
|
def _get_charge_limits(self, token: Token, vehicle: Vehicle) -> dict:
|
@@ -1032,22 +1041,23 @@ class KiaUvoApiEU(ApiImpl):
|
|
1032
1041
|
response30d = response30d.json()
|
1033
1042
|
_LOGGER.debug(f"{DOMAIN} - get_driving_info response30d {response30d}")
|
1034
1043
|
_check_response_for_errors(response30d)
|
1035
|
-
if get_child_value(responseAlltime, "resMsg.
|
1036
|
-
drivingInfo = responseAlltime["resMsg"]["
|
1044
|
+
if get_child_value(responseAlltime, "resMsg.drivingInfo.0"):
|
1045
|
+
drivingInfo = responseAlltime["resMsg"]["drivingInfo"][0]
|
1037
1046
|
|
1038
1047
|
drivingInfo["dailyStats"] = []
|
1039
|
-
|
1040
|
-
|
1041
|
-
|
1042
|
-
|
1043
|
-
|
1044
|
-
|
1045
|
-
|
1046
|
-
|
1047
|
-
|
1048
|
-
|
1049
|
-
|
1050
|
-
|
1048
|
+
if get_child_value(response30d, "resMsg.drivingInfoDetail.0"):
|
1049
|
+
for day in response30d["resMsg"]["drivingInfoDetail"]:
|
1050
|
+
processedDay = DailyDrivingStats(
|
1051
|
+
date=dt.datetime.strptime(day["drivingDate"], "%Y%m%d"),
|
1052
|
+
total_consumed=day["totalPwrCsp"],
|
1053
|
+
engine_consumption=day["motorPwrCsp"],
|
1054
|
+
climate_consumption=day["climatePwrCsp"],
|
1055
|
+
onboard_electronics_consumption=day["eDPwrCsp"],
|
1056
|
+
battery_care_consumption=day["batteryMgPwrCsp"],
|
1057
|
+
regenerated_energy=day["regenPwr"],
|
1058
|
+
distance=day["calculativeOdo"],
|
1059
|
+
)
|
1060
|
+
drivingInfo["dailyStats"].append(processedDay)
|
1051
1061
|
|
1052
1062
|
for drivingInfoItem in response30d["resMsg"]["drivingInfo"]:
|
1053
1063
|
if drivingInfoItem["drivingPeriod"] == 0:
|
{hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/Vehicle.py
RENAMED
@@ -5,6 +5,7 @@ import datetime
|
|
5
5
|
import typing
|
6
6
|
from dataclasses import dataclass, field
|
7
7
|
|
8
|
+
from .utils import get_float
|
8
9
|
from .const import *
|
9
10
|
|
10
11
|
_LOGGER = logging.getLogger(__name__)
|
@@ -301,11 +302,16 @@ class Vehicle:
|
|
301
302
|
def odometer(self):
|
302
303
|
return self._odometer
|
303
304
|
|
305
|
+
@property
|
306
|
+
def odometer_unit(self):
|
307
|
+
return self._odometer_unit
|
308
|
+
|
304
309
|
@odometer.setter
|
305
310
|
def odometer(self, value):
|
306
|
-
|
311
|
+
float_value = get_float(value[0])
|
312
|
+
self._odometer_value = float_value
|
307
313
|
self._odometer_unit = value[1]
|
308
|
-
self._odometer =
|
314
|
+
self._odometer = float_value
|
309
315
|
|
310
316
|
@property
|
311
317
|
def air_temperature(self):
|
{hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/utils.py
RENAMED
@@ -15,6 +15,21 @@ def get_child_value(data, key):
|
|
15
15
|
return value
|
16
16
|
|
17
17
|
|
18
|
+
def get_float(value):
|
19
|
+
if value is None:
|
20
|
+
return None
|
21
|
+
if isinstance(value, float):
|
22
|
+
return value
|
23
|
+
if isinstance(value, int):
|
24
|
+
return float(value)
|
25
|
+
if isinstance(value, str):
|
26
|
+
try:
|
27
|
+
return float(value)
|
28
|
+
except ValueError:
|
29
|
+
return value # original fallback
|
30
|
+
return value # original fallback
|
31
|
+
|
32
|
+
|
18
33
|
def get_hex_temp_into_index(value):
|
19
34
|
if value is not None:
|
20
35
|
value = value.replace("H", "")
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: hyundai-kia-connect-api
|
3
|
-
Version: 3.10.
|
3
|
+
Version: 3.10.7
|
4
4
|
Summary: Python Boilerplate contains all the boilerplate you need to create a Python package.
|
5
5
|
Home-page: https://github.com/fuatakgun/hyundai_kia_connect_api
|
6
6
|
Author: Fuat Akgun
|
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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/ApiImpl.py
RENAMED
File without changes
|
{hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/Token.py
RENAMED
File without changes
|
File without changes
|
File without changes
|
{hyundai_kia_connect_api-3.10.0 → hyundai_kia_connect_api-3.10.7}/hyundai_kia_connect_api/const.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
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|