2 * Copyright (c) 2010-2023 Contributors to the openHAB project
4 * See the NOTICE file(s) distributed with this work for additional
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
11 * SPDX-License-Identifier: EPL-2.0
13 package org.openhab.binding.volvooncall.internal;
16 import java.util.stream.Collectors;
17 import java.util.stream.Stream;
19 import org.eclipse.jdt.annotation.NonNullByDefault;
20 import org.openhab.core.thing.ThingTypeUID;
23 * The {@link VolvoOnCallBindingConstants} class defines common constants, which are
24 * used across the whole binding.
26 * @author Gaƫl L'hopital - Initial contribution
29 public class VolvoOnCallBindingConstants {
31 public static final String BINDING_ID = "volvooncall";
33 // List of Thing Type UIDs
34 public static final ThingTypeUID APIBRIDGE_THING_TYPE = new ThingTypeUID(BINDING_ID, "vocapi");
35 public static final ThingTypeUID VEHICLE_THING_TYPE = new ThingTypeUID(BINDING_ID, "vehicle");
37 // List of Channel groups
38 public static final String GROUP_DOORS = "doors";
39 public static final String GROUP_WINDOWS = "windows";
40 public static final String GROUP_TYRES = "tyrePressure";
41 public static final String GROUP_BATTERY = "battery";
42 public static final String GROUP_OTHER = "other";
43 public static final String GROUP_POSITION = "position";
44 public static final String GROUP_ODOMETER = "odometer";
45 public static final String GROUP_TANK = "tank";
47 // List of Channel id's
48 public static final String TAILGATE = "tailgate";
49 public static final String REAR_RIGHT = "rearRight";
50 public static final String REAR_LEFT = "rearLeft";
51 public static final String FRONT_RIGHT = "frontRight";
52 public static final String FRONT_LEFT = "frontLeft";
53 public static final String HOOD = "hood";
54 public static final String REAR_RIGHT_WND = "rearRightWnd";
55 public static final String REAR_LEFT_WND = "rearLeftWnd";
56 public static final String FRONT_RIGHT_WND = "frontRightWnd";
57 public static final String FRONT_LEFT_WND = "frontLeftWnd";
58 public static final String REAR_RIGHT_TYRE = "rearRightTyre";
59 public static final String REAR_LEFT_TYRE = "rearLeftTyre";
60 public static final String FRONT_RIGHT_TYRE = "frontRightTyre";
61 public static final String FRONT_LEFT_TYRE = "frontLeftTyre";
62 public static final String ODOMETER = "odometer";
63 public static final String TRIPMETER1 = "tripmeter1";
64 public static final String TRIPMETER2 = "tripmeter2";
65 public static final String DISTANCE_TO_EMPTY = "distanceToEmpty";
66 public static final String FUEL_AMOUNT = "fuelAmount";
67 public static final String FUEL_LEVEL = "fuelLevel";
68 public static final String FUEL_CONSUMPTION = "fuelConsumption";
69 public static final String FUEL_ALERT = "fuelAlert";
70 public static final String CALCULATED_LOCATION = "calculatedLocation";
71 public static final String ACTUAL_LOCATION = "location";
72 public static final String LOCATION_TIMESTAMP = "locationTimestamp";
73 public static final String HEADING = "heading";
74 public static final String CAR_LOCKED = "carLocked";
75 public static final String ENGINE_RUNNING = "engineRunning";
76 public static final String BRAKE_FLUID_LEVEL = "brakeFluidLevel";
77 public static final String WASHER_FLUID_LEVEL = "washerFluidLevel";
78 public static final String AVERAGE_SPEED = "averageSpeed";
79 public static final String SERVICE_WARNING = "serviceWarningStatus";
80 public static final String BATTERY_LEVEL = "batteryLevel";
81 public static final String BATTERY_LEVEL_RAW = "batteryLevelRaw";
82 public static final String BATTERY_DISTANCE_TO_EMPTY = "batteryDistanceToEmpty";
83 public static final String CHARGE_STATUS = "chargeStatus";
84 public static final String CHARGE_STATUS_CABLE = "chargeStatusCable";
85 public static final String CHARGE_STATUS_CHARGING = "chargeStatusCharging";
86 public static final String CHARGE_STATUS_FULLY_CHARGED = "chargeStatusFullyCharged";
87 public static final String TIME_TO_BATTERY_FULLY_CHARGED = "timeToHVBatteryFullyCharged";
88 public static final String CHARGING_END = "chargingEnd";
89 public static final String BULB_FAILURE = "bulbFailure";
92 public static final String CAR_EVENT = "carEvent";
93 public static final String EVENT_CAR_STOPPED = "CAR_STOPPED";
94 public static final String EVENT_CAR_MOVED = "CAR_MOVED";
95 public static final String EVENT_CAR_STARTED = "CAR_STARTED";
96 // Last Trip Channel Id's
97 public static final String LAST_TRIP_GROUP = "lasttrip";
98 public static final String TRIP_CONSUMPTION = "tripConsumption";
99 public static final String TRIP_DISTANCE = "tripDistance";
100 public static final String TRIP_DURATION = "tripDuration";
101 public static final String TRIP_START_TIME = "tripStartTime";
102 public static final String TRIP_END_TIME = "tripEndTime";
103 public static final String TRIP_START_ODOMETER = "tripStartOdometer";
104 public static final String TRIP_STOP_ODOMETER = "tripStopOdometer";
105 public static final String TRIP_START_POSITION = "startPosition";
106 public static final String TRIP_END_POSITION = "endPosition";
108 // Optional Channels depends upon car version
109 public static final String CAR_LOCATOR = "carLocator";
110 public static final String JOURNAL_LOG = "journalLog";
113 public static final String ENGINE_START = "engineStart";
114 public static final String UNLOCK = "unlock";
115 public static final String UNLOCK_TIME = "unlockTimeFrame";
116 public static final String LOCK = "lock";
117 public static final String HONK = "honk";
118 public static final String BLINK = "blink";
119 public static final String HONK_BLINK = "honkAndBlink";
120 public static final String HONK_AND_OR_BLINK = "honkAndOrBlink";
121 public static final String REMOTE_HEATER = "remoteHeater";
122 public static final String PRECLIMATIZATION = "preclimatization";
123 public static final String LAST_TRIP_ID = "lastTripId";
125 // List of all adressable things in OH = SUPPORTED_DEVICE_THING_TYPES_UIDS + the virtual bridge
126 public static final Set<ThingTypeUID> SUPPORTED_THING_TYPES_UIDS = Stream
127 .of(APIBRIDGE_THING_TYPE, VEHICLE_THING_TYPE).collect(Collectors.toSet());
129 // Default value for undefined integers
130 public static final int UNDEFINED = -1;