]> git.basschouten.com Git - openhab-addons.git/blob
0e9e7918dc6e620833077fff93b28797c0ca26ed
[openhab-addons.git] /
1 /**
2  * Copyright (c) 2010-2021 Contributors to the openHAB project
3  *
4  * See the NOTICE file(s) distributed with this work for additional
5  * information.
6  *
7  * This program and the accompanying materials are made available under the
8  * terms of the Eclipse Public License 2.0 which is available at
9  * http://www.eclipse.org/legal/epl-2.0
10  *
11  * SPDX-License-Identifier: EPL-2.0
12  */
13 package org.openhab.binding.tesla.internal;
14
15 import org.eclipse.jdt.annotation.NonNullByDefault;
16 import org.openhab.core.thing.ThingTypeUID;
17
18 /**
19  * The {@link TeslaBindingConstants} class defines common constants, which are
20  * used across the whole binding.
21  *
22  * @author Karel Goderis - Initial contribution
23  */
24 @NonNullByDefault
25 public class TeslaBindingConstants {
26
27     // REST URI constants
28     public static final String API_NAME = "Tesla Client API";
29     public static final String API_VERSION = "api/1/";
30     public static final String PATH_COMMAND = "command/{cmd}";
31     public static final String PATH_DATA_REQUEST = "data_request/{cmd}";
32     public static final String PATH_VEHICLE_ID = "/{vid}/";
33     public static final String PATH_WAKE_UP = "wake_up";
34     public static final String URI_ACCESS_TOKEN = "oauth/token";
35     public static final String URI_EVENT = "https://streaming.vn.teslamotors.com/stream/";
36     public static final String URI_OWNERS = "https://owner-api.teslamotors.com/";
37     public static final String VALETPIN = "valetpin";
38     public static final String VEHICLES = "vehicles";
39     public static final String VIN = "vin";
40
41     // Tesla REST API commands
42     public static final String COMMAND_ACTUATE_TRUNK = "actuate_trunk";
43     public static final String COMMAND_AUTO_COND_START = "auto_conditioning_start";
44     public static final String COMMAND_AUTO_COND_STOP = "auto_conditioning_stop";
45     public static final String COMMAND_CHARGE_MAX = "charge_max_range";
46     public static final String COMMAND_CHARGE_START = "charge_start";
47     public static final String COMMAND_CHARGE_STD = "charge_standard";
48     public static final String COMMAND_CHARGE_STOP = "charge_stop";
49     public static final String COMMAND_DOOR_LOCK = "door_lock";
50     public static final String COMMAND_DOOR_UNLOCK = "door_unlock";
51     public static final String COMMAND_FLASH_LIGHTS = "flash_lights";
52     public static final String COMMAND_HONK_HORN = "honk_horn";
53     public static final String COMMAND_OPEN_CHARGE_PORT = "charge_port_door_open";
54     public static final String COMMAND_RESET_VALET_PIN = "reset_valet_pin";
55     public static final String COMMAND_SET_CHARGE_LIMIT = "set_charge_limit";
56     public static final String COMMAND_SET_TEMP = "set_temps";
57     public static final String COMMAND_SET_VALET_MODE = "set_valet_mode";
58     public static final String COMMAND_SUN_ROOF = "sun_roof_control";
59     public static final String COMMAND_THROTTLE = "commandthrottle";
60     public static final String COMMAND_WAKE_UP = "wake_up";
61     public static final String DATA_THROTTLE = "datathrottle";
62
63     // Tesla REST API vehicle states
64     public static final String CHARGE_STATE = "charge_state";
65     public static final String CLIMATE_STATE = "climate_state";
66     public static final String DRIVE_STATE = "drive_state";
67     public static final String GUI_STATE = "gui_settings";
68     public static final String MOBILE_ENABLED_STATE = "mobile_enabled";
69     public static final String VEHICLE_STATE = "vehicle_state";
70     public static final String VEHICLE_CONFIG = "vehicle_config";
71
72     public static final String BINDING_ID = "tesla";
73
74     // List of all Thing Type UIDs
75     public static final ThingTypeUID THING_TYPE_ACCOUNT = new ThingTypeUID(BINDING_ID, "account");
76     public static final ThingTypeUID THING_TYPE_MODELS = new ThingTypeUID(BINDING_ID, "models");
77     public static final ThingTypeUID THING_TYPE_MODEL3 = new ThingTypeUID(BINDING_ID, "model3");
78     public static final ThingTypeUID THING_TYPE_MODELX = new ThingTypeUID(BINDING_ID, "modelx");
79     public static final ThingTypeUID THING_TYPE_MODELY = new ThingTypeUID(BINDING_ID, "modely");
80
81     public enum EventKeys {
82         timestamp,
83         odometer,
84         speed,
85         soc,
86         elevation,
87         est_heading,
88         est_lat,
89         est_lng,
90         power,
91         shift_state,
92         range,
93         est_range,
94         heading
95     }
96
97     public static final String CHANNEL_CHARGE = "charge";
98     public static final String CHANNEL_COMBINED_TEMP = "combinedtemp";
99
100     // thing configurations
101     public static final String CONFIG_ALLOWWAKEUP = "allowWakeup";
102     public static final String CONFIG_ENABLEEVENTS = "enableEvents";
103     public static final String CONFIG_REFRESHTOKEN = "refreshToken";
104     public static final String CONFIG_USERNAME = "username";
105     public static final String CONFIG_PASSWORD = "password";
106 }