feat(protocol): add gateway transport authority contracts
This commit is contained in:
@@ -49,3 +49,95 @@ message ChannelOpen {
|
||||
string direction = 2;
|
||||
uint32 maximum_frame_bytes = 3;
|
||||
}
|
||||
|
||||
message CapabilityProfile {
|
||||
string transport = 1;
|
||||
string framing = 2;
|
||||
string media = 3;
|
||||
string audio = 4;
|
||||
string source_rate_control = 5;
|
||||
string client_decode = 6;
|
||||
}
|
||||
|
||||
message GatewayRegistration {
|
||||
string version = 1;
|
||||
string gateway_id = 2;
|
||||
string instance_identity = 3;
|
||||
string certificate_identity = 4;
|
||||
string public_identity = 5;
|
||||
string address = 6;
|
||||
uint32 protocol_min_version = 7;
|
||||
uint32 protocol_max_version = 8;
|
||||
uint32 connection_capacity = 9;
|
||||
uint64 bandwidth_capacity_kbps = 10;
|
||||
repeated string features = 11;
|
||||
CapabilityProfile capabilities = 12;
|
||||
string provider_identity = 13;
|
||||
}
|
||||
|
||||
message GatewayHeartbeat {
|
||||
string version = 1;
|
||||
string gateway_id = 2;
|
||||
uint64 sequence = 3;
|
||||
google.protobuf.Timestamp observed_at = 4;
|
||||
uint32 active_connections = 5;
|
||||
uint64 egress_kbps = 6;
|
||||
string state = 7;
|
||||
}
|
||||
|
||||
message GatewayDrain {
|
||||
string version = 1;
|
||||
string gateway_id = 2;
|
||||
uint64 sequence = 3;
|
||||
string reason = 4;
|
||||
google.protobuf.Timestamp deadline = 5;
|
||||
}
|
||||
|
||||
message TunnelAdmissionRequest {
|
||||
string version = 1;
|
||||
string session_id = 2;
|
||||
string gateway_id = 3;
|
||||
string audience = 4;
|
||||
string grant = 5;
|
||||
uint64 reconnect_sequence = 6;
|
||||
string client_nonce = 7;
|
||||
CapabilityProfile capabilities = 8;
|
||||
}
|
||||
|
||||
message SessionAuthority {
|
||||
string version = 1;
|
||||
string session_id = 2;
|
||||
string gateway_id = 3;
|
||||
string audience = 4;
|
||||
uint64 reconnect_sequence = 5;
|
||||
google.protobuf.Timestamp expires_at = 6;
|
||||
CapabilityProfile capabilities = 7;
|
||||
string provider_profile = 8;
|
||||
string provider_identity = 9;
|
||||
}
|
||||
|
||||
message ChannelFrame {
|
||||
string version = 1;
|
||||
string flow_id = 2;
|
||||
uint64 sequence = 3;
|
||||
uint32 flags = 4;
|
||||
uint32 fragment_index = 5;
|
||||
uint32 fragment_count = 6;
|
||||
uint64 timestamp_ms = 7;
|
||||
bytes payload = 8;
|
||||
}
|
||||
|
||||
message ProviderState {
|
||||
string version = 1;
|
||||
string session_id = 2;
|
||||
string state = 3;
|
||||
bool cleanup_pending = 4;
|
||||
repeated string channels = 5;
|
||||
}
|
||||
|
||||
message StableError {
|
||||
string version = 1;
|
||||
string code = 2;
|
||||
string message = 3;
|
||||
bool retryable = 4;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user