stillbox/pkg/pb/stillbox.proto

90 lines
1.6 KiB
Protocol Buffer
Raw Normal View History

2024-07-31 09:24:05 -04:00
syntax = "proto3";
package stillbox;
option go_package = "./pb";
import "google/protobuf/timestamp.proto";
2024-08-16 11:04:09 -04:00
import "google/protobuf/struct.proto";
2024-07-31 09:24:05 -04:00
2024-08-04 00:55:28 -04:00
message Message {
oneof toClient_message {
Call call = 1;
2024-08-16 11:10:26 -04:00
TalkgroupInfo tgInfo = 2;
Notification notification = 3;
UserPopup popup = 4;
Error error = 5;
2024-08-04 00:55:28 -04:00
}
}
2024-07-31 09:24:05 -04:00
message Call {
2024-08-04 00:55:28 -04:00
string audioName = 1;
string audioType = 2;
google.protobuf.Timestamp dateTime = 3;
2024-07-31 09:24:05 -04:00
int32 system = 4;
int32 talkgroup = 5;
int32 source = 6;
int64 frequency = 7;
repeated int64 frequencies = 8;
repeated int32 patches = 9;
repeated int32 sources = 10;
2024-08-11 13:46:43 -04:00
optional int32 duration = 11;
bytes audio = 12;
2024-07-31 09:24:05 -04:00
}
2024-08-04 00:55:28 -04:00
message UserPopup {
string msg = 1;
}
2024-08-06 11:19:30 -04:00
message Error {
string error = 1;
}
2024-08-04 00:55:28 -04:00
message Notification {
google.protobuf.Timestamp dateTime = 1;
string msg = 2;
string actionUrl = 3;
}
message Command {
oneof command {
Live liveCommand = 1;
Search searchCommand = 2;
2024-08-16 11:04:09 -04:00
Talkgroup tgCommand = 3;
2024-08-04 00:55:28 -04:00
}
}
2024-08-16 11:04:09 -04:00
message TalkgroupInfo {
Talkgroup tg = 1;
optional string name = 2;
optional string group = 3;
optional int32 frequency = 4;
repeated string tags = 5;
optional google.protobuf.Struct metadata = 6;
}
2024-08-04 00:55:28 -04:00
enum LiveState {
LS_STOPPED = 0;
LS_LIVE = 1;
LS_PAUSED = 2;
}
message Live {
2024-08-06 11:19:30 -04:00
optional LiveState state = 1;
optional Filter filter = 2;
}
message Talkgroup {
int32 system = 1;
int32 talkgroup = 2;
}
message Filter {
repeated Talkgroup talkgroups = 1;
repeated Talkgroup talkgroups_not = 2;
repeated string talkgroup_tags_all = 3;
repeated string talkgroup_tags_any = 4;
repeated string talkgroup_tags_not = 5;
2024-08-04 00:55:28 -04:00
}
message Search {
}