aboutsummaryrefslogtreecommitdiffstats
path: root/protos/vss-notification.proto
diff options
context:
space:
mode:
Diffstat (limited to 'protos/vss-notification.proto')
-rw-r--r--protos/vss-notification.proto91
1 files changed, 91 insertions, 0 deletions
diff --git a/protos/vss-notification.proto b/protos/vss-notification.proto
new file mode 100644
index 0000000..6a40d7a
--- /dev/null
+++ b/protos/vss-notification.proto
@@ -0,0 +1,91 @@
+/********************************************************************************
+ * Copyright (c) 2022 Contributors to the Eclipse Foundation
+ * Copyright (c) 2024 Konsulko Group
+ *
+ * See the NOTICE file(s) distributed with this work for additional
+ * information regarding copyright ownership.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Apache License 2.0 which is available at
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * SPDX-License-Identifier: Apache-2.0
+ ********************************************************************************/
+
+syntax = "proto3";
+
+package agl;
+
+import "google/protobuf/timestamp.proto";
+
+message SignalUpdateNotification {
+ string clientId = 1;
+ repeated SignalUpdateEntry signals = 2;
+}
+
+/*
+ * Derived from KUKSA.val's Datapoint
+ *
+ * Type conversions from VSS types follow the rules outlined in:
+ * https://github.com/eclipse/kuksa.val/blob/master/kuksa_databroker/doc/TYPES.md
+ */
+
+message SignalUpdateEntry {
+ oneof signal {
+ string path = 1;
+ string uuid = 2;
+ }
+
+ google.protobuf.Timestamp timestamp = 3;
+
+ oneof value {
+ string string = 11;
+ bool bool = 12;
+ sint32 int32 = 13;
+ sint64 int64 = 14;
+ uint32 uint32 = 15;
+ uint64 uint64 = 16;
+ float float = 17;
+ double double = 18;
+ StringArray string_array = 21;
+ BoolArray bool_array = 22;
+ Int32Array int32_array = 23;
+ Int64Array int64_array = 24;
+ Uint32Array uint32_array = 25;
+ Uint64Array uint64_array = 26;
+ FloatArray float_array = 27;
+ DoubleArray double_array = 28;
+ }
+}
+
+message StringArray {
+ repeated string values = 1;
+}
+
+message BoolArray {
+ repeated bool values = 1;
+}
+
+message Int32Array {
+ repeated sint32 values = 1;
+}
+
+message Int64Array {
+ repeated sint64 values = 1;
+}
+
+message Uint32Array {
+ repeated uint32 values = 1;
+}
+
+message Uint64Array {
+ repeated uint64 values = 1;
+}
+
+message FloatArray {
+ repeated float values = 1;
+}
+
+message DoubleArray {
+ repeated double values = 1;
+}