iobroker.teslafi 0.1.4 → 0.2.0
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.
- package/README.md +12 -0
- package/admin/jsonConfig.json +1 -6
- package/build/lib/{teslafiHelper.js → projectUtils.js} +59 -24
- package/build/lib/projectUtils.js.map +1 -0
- package/build/lib/teslafiAPICaller.js +68 -6
- package/build/lib/teslafiAPICaller.js.map +1 -1
- package/io-package.json +27 -1
- package/package.json +9 -9
- package/build/lib/teslafiHelper.js.map +0 -1
package/README.md
CHANGED
|
@@ -45,6 +45,18 @@ If you enjoyed this project — or just feeling generous, consider buying me a b
|
|
|
45
45
|
|
|
46
46
|
## Changelog
|
|
47
47
|
|
|
48
|
+
### 0.2.0 (2024-11-07)
|
|
49
|
+
|
|
50
|
+
- (hombach) implement raw data state (#26)
|
|
51
|
+
- (hombach) implement charger_phases (#28)
|
|
52
|
+
- (hombach) implement driver_temp_setting (#31)
|
|
53
|
+
- (hombach) implement seat and steeringwheel heater states (#30)
|
|
54
|
+
|
|
55
|
+
### 0.1.5 (2024-11-06)
|
|
56
|
+
|
|
57
|
+
- (hombach) harmonize project tools
|
|
58
|
+
- (hombach) removed doubled texts in state names
|
|
59
|
+
|
|
48
60
|
### 0.1.4 (2024-11-01)
|
|
49
61
|
|
|
50
62
|
- (hombach) fix conversion error
|
package/admin/jsonConfig.json
CHANGED
|
@@ -1,19 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
4
|
-
class
|
|
3
|
+
exports.ProjectUtils = void 0;
|
|
4
|
+
class ProjectUtils {
|
|
5
5
|
adapter;
|
|
6
6
|
constructor(adapter) {
|
|
7
7
|
this.adapter = adapter;
|
|
8
8
|
}
|
|
9
|
-
// protected getStatePrefix(homeId: string, space: string, id: string, name?: string): { [key: string]: string } {
|
|
10
|
-
getStatePrefix(id, name) {
|
|
11
|
-
const statePrefix = {
|
|
12
|
-
key: name ? name : id,
|
|
13
|
-
value: `Cars.${id}`,
|
|
14
|
-
};
|
|
15
|
-
return statePrefix;
|
|
16
|
-
}
|
|
17
9
|
/**
|
|
18
10
|
* Retrieves the value of a given state by its name.
|
|
19
11
|
*
|
|
@@ -37,7 +29,6 @@ class TeslaFiHelper {
|
|
|
37
29
|
* @param stateName - A string representing the name of the state to retrieve.
|
|
38
30
|
* @returns A Promise that resolves with the object of the state if it exists, otherwise resolves with null.
|
|
39
31
|
*/
|
|
40
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
41
32
|
async getState(stateName) {
|
|
42
33
|
try {
|
|
43
34
|
if (await this.verifyStateAvailable(stateName)) {
|
|
@@ -62,7 +53,6 @@ class TeslaFiHelper {
|
|
|
62
53
|
* @param stateName - A string representing the name of the state to verify.
|
|
63
54
|
* @returns A Promise that resolves with true if the state exists, otherwise resolves with false.
|
|
64
55
|
*/
|
|
65
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
66
56
|
async verifyStateAvailable(stateName) {
|
|
67
57
|
const stateObject = await this.adapter.getObjectAsync(stateName); // Check state existence
|
|
68
58
|
if (!stateObject) {
|
|
@@ -71,6 +61,52 @@ class TeslaFiHelper {
|
|
|
71
61
|
}
|
|
72
62
|
return true;
|
|
73
63
|
}
|
|
64
|
+
/**
|
|
65
|
+
* Get foreign state value
|
|
66
|
+
* @param {string} stateName - Full path to state, like 0_userdata.0.other.isSummer
|
|
67
|
+
* @return {Promise<*>} - State value, or null if error
|
|
68
|
+
*/
|
|
69
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
70
|
+
async asyncGetForeignStateVal(stateName) {
|
|
71
|
+
try {
|
|
72
|
+
const stateObject = await this.asyncGetForeignState(stateName);
|
|
73
|
+
if (stateObject == null)
|
|
74
|
+
return null; // errors thrown already in asyncGetForeignState()
|
|
75
|
+
return stateObject.val;
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
this.adapter.log.error(`[asyncGetForeignStateValue](${stateName}): ${error}`);
|
|
79
|
+
return null;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Get foreign state
|
|
84
|
+
*
|
|
85
|
+
* @param {string} stateName - Full path to state, like 0_userdata.0.other.isSummer
|
|
86
|
+
* @return {Promise<object>} - State object: {val: false, ack: true, ts: 1591117034451, …}, or null if error
|
|
87
|
+
*/
|
|
88
|
+
async asyncGetForeignState(stateName) {
|
|
89
|
+
try {
|
|
90
|
+
const stateObject = await this.adapter.getForeignObjectAsync(stateName); // Check state existence
|
|
91
|
+
if (!stateObject) {
|
|
92
|
+
throw `State '${stateName}' does not exist.`;
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
95
|
+
// Get state value, so like: {val: false, ack: true, ts: 1591117034451, …}
|
|
96
|
+
const stateValueObject = await this.adapter.getForeignStateAsync(stateName);
|
|
97
|
+
if (!this.isLikeEmpty(stateValueObject)) {
|
|
98
|
+
return stateValueObject;
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
throw `Unable to retrieve info from state '${stateName}'.`;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
catch (error) {
|
|
106
|
+
this.adapter.log.error(`[asyncGetForeignState](${stateName}): ${error}`);
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
74
110
|
/**
|
|
75
111
|
* Checks if the given input variable is effectively empty.
|
|
76
112
|
*
|
|
@@ -104,7 +140,7 @@ class TeslaFiHelper {
|
|
|
104
140
|
/**
|
|
105
141
|
* Checks if a string state exists, creates it if necessary, and updates its value.
|
|
106
142
|
*
|
|
107
|
-
* @param stateName - A string
|
|
143
|
+
* @param stateName - A string representing the name of the state.
|
|
108
144
|
* @param value - The string value to set for the state.
|
|
109
145
|
* @param description - Optional description for the state (default is "-").
|
|
110
146
|
* @param writeable - Optional boolean indicating if the state should be writeable (default is false).
|
|
@@ -116,7 +152,7 @@ class TeslaFiHelper {
|
|
|
116
152
|
if (value != undefined) {
|
|
117
153
|
if (value.trim().length > 0) {
|
|
118
154
|
const commonObj = {
|
|
119
|
-
name: stateName,
|
|
155
|
+
name: stateName.split(".").pop(),
|
|
120
156
|
type: "string",
|
|
121
157
|
role: "text",
|
|
122
158
|
desc: description,
|
|
@@ -146,7 +182,7 @@ class TeslaFiHelper {
|
|
|
146
182
|
/**
|
|
147
183
|
* Checks if a number state exists, creates it if necessary, and updates its value.
|
|
148
184
|
*
|
|
149
|
-
* @param stateName - A string
|
|
185
|
+
* @param stateName - A string representing the name of the state.
|
|
150
186
|
* @param value - The number value to set for the state.
|
|
151
187
|
* @param description - Optional description for the state (default is "-").
|
|
152
188
|
* @param unit - Optional unit string to set for the state (default is undefined).
|
|
@@ -156,9 +192,9 @@ class TeslaFiHelper {
|
|
|
156
192
|
* @returns A Promise that resolves when the state is checked, created (if necessary), and updated.
|
|
157
193
|
*/
|
|
158
194
|
async checkAndSetValueNumber(stateName, value, description = "-", unit, writeable = false, dontUpdate = false, forceMode = false) {
|
|
159
|
-
if (value
|
|
195
|
+
if (value !== undefined) {
|
|
160
196
|
const commonObj = {
|
|
161
|
-
name: stateName,
|
|
197
|
+
name: stateName.split(".").pop(),
|
|
162
198
|
type: "number",
|
|
163
199
|
role: "value",
|
|
164
200
|
desc: description,
|
|
@@ -191,24 +227,24 @@ class TeslaFiHelper {
|
|
|
191
227
|
/**
|
|
192
228
|
* Checks if a boolean state exists, creates it if necessary, and updates its value.
|
|
193
229
|
*
|
|
194
|
-
* @param stateName - A string
|
|
230
|
+
* @param stateName - A string representing the name of the state.
|
|
195
231
|
* @param value - The boolean value to set for the state.
|
|
196
232
|
* @param description - Optional description for the state (default is "-").
|
|
197
233
|
* @param writeable - Optional boolean indicating if the state should be writeable (default is false).
|
|
198
234
|
* @param dontUpdate - Optional boolean indicating if the state should not be updated if it already exists (default is false).
|
|
199
235
|
* @returns A Promise that resolves when the state is checked, created (if necessary), and updated.
|
|
200
236
|
*/
|
|
201
|
-
async checkAndSetValueBoolean(stateName, value, description = "-", writeable = false, dontUpdate = false) {
|
|
237
|
+
async checkAndSetValueBoolean(stateName, value, description = "-", writeable = false, dontUpdate = false, forceMode = false) {
|
|
202
238
|
if (value !== undefined && value !== null) {
|
|
203
239
|
const commonObj = {
|
|
204
|
-
name: stateName,
|
|
240
|
+
name: stateName.split(".").pop(),
|
|
205
241
|
type: "boolean",
|
|
206
242
|
role: "indicator",
|
|
207
243
|
desc: description,
|
|
208
244
|
read: true,
|
|
209
245
|
write: writeable,
|
|
210
246
|
};
|
|
211
|
-
if (
|
|
247
|
+
if (!forceMode) {
|
|
212
248
|
await this.adapter.setObjectNotExistsAsync(stateName, {
|
|
213
249
|
type: "state",
|
|
214
250
|
common: commonObj,
|
|
@@ -222,7 +258,6 @@ class TeslaFiHelper {
|
|
|
222
258
|
native: {},
|
|
223
259
|
});
|
|
224
260
|
}
|
|
225
|
-
// Update the state value if not in don't update mode or the state does not exist
|
|
226
261
|
if (!dontUpdate || (await this.adapter.getStateAsync(stateName)) === null) {
|
|
227
262
|
await this.adapter.setState(stateName, { val: value, ack: true });
|
|
228
263
|
}
|
|
@@ -257,5 +292,5 @@ class TeslaFiHelper {
|
|
|
257
292
|
return `Error (${error.statusMessage || error.statusText || "Unknown Status"}) occurred during: -${context}- : ${errorMessages}`;
|
|
258
293
|
}
|
|
259
294
|
}
|
|
260
|
-
exports.
|
|
261
|
-
//# sourceMappingURL=
|
|
295
|
+
exports.ProjectUtils = ProjectUtils;
|
|
296
|
+
//# sourceMappingURL=projectUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectUtils.js","sourceRoot":"","sources":["../../src/lib/projectUtils.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,8 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TeslaFiAPICaller = void 0;
|
|
7
7
|
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const
|
|
9
|
-
//import { IHomeInfo, TeslaFiHelper } from "./teslafiHelper";
|
|
8
|
+
const projectUtils_1 = require("./projectUtils");
|
|
10
9
|
function resolveAfterXSeconds(x) {
|
|
11
10
|
return new Promise((resolve) => {
|
|
12
11
|
setTimeout(() => {
|
|
@@ -14,7 +13,7 @@ function resolveAfterXSeconds(x) {
|
|
|
14
13
|
}, x * 1000);
|
|
15
14
|
});
|
|
16
15
|
}
|
|
17
|
-
class TeslaFiAPICaller extends
|
|
16
|
+
class TeslaFiAPICaller extends projectUtils_1.ProjectUtils {
|
|
18
17
|
queryUrl = "";
|
|
19
18
|
constructor(adapter) {
|
|
20
19
|
super(adapter);
|
|
@@ -37,6 +36,8 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
37
36
|
return false;
|
|
38
37
|
}
|
|
39
38
|
else {
|
|
39
|
+
// file raw data as state
|
|
40
|
+
this.checkAndSetValue(`vehicle-data.rawJSON`, response.data, `JSON raw data from TeslaFi`);
|
|
40
41
|
// Iterate over each key-value pair in the result object and log non-null values
|
|
41
42
|
for (const [key, value] of Object.entries(result)) {
|
|
42
43
|
if (value !== null) {
|
|
@@ -44,68 +45,129 @@ class TeslaFiAPICaller extends teslafiHelper_1.TeslaFiHelper {
|
|
|
44
45
|
case "Date": //"2024-10-25 20:43:33"
|
|
45
46
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Last connection to your Tesla`);
|
|
46
47
|
break;
|
|
48
|
+
// calendar_enabled: null, remote_start_enabled: "1"
|
|
47
49
|
case "display_name": //"Red Elephant"
|
|
48
50
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Name of your Tesla`);
|
|
49
51
|
break;
|
|
52
|
+
// color: "1 FanOnly ", fast_charger_brand: "", notifications_enabled: null
|
|
50
53
|
case "vin": //"LRWYGCEKXNC44xxxx"
|
|
51
54
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `VIN of your Tesla`);
|
|
52
55
|
break;
|
|
56
|
+
// conn_charge_cable: "IEC", id: "NULL", charge_port_cold_weather_mode: "0", id_s: ""
|
|
53
57
|
case "state": //"online"
|
|
54
58
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `State of your Tesla`);
|
|
55
59
|
break;
|
|
60
|
+
// option_codes: null, user_charge_enable_request: null
|
|
56
61
|
case "time_to_full_charge": //"0.0"
|
|
57
62
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Time to full charge`);
|
|
58
63
|
break;
|
|
59
64
|
case "charge_current_request": //"16"
|
|
60
65
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `requested charge current by your car`, "A");
|
|
61
66
|
break;
|
|
67
|
+
// charge_enable_request: "1", charge_to_max_range: ""
|
|
68
|
+
case "charger_phases": //"3",
|
|
69
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `current number of charge phases`, "");
|
|
70
|
+
break;
|
|
71
|
+
// battery_heater_on: "0", managed_charging_start_time: "", battery_range: "237.17"
|
|
62
72
|
case "charger_power": //"0"
|
|
63
73
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `current charge power`, "kW");
|
|
64
74
|
break;
|
|
65
75
|
case "charge_limit_soc": //"80"
|
|
66
76
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `charge limit defined in your Tesla`, "%");
|
|
67
77
|
break;
|
|
78
|
+
// charger_pilot_current: "16", charge_port_latch: "Engaged", battery_current: "", charger_actual_current: "0", scheduled_charging_pending: "0", fast_charger_type: ""
|
|
68
79
|
case "usable_battery_level": //"75"
|
|
69
80
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `usable battery SoC at this temperature conditions`, "%");
|
|
70
81
|
break;
|
|
82
|
+
// motorized_charge_port: null, charge_limit_soc_std: null, not_enough_power_to_heat: null
|
|
71
83
|
case "battery_level": //"76"
|
|
72
84
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `battery SoC of your Tesla`, "%");
|
|
73
85
|
break;
|
|
86
|
+
// charge_energy_added: "0.0", charge_port_door_open: "1", max_range_charge_counter: null, charge_limit_soc_max: null, ideal_battery_range: "237.17"
|
|
87
|
+
// managed_charging_active: ""
|
|
88
|
+
// charging_state: "NoPower"
|
|
89
|
+
// fast_charger_present: "0", trip_charging: "1", managed_charging_user_canceled: null, scheduled_charging_start_time: null
|
|
74
90
|
case "est_battery_range": //"208.25"
|
|
75
91
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `estimated battery range`, "mi");
|
|
76
92
|
this.checkAndSetValueNumber(`vehicle-data.${key}_km`, Math.round(value * 160.934) / 100, `estimated battery range`, "km");
|
|
77
93
|
break;
|
|
94
|
+
// charge_rate: "0.0", charger_voltage: "1", charge_current_request_max: "16", eu_vehicle: "1", charge_miles_added_ideal: "0.0", charge_limit_soc_min: null, charge_miles_added_rated: "0.0"
|
|
78
95
|
case "inside_temp": //"15.8"
|
|
79
96
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `inside temperature in your Tesla`, "°C");
|
|
80
97
|
break;
|
|
81
98
|
case "longitude": //"9.899749"
|
|
82
99
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Current position longitude of your Tesla`);
|
|
83
100
|
break;
|
|
101
|
+
// heading: "", gps_as_of: null
|
|
84
102
|
case "latitude": //"49.873095"
|
|
85
103
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Current position latitude of your Tesla`);
|
|
86
104
|
break;
|
|
87
105
|
case "speed": //null
|
|
88
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current speed
|
|
106
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current driving speed`, "km/h");
|
|
107
|
+
break;
|
|
108
|
+
// shift_state: null
|
|
109
|
+
case "seat_heater_rear_right": //"3"
|
|
110
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the right second row seat heater`);
|
|
111
|
+
break;
|
|
112
|
+
case "seat_heater_rear_left_back": //""
|
|
113
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the left third row seat heater`);
|
|
114
|
+
break;
|
|
115
|
+
case "seat_heater_left": //"2"
|
|
116
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the left first row seat heater`);
|
|
117
|
+
break;
|
|
118
|
+
// passenger_temp_setting: "20.5", is_auto_conditioning_on: "0"
|
|
119
|
+
case "driver_temp_setting": //"20.5"
|
|
120
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `inside temperature setting of your Tesla`, "°C");
|
|
89
121
|
break;
|
|
90
122
|
case "outside_temp": //"14.0"
|
|
91
123
|
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `outside temperature near your Tesla`, "°C");
|
|
92
124
|
break;
|
|
125
|
+
case "seat_heater_rear_center": //"0"
|
|
126
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the second row center seat heater`);
|
|
127
|
+
break;
|
|
128
|
+
// is_rear_defroster_on: "0"
|
|
129
|
+
case "seat_heater_rear_right_back": //""
|
|
130
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the right third row seat heater`);
|
|
131
|
+
break;
|
|
132
|
+
// smart_preconditioning: ""
|
|
133
|
+
case "seat_heater_right": //"0"
|
|
134
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the right seat heater`);
|
|
135
|
+
break;
|
|
136
|
+
// fan_status: "0", is_front_defroster_on: "0"
|
|
137
|
+
case "seat_heater_rear_left": //"0"
|
|
138
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the left second row seat heater`);
|
|
139
|
+
break;
|
|
140
|
+
// gui_charge_rate_units: null, gui_24_hour_time: null, gui_temperature_units: null, gui_range_display: null, gui_distance_units: null, sun_roof_installed: null,
|
|
141
|
+
// rhd: "0", remote_start_supported: null, homelink_nearby: "0", parsed_calendar_supported: null, spoiler_type: null, ft: "0"
|
|
93
142
|
case "odometer": // "16434.079511"
|
|
94
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current odometer level
|
|
95
|
-
this.checkAndSetValueNumber(`vehicle-data.${key}_km`, Math.round(value * 160.934) / 100, `current odometer level
|
|
143
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, Math.round(value * 100) / 100, `current odometer level`, "mi");
|
|
144
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}_km`, Math.round(value * 160.934) / 100, `current odometer level`, "km");
|
|
96
145
|
break;
|
|
146
|
+
// remote_start: null, pr: "0", climate_keeper_mode: "off", roof_color: null, perf_config: null, valet_mode: "0", calendar_supported: null, pf: "0", sun_roof_percent_open: null, third_row_seats: null,
|
|
147
|
+
// seat_type: null, api_version: null, rear_seat_heaters: null, rt: "0", exterior_color: null, df: "0", autopark_state: "NULL", sun_roof_state: null, notifications_supported: null, vehicle_name: null,
|
|
148
|
+
// dr: "0", autopark_style: null, car_type: null, wheel_type: "Apollo19MetallicShad", locked: "1", center_display_state: null, last_autopark_error: null
|
|
97
149
|
case "car_version": //"2024.32.7 3f0d0fff88"
|
|
98
150
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Current software version`);
|
|
99
151
|
break;
|
|
152
|
+
// defrost_mode: "0", autopark_state_v2: null, is_preconditioning: "0", inside_tempF: "60", driver_temp_settingF: "", outside_tempF: "57", battery_heater: "0", Notes: "", odometerF: "", idleNumber: 14780,
|
|
153
|
+
// sleepNumber: 0, driveNumber: 0, chargeNumber: 0, polling: "", idleTime: 1, maxRange: "314.14", left_temp_direction: null, max_avail_temp: null, is_climate_on: "0", right_temp_direction: null,
|
|
154
|
+
// min_avail_temp: null, is_user_present: "0", in_service: "0", valet_pin_needed: null, charge_port_led_color: null, timestamp: null, power: "0", side_mirror_heaters: "0", wiper_blade_heater: "0",
|
|
155
|
+
case "steering_wheel_heater": //"0"
|
|
156
|
+
this.checkAndSetValueNumber(`vehicle-data.${key}`, parseFloat(value), `level of the steering wheel heater`);
|
|
157
|
+
break;
|
|
158
|
+
// elevation: "", sentry_mode: "0", fd_window: "0", fp_window: "0", rd_window: "0", rp_window: "0", measure: "metric", temperature: "C", currency: "€"
|
|
100
159
|
case "carState": //"Idling"
|
|
101
160
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Sleep-state of your Tesla`);
|
|
102
161
|
break;
|
|
103
162
|
case "location": //"Home"
|
|
104
163
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Location of your Tesla`);
|
|
105
164
|
break;
|
|
165
|
+
// rangeDisplay: "rated",
|
|
106
166
|
case "newVersion": //" "
|
|
107
167
|
this.checkAndSetValue(`vehicle-data.${key}`, value, `Next software version if available`);
|
|
108
168
|
break;
|
|
169
|
+
// newVersionStatus: "", allow_cabin_overheat_protection: "1", cabin_overheat_protection: "FanOnly", cabin_overheat_protection_actively_cooling: "", cop_activation_temperature: null, pressure: null,
|
|
170
|
+
// tpms_front_left: "41.7", tpms_front_right: "41.0", tpms_rear_left: "41.7", tpms_rear_right: "41.0"
|
|
109
171
|
default:
|
|
110
172
|
// this.adapter.log.debug(`Unhandled field with data - ${key}: ${value}`);
|
|
111
173
|
break;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teslafiAPICaller.js","sourceRoot":"","sources":["../../src/lib/teslafiAPICaller.ts"],"names":[],"mappings":";;;;;;AACA,kDAA0C;AAC1C,
|
|
1
|
+
{"version":3,"file":"teslafiAPICaller.js","sourceRoot":"","sources":["../../src/lib/teslafiAPICaller.ts"],"names":[],"mappings":"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"}
|
package/io-package.json
CHANGED
|
@@ -1,8 +1,34 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "teslafi",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.2.0",
|
|
5
5
|
"news": {
|
|
6
|
+
"0.2.0": {
|
|
7
|
+
"en": "Implement raw data state (#26)\nImplement charger phases (#28)\nImplement driver temperature setting (#31)\nImplement seat and steering wheel heater states (#30)",
|
|
8
|
+
"de": "Rohdatensatz implementieren (#26)\nLadephasen implementieren (#28)\nFahrertemperatureinstellung implementieren (#31)\nSitz- und Lenkradheizung implementieren (#30)",
|
|
9
|
+
"ru": "Реализовать состояние необработанных данных (#26)\nРеализовать фазы зарядки (#28)\nРеализовать настройку температуры водителя (#31)\nРеализовать состояния обогрева сидений и руля (#30)",
|
|
10
|
+
"pt": "Implementar estado de dados brutos (#26)\nImplementar fases de carregamento (#28)\nImplementar configuração de temperatura do motorista (#31)\nImplementar estados do aquecedor de assento e volante (#30)",
|
|
11
|
+
"nl": "Implementeren ruwe datastatus (#26)\nImplementeer laadfasen (#28)\nImplementeer de temperatuurinstelling van de bestuurder (#31)\nImplementeer stoel- en stuurverwarmingsstatus (#30)",
|
|
12
|
+
"fr": "Implémenter l'état des données brutes (#26)\nImplémenter les phases de chargeur (#28)\nImplémenter le réglage de température du conducteur (#31)\nImplémenter les états de chauffage des sièges et du volant (#30)",
|
|
13
|
+
"it": "Implementare stato dei dati grezzi (#26)\nImplementare le fasi di ricarica (#28)\nImplementare la regolazione della temperatura del conducente (#31)\nImplementare stati del riscaldamento del sedile e del volante (#30)",
|
|
14
|
+
"es": "Implementar estado de datos en bruto (#26)\nImplementar fases de carga (#28)\nImplementar ajuste de temperatura del conductor (#31)\nImplementar estados del calentador del asiento y volante (#30)",
|
|
15
|
+
"pl": "Zaimplementuj stan surowych danych (#26)\nZaimplementuj fazy ładowarki (#28)\nZaimplementuj ustawienie temperatury kierowcy (#31)\nZaimplementuj stany podgrzewania siedzeń i kierownicy (#30)",
|
|
16
|
+
"uk": "Реалізувати стан сирих даних (#26)\nРеалізувати фази зарядного пристрою (#28)\nРеалізувати налаштування температури водія (#31)\nРеалізувати стани підігріву сидіння та керма (#30)",
|
|
17
|
+
"zh-cn": "实现原始数据状态 (#26)\n实现充电器阶段 (#28)\n实现驾驶员温度设置 (#31)\n实现座椅和方向盘加热状态 (#30)"
|
|
18
|
+
},
|
|
19
|
+
"0.1.5": {
|
|
20
|
+
"en": "Harmonize project tools\nRemoved duplicated texts in state names",
|
|
21
|
+
"de": "Projektwerkzeuge harmonisieren\nDoppelte Texte in Zustandsnamen entfernt",
|
|
22
|
+
"ru": "Унифицировать инструменты проекта\nУдалены дублирующиеся тексты в названиях состояний",
|
|
23
|
+
"pt": "Harmonizar ferramentas do projeto\nRemovidos textos duplicados nos nomes dos estados",
|
|
24
|
+
"nl": "Projecttools harmoniseren\nDubbele teksten in statusnamen verwijderd",
|
|
25
|
+
"fr": "Harmoniser les outils du projet\nSuppression des textes en double dans les noms d'état",
|
|
26
|
+
"it": "Armonizzare gli strumenti del progetto\nRimossi i testi duplicati nei nomi degli stati",
|
|
27
|
+
"es": "Armonizar herramientas del proyecto\nEliminados textos duplicados en nombres de estados",
|
|
28
|
+
"pl": "Ujednolicenie narzędzi projektu\nUsunięto zduplikowane teksty w nazwach stanów",
|
|
29
|
+
"uk": "Уніфікація інструментів проекту\nВилучено дубльовані тексти в назвах станів",
|
|
30
|
+
"zh-cn": "协调项目工具\n删除状态名称中的重复文本"
|
|
31
|
+
},
|
|
6
32
|
"0.1.4": {
|
|
7
33
|
"en": "Fix conversion error",
|
|
8
34
|
"de": "Fehler bei der Umwandlung beheben",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "iobroker.teslafi",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "Adapter to poll TeslaFi data of your car",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Hombach",
|
|
@@ -25,12 +25,12 @@
|
|
|
25
25
|
"dependencies": {
|
|
26
26
|
"@iobroker/adapter-core": "^3.2.2",
|
|
27
27
|
"axios": "^1.7.7",
|
|
28
|
-
"cron": "^3.1.
|
|
28
|
+
"cron": "^3.1.9"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@alcalzone/pak": "^0.11.0",
|
|
32
32
|
"@eslint/eslintrc": "^3.1.0",
|
|
33
|
-
"@eslint/js": "^9.
|
|
33
|
+
"@eslint/js": "^9.14.0",
|
|
34
34
|
"@iobroker/testing": "^5.0.0",
|
|
35
35
|
"@iobroker/types": "^6.0.11",
|
|
36
36
|
"@types/chai": "^4.3.11",
|
|
@@ -38,25 +38,25 @@
|
|
|
38
38
|
"@types/eslint__eslintrc": "^2.1.2",
|
|
39
39
|
"@types/eslint__js": "^8.42.3",
|
|
40
40
|
"@types/mocha": "^10.0.9",
|
|
41
|
-
"@types/node": "^22.
|
|
41
|
+
"@types/node": "^22.9.0",
|
|
42
42
|
"@types/proxyquire": "^1.3.31",
|
|
43
43
|
"@types/sinon": "^17.0.3",
|
|
44
44
|
"@types/sinon-chai": "^3.2.12",
|
|
45
|
-
"@typescript-eslint/eslint-plugin": "^8.
|
|
46
|
-
"@typescript-eslint/parser": "^8.
|
|
45
|
+
"@typescript-eslint/eslint-plugin": "^8.13.0",
|
|
46
|
+
"@typescript-eslint/parser": "^8.13.0",
|
|
47
47
|
"chai": "^4.5.0",
|
|
48
48
|
"chai-as-promised": "^7.1.2",
|
|
49
|
-
"eslint": "^9.
|
|
49
|
+
"eslint": "^9.14.0",
|
|
50
50
|
"eslint-config-prettier": "^9.1.0",
|
|
51
51
|
"eslint-plugin-prettier": "^5.2.1",
|
|
52
|
-
"mocha": "^10.8.
|
|
52
|
+
"mocha": "^10.8.2",
|
|
53
53
|
"prettier": "^3.3.3",
|
|
54
54
|
"proxyquire": "^2.1.3",
|
|
55
55
|
"sinon": "^19.0.2",
|
|
56
56
|
"sinon-chai": "^3.7.0",
|
|
57
57
|
"ts-node": "^10.9.2",
|
|
58
58
|
"typescript": "~5.6.3",
|
|
59
|
-
"typescript-eslint": "^8.
|
|
59
|
+
"typescript-eslint": "^8.13.0"
|
|
60
60
|
},
|
|
61
61
|
"main": "build/main.js",
|
|
62
62
|
"files": [
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"teslafiHelper.js","sourceRoot":"","sources":["../../src/lib/teslafiHelper.ts"],"names":[],"mappings":";;;AAEA,MAAa,aAAa;IACzB,OAAO,CAAwB;IAE/B,YAAY,OAA8B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACxB,CAAC;IAED,kHAAkH;IACxG,cAAc,CAAC,EAAU,EAAE,IAAa;QACjD,MAAM,WAAW,GAAG;YACnB,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE;YACrB,KAAK,EAAE,QAAQ,EAAE,EAAE;SACnB,CAAC;QACF,OAAO,WAAW,CAAC;IACpB,CAAC;IAED;;;;;OAKG;IACH,8DAA8D;IACpD,KAAK,CAAC,aAAa,CAAC,SAAiB;QAC9C,IAAI,CAAC;YACJ,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACnD,OAAO,WAAW,EAAE,GAAG,IAAI,IAAI,CAAC,CAAC,iDAAiD;QACnF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,SAAS,MAAM,KAAK,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACH,8DAA8D;IACtD,KAAK,CAAC,QAAQ,CAAC,SAAiB;QACvC,IAAI,CAAC;YACJ,IAAI,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,EAAE,CAAC;gBAChD,0EAA0E;gBAC1E,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;gBACrE,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBACzC,OAAO,gBAAgB,CAAC;gBACzB,CAAC;qBAAM,CAAC;oBACP,MAAM,uCAAuC,SAAS,IAAI,CAAC;gBAC5D,CAAC;YACF,CAAC;QACF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,SAAS,MAAM,KAAK,EAAE,CAAC,CAAC;YAClE,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IAED;;;;;OAKG;IACH,8DAA8D;IACtD,KAAK,CAAC,oBAAoB,CAAC,SAAiB;QACnD,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC,CAAC,wBAAwB;QAC1F,IAAI,CAAC,WAAW,EAAE,CAAC;YAClB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,0BAA0B,SAAS,0BAA0B,CAAC,CAAC;YACtF,OAAO,KAAK,CAAC;QACd,CAAC;QACD,OAAO,IAAI,CAAC;IACb,CAAC;IAED;;;;;;;;OAQG;IACK,WAAW,CAAC,QAA2C;QAC9D,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAC1D,IAAI,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;YACrC,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B;YAC7D,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACnD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACnD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACpD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACpD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACpD,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,iBAAiB;YACpD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;gBAClB,OAAO,KAAK,CAAC;YACd,CAAC;iBAAM,CAAC;gBACP,OAAO,IAAI,CAAC;YACb,CAAC;QACF,CAAC;aAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IAED;;;;;;;;;;OAUG;IACO,KAAK,CAAC,gBAAgB,CAC/B,SAAiB,EACjB,KAAa,EACb,WAAW,GAAG,GAAG,EACjB,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK;QAEjB,IAAI,KAAK,IAAI,SAAS,EAAE,CAAC;YACxB,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,SAAS,GAAyB;oBACvC,IAAI,EAAE,SAAS;oBACf,IAAI,EAAE,QAAQ;oBACd,IAAI,EAAE,MAAM;oBACZ,IAAI,EAAE,WAAW;oBACjB,IAAI,EAAE,IAAI;oBACV,KAAK,EAAE,SAAS;iBAChB,CAAC;gBACF,IAAI,CAAC,SAAS,EAAE,CAAC;oBAChB,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE;wBACrD,IAAI,EAAE,OAAO;wBACb,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,EAAE;qBACV,CAAC,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACP,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE;wBAC5C,IAAI,EAAE,OAAO;wBACb,MAAM,EAAE,SAAS;wBACjB,MAAM,EAAE,EAAE;qBACV,CAAC,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;oBAC3E,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;gBACnE,CAAC;YACF,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;;;;;;;;;OAWG;IACO,KAAK,CAAC,sBAAsB,CACrC,SAAiB,EACjB,KAAa,EACb,WAAW,GAAG,GAAG,EACjB,IAAa,EACb,SAAS,GAAG,KAAK,EACjB,UAAU,GAAG,KAAK,EAClB,SAAS,GAAG,KAAK;QAEjB,IAAI,KAAK,IAAI,KAAK,KAAK,CAAC,EAAE,CAAC;YAC1B,MAAM,SAAS,GAAyB;gBACvC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,OAAO;gBACb,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,SAAS;aAChB,CAAC;YACF,2DAA2D;YAC3D,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACzC,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC;YACvB,CAAC;YACD,IAAI,CAAC,SAAS,EAAE,CAAC;gBAChB,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE;oBACrD,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,EAAE;iBACV,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE;oBAC5C,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,EAAE;iBACV,CAAC,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC3E,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;;;;;;;OASG;IACO,KAAK,CAAC,uBAAuB,CAAC,SAAiB,EAAE,KAAc,EAAE,WAAW,GAAG,GAAG,EAAE,SAAS,GAAG,KAAK,EAAE,UAAU,GAAG,KAAK;QAClI,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,SAAS,GAAyB;gBACvC,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,SAAS;gBACf,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,WAAW;gBACjB,IAAI,EAAE,IAAI;gBACV,KAAK,EAAE,SAAS;aAChB,CAAC;YAEF,IAAI,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,SAAS,EAAE,CAAC;gBAC9C,MAAM,IAAI,CAAC,OAAO,CAAC,uBAAuB,CAAC,SAAS,EAAE;oBACrD,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,EAAE;iBACV,CAAC,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACP,MAAM,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,SAAS,EAAE;oBAC5C,IAAI,EAAE,OAAO;oBACb,MAAM,EAAE,SAAS;oBACjB,MAAM,EAAE,EAAE;iBACV,CAAC,CAAC;YACJ,CAAC;YACD,iFAAiF;YACjF,IAAI,CAAC,UAAU,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC3E,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,SAAS,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;YACnE,CAAC;QACF,CAAC;IACF,CAAC;IAED;;;;;;OAMG;IACH,8DAA8D;IACvD,oBAAoB,CAAC,KAAU,EAAE,OAAe;QACtD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,kEAAkE;QAClE,IAAI,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;YACjD,kEAAkE;YAClE,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;gBAChC,IAAI,aAAa;oBAAE,aAAa,IAAI,IAAI,CAAC;gBACzC,aAAa,IAAI,GAAG,CAAC,OAAO,CAAC;YAC9B,CAAC;QACF,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;YAC1B,aAAa,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,mFAAmF;QACnH,CAAC;aAAM,CAAC;YACP,aAAa,GAAG,eAAe,CAAC,CAAC,4EAA4E;QAC9G,CAAC;QACD,oFAAoF;QACpF,OAAO,UAAU,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,UAAU,IAAI,gBAAgB,uBAAuB,OAAO,OAAO,aAAa,EAAE,CAAC;IAClI,CAAC;CACD;AA/QD,sCA+QC"}
|