Skip to content

Commit b90b0f0

Browse files
authored
[mercedesme] Update proto files for upcoming features (openhab#18205)
* update proto files Signed-off-by: Bernd Weymann <[email protected]>
1 parent 019fb8a commit b90b0f0

File tree

14 files changed

+32358
-13888
lines changed

14 files changed

+32358
-13888
lines changed

bundles/org.openhab.binding.mercedesme/proto/acp.proto

+7-2
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
syntax = "proto3";
22
package proto;
33

4-
//import "github.com/gogo/protobuf/gogoproto/gogo.proto";
54
import "gogo.proto";
65

7-
86
option (gogoproto.goproto_enum_prefix_all) = true;
97
option java_package = "com.daimler.mbcarkit.proto";
108

@@ -48,6 +46,9 @@ message VehicleAPI {
4846
FINISHED = 5;
4947
// There was an error while executing the command process.
5048
FAILED = 6;
49+
// added 20241105
50+
ACKED_BY_APPTWIN = 7;
51+
PIN_VALID = 8;
5152
}
5253

5354
enum AttributeStatus {
@@ -284,6 +285,8 @@ message ACP {
284285
RTMREADCONFIG = 2410;
285286
AVPACTIVATE = 2700;
286287
CHARGECONTROLCONFIGURE = 2800;
288+
CHARGINGBREAKCLOCKTIMERCONFIGURE = 3000;
289+
WIPERRESET = 3110;
287290

288291
unknownCommandType = 0;
289292
doorsLock = 100;
@@ -416,5 +419,7 @@ message ACP {
416419
rtmReadConfig = 2410;
417420
avpActivate = 2700;
418421
chargecontrolconfigure = 2800;
422+
chargingbreakclocktimerconfigure = 3000;
423+
wiperreset = 3110;
419424
}
420425
}

bundles/org.openhab.binding.mercedesme/proto/client.proto

+1
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ message ClientMessage {
3636
AppTwinPendingCommandsResponse apptwin_pending_commands_response = 21;
3737
AcknowledgeVEPUpdatesByVIN acknowledge_vep_updates_by_vin = 22;
3838
AcknowledgeAssignedVehicles acknowledge_assigned_vehicles = 23;
39+
AcknowledgeDataChangeEvent acknowledge_data_change_event = 26;
3940
}
4041
}
4142

bundles/org.openhab.binding.mercedesme/proto/eventpush.proto

-1
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ syntax = "proto3";
22
package proto;
33
import "acp.proto";
44

5-
//import "github.com/gogo/protobuf/gogoproto/gogo.proto";
65
import "gogo.proto";
76

87
option (gogoproto.goproto_enum_prefix_all) = true;

bundles/org.openhab.binding.mercedesme/proto/gogo.proto

+1-1
Original file line numberDiff line numberDiff line change
@@ -141,4 +141,4 @@ extend google.protobuf.FieldOptions {
141141
optional bool stdduration = 65011;
142142
optional bool wktpointer = 65012;
143143

144-
}
144+
}
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,144 @@
1+
// Protocol Buffers - Google's data interchange format
2+
// Copyright 2008 Google Inc. All rights reserved.
3+
// https://developers.google.com/protocol-buffers/
4+
//
5+
// Redistribution and use in source and binary forms, with or without
6+
// modification, are permitted provided that the following conditions are
7+
// met:
8+
//
9+
// * Redistributions of source code must retain the above copyright
10+
// notice, this list of conditions and the following disclaimer.
11+
// * Redistributions in binary form must reproduce the above
12+
// copyright notice, this list of conditions and the following disclaimer
13+
// in the documentation and/or other materials provided with the
14+
// distribution.
15+
// * Neither the name of Google Inc. nor the names of its
16+
// contributors may be used to endorse or promote products derived from
17+
// this software without specific prior written permission.
18+
//
19+
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
20+
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
21+
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
22+
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
23+
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
24+
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
25+
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26+
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27+
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28+
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
29+
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30+
31+
syntax = "proto3";
32+
33+
package google.protobuf;
34+
35+
option cc_enable_arenas = true;
36+
option go_package = "google.golang.org/protobuf/types/known/timestamppb";
37+
option java_package = "com.google.protobuf";
38+
option java_outer_classname = "TimestampProto";
39+
option java_multiple_files = true;
40+
option objc_class_prefix = "GPB";
41+
option csharp_namespace = "Google.Protobuf.WellKnownTypes";
42+
43+
// A Timestamp represents a point in time independent of any time zone or local
44+
// calendar, encoded as a count of seconds and fractions of seconds at
45+
// nanosecond resolution. The count is relative to an epoch at UTC midnight on
46+
// January 1, 1970, in the proleptic Gregorian calendar which extends the
47+
// Gregorian calendar backwards to year one.
48+
//
49+
// All minutes are 60 seconds long. Leap seconds are "smeared" so that no leap
50+
// second table is needed for interpretation, using a [24-hour linear
51+
// smear](https://developers.google.com/time/smear).
52+
//
53+
// The range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By
54+
// restricting to that range, we ensure that we can convert to and from [RFC
55+
// 3339](https://www.ietf.org/rfc/rfc3339.txt) date strings.
56+
//
57+
// # Examples
58+
//
59+
// Example 1: Compute Timestamp from POSIX `time()`.
60+
//
61+
// Timestamp timestamp;
62+
// timestamp.set_seconds(time(NULL));
63+
// timestamp.set_nanos(0);
64+
//
65+
// Example 2: Compute Timestamp from POSIX `gettimeofday()`.
66+
//
67+
// struct timeval tv;
68+
// gettimeofday(&tv, NULL);
69+
//
70+
// Timestamp timestamp;
71+
// timestamp.set_seconds(tv.tv_sec);
72+
// timestamp.set_nanos(tv.tv_usec * 1000);
73+
//
74+
// Example 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.
75+
//
76+
// FILETIME ft;
77+
// GetSystemTimeAsFileTime(&ft);
78+
// UINT64 ticks = (((UINT64)ft.dwHighDateTime) << 32) | ft.dwLowDateTime;
79+
//
80+
// // A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z
81+
// // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z.
82+
// Timestamp timestamp;
83+
// timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL));
84+
// timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));
85+
//
86+
// Example 4: Compute Timestamp from Java `System.currentTimeMillis()`.
87+
//
88+
// long millis = System.currentTimeMillis();
89+
//
90+
// Timestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000)
91+
// .setNanos((int) ((millis % 1000) * 1000000)).build();
92+
//
93+
// Example 5: Compute Timestamp from Java `Instant.now()`.
94+
//
95+
// Instant now = Instant.now();
96+
//
97+
// Timestamp timestamp =
98+
// Timestamp.newBuilder().setSeconds(now.getEpochSecond())
99+
// .setNanos(now.getNano()).build();
100+
//
101+
// Example 6: Compute Timestamp from current time in Python.
102+
//
103+
// timestamp = Timestamp()
104+
// timestamp.GetCurrentTime()
105+
//
106+
// # JSON Mapping
107+
//
108+
// In JSON format, the Timestamp type is encoded as a string in the
109+
// [RFC 3339](https://www.ietf.org/rfc/rfc3339.txt) format. That is, the
110+
// format is "{year}-{month}-{day}T{hour}:{min}:{sec}[.{frac_sec}]Z"
111+
// where {year} is always expressed using four digits while {month}, {day},
112+
// {hour}, {min}, and {sec} are zero-padded to two digits each. The fractional
113+
// seconds, which can go up to 9 digits (i.e. up to 1 nanosecond resolution),
114+
// are optional. The "Z" suffix indicates the timezone ("UTC"); the timezone
115+
// is required. A proto3 JSON serializer should always use UTC (as indicated by
116+
// "Z") when printing the Timestamp type and a proto3 JSON parser should be
117+
// able to accept both UTC and other timezones (as indicated by an offset).
118+
//
119+
// For example, "2017-01-15T01:30:15.01Z" encodes 15.01 seconds past
120+
// 01:30 UTC on January 15, 2017.
121+
//
122+
// In JavaScript, one can convert a Date object to this format using the
123+
// standard
124+
// [toISOString()](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toISOString)
125+
// method. In Python, a standard `datetime.datetime` object can be converted
126+
// to this format using
127+
// [`strftime`](https://docs.python.org/2/library/time.html#time.strftime) with
128+
// the time format spec '%Y-%m-%dT%H:%M:%S.%fZ'. Likewise, in Java, one can use
129+
// the Joda Time's [`ISODateTimeFormat.dateTime()`](
130+
// http://joda-time.sourceforge.net/apidocs/org/joda/time/format/ISODateTimeFormat.html#dateTime()
131+
// ) to obtain a formatter capable of generating timestamps in this format.
132+
//
133+
message Timestamp {
134+
// Represents seconds of UTC time since Unix epoch
135+
// 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to
136+
// 9999-12-31T23:59:59Z inclusive.
137+
int64 seconds = 1;
138+
139+
// Non-negative fractions of a second at nanosecond resolution. Negative
140+
// second values with fractions must still have non-negative nanos values
141+
// that count forward in time. Must be from 0 to 999,999,999
142+
// inclusive.
143+
int32 nanos = 2;
144+
}

bundles/org.openhab.binding.mercedesme/proto/vehicle-commands.proto

+25-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
syntax = "proto3";
22
package proto;
3-
//import "github.com/gogo/protobuf/gogoproto/gogo.proto";
43
import "gogo.proto";
54
import "google/protobuf/wrappers.proto";
65

@@ -97,6 +96,9 @@ message CommandRequest {
9796

9897
DeactivateVehicleKeys deactivate_vehicle_keys = 48;
9998
ActivateVehicleKeys activate_vehicle_keys = 49;
99+
100+
ChargingBreakClocktimerConfigure chargingbreak_clocktimer_configure = 50;
101+
WiperHealthReset wiper_health_reset = 64;
100102
}
101103
}
102104

@@ -609,3 +611,25 @@ message AutomaticValetParkingActivate {
609611
message ChargeFlapUnlock {}
610612

611613
message ChargeCouplerUnlock {}
614+
615+
message ChargingBreakClocktimerConfigure {
616+
repeated ChargingBreakClockTimerConfigureEntry chargingbreak_clocktimer_configure_entry = 1;
617+
}
618+
619+
620+
enum ChargingBreakClockTimerEntryStatus {
621+
DELETE = 0;
622+
INACTIVE = 1;
623+
ACTIVE = 2;
624+
}
625+
626+
message ChargingBreakClockTimerConfigureEntry {
627+
ChargingBreakClockTimerEntryStatus action = 1;
628+
int32 endTimeHour = 2;
629+
int32 endTimeMinute = 3;
630+
int32 startTimeHour = 4;
631+
int32 startTimeMinute = 5;
632+
int32 timerId = 6;
633+
}
634+
635+
message WiperHealthReset {}

0 commit comments

Comments
 (0)