mirror of
https://github.com/meshtastic/protobufs.git
synced 2026-04-20 22:13:55 +00:00
264 lines
No EOL
4.1 KiB
Protocol Buffer
264 lines
No EOL
4.1 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package meshtastic;
|
|
|
|
option csharp_namespace = "Meshtastic.Protobufs";
|
|
option go_package = "github.com/meshtastic/go/generated";
|
|
option java_outer_classname = "CoTProtos";
|
|
option java_package = "com.geeksville.mesh";
|
|
option swift_prefix = "";
|
|
|
|
message CotEvent {
|
|
/*
|
|
* eg. a-f-G-U-C
|
|
*/
|
|
oneof Type {
|
|
/*
|
|
* a - Things
|
|
*/
|
|
Atoms Atoms = 1;
|
|
/*
|
|
* b - Meta information about data sources.
|
|
*/
|
|
Bits Bits = 2;
|
|
/*
|
|
* r - Reservation/Restriction/References
|
|
*/
|
|
Reservation Reservation = 3;
|
|
/*
|
|
* t - Tasking (requests/orders)
|
|
*/
|
|
Tasking Tasking = 4;
|
|
/*
|
|
* c - Capability (applied to an area)
|
|
*/
|
|
Capability Capability = 5;
|
|
}
|
|
/*
|
|
* 128-bit representation of uuid?
|
|
* FIXME: Look into unishox2 compressed string as alternative
|
|
*/
|
|
optional bytes Uid = 6;
|
|
/*
|
|
* Starts at (unix epoch)
|
|
*/
|
|
optional fixed32 SendTime = 7;
|
|
/*
|
|
* Becomes effective at (unix epoch)
|
|
*/
|
|
optional fixed32 StartTime = 8;
|
|
/*
|
|
* Becomes stale at (unix epoch)
|
|
*/
|
|
optional fixed32 StaleTime = 9;
|
|
/*
|
|
* Point position
|
|
*/
|
|
optional Point Point = 10;
|
|
/*
|
|
* CoT event details
|
|
*/
|
|
optional Detail Detail = 11;
|
|
/*
|
|
* FIXME: Give it a structure like Describes?
|
|
*/
|
|
optional string How = 12;
|
|
}
|
|
/*
|
|
* Details of CoT event
|
|
*/
|
|
message Detail {
|
|
/*
|
|
* Status of EUD
|
|
*/
|
|
optional Status Status = 1;
|
|
/*
|
|
* Track
|
|
*/
|
|
optional Track Track = 2;
|
|
}
|
|
/*
|
|
* EUD status
|
|
*/
|
|
message Status {
|
|
/*
|
|
* Battery level (percent)
|
|
*/
|
|
optional uint32 Battery = 1;
|
|
}
|
|
/*
|
|
* Track
|
|
*/
|
|
message Track {
|
|
}
|
|
/*
|
|
* Position of the CoT event
|
|
*/
|
|
message Point {
|
|
/*
|
|
* Latitude - Multiply by 1e-7 to get in floating point
|
|
*/
|
|
optional sfixed32 Latitude = 1;
|
|
/*
|
|
* Longitude - Multiply by 1e-7 to get in floating point
|
|
*/
|
|
optional sfixed32 Longitude = 2;
|
|
/*
|
|
* Height above ellipsoid
|
|
*/
|
|
optional int32 HAE = 3;
|
|
/*
|
|
* Height
|
|
*/
|
|
optional int32 Radius = 4;
|
|
/*
|
|
* Radius
|
|
*/
|
|
optional int32 Height = 5;
|
|
}
|
|
|
|
/*
|
|
* Affiliation of the atoms
|
|
*/
|
|
enum Affiliation {
|
|
/*
|
|
* o - None specified
|
|
*/
|
|
NoneSpecified = 0;
|
|
/*
|
|
* p - Pending
|
|
*/
|
|
Pending = 1;
|
|
/*
|
|
* a - Assumed friend
|
|
*/
|
|
AssumedFriend = 2;
|
|
/*
|
|
* f - Friend
|
|
*/
|
|
Friend = 3;
|
|
/*
|
|
* n - Neutral
|
|
*/
|
|
Neutral = 4;
|
|
/*
|
|
* s - Suspect
|
|
*/
|
|
Suspect = 5;
|
|
/*
|
|
* h - Hostile
|
|
*/
|
|
Hostile = 6;
|
|
/*
|
|
* j - Joker
|
|
*/
|
|
Joker = 7;
|
|
/*
|
|
* k - Faker
|
|
*/
|
|
Faker = 8;
|
|
/*
|
|
* u - Unknown
|
|
*/
|
|
Unknown = 9;
|
|
/*
|
|
* x - Other
|
|
*/
|
|
OtherAffiliation = 10;
|
|
/*
|
|
* g - Excercise Pending
|
|
*/
|
|
ExcercisePending = 11;
|
|
/*
|
|
* w - Excercise Unknown
|
|
*/
|
|
ExcerciseUnknown = 12;
|
|
/*
|
|
* m - Excercise Assumed Friend
|
|
*/
|
|
ExcerciseAssumedFriend = 13;
|
|
/*
|
|
* d - Excercise Friend
|
|
*/
|
|
ExcerciseFriend = 15;
|
|
/*
|
|
* l - Excercise Neutral
|
|
*/
|
|
ExcerciseNeutral = 16;
|
|
}
|
|
|
|
/*
|
|
* Attributes describing the atoms
|
|
*/
|
|
message Atoms {
|
|
/*
|
|
* Affiliation of the Atoms
|
|
*/
|
|
Affiliation Affiliation = 1;
|
|
/*
|
|
* Dimension of the Atoms
|
|
*/
|
|
Dimension Dimension = 2;
|
|
/*
|
|
* Additional Mil-2525 function codes
|
|
*/
|
|
string Functions = 3;
|
|
}
|
|
|
|
/*
|
|
* Dimension of atoms
|
|
*/
|
|
enum Dimension {
|
|
/*
|
|
* Z - Unknown
|
|
*/
|
|
UnknownDimension = 0;
|
|
/*
|
|
* F - SOF
|
|
*/
|
|
SOF = 1;
|
|
/*
|
|
* U - Sea subsurface
|
|
*/
|
|
SeaSubsurface = 2;
|
|
/*
|
|
* S - Sea surface
|
|
*/
|
|
SeaSurface = 3;
|
|
/*
|
|
* G - Ground
|
|
*/
|
|
Ground = 4;
|
|
/*
|
|
* A - Air
|
|
*/
|
|
Air = 5;
|
|
/*
|
|
* P - Space
|
|
*/
|
|
Space = 6;
|
|
/*
|
|
* X - Other
|
|
*/
|
|
OtherDimension = 7;
|
|
}
|
|
/*
|
|
* TODO
|
|
*/
|
|
message Bits {
|
|
}
|
|
/*
|
|
* TODO
|
|
*/
|
|
message Reservation {
|
|
}
|
|
/*
|
|
* TODO
|
|
*/
|
|
message Tasking {
|
|
}
|
|
/*
|
|
* TODO
|
|
*/
|
|
message Capability {
|
|
} |