From b75479104c82d8a5f717addc32452d2bfa390b44 Mon Sep 17 00:00:00 2001 From: Benjamin Pracht Date: Mon, 14 Oct 2024 15:04:02 -0700 Subject: [PATCH] Add SIP analytics events (#831) --------- Co-authored-by: github-actions <41898282+github-actions[bot]@users.noreply.github.com> --- .changeset/fifty-garlics-glow.md | 5 + livekit/livekit_analytics.pb.go | 673 ++++++++------ livekit/livekit_sip.pb.go | 1386 ++++++++++++++++++----------- livekit/livekit_sip.twirp.go | 646 ++++---------- protobufs/livekit_analytics.proto | 26 +- protobufs/livekit_sip.proto | 34 +- protobufs/rpc/io.proto | 8 + replay/cloud_replay.pb.go | 2 +- rpc/io.pb.go | 605 +++++++------ rpc/io.psrpc.go | 195 ++-- rpc/participant.psrpc.go | 32 +- rpc/room.psrpc.go | 24 +- rpc/roommanager.psrpc.go | 8 +- 13 files changed, 1983 insertions(+), 1661 deletions(-) create mode 100644 .changeset/fifty-garlics-glow.md diff --git a/.changeset/fifty-garlics-glow.md b/.changeset/fifty-garlics-glow.md new file mode 100644 index 00000000..ce7c32d6 --- /dev/null +++ b/.changeset/fifty-garlics-glow.md @@ -0,0 +1,5 @@ +--- +"@livekit/protocol": minor +--- + +Add SIP analytics events diff --git a/livekit/livekit_analytics.pb.go b/livekit/livekit_analytics.pb.go index 85c476c1..b20ed312 100644 --- a/livekit/livekit_analytics.pb.go +++ b/livekit/livekit_analytics.pb.go @@ -112,6 +112,16 @@ const ( AnalyticsEventType_INGRESS_STARTED AnalyticsEventType = 16 AnalyticsEventType_INGRESS_ENDED AnalyticsEventType = 17 AnalyticsEventType_INGRESS_UPDATED AnalyticsEventType = 29 + AnalyticsEventType_SIP_INBOUND_TRUNK_CREATED AnalyticsEventType = 30 + AnalyticsEventType_SIP_INBOUND_TRUNK_DELETED AnalyticsEventType = 31 + AnalyticsEventType_SIP_OUTBOUND_TRUNK_CREATED AnalyticsEventType = 32 + AnalyticsEventType_SIP_OUTBOUND_TRUNK_DELETED AnalyticsEventType = 33 + AnalyticsEventType_SIP_DISPATCH_RULE_CREATED AnalyticsEventType = 34 + AnalyticsEventType_SIP_DISPATCH_RULE_DELETED AnalyticsEventType = 35 + AnalyticsEventType_SIP_PARTICIPANT_CREATED AnalyticsEventType = 36 + AnalyticsEventType_SIP_CALL_INCOMING AnalyticsEventType = 37 + AnalyticsEventType_SIP_CALL_STARTED AnalyticsEventType = 38 + AnalyticsEventType_SIP_CALL_ENDED AnalyticsEventType = 39 ) // Enum value maps for AnalyticsEventType. @@ -145,6 +155,16 @@ var ( 16: "INGRESS_STARTED", 17: "INGRESS_ENDED", 29: "INGRESS_UPDATED", + 30: "SIP_INBOUND_TRUNK_CREATED", + 31: "SIP_INBOUND_TRUNK_DELETED", + 32: "SIP_OUTBOUND_TRUNK_CREATED", + 33: "SIP_OUTBOUND_TRUNK_DELETED", + 34: "SIP_DISPATCH_RULE_CREATED", + 35: "SIP_DISPATCH_RULE_DELETED", + 36: "SIP_PARTICIPANT_CREATED", + 37: "SIP_CALL_INCOMING", + 38: "SIP_CALL_STARTED", + 39: "SIP_CALL_ENDED", } AnalyticsEventType_value = map[string]int32{ "ROOM_CREATED": 0, @@ -175,6 +195,16 @@ var ( "INGRESS_STARTED": 16, "INGRESS_ENDED": 17, "INGRESS_UPDATED": 29, + "SIP_INBOUND_TRUNK_CREATED": 30, + "SIP_INBOUND_TRUNK_DELETED": 31, + "SIP_OUTBOUND_TRUNK_CREATED": 32, + "SIP_OUTBOUND_TRUNK_DELETED": 33, + "SIP_DISPATCH_RULE_CREATED": 34, + "SIP_DISPATCH_RULE_DELETED": 35, + "SIP_PARTICIPANT_CREATED": 36, + "SIP_CALL_INCOMING": 37, + "SIP_CALL_STARTED": 38, + "SIP_CALL_ENDED": 39, } ) @@ -789,6 +819,13 @@ type AnalyticsEvent struct { RtpStats *RTPStats `protobuf:"bytes,21,opt,name=rtp_stats,json=rtpStats,proto3" json:"rtp_stats,omitempty"` VideoLayer int32 `protobuf:"varint,22,opt,name=video_layer,json=videoLayer,proto3" json:"video_layer,omitempty"` NodeId string `protobuf:"bytes,24,opt,name=node_id,json=nodeId,proto3" json:"node_id,omitempty"` + SipCallId string `protobuf:"bytes,26,opt,name=sip_call_id,json=sipCallId,proto3" json:"sip_call_id,omitempty"` + SipCall *SIPCallInfo `protobuf:"bytes,27,opt,name=sip_call,json=sipCall,proto3" json:"sip_call,omitempty"` + SipTrunkId string `protobuf:"bytes,28,opt,name=sip_trunk_id,json=sipTrunkId,proto3" json:"sip_trunk_id,omitempty"` + SipInboundTrunk *SIPInboundTrunkInfo `protobuf:"bytes,29,opt,name=sip_inbound_trunk,json=sipInboundTrunk,proto3" json:"sip_inbound_trunk,omitempty"` + SipOutboundTrunk *SIPOutboundTrunkInfo `protobuf:"bytes,30,opt,name=sip_outbound_trunk,json=sipOutboundTrunk,proto3" json:"sip_outbound_trunk,omitempty"` + SipDispatchRuleId string `protobuf:"bytes,31,opt,name=sip_dispatch_rule_id,json=sipDispatchRuleId,proto3" json:"sip_dispatch_rule_id,omitempty"` + SipDispatchRule *SIPDispatchRuleInfo `protobuf:"bytes,32,opt,name=sip_dispatch_rule,json=sipDispatchRule,proto3" json:"sip_dispatch_rule,omitempty"` } func (x *AnalyticsEvent) Reset() { @@ -982,6 +1019,55 @@ func (x *AnalyticsEvent) GetNodeId() string { return "" } +func (x *AnalyticsEvent) GetSipCallId() string { + if x != nil { + return x.SipCallId + } + return "" +} + +func (x *AnalyticsEvent) GetSipCall() *SIPCallInfo { + if x != nil { + return x.SipCall + } + return nil +} + +func (x *AnalyticsEvent) GetSipTrunkId() string { + if x != nil { + return x.SipTrunkId + } + return "" +} + +func (x *AnalyticsEvent) GetSipInboundTrunk() *SIPInboundTrunkInfo { + if x != nil { + return x.SipInboundTrunk + } + return nil +} + +func (x *AnalyticsEvent) GetSipOutboundTrunk() *SIPOutboundTrunkInfo { + if x != nil { + return x.SipOutboundTrunk + } + return nil +} + +func (x *AnalyticsEvent) GetSipDispatchRuleId() string { + if x != nil { + return x.SipDispatchRuleId + } + return "" +} + +func (x *AnalyticsEvent) GetSipDispatchRule() *SIPDispatchRuleInfo { + if x != nil { + return x.SipDispatchRule + } + return nil +} + type AnalyticsEvents struct { state protoimpl.MessageState sizeCache protoimpl.SizeCache @@ -1261,266 +1347,310 @@ var file_livekit_analytics_proto_rawDesc = []byte{ 0x65, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x73, 0x0a, 0x13, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, - 0x69, 0x63, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x14, 0x0a, - 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, 0x05, 0x6c, 0x61, - 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x14, 0x0a, - 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x05, 0x62, 0x79, - 0x74, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xa2, 0x05, 0x0a, 0x0f, - 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x12, - 0x12, 0x0a, 0x04, 0x73, 0x73, 0x72, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x73, - 0x73, 0x72, 0x63, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x70, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x72, - 0x69, 0x6d, 0x61, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, - 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x42, 0x79, 0x74, 0x65, - 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x5f, - 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x72, - 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, - 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x5f, 0x62, - 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, 0x65, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x70, - 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x50, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, - 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x61, 0x64, - 0x64, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x63, - 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0d, 0x52, - 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4c, 0x6f, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, 0x72, - 0x61, 0x6d, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x74, 0x74, 0x18, 0x0a, 0x20, 0x01, 0x28, - 0x0d, 0x52, 0x03, 0x72, 0x74, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6a, 0x69, 0x74, 0x74, 0x65, 0x72, 0x12, 0x14, - 0x0a, 0x05, 0x6e, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x05, 0x6e, - 0x61, 0x63, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6c, 0x69, 0x73, 0x18, 0x0d, 0x20, 0x01, - 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6c, 0x69, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x69, 0x72, 0x73, - 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x66, 0x69, 0x72, 0x73, 0x12, 0x3f, 0x0a, 0x0c, - 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, 0x0f, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x11, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, + 0x73, 0x69, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x73, 0x0a, 0x13, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, - 0x52, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x12, 0x39, 0x0a, - 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x73, - 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, - 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, - 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, - 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12, - 0x2f, 0x0a, 0x14, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x6f, - 0x66, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x70, - 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x4f, 0x72, 0x64, 0x65, 0x72, - 0x22, 0xd2, 0x03, 0x0a, 0x0d, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, - 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, - 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x5f, - 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, - 0x74, 0x69, 0x63, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, - 0x12, 0x39, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, + 0x12, 0x14, 0x0a, 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x05, 0x52, + 0x05, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x07, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, + 0x12, 0x14, 0x0a, 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, + 0x05, 0x62, 0x79, 0x74, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, + 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x22, 0xa2, + 0x05, 0x0a, 0x0f, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x72, 0x65, + 0x61, 0x6d, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x73, 0x72, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x04, 0x73, 0x73, 0x72, 0x63, 0x12, 0x27, 0x0a, 0x0f, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, + 0x79, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x0e, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, + 0x23, 0x0a, 0x0d, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, 0x70, 0x72, 0x69, 0x6d, 0x61, 0x72, 0x79, 0x42, + 0x79, 0x74, 0x65, 0x73, 0x12, 0x2d, 0x0a, 0x12, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, + 0x69, 0x74, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x50, 0x61, 0x63, 0x6b, + 0x65, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x72, 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, + 0x74, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0f, 0x72, + 0x65, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x6d, 0x69, 0x74, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x27, + 0x0a, 0x0f, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x5f, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, + 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x0e, 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, + 0x50, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x61, 0x64, 0x64, 0x69, + 0x6e, 0x67, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0c, + 0x70, 0x61, 0x64, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0c, + 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6c, 0x6f, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x0d, 0x52, 0x0b, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4c, 0x6f, 0x73, 0x74, 0x12, + 0x16, 0x0a, 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x52, + 0x06, 0x66, 0x72, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x10, 0x0a, 0x03, 0x72, 0x74, 0x74, 0x18, 0x0a, + 0x20, 0x01, 0x28, 0x0d, 0x52, 0x03, 0x72, 0x74, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x6a, 0x69, 0x74, + 0x74, 0x65, 0x72, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x06, 0x6a, 0x69, 0x74, 0x74, 0x65, + 0x72, 0x12, 0x14, 0x0a, 0x05, 0x6e, 0x61, 0x63, 0x6b, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x05, 0x6e, 0x61, 0x63, 0x6b, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6c, 0x69, 0x73, 0x18, + 0x0d, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x70, 0x6c, 0x69, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x66, + 0x69, 0x72, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x04, 0x66, 0x69, 0x72, 0x73, 0x12, + 0x3f, 0x0a, 0x0c, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x73, 0x18, + 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, + 0x79, 0x65, 0x72, 0x52, 0x0b, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x73, + 0x12, 0x39, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x6e, - 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, - 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, - 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, - 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, - 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, - 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x32, 0x0a, - 0x07, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x18, + 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08, 0x65, + 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, + 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, + 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, + 0x6d, 0x65, 0x12, 0x2f, 0x0a, 0x14, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x5f, 0x6f, 0x75, + 0x74, 0x5f, 0x6f, 0x66, 0x5f, 0x6f, 0x72, 0x64, 0x65, 0x72, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0d, + 0x52, 0x11, 0x70, 0x61, 0x63, 0x6b, 0x65, 0x74, 0x73, 0x4f, 0x75, 0x74, 0x4f, 0x66, 0x4f, 0x72, + 0x64, 0x65, 0x72, 0x22, 0xd2, 0x03, 0x0a, 0x0d, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x53, 0x74, 0x61, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, + 0x63, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, + 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x0a, 0x04, 0x6b, 0x69, + 0x6e, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6b, + 0x69, 0x6e, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, + 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, + 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x53, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, + 0x64, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x1b, 0x0a, 0x09, 0x72, + 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, + 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, + 0x6f, 0x72, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, + 0x12, 0x32, 0x0a, 0x07, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x07, 0x73, 0x74, 0x72, + 0x65, 0x61, 0x6d, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, + 0x53, 0x63, 0x6f, 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x5f, + 0x73, 0x63, 0x6f, 0x72, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x65, 0x64, + 0x69, 0x61, 0x6e, 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x0e, 0x41, 0x6e, 0x61, 0x6c, + 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x05, 0x73, 0x74, + 0x61, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x61, + 0x74, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x82, 0x03, 0x0a, 0x13, 0x41, 0x6e, 0x61, + 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, + 0x12, 0x16, 0x0a, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x2e, 0x0a, + 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, + 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, + 0x0f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, + 0x6f, 0x6e, 0x54, 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x6e, + 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6e, + 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, + 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x08, 0x67, + 0x65, 0x6f, 0x5f, 0x68, 0x61, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, + 0x07, 0x67, 0x65, 0x6f, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x63, + 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07, + 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x69, 0x73, + 0x70, 0x5f, 0x61, 0x73, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x06, 0x69, + 0x73, 0x70, 0x41, 0x73, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x67, 0x65, 0x6f, + 0x5f, 0x68, 0x61, 0x73, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, + 0x79, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x69, 0x73, 0x70, 0x5f, 0x61, 0x73, 0x6e, 0x22, 0xcb, 0x0a, + 0x0a, 0x0e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, + 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, + 0x12, 0x2f, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, - 0x63, 0x73, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x52, 0x07, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, - 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6e, 0x5f, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6e, 0x53, 0x63, 0x6f, - 0x72, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, 0x5f, 0x73, 0x63, 0x6f, - 0x72, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x6e, - 0x53, 0x63, 0x6f, 0x72, 0x65, 0x22, 0x3e, 0x0a, 0x0e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, - 0x63, 0x73, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x2c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x53, 0x74, 0x61, 0x74, 0x52, 0x05, - 0x73, 0x74, 0x61, 0x74, 0x73, 0x22, 0x82, 0x03, 0x0a, 0x13, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, - 0x69, 0x63, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x16, 0x0a, - 0x06, 0x72, 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, - 0x65, 0x67, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x6f, 0x64, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x41, 0x64, 0x64, 0x72, 0x12, 0x2e, 0x0a, 0x13, 0x63, 0x6c, - 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x74, 0x69, 0x6d, - 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0d, 0x52, 0x11, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x43, - 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x63, 0x6f, - 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x05, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x54, - 0x79, 0x70, 0x65, 0x12, 0x43, 0x0a, 0x10, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, - 0x5f, 0x72, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x18, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, - 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x0f, 0x72, 0x65, 0x63, 0x6f, 0x6e, 0x6e, 0x65, - 0x63, 0x74, 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x12, 0x1e, 0x0a, 0x08, 0x67, 0x65, 0x6f, 0x5f, - 0x68, 0x61, 0x73, 0x68, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x07, 0x67, 0x65, - 0x6f, 0x48, 0x61, 0x73, 0x68, 0x88, 0x01, 0x01, 0x12, 0x1d, 0x0a, 0x07, 0x63, 0x6f, 0x75, 0x6e, - 0x74, 0x72, 0x79, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x07, 0x63, 0x6f, 0x75, - 0x6e, 0x74, 0x72, 0x79, 0x88, 0x01, 0x01, 0x12, 0x1c, 0x0a, 0x07, 0x69, 0x73, 0x70, 0x5f, 0x61, - 0x73, 0x6e, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0d, 0x48, 0x02, 0x52, 0x06, 0x69, 0x73, 0x70, 0x41, - 0x73, 0x6e, 0x88, 0x01, 0x01, 0x42, 0x0b, 0x0a, 0x09, 0x5f, 0x67, 0x65, 0x6f, 0x5f, 0x68, 0x61, - 0x73, 0x68, 0x42, 0x0a, 0x0a, 0x08, 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x0a, - 0x0a, 0x08, 0x5f, 0x69, 0x73, 0x70, 0x5f, 0x61, 0x73, 0x6e, 0x22, 0xc6, 0x07, 0x0a, 0x0e, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x0e, 0x0a, - 0x02, 0x69, 0x64, 0x18, 0x19, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x2f, 0x0a, - 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1b, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, - 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x38, - 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x17, 0x0a, 0x07, 0x72, 0x6f, 0x6f, 0x6d, - 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, 0x6f, 0x6d, 0x49, - 0x64, 0x12, 0x21, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x0d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x04, - 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3a, 0x0a, 0x0b, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, + 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, + 0x65, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x17, 0x0a, 0x07, 0x72, + 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, + 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x21, 0x0a, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x18, 0x04, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x0d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x6f, 0x6f, + 0x6d, 0x52, 0x04, 0x72, 0x6f, 0x6f, 0x6d, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x3a, + 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, + 0x61, 0x63, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, + 0x61, 0x63, 0x6b, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x08, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x54, + 0x72, 0x61, 0x63, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x12, + 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x5f, 0x6b, 0x65, 0x79, + 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, + 0x73, 0x4b, 0x65, 0x79, 0x12, 0x34, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, + 0x6e, 0x66, 0x6f, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, + 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x6c, + 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, + 0x69, 0x63, 0x73, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x0a, 0x63, + 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x5f, 0x69, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x56, 0x0a, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x75, 0x62, + 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x71, 0x75, + 0x61, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, + 0x74, 0x79, 0x52, 0x19, 0x6d, 0x61, 0x78, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, + 0x64, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, + 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, - 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x61, 0x63, 0x6b, - 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x61, 0x63, 0x6b, - 0x49, 0x64, 0x12, 0x28, 0x0a, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x18, 0x08, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x12, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x63, - 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x61, 0x63, 0x6b, 0x12, 0x23, 0x0a, 0x0d, - 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x4b, 0x65, - 0x79, 0x12, 0x34, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0a, 0x63, 0x6c, 0x69, - 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3d, 0x0a, 0x0b, 0x63, 0x6c, 0x69, 0x65, 0x6e, - 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x43, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x52, 0x0a, 0x63, 0x6c, 0x69, 0x65, - 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x5f, 0x69, 0x64, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x67, 0x72, 0x65, 0x73, - 0x73, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69, - 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x49, 0x64, 0x12, 0x56, 0x0a, 0x1c, 0x6d, 0x61, 0x78, 0x5f, 0x73, 0x75, 0x62, 0x73, 0x63, 0x72, - 0x69, 0x62, 0x65, 0x64, 0x5f, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x71, 0x75, 0x61, 0x6c, 0x69, - 0x74, 0x79, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x56, 0x69, 0x64, 0x65, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x52, - 0x19, 0x6d, 0x61, 0x78, 0x53, 0x75, 0x62, 0x73, 0x63, 0x72, 0x69, 0x62, 0x65, 0x64, 0x56, 0x69, - 0x64, 0x65, 0x6f, 0x51, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x36, 0x0a, 0x09, 0x70, 0x75, - 0x62, 0x6c, 0x69, 0x73, 0x68, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, - 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, 0x69, 0x73, 0x68, - 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, 0x65, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x18, 0x12, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x49, - 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x69, 0x6e, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, 0x14, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x09, 0x72, 0x74, 0x70, - 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x54, 0x50, 0x53, 0x74, 0x61, 0x74, 0x73, 0x52, - 0x08, 0x72, 0x74, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, 0x76, 0x69, 0x64, - 0x65, 0x6f, 0x5f, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, - 0x76, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, - 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, - 0x65, 0x49, 0x64, 0x22, 0x42, 0x0a, 0x0f, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, - 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, - 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, - 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xc9, 0x01, 0x0a, 0x18, 0x41, 0x6e, 0x61, 0x6c, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x09, 0x70, 0x75, 0x62, 0x6c, + 0x69, 0x73, 0x68, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x18, 0x10, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x6d, 0x69, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x06, 0x65, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x06, + 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x2e, 0x0a, 0x07, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, 0x69, + 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18, + 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x2e, 0x0a, 0x09, + 0x72, 0x74, 0x70, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x73, 0x18, 0x15, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x11, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x52, 0x54, 0x50, 0x53, 0x74, 0x61, + 0x74, 0x73, 0x52, 0x08, 0x72, 0x74, 0x70, 0x53, 0x74, 0x61, 0x74, 0x73, 0x12, 0x1f, 0x0a, 0x0b, + 0x76, 0x69, 0x64, 0x65, 0x6f, 0x5f, 0x6c, 0x61, 0x79, 0x65, 0x72, 0x18, 0x16, 0x20, 0x01, 0x28, + 0x05, 0x52, 0x0a, 0x76, 0x69, 0x64, 0x65, 0x6f, 0x4c, 0x61, 0x79, 0x65, 0x72, 0x12, 0x17, 0x0a, + 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x18, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, + 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x1a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, + 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x08, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x18, 0x1b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x07, + 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, + 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x1c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x48, 0x0a, 0x11, 0x73, 0x69, 0x70, + 0x5f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x1d, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, + 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x0f, 0x73, 0x69, 0x70, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x12, 0x4b, 0x0a, 0x12, 0x73, 0x69, 0x70, 0x5f, 0x6f, 0x75, 0x74, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x1e, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x10, + 0x73, 0x69, 0x70, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x1f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, + 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, + 0x64, 0x12, 0x48, 0x0a, 0x11, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x20, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x0f, 0x73, 0x69, 0x70, 0x44, + 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x22, 0x42, 0x0a, 0x0f, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x2f, + 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x17, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, + 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x22, + 0xc9, 0x01, 0x0a, 0x18, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x6f, 0x6f, + 0x6d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x05, + 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x37, 0x0a, 0x09, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, + 0x70, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x65, 0x64, 0x41, 0x74, 0x22, 0xd4, 0x01, 0x0a, 0x0d, + 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, + 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, + 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, + 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, + 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, + 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x64, 0x41, 0x74, 0x12, 0x45, 0x0a, 0x0c, 0x70, + 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x21, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x6f, 0x6f, 0x6d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x02, 0x69, 0x64, 0x12, 0x1a, 0x0a, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, - 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, - 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x34, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, - 0x01, 0x28, 0x0e, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x50, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x53, 0x74, - 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x37, 0x0a, 0x09, 0x6a, 0x6f, - 0x69, 0x6e, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, - 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x08, 0x6a, 0x6f, 0x69, 0x6e, 0x65, - 0x64, 0x41, 0x74, 0x22, 0xd4, 0x01, 0x0a, 0x0d, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, - 0x73, 0x52, 0x6f, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x02, 0x69, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, - 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, - 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, - 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x64, 0x41, 0x74, 0x12, 0x45, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x21, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x6f, 0x6f, - 0x6d, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0c, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x22, 0xbe, 0x01, 0x0a, 0x12, 0x41, - 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, - 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, - 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x04, 0x52, 0x0e, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, - 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x2c, 0x0a, - 0x05, 0x72, 0x6f, 0x6f, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, - 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x05, 0x72, 0x6f, 0x6f, 0x6d, 0x73, 0x2a, 0x2a, 0x0a, 0x0a, 0x53, - 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x53, - 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x4f, 0x57, 0x4e, 0x53, - 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x01, 0x2a, 0x95, 0x05, 0x0a, 0x12, 0x41, 0x6e, 0x61, 0x6c, - 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, - 0x0a, 0x0c, 0x52, 0x4f, 0x4f, 0x4d, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, - 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x4f, 0x4f, 0x4d, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x01, - 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, - 0x4a, 0x4f, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, 0x52, 0x54, - 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x4c, 0x45, 0x46, 0x54, 0x10, 0x03, 0x12, 0x13, - 0x0a, 0x0f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, - 0x44, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x55, 0x42, - 0x4c, 0x49, 0x53, 0x48, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x45, 0x44, 0x10, 0x14, - 0x12, 0x15, 0x0a, 0x11, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x55, 0x4e, 0x50, 0x55, 0x42, 0x4c, - 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x05, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, 0x43, 0x4b, - 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1d, 0x0a, - 0x19, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, - 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x45, 0x44, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16, - 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x5f, - 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x19, 0x12, 0x16, 0x0a, 0x12, 0x54, 0x52, 0x41, 0x43, - 0x4b, 0x5f, 0x55, 0x4e, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x44, 0x10, 0x07, - 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, - 0x48, 0x45, 0x44, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x10, 0x0a, 0x12, 0x0f, 0x0a, 0x0b, - 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x4d, 0x55, 0x54, 0x45, 0x44, 0x10, 0x17, 0x12, 0x11, 0x0a, - 0x0d, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x55, 0x4e, 0x4d, 0x55, 0x54, 0x45, 0x44, 0x10, 0x18, - 0x12, 0x17, 0x0a, 0x13, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, - 0x48, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x1a, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x52, 0x41, - 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x5f, 0x53, 0x54, 0x41, - 0x54, 0x53, 0x10, 0x1b, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, - 0x41, 0x4e, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x0b, 0x12, 0x17, 0x0a, 0x13, - 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x55, - 0x4d, 0x45, 0x44, 0x10, 0x16, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, - 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x0c, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x47, 0x52, - 0x45, 0x53, 0x53, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x0d, 0x12, 0x12, 0x0a, 0x0e, 0x45, - 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x1c, 0x12, - 0x26, 0x0a, 0x22, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x55, 0x42, - 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x44, 0x5f, 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x51, 0x55, - 0x41, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x0e, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x43, 0x4f, 0x4e, - 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x0f, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x47, 0x52, - 0x45, 0x53, 0x53, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x12, 0x12, 0x13, 0x0a, - 0x0f, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, - 0x10, 0x13, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x53, 0x54, - 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x10, 0x12, 0x11, 0x0a, 0x0d, 0x49, 0x4e, 0x47, 0x52, 0x45, - 0x53, 0x53, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x11, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, - 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x55, 0x50, 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x1d, 0x42, - 0x46, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, - 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, - 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x73, 0x22, 0xbe, 0x01, 0x0a, 0x12, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, + 0x4e, 0x6f, 0x64, 0x65, 0x52, 0x6f, 0x6f, 0x6d, 0x73, 0x12, 0x17, 0x0a, 0x07, 0x6e, 0x6f, 0x64, + 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x6e, 0x6f, 0x64, 0x65, + 0x49, 0x64, 0x12, 0x27, 0x0a, 0x0f, 0x73, 0x65, 0x71, 0x75, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x04, 0x52, 0x0e, 0x73, 0x65, 0x71, + 0x75, 0x65, 0x6e, 0x63, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x38, 0x0a, 0x09, 0x74, + 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x74, 0x69, 0x6d, 0x65, + 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x2c, 0x0a, 0x05, 0x72, 0x6f, 0x6f, 0x6d, 0x73, 0x18, 0x04, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x41, + 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x52, 0x6f, 0x6f, 0x6d, 0x52, 0x05, 0x72, 0x6f, + 0x6f, 0x6d, 0x73, 0x2a, 0x2a, 0x0a, 0x0a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x54, 0x79, 0x70, + 0x65, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x00, 0x12, + 0x0e, 0x0a, 0x0a, 0x44, 0x4f, 0x57, 0x4e, 0x53, 0x54, 0x52, 0x45, 0x41, 0x4d, 0x10, 0x01, 0x2a, + 0xaf, 0x07, 0x0a, 0x12, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x74, 0x69, 0x63, 0x73, 0x45, 0x76, 0x65, + 0x6e, 0x74, 0x54, 0x79, 0x70, 0x65, 0x12, 0x10, 0x0a, 0x0c, 0x52, 0x4f, 0x4f, 0x4d, 0x5f, 0x43, + 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x52, 0x4f, 0x4f, 0x4d, + 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x50, 0x41, 0x52, 0x54, + 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45, 0x44, 0x10, 0x02, + 0x12, 0x14, 0x0a, 0x10, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, + 0x4c, 0x45, 0x46, 0x54, 0x10, 0x03, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, + 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x04, 0x12, 0x1b, 0x0a, 0x17, 0x54, + 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x5f, 0x52, 0x45, 0x51, + 0x55, 0x45, 0x53, 0x54, 0x45, 0x44, 0x10, 0x14, 0x12, 0x15, 0x0a, 0x11, 0x54, 0x52, 0x41, 0x43, + 0x4b, 0x5f, 0x55, 0x4e, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x10, 0x05, 0x12, + 0x14, 0x0a, 0x10, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, + 0x42, 0x45, 0x44, 0x10, 0x06, 0x12, 0x1d, 0x0a, 0x19, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, + 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x5f, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, + 0x45, 0x44, 0x10, 0x15, 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, 0x55, + 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x5f, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x19, + 0x12, 0x16, 0x0a, 0x12, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x55, 0x4e, 0x53, 0x55, 0x42, 0x53, + 0x43, 0x52, 0x49, 0x42, 0x45, 0x44, 0x10, 0x07, 0x12, 0x1a, 0x0a, 0x16, 0x54, 0x52, 0x41, 0x43, + 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x45, 0x44, 0x5f, 0x55, 0x50, 0x44, 0x41, + 0x54, 0x45, 0x10, 0x0a, 0x12, 0x0f, 0x0a, 0x0b, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x4d, 0x55, + 0x54, 0x45, 0x44, 0x10, 0x17, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x55, + 0x4e, 0x4d, 0x55, 0x54, 0x45, 0x44, 0x10, 0x18, 0x12, 0x17, 0x0a, 0x13, 0x54, 0x52, 0x41, 0x43, + 0x4b, 0x5f, 0x50, 0x55, 0x42, 0x4c, 0x49, 0x53, 0x48, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, + 0x1a, 0x12, 0x19, 0x0a, 0x15, 0x54, 0x52, 0x41, 0x43, 0x4b, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, + 0x52, 0x49, 0x42, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x53, 0x10, 0x1b, 0x12, 0x16, 0x0a, 0x12, + 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x41, 0x43, 0x54, 0x49, + 0x56, 0x45, 0x10, 0x0b, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, + 0x41, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x53, 0x55, 0x4d, 0x45, 0x44, 0x10, 0x16, 0x12, 0x12, 0x0a, + 0x0e, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, + 0x0c, 0x12, 0x10, 0x0a, 0x0c, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x45, 0x4e, 0x44, 0x45, + 0x44, 0x10, 0x0d, 0x12, 0x12, 0x0a, 0x0e, 0x45, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x55, 0x50, + 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x1c, 0x12, 0x26, 0x0a, 0x22, 0x54, 0x52, 0x41, 0x43, 0x4b, + 0x5f, 0x4d, 0x41, 0x58, 0x5f, 0x53, 0x55, 0x42, 0x53, 0x43, 0x52, 0x49, 0x42, 0x45, 0x44, 0x5f, + 0x56, 0x49, 0x44, 0x45, 0x4f, 0x5f, 0x51, 0x55, 0x41, 0x4c, 0x49, 0x54, 0x59, 0x10, 0x0e, 0x12, + 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x43, 0x4f, 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x0f, + 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x43, 0x52, 0x45, 0x41, + 0x54, 0x45, 0x44, 0x10, 0x12, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, + 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x13, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, + 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x10, 0x12, + 0x11, 0x0a, 0x0d, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, + 0x10, 0x11, 0x12, 0x13, 0x0a, 0x0f, 0x49, 0x4e, 0x47, 0x52, 0x45, 0x53, 0x53, 0x5f, 0x55, 0x50, + 0x44, 0x41, 0x54, 0x45, 0x44, 0x10, 0x1d, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x5f, 0x49, + 0x4e, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x43, 0x52, 0x45, + 0x41, 0x54, 0x45, 0x44, 0x10, 0x1e, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x5f, 0x49, 0x4e, + 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x44, 0x45, 0x4c, 0x45, + 0x54, 0x45, 0x44, 0x10, 0x1f, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x49, 0x50, 0x5f, 0x4f, 0x55, 0x54, + 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x43, 0x52, 0x45, 0x41, + 0x54, 0x45, 0x44, 0x10, 0x20, 0x12, 0x1e, 0x0a, 0x1a, 0x53, 0x49, 0x50, 0x5f, 0x4f, 0x55, 0x54, + 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x5f, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x44, 0x45, 0x4c, 0x45, + 0x54, 0x45, 0x44, 0x10, 0x21, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x5f, 0x44, 0x49, 0x53, + 0x50, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, + 0x45, 0x44, 0x10, 0x22, 0x12, 0x1d, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x5f, 0x44, 0x49, 0x53, 0x50, + 0x41, 0x54, 0x43, 0x48, 0x5f, 0x52, 0x55, 0x4c, 0x45, 0x5f, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x45, + 0x44, 0x10, 0x23, 0x12, 0x1b, 0x0a, 0x17, 0x53, 0x49, 0x50, 0x5f, 0x50, 0x41, 0x52, 0x54, 0x49, + 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x43, 0x52, 0x45, 0x41, 0x54, 0x45, 0x44, 0x10, 0x24, + 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x5f, 0x49, 0x4e, 0x43, + 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x10, 0x25, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x49, 0x50, 0x5f, 0x43, + 0x41, 0x4c, 0x4c, 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x26, 0x12, 0x12, 0x0a, + 0x0e, 0x53, 0x49, 0x50, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x5f, 0x45, 0x4e, 0x44, 0x45, 0x44, 0x10, + 0x27, 0x42, 0x46, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, + 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, 0x4c, 0x69, 0x76, 0x65, 0x4b, + 0x69, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, 0x4c, 0x69, 0x76, 0x65, 0x4b, + 0x69, 0x74, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x33, } var ( @@ -1560,7 +1690,11 @@ var file_livekit_analytics_proto_goTypes = []any{ (*EgressInfo)(nil), // 19: livekit.EgressInfo (*IngressInfo)(nil), // 20: livekit.IngressInfo (*RTPStats)(nil), // 21: livekit.RTPStats - (ParticipantInfo_State)(0), // 22: livekit.ParticipantInfo.State + (*SIPCallInfo)(nil), // 22: livekit.SIPCallInfo + (*SIPInboundTrunkInfo)(nil), // 23: livekit.SIPInboundTrunkInfo + (*SIPOutboundTrunkInfo)(nil), // 24: livekit.SIPOutboundTrunkInfo + (*SIPDispatchRuleInfo)(nil), // 25: livekit.SIPDispatchRuleInfo + (ParticipantInfo_State)(0), // 26: livekit.ParticipantInfo.State } var file_livekit_analytics_proto_depIdxs = []int32{ 2, // 0: livekit.AnalyticsStream.video_layers:type_name -> livekit.AnalyticsVideoLayer @@ -1583,18 +1717,22 @@ var file_livekit_analytics_proto_depIdxs = []int32{ 19, // 17: livekit.AnalyticsEvent.egress:type_name -> livekit.EgressInfo 20, // 18: livekit.AnalyticsEvent.ingress:type_name -> livekit.IngressInfo 21, // 19: livekit.AnalyticsEvent.rtp_stats:type_name -> livekit.RTPStats - 7, // 20: livekit.AnalyticsEvents.events:type_name -> livekit.AnalyticsEvent - 22, // 21: livekit.AnalyticsRoomParticipant.state:type_name -> livekit.ParticipantInfo.State - 12, // 22: livekit.AnalyticsRoomParticipant.joined_at:type_name -> google.protobuf.Timestamp - 12, // 23: livekit.AnalyticsRoom.created_at:type_name -> google.protobuf.Timestamp - 9, // 24: livekit.AnalyticsRoom.participants:type_name -> livekit.AnalyticsRoomParticipant - 12, // 25: livekit.AnalyticsNodeRooms.timestamp:type_name -> google.protobuf.Timestamp - 10, // 26: livekit.AnalyticsNodeRooms.rooms:type_name -> livekit.AnalyticsRoom - 27, // [27:27] is the sub-list for method output_type - 27, // [27:27] is the sub-list for method input_type - 27, // [27:27] is the sub-list for extension type_name - 27, // [27:27] is the sub-list for extension extendee - 0, // [0:27] is the sub-list for field type_name + 22, // 20: livekit.AnalyticsEvent.sip_call:type_name -> livekit.SIPCallInfo + 23, // 21: livekit.AnalyticsEvent.sip_inbound_trunk:type_name -> livekit.SIPInboundTrunkInfo + 24, // 22: livekit.AnalyticsEvent.sip_outbound_trunk:type_name -> livekit.SIPOutboundTrunkInfo + 25, // 23: livekit.AnalyticsEvent.sip_dispatch_rule:type_name -> livekit.SIPDispatchRuleInfo + 7, // 24: livekit.AnalyticsEvents.events:type_name -> livekit.AnalyticsEvent + 26, // 25: livekit.AnalyticsRoomParticipant.state:type_name -> livekit.ParticipantInfo.State + 12, // 26: livekit.AnalyticsRoomParticipant.joined_at:type_name -> google.protobuf.Timestamp + 12, // 27: livekit.AnalyticsRoom.created_at:type_name -> google.protobuf.Timestamp + 9, // 28: livekit.AnalyticsRoom.participants:type_name -> livekit.AnalyticsRoomParticipant + 12, // 29: livekit.AnalyticsNodeRooms.timestamp:type_name -> google.protobuf.Timestamp + 10, // 30: livekit.AnalyticsNodeRooms.rooms:type_name -> livekit.AnalyticsRoom + 31, // [31:31] is the sub-list for method output_type + 31, // [31:31] is the sub-list for method input_type + 31, // [31:31] is the sub-list for extension type_name + 31, // [31:31] is the sub-list for extension extendee + 0, // [0:31] is the sub-list for field type_name } func init() { file_livekit_analytics_proto_init() } @@ -1605,6 +1743,7 @@ func file_livekit_analytics_proto_init() { file_livekit_models_proto_init() file_livekit_egress_proto_init() file_livekit_ingress_proto_init() + file_livekit_sip_proto_init() file_livekit_analytics_proto_msgTypes[4].OneofWrappers = []any{} type x struct{} out := protoimpl.TypeBuilder{ diff --git a/livekit/livekit_sip.pb.go b/livekit/livekit_sip.pb.go index f7d39b90..81aad845 100644 --- a/livekit/livekit_sip.pb.go +++ b/livekit/livekit_sip.pb.go @@ -88,6 +88,58 @@ func (SIPTransport) EnumDescriptor() ([]byte, []int) { return file_livekit_sip_proto_rawDescGZIP(), []int{0} } +type SIPCallStatus int32 + +const ( + SIPCallStatus_SCS_CALL_INCOMING SIPCallStatus = 0 // Incoming call is being handled by the SIP service. The SIP participant hasn't joined a LiveKit room yet + SIPCallStatus_SCS_PARTICIPANT_JOINED SIPCallStatus = 1 // SIP participant for outgoing call has been created. The SIP outgoing call is being established + SIPCallStatus_SCS_ACTIVE SIPCallStatus = 2 // Call is ongoing. SIP participant is active in the LiveKit room + SIPCallStatus_SCS_DISCONNECTED SIPCallStatus = 3 // Call has ended +) + +// Enum value maps for SIPCallStatus. +var ( + SIPCallStatus_name = map[int32]string{ + 0: "SCS_CALL_INCOMING", + 1: "SCS_PARTICIPANT_JOINED", + 2: "SCS_ACTIVE", + 3: "SCS_DISCONNECTED", + } + SIPCallStatus_value = map[string]int32{ + "SCS_CALL_INCOMING": 0, + "SCS_PARTICIPANT_JOINED": 1, + "SCS_ACTIVE": 2, + "SCS_DISCONNECTED": 3, + } +) + +func (x SIPCallStatus) Enum() *SIPCallStatus { + p := new(SIPCallStatus) + *p = x + return p +} + +func (x SIPCallStatus) String() string { + return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) +} + +func (SIPCallStatus) Descriptor() protoreflect.EnumDescriptor { + return file_livekit_sip_proto_enumTypes[1].Descriptor() +} + +func (SIPCallStatus) Type() protoreflect.EnumType { + return &file_livekit_sip_proto_enumTypes[1] +} + +func (x SIPCallStatus) Number() protoreflect.EnumNumber { + return protoreflect.EnumNumber(x) +} + +// Deprecated: Use SIPCallStatus.Descriptor instead. +func (SIPCallStatus) EnumDescriptor() ([]byte, []int) { + return file_livekit_sip_proto_rawDescGZIP(), []int{1} +} + type SIPTrunkInfo_TrunkKind int32 const ( @@ -121,11 +173,11 @@ func (x SIPTrunkInfo_TrunkKind) String() string { } func (SIPTrunkInfo_TrunkKind) Descriptor() protoreflect.EnumDescriptor { - return file_livekit_sip_proto_enumTypes[1].Descriptor() + return file_livekit_sip_proto_enumTypes[2].Descriptor() } func (SIPTrunkInfo_TrunkKind) Type() protoreflect.EnumType { - return &file_livekit_sip_proto_enumTypes[1] + return &file_livekit_sip_proto_enumTypes[2] } func (x SIPTrunkInfo_TrunkKind) Number() protoreflect.EnumNumber { @@ -2163,131 +2215,377 @@ func (x *TransferSIPParticipantRequest) GetTransferTo() string { return "" } +type SIPCallInfo struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CallId string `protobuf:"bytes,1,opt,name=call_id,json=callId,proto3" json:"call_id,omitempty"` + TrunkId string `protobuf:"bytes,2,opt,name=trunk_id,json=trunkId,proto3" json:"trunk_id,omitempty"` + RoomName string `protobuf:"bytes,3,opt,name=room_name,json=roomName,proto3" json:"room_name,omitempty"` + RoomId string `protobuf:"bytes,4,opt,name=room_id,json=roomId,proto3" json:"room_id,omitempty"` // ID of the current/previous room published to + ParticipantIdentity string `protobuf:"bytes,5,opt,name=participant_identity,json=participantIdentity,proto3" json:"participant_identity,omitempty"` + FromUri *SIPUri `protobuf:"bytes,6,opt,name=from_uri,json=fromUri,proto3" json:"from_uri,omitempty"` + ToUri *SIPUri `protobuf:"bytes,7,opt,name=to_uri,json=toUri,proto3" json:"to_uri,omitempty"` + CallStatus SIPCallStatus `protobuf:"varint,8,opt,name=call_status,json=callStatus,proto3,enum=livekit.SIPCallStatus" json:"call_status,omitempty"` + StartedAt int64 `protobuf:"varint,9,opt,name=started_at,json=startedAt,proto3" json:"started_at,omitempty"` + EndedAt int64 `protobuf:"varint,10,opt,name=ended_at,json=endedAt,proto3" json:"ended_at,omitempty"` + DisconnectReason DisconnectReason `protobuf:"varint,11,opt,name=disconnect_reason,json=disconnectReason,proto3,enum=livekit.DisconnectReason" json:"disconnect_reason,omitempty"` +} + +func (x *SIPCallInfo) Reset() { + *x = SIPCallInfo{} + mi := &file_livekit_sip_proto_msgTypes[29] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SIPCallInfo) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SIPCallInfo) ProtoMessage() {} + +func (x *SIPCallInfo) ProtoReflect() protoreflect.Message { + mi := &file_livekit_sip_proto_msgTypes[29] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SIPCallInfo.ProtoReflect.Descriptor instead. +func (*SIPCallInfo) Descriptor() ([]byte, []int) { + return file_livekit_sip_proto_rawDescGZIP(), []int{29} +} + +func (x *SIPCallInfo) GetCallId() string { + if x != nil { + return x.CallId + } + return "" +} + +func (x *SIPCallInfo) GetTrunkId() string { + if x != nil { + return x.TrunkId + } + return "" +} + +func (x *SIPCallInfo) GetRoomName() string { + if x != nil { + return x.RoomName + } + return "" +} + +func (x *SIPCallInfo) GetRoomId() string { + if x != nil { + return x.RoomId + } + return "" +} + +func (x *SIPCallInfo) GetParticipantIdentity() string { + if x != nil { + return x.ParticipantIdentity + } + return "" +} + +func (x *SIPCallInfo) GetFromUri() *SIPUri { + if x != nil { + return x.FromUri + } + return nil +} + +func (x *SIPCallInfo) GetToUri() *SIPUri { + if x != nil { + return x.ToUri + } + return nil +} + +func (x *SIPCallInfo) GetCallStatus() SIPCallStatus { + if x != nil { + return x.CallStatus + } + return SIPCallStatus_SCS_CALL_INCOMING +} + +func (x *SIPCallInfo) GetStartedAt() int64 { + if x != nil { + return x.StartedAt + } + return 0 +} + +func (x *SIPCallInfo) GetEndedAt() int64 { + if x != nil { + return x.EndedAt + } + return 0 +} + +func (x *SIPCallInfo) GetDisconnectReason() DisconnectReason { + if x != nil { + return x.DisconnectReason + } + return DisconnectReason_UNKNOWN_REASON +} + +type SIPUri struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + User string `protobuf:"bytes,1,opt,name=user,proto3" json:"user,omitempty"` + Host string `protobuf:"bytes,2,opt,name=host,proto3" json:"host,omitempty"` + Ip string `protobuf:"bytes,3,opt,name=ip,proto3" json:"ip,omitempty"` + Port string `protobuf:"bytes,4,opt,name=port,proto3" json:"port,omitempty"` + Transport SIPTransport `protobuf:"varint,5,opt,name=transport,proto3,enum=livekit.SIPTransport" json:"transport,omitempty"` +} + +func (x *SIPUri) Reset() { + *x = SIPUri{} + mi := &file_livekit_sip_proto_msgTypes[30] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *SIPUri) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*SIPUri) ProtoMessage() {} + +func (x *SIPUri) ProtoReflect() protoreflect.Message { + mi := &file_livekit_sip_proto_msgTypes[30] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use SIPUri.ProtoReflect.Descriptor instead. +func (*SIPUri) Descriptor() ([]byte, []int) { + return file_livekit_sip_proto_rawDescGZIP(), []int{30} +} + +func (x *SIPUri) GetUser() string { + if x != nil { + return x.User + } + return "" +} + +func (x *SIPUri) GetHost() string { + if x != nil { + return x.Host + } + return "" +} + +func (x *SIPUri) GetIp() string { + if x != nil { + return x.Ip + } + return "" +} + +func (x *SIPUri) GetPort() string { + if x != nil { + return x.Port + } + return "" +} + +func (x *SIPUri) GetTransport() SIPTransport { + if x != nil { + return x.Transport + } + return SIPTransport_SIP_TRANSPORT_AUTO +} + var File_livekit_sip_proto protoreflect.FileDescriptor var file_livekit_sip_proto_rawDesc = []byte{ 0x0a, 0x11, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x73, 0x69, 0x70, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x1a, 0x1b, 0x67, 0x6f, + 0x6f, 0x74, 0x6f, 0x12, 0x07, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x1a, 0x1e, 0x67, 0x6f, + 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, + 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, - 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, - 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xdd, 0x03, 0x0a, 0x15, 0x43, 0x72, - 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x61, - 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, - 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, - 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6f, - 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x15, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, - 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x04, 0x20, - 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x13, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x67, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, - 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, - 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, - 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x6f, - 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, - 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xa6, 0x05, 0x0a, 0x0c, 0x53, 0x49, - 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, - 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x33, 0x0a, 0x04, - 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x4b, 0x69, 0x6e, 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, - 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x29, - 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, - 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, - 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, - 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x36, 0x0a, 0x15, 0x69, 0x6e, 0x62, 0x6f, 0x75, - 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, - 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x13, 0x69, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x67, 0x65, 0x78, 0x12, - 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, - 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, - 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6f, - 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x44, 0x0a, 0x09, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x0c, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x4c, - 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x52, 0x55, 0x4e, 0x4b, - 0x5f, 0x49, 0x4e, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x52, - 0x55, 0x4e, 0x4b, 0x5f, 0x4f, 0x55, 0x54, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x02, 0x3a, 0x02, - 0x18, 0x01, 0x22, 0x52, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, - 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0xe0, 0x05, 0x0a, 0x13, 0x53, 0x49, 0x50, 0x49, 0x6e, + 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x14, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, + 0xdd, 0x03, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, + 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x01, + 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, + 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x36, 0x0a, 0x15, 0x69, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x5f, 0x72, 0x65, + 0x67, 0x65, 0x78, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x13, 0x69, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x52, 0x65, 0x67, + 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x69, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, + 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x55, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, + 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, + 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x2b, + 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, + 0x61, 0x6d, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0b, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x3a, 0x02, 0x18, 0x01, 0x22, + 0xa6, 0x05, 0x0a, 0x0c, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x49, 0x64, 0x12, 0x33, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x1f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x4b, 0x69, 0x6e, + 0x64, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, + 0x28, 0x09, 0x52, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, + 0x73, 0x73, 0x65, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, + 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, + 0x27, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, + 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, + 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x36, 0x0a, + 0x15, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x5f, 0x72, 0x65, 0x67, 0x65, 0x78, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, + 0x52, 0x13, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x52, 0x65, 0x67, 0x65, 0x78, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, + 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x29, + 0x0a, 0x10, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, + 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x69, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, + 0x77, 0x6f, 0x72, 0x64, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x10, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, + 0x65, 0x12, 0x2b, 0x0a, 0x11, 0x6f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x70, 0x61, + 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x10, 0x6f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, + 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, + 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x0c, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0x44, + 0x0a, 0x09, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x4b, 0x69, 0x6e, 0x64, 0x12, 0x10, 0x0a, 0x0c, 0x54, + 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x10, 0x00, 0x12, 0x11, 0x0a, + 0x0d, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x49, 0x4e, 0x42, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x01, + 0x12, 0x12, 0x0a, 0x0e, 0x54, 0x52, 0x55, 0x4e, 0x4b, 0x5f, 0x4f, 0x55, 0x54, 0x42, 0x4f, 0x55, + 0x4e, 0x44, 0x10, 0x02, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x52, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, + 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, + 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0xe0, 0x05, 0x0a, + 0x13, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, + 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, + 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, + 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, + 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, + 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x27, 0x0a, + 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, + 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, + 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, + 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, + 0x75, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, + 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, + 0x12, 0x43, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x29, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, + 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, + 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x69, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, + 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, + 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, + 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, + 0x6f, 0x75, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, + 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x61, 0x6c, 0x6c, + 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x43, + 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, + 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, + 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, + 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x46, 0x0a, 0x18, 0x48, 0x65, 0x61, 0x64, 0x65, + 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, + 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, + 0x54, 0x0a, 0x1d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, + 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, + 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0xd1, 0x04, 0x0a, 0x14, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, - 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, - 0x09, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, - 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x18, - 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x65, 0x73, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x6c, 0x6c, 0x6f, 0x77, - 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, - 0x52, 0x0e, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, - 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x55, 0x73, 0x65, - 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, - 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, - 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x43, 0x0a, 0x07, 0x68, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, - 0x69, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, - 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, - 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, - 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0b, 0x20, - 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, - 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, - 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, - 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x43, 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, + 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, + 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, + 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, + 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, + 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, + 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, + 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, + 0x6f, 0x72, 0x64, 0x12, 0x44, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, + 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, + 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, 0x15, 0x68, 0x65, 0x61, + 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, + 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x13, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, @@ -2295,346 +2593,342 @@ var file_livekit_sip_proto_rawDesc = []byte{ 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x54, 0x0a, 0x1d, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, - 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, - 0xd1, 0x04, 0x0a, 0x14, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x3d, 0x0a, 0x19, 0x47, 0x65, 0x74, + 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, + 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, + 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, + 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x3e, 0x0a, 0x1a, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, - 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x18, 0x0a, 0x07, 0x61, 0x64, - 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x61, 0x64, 0x64, - 0x72, 0x65, 0x73, 0x73, 0x12, 0x33, 0x0a, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, - 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, - 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, 0x5f, 0x75, 0x73, 0x65, 0x72, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x75, 0x74, 0x68, - 0x55, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x75, 0x74, 0x68, - 0x5f, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x61, 0x75, 0x74, 0x68, 0x50, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x44, 0x0a, - 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x48, 0x65, - 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x73, 0x12, 0x6a, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, - 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, - 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, 0x61, 0x64, - 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, - 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, - 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, - 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x46, 0x0a, 0x18, 0x48, - 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0x3d, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, + 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x1b, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, + 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x19, + 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x47, 0x0a, 0x14, 0x4c, 0x69, 0x73, + 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x2b, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, + 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x3a, 0x02, + 0x18, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x22, 0x51, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x32, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, + 0x65, 0x6d, 0x73, 0x22, 0x1d, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x22, 0x53, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, + 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, + 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x39, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, + 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, - 0x49, 0x64, 0x22, 0x50, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x32, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x74, - 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x3e, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, - 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, - 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x52, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, - 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x05, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x22, 0x19, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, - 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x3a, - 0x02, 0x18, 0x01, 0x22, 0x47, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2b, 0x0a, 0x05, 0x69, - 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, - 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x1c, 0x0a, 0x1a, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x51, 0x0a, 0x1b, 0x4c, 0x69, - 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x69, 0x74, 0x65, - 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x1d, 0x0a, - 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x53, 0x0a, 0x1c, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x33, 0x0a, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1d, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, - 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, - 0x73, 0x22, 0x39, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, - 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x22, 0x46, 0x0a, 0x15, - 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, - 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, - 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x70, 0x69, 0x6e, 0x22, 0x4e, 0x0a, 0x19, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, - 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, - 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, - 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x03, 0x70, 0x69, 0x6e, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x12, 0x1f, 0x0a, - 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, - 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, - 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, 0x69, 0x7a, 0x65, 0x22, 0xa1, - 0x02, 0x0a, 0x0f, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, - 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, - 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x5e, 0x0a, 0x18, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, - 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x16, - 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, - 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x18, 0x03, - 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, - 0x6c, 0x6c, 0x65, 0x65, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x42, 0x06, 0x0a, 0x04, 0x72, 0x75, - 0x6c, 0x65, 0x22, 0x84, 0x03, 0x0a, 0x1c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, - 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, - 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, - 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, - 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2a, - 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, - 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, - 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, - 0x61, 0x74, 0x61, 0x12, 0x55, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, - 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa3, 0x03, 0x0a, 0x13, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, - 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, - 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, - 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, - 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, - 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, - 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, - 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, - 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, - 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, - 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, - 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, - 0x74, 0x61, 0x12, 0x4c, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, - 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x49, 0x64, 0x22, 0x46, 0x0a, 0x15, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x72, + 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x4e, 0x0a, 0x19, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, + 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, + 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, + 0x6f, 0x6d, 0x50, 0x72, 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x22, 0x68, 0x0a, 0x15, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, + 0x6c, 0x65, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x70, 0x72, 0x65, 0x66, + 0x69, 0x78, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x6f, 0x6f, 0x6d, 0x50, 0x72, + 0x65, 0x66, 0x69, 0x78, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, 0x12, 0x1c, 0x0a, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, 0x6d, + 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x72, 0x61, 0x6e, 0x64, 0x6f, + 0x6d, 0x69, 0x7a, 0x65, 0x22, 0xa1, 0x02, 0x0a, 0x0f, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x52, 0x0a, 0x14, 0x64, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x64, 0x69, 0x72, 0x65, 0x63, 0x74, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, + 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x44, 0x69, 0x72, 0x65, 0x63, 0x74, 0x12, 0x5e, 0x0a, 0x18, + 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x6e, + 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x22, + 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, + 0x61, 0x6c, 0x48, 0x00, 0x52, 0x16, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x49, 0x6e, 0x64, 0x69, 0x76, 0x69, 0x64, 0x75, 0x61, 0x6c, 0x12, 0x52, 0x0a, 0x14, + 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x63, 0x61, + 0x6c, 0x6c, 0x65, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1e, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, 0x48, 0x00, 0x52, 0x12, 0x64, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x43, 0x61, 0x6c, 0x6c, 0x65, 0x65, + 0x42, 0x06, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x22, 0x84, 0x03, 0x0a, 0x1c, 0x43, 0x72, 0x65, + 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, + 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, + 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, + 0x65, 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, + 0x5f, 0x69, 0x64, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, + 0x6b, 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, + 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, + 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, + 0x65, 0x72, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, + 0x6e, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, + 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, + 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x55, 0x0a, 0x0a, 0x61, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, - 0x1c, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x22, 0x51, 0x0a, - 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, - 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, - 0x22, 0x4f, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, - 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, - 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, - 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, - 0x64, 0x22, 0xbf, 0x05, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, - 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, - 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, - 0x6c, 0x54, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, - 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, - 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, - 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, - 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, - 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, - 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6d, 0x65, - 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, - 0x61, 0x12, 0x76, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, - 0x0b, 0x32, 0x3f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, + 0xa3, 0x03, 0x0a, 0x13, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, + 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, + 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x04, 0x72, 0x75, 0x6c, 0x65, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x18, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, + 0x52, 0x04, 0x72, 0x75, 0x6c, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, + 0x69, 0x64, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, + 0x49, 0x64, 0x73, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, + 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, + 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, + 0x27, 0x0a, 0x0f, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, + 0x72, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0e, 0x69, 0x6e, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, + 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, + 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4c, 0x0a, 0x0a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x2e, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0a, 0x61, 0x74, 0x74, 0x72, + 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x3d, 0x0a, 0x0f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, + 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x1c, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, + 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x22, 0x51, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, + 0x73, 0x65, 0x12, 0x32, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, + 0x0b, 0x32, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, + 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x52, + 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x22, 0x4f, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, + 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, + 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, + 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x22, 0xbf, 0x05, 0x0a, 0x1b, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, - 0x72, 0x79, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x74, 0x6d, - 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, 0x74, 0x6d, 0x66, 0x12, 0x23, 0x0a, - 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x06, - 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, 0x52, 0x69, 0x6e, 0x67, 0x74, 0x6f, - 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, - 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, - 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x42, - 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, - 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, - 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, - 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x64, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, + 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, + 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, + 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, + 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x54, 0x6f, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, + 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, + 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, + 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x76, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, + 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, + 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, + 0x12, 0x0a, 0x04, 0x64, 0x74, 0x6d, 0x66, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x64, + 0x74, 0x6d, 0x66, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x72, 0x69, 0x6e, 0x67, + 0x74, 0x6f, 0x6e, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x70, 0x6c, 0x61, 0x79, + 0x52, 0x69, 0x6e, 0x67, 0x74, 0x6f, 0x6e, 0x65, 0x12, 0x2a, 0x0a, 0x11, 0x68, 0x69, 0x64, 0x65, + 0x5f, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x0f, 0x68, 0x69, 0x64, 0x65, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, + 0x6d, 0x62, 0x65, 0x72, 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, + 0x74, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, - 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x43, 0x61, 0x6c, - 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x48, 0x0a, 0x1a, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, - 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, - 0x02, 0x38, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, - 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, - 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, - 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, - 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, - 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, - 0x64, 0x22, 0x90, 0x01, 0x0a, 0x1d, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, - 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, - 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, - 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, - 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, - 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, - 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x65, 0x72, 0x54, 0x6f, 0x2a, 0x6b, 0x0a, 0x0c, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, - 0x70, 0x6f, 0x72, 0x74, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, - 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, - 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x55, 0x44, - 0x50, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, - 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x43, 0x50, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, - 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x4c, 0x53, 0x10, - 0x03, 0x32, 0x88, 0x0a, 0x0a, 0x03, 0x53, 0x49, 0x50, 0x12, 0x4c, 0x0a, 0x0e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1e, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x6c, 0x69, - 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, - 0x66, 0x6f, 0x22, 0x03, 0x88, 0x02, 0x01, 0x12, 0x50, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, - 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, - 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, 0x88, 0x02, 0x01, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5f, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x12, 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, - 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, - 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, - 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x22, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, - 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, - 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x49, - 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, + 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, + 0x67, 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, + 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0c, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, + 0x6d, 0x61, 0x78, 0x43, 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, + 0x48, 0x0a, 0x1a, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, + 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, + 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, + 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, + 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xab, 0x01, 0x0a, 0x12, 0x53, 0x49, + 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, + 0x12, 0x25, 0x0a, 0x0e, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, + 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, + 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, + 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, + 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, + 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x22, 0x90, 0x01, 0x0a, 0x1d, 0x54, 0x72, 0x61, 0x6e, + 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, + 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, + 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x1b, 0x0a, 0x09, + 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x74, 0x72, 0x61, + 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, + 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x54, 0x6f, 0x22, 0xb9, 0x03, 0x0a, 0x0b, 0x53, + 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x17, 0x0a, 0x07, 0x63, 0x61, + 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x63, 0x61, 0x6c, + 0x6c, 0x49, 0x64, 0x12, 0x19, 0x0a, 0x08, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1b, + 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x07, 0x72, + 0x6f, 0x6f, 0x6d, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x72, 0x6f, + 0x6f, 0x6d, 0x49, 0x64, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x05, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, + 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x2a, 0x0a, 0x08, 0x66, 0x72, 0x6f, 0x6d, 0x5f, + 0x75, 0x72, 0x69, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x55, 0x72, 0x69, 0x52, 0x07, 0x66, 0x72, 0x6f, 0x6d, + 0x55, 0x72, 0x69, 0x12, 0x26, 0x0a, 0x06, 0x74, 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, + 0x01, 0x28, 0x0b, 0x32, 0x0f, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x55, 0x72, 0x69, 0x52, 0x05, 0x74, 0x6f, 0x55, 0x72, 0x69, 0x12, 0x37, 0x0a, 0x0b, 0x63, + 0x61, 0x6c, 0x6c, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x16, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x43, 0x61, + 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0a, 0x63, 0x61, 0x6c, 0x6c, 0x53, 0x74, + 0x61, 0x74, 0x75, 0x73, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, 0x64, 0x5f, + 0x61, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x65, + 0x64, 0x41, 0x74, 0x12, 0x19, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x61, 0x74, 0x18, + 0x0a, 0x20, 0x01, 0x28, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x41, 0x74, 0x12, 0x46, + 0x0a, 0x11, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x5f, 0x72, 0x65, 0x61, + 0x73, 0x6f, 0x6e, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x19, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, 0x52, 0x65, + 0x61, 0x73, 0x6f, 0x6e, 0x52, 0x10, 0x64, 0x69, 0x73, 0x63, 0x6f, 0x6e, 0x6e, 0x65, 0x63, 0x74, + 0x52, 0x65, 0x61, 0x73, 0x6f, 0x6e, 0x22, 0x89, 0x01, 0x0a, 0x06, 0x53, 0x49, 0x50, 0x55, 0x72, + 0x69, 0x12, 0x12, 0x0a, 0x04, 0x75, 0x73, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x04, 0x75, 0x73, 0x65, 0x72, 0x12, 0x12, 0x0a, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x04, 0x68, 0x6f, 0x73, 0x74, 0x12, 0x0e, 0x0a, 0x02, 0x69, 0x70, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x69, 0x70, 0x12, 0x12, 0x0a, 0x04, 0x70, 0x6f, 0x72, + 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x70, 0x6f, 0x72, 0x74, 0x12, 0x33, 0x0a, + 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, + 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, + 0x61, 0x6e, 0x73, 0x70, 0x6f, 0x72, 0x74, 0x52, 0x09, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, + 0x72, 0x74, 0x2a, 0x6b, 0x0a, 0x0c, 0x53, 0x49, 0x50, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x70, 0x6f, + 0x72, 0x74, 0x12, 0x16, 0x0a, 0x12, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, + 0x4f, 0x52, 0x54, 0x5f, 0x41, 0x55, 0x54, 0x4f, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, + 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x55, 0x44, 0x50, 0x10, + 0x01, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, + 0x52, 0x54, 0x5f, 0x54, 0x43, 0x50, 0x10, 0x02, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x5f, + 0x54, 0x52, 0x41, 0x4e, 0x53, 0x50, 0x4f, 0x52, 0x54, 0x5f, 0x54, 0x4c, 0x53, 0x10, 0x03, 0x2a, + 0x68, 0x0a, 0x0d, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, + 0x12, 0x15, 0x0a, 0x11, 0x53, 0x43, 0x53, 0x5f, 0x43, 0x41, 0x4c, 0x4c, 0x5f, 0x49, 0x4e, 0x43, + 0x4f, 0x4d, 0x49, 0x4e, 0x47, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x43, 0x53, 0x5f, 0x50, + 0x41, 0x52, 0x54, 0x49, 0x43, 0x49, 0x50, 0x41, 0x4e, 0x54, 0x5f, 0x4a, 0x4f, 0x49, 0x4e, 0x45, + 0x44, 0x10, 0x01, 0x12, 0x0e, 0x0a, 0x0a, 0x53, 0x43, 0x53, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x56, + 0x45, 0x10, 0x02, 0x12, 0x14, 0x0a, 0x10, 0x53, 0x43, 0x53, 0x5f, 0x44, 0x49, 0x53, 0x43, 0x4f, + 0x4e, 0x4e, 0x45, 0x43, 0x54, 0x45, 0x44, 0x10, 0x03, 0x32, 0xba, 0x09, 0x0a, 0x03, 0x53, 0x49, + 0x50, 0x12, 0x50, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, + 0x6b, 0x12, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, + 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x03, + 0x88, 0x02, 0x01, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x25, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x5f, 0x0a, 0x16, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x26, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, - 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, - 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, - 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, - 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x14, 0x4c, - 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x12, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, + 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, + 0x66, 0x6f, 0x12, 0x5d, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x22, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, + 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, + 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, + 0x65, 0x12, 0x60, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, + 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, + 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, + 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, + 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x49, 0x6e, 0x62, 0x6f, + 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, + 0x50, 0x49, 0x6e, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, + 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, + 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x24, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, + 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x4f, 0x75, 0x74, 0x62, 0x6f, - 0x75, 0x6e, 0x64, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, - 0x12, 0x47, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, - 0x6e, 0x6b, 0x12, 0x1e, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, - 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, - 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, - 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x23, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, + 0x6e, 0x6b, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x0e, 0x44, 0x65, + 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x12, 0x1e, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x5c, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, - 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, - 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, - 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, - 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x59, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, - 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, - 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, - 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, - 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, - 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x26, 0x2e, 0x6c, - 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, - 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, - 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, - 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x46, 0x5a, 0x23, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x6c, 0x69, 0x76, 0x65, - 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x2e, 0x50, 0x72, - 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x3a, 0x3a, 0x50, - 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x60, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x23, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x24, 0x2e, + 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x49, 0x50, 0x44, + 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, + 0x6e, 0x73, 0x65, 0x12, 0x5c, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x25, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x49, 0x50, + 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x1a, 0x1c, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, + 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x49, 0x6e, 0x66, + 0x6f, 0x12, 0x59, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x24, 0x2e, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, + 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x58, 0x0a, 0x16, + 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x26, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, + 0x2e, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x53, 0x49, 0x50, 0x50, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, + 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, + 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x46, 0x5a, 0x23, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, + 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, + 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0xaa, 0x02, 0x0d, + 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x2e, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0xea, 0x02, 0x0e, + 0x4c, 0x69, 0x76, 0x65, 0x4b, 0x69, 0x74, 0x3a, 0x3a, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x06, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -2649,111 +2943,118 @@ func file_livekit_sip_proto_rawDescGZIP() []byte { return file_livekit_sip_proto_rawDescData } -var file_livekit_sip_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_livekit_sip_proto_msgTypes = make([]protoimpl.MessageInfo, 36) +var file_livekit_sip_proto_enumTypes = make([]protoimpl.EnumInfo, 3) +var file_livekit_sip_proto_msgTypes = make([]protoimpl.MessageInfo, 38) var file_livekit_sip_proto_goTypes = []any{ (SIPTransport)(0), // 0: livekit.SIPTransport - (SIPTrunkInfo_TrunkKind)(0), // 1: livekit.SIPTrunkInfo.TrunkKind - (*CreateSIPTrunkRequest)(nil), // 2: livekit.CreateSIPTrunkRequest - (*SIPTrunkInfo)(nil), // 3: livekit.SIPTrunkInfo - (*CreateSIPInboundTrunkRequest)(nil), // 4: livekit.CreateSIPInboundTrunkRequest - (*SIPInboundTrunkInfo)(nil), // 5: livekit.SIPInboundTrunkInfo - (*CreateSIPOutboundTrunkRequest)(nil), // 6: livekit.CreateSIPOutboundTrunkRequest - (*SIPOutboundTrunkInfo)(nil), // 7: livekit.SIPOutboundTrunkInfo - (*GetSIPInboundTrunkRequest)(nil), // 8: livekit.GetSIPInboundTrunkRequest - (*GetSIPInboundTrunkResponse)(nil), // 9: livekit.GetSIPInboundTrunkResponse - (*GetSIPOutboundTrunkRequest)(nil), // 10: livekit.GetSIPOutboundTrunkRequest - (*GetSIPOutboundTrunkResponse)(nil), // 11: livekit.GetSIPOutboundTrunkResponse - (*ListSIPTrunkRequest)(nil), // 12: livekit.ListSIPTrunkRequest - (*ListSIPTrunkResponse)(nil), // 13: livekit.ListSIPTrunkResponse - (*ListSIPInboundTrunkRequest)(nil), // 14: livekit.ListSIPInboundTrunkRequest - (*ListSIPInboundTrunkResponse)(nil), // 15: livekit.ListSIPInboundTrunkResponse - (*ListSIPOutboundTrunkRequest)(nil), // 16: livekit.ListSIPOutboundTrunkRequest - (*ListSIPOutboundTrunkResponse)(nil), // 17: livekit.ListSIPOutboundTrunkResponse - (*DeleteSIPTrunkRequest)(nil), // 18: livekit.DeleteSIPTrunkRequest - (*SIPDispatchRuleDirect)(nil), // 19: livekit.SIPDispatchRuleDirect - (*SIPDispatchRuleIndividual)(nil), // 20: livekit.SIPDispatchRuleIndividual - (*SIPDispatchRuleCallee)(nil), // 21: livekit.SIPDispatchRuleCallee - (*SIPDispatchRule)(nil), // 22: livekit.SIPDispatchRule - (*CreateSIPDispatchRuleRequest)(nil), // 23: livekit.CreateSIPDispatchRuleRequest - (*SIPDispatchRuleInfo)(nil), // 24: livekit.SIPDispatchRuleInfo - (*ListSIPDispatchRuleRequest)(nil), // 25: livekit.ListSIPDispatchRuleRequest - (*ListSIPDispatchRuleResponse)(nil), // 26: livekit.ListSIPDispatchRuleResponse - (*DeleteSIPDispatchRuleRequest)(nil), // 27: livekit.DeleteSIPDispatchRuleRequest - (*CreateSIPParticipantRequest)(nil), // 28: livekit.CreateSIPParticipantRequest - (*SIPParticipantInfo)(nil), // 29: livekit.SIPParticipantInfo - (*TransferSIPParticipantRequest)(nil), // 30: livekit.TransferSIPParticipantRequest - nil, // 31: livekit.SIPInboundTrunkInfo.HeadersEntry - nil, // 32: livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry - nil, // 33: livekit.SIPOutboundTrunkInfo.HeadersEntry - nil, // 34: livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry - nil, // 35: livekit.CreateSIPDispatchRuleRequest.AttributesEntry - nil, // 36: livekit.SIPDispatchRuleInfo.AttributesEntry - nil, // 37: livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry - (*durationpb.Duration)(nil), // 38: google.protobuf.Duration - (*emptypb.Empty)(nil), // 39: google.protobuf.Empty + (SIPCallStatus)(0), // 1: livekit.SIPCallStatus + (SIPTrunkInfo_TrunkKind)(0), // 2: livekit.SIPTrunkInfo.TrunkKind + (*CreateSIPTrunkRequest)(nil), // 3: livekit.CreateSIPTrunkRequest + (*SIPTrunkInfo)(nil), // 4: livekit.SIPTrunkInfo + (*CreateSIPInboundTrunkRequest)(nil), // 5: livekit.CreateSIPInboundTrunkRequest + (*SIPInboundTrunkInfo)(nil), // 6: livekit.SIPInboundTrunkInfo + (*CreateSIPOutboundTrunkRequest)(nil), // 7: livekit.CreateSIPOutboundTrunkRequest + (*SIPOutboundTrunkInfo)(nil), // 8: livekit.SIPOutboundTrunkInfo + (*GetSIPInboundTrunkRequest)(nil), // 9: livekit.GetSIPInboundTrunkRequest + (*GetSIPInboundTrunkResponse)(nil), // 10: livekit.GetSIPInboundTrunkResponse + (*GetSIPOutboundTrunkRequest)(nil), // 11: livekit.GetSIPOutboundTrunkRequest + (*GetSIPOutboundTrunkResponse)(nil), // 12: livekit.GetSIPOutboundTrunkResponse + (*ListSIPTrunkRequest)(nil), // 13: livekit.ListSIPTrunkRequest + (*ListSIPTrunkResponse)(nil), // 14: livekit.ListSIPTrunkResponse + (*ListSIPInboundTrunkRequest)(nil), // 15: livekit.ListSIPInboundTrunkRequest + (*ListSIPInboundTrunkResponse)(nil), // 16: livekit.ListSIPInboundTrunkResponse + (*ListSIPOutboundTrunkRequest)(nil), // 17: livekit.ListSIPOutboundTrunkRequest + (*ListSIPOutboundTrunkResponse)(nil), // 18: livekit.ListSIPOutboundTrunkResponse + (*DeleteSIPTrunkRequest)(nil), // 19: livekit.DeleteSIPTrunkRequest + (*SIPDispatchRuleDirect)(nil), // 20: livekit.SIPDispatchRuleDirect + (*SIPDispatchRuleIndividual)(nil), // 21: livekit.SIPDispatchRuleIndividual + (*SIPDispatchRuleCallee)(nil), // 22: livekit.SIPDispatchRuleCallee + (*SIPDispatchRule)(nil), // 23: livekit.SIPDispatchRule + (*CreateSIPDispatchRuleRequest)(nil), // 24: livekit.CreateSIPDispatchRuleRequest + (*SIPDispatchRuleInfo)(nil), // 25: livekit.SIPDispatchRuleInfo + (*ListSIPDispatchRuleRequest)(nil), // 26: livekit.ListSIPDispatchRuleRequest + (*ListSIPDispatchRuleResponse)(nil), // 27: livekit.ListSIPDispatchRuleResponse + (*DeleteSIPDispatchRuleRequest)(nil), // 28: livekit.DeleteSIPDispatchRuleRequest + (*CreateSIPParticipantRequest)(nil), // 29: livekit.CreateSIPParticipantRequest + (*SIPParticipantInfo)(nil), // 30: livekit.SIPParticipantInfo + (*TransferSIPParticipantRequest)(nil), // 31: livekit.TransferSIPParticipantRequest + (*SIPCallInfo)(nil), // 32: livekit.SIPCallInfo + (*SIPUri)(nil), // 33: livekit.SIPUri + nil, // 34: livekit.SIPInboundTrunkInfo.HeadersEntry + nil, // 35: livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry + nil, // 36: livekit.SIPOutboundTrunkInfo.HeadersEntry + nil, // 37: livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry + nil, // 38: livekit.CreateSIPDispatchRuleRequest.AttributesEntry + nil, // 39: livekit.SIPDispatchRuleInfo.AttributesEntry + nil, // 40: livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry + (*durationpb.Duration)(nil), // 41: google.protobuf.Duration + (DisconnectReason)(0), // 42: livekit.DisconnectReason + (*emptypb.Empty)(nil), // 43: google.protobuf.Empty } var file_livekit_sip_proto_depIdxs = []int32{ - 1, // 0: livekit.SIPTrunkInfo.kind:type_name -> livekit.SIPTrunkInfo.TrunkKind + 2, // 0: livekit.SIPTrunkInfo.kind:type_name -> livekit.SIPTrunkInfo.TrunkKind 0, // 1: livekit.SIPTrunkInfo.transport:type_name -> livekit.SIPTransport - 5, // 2: livekit.CreateSIPInboundTrunkRequest.trunk:type_name -> livekit.SIPInboundTrunkInfo - 31, // 3: livekit.SIPInboundTrunkInfo.headers:type_name -> livekit.SIPInboundTrunkInfo.HeadersEntry - 32, // 4: livekit.SIPInboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry - 38, // 5: livekit.SIPInboundTrunkInfo.ringing_timeout:type_name -> google.protobuf.Duration - 38, // 6: livekit.SIPInboundTrunkInfo.max_call_duration:type_name -> google.protobuf.Duration - 7, // 7: livekit.CreateSIPOutboundTrunkRequest.trunk:type_name -> livekit.SIPOutboundTrunkInfo + 6, // 2: livekit.CreateSIPInboundTrunkRequest.trunk:type_name -> livekit.SIPInboundTrunkInfo + 34, // 3: livekit.SIPInboundTrunkInfo.headers:type_name -> livekit.SIPInboundTrunkInfo.HeadersEntry + 35, // 4: livekit.SIPInboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPInboundTrunkInfo.HeadersToAttributesEntry + 41, // 5: livekit.SIPInboundTrunkInfo.ringing_timeout:type_name -> google.protobuf.Duration + 41, // 6: livekit.SIPInboundTrunkInfo.max_call_duration:type_name -> google.protobuf.Duration + 8, // 7: livekit.CreateSIPOutboundTrunkRequest.trunk:type_name -> livekit.SIPOutboundTrunkInfo 0, // 8: livekit.SIPOutboundTrunkInfo.transport:type_name -> livekit.SIPTransport - 33, // 9: livekit.SIPOutboundTrunkInfo.headers:type_name -> livekit.SIPOutboundTrunkInfo.HeadersEntry - 34, // 10: livekit.SIPOutboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry - 5, // 11: livekit.GetSIPInboundTrunkResponse.trunk:type_name -> livekit.SIPInboundTrunkInfo - 7, // 12: livekit.GetSIPOutboundTrunkResponse.trunk:type_name -> livekit.SIPOutboundTrunkInfo - 3, // 13: livekit.ListSIPTrunkResponse.items:type_name -> livekit.SIPTrunkInfo - 5, // 14: livekit.ListSIPInboundTrunkResponse.items:type_name -> livekit.SIPInboundTrunkInfo - 7, // 15: livekit.ListSIPOutboundTrunkResponse.items:type_name -> livekit.SIPOutboundTrunkInfo - 19, // 16: livekit.SIPDispatchRule.dispatch_rule_direct:type_name -> livekit.SIPDispatchRuleDirect - 20, // 17: livekit.SIPDispatchRule.dispatch_rule_individual:type_name -> livekit.SIPDispatchRuleIndividual - 21, // 18: livekit.SIPDispatchRule.dispatch_rule_callee:type_name -> livekit.SIPDispatchRuleCallee - 22, // 19: livekit.CreateSIPDispatchRuleRequest.rule:type_name -> livekit.SIPDispatchRule - 35, // 20: livekit.CreateSIPDispatchRuleRequest.attributes:type_name -> livekit.CreateSIPDispatchRuleRequest.AttributesEntry - 22, // 21: livekit.SIPDispatchRuleInfo.rule:type_name -> livekit.SIPDispatchRule - 36, // 22: livekit.SIPDispatchRuleInfo.attributes:type_name -> livekit.SIPDispatchRuleInfo.AttributesEntry - 24, // 23: livekit.ListSIPDispatchRuleResponse.items:type_name -> livekit.SIPDispatchRuleInfo - 37, // 24: livekit.CreateSIPParticipantRequest.participant_attributes:type_name -> livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry - 38, // 25: livekit.CreateSIPParticipantRequest.ringing_timeout:type_name -> google.protobuf.Duration - 38, // 26: livekit.CreateSIPParticipantRequest.max_call_duration:type_name -> google.protobuf.Duration - 2, // 27: livekit.SIP.CreateSIPTrunk:input_type -> livekit.CreateSIPTrunkRequest - 12, // 28: livekit.SIP.ListSIPTrunk:input_type -> livekit.ListSIPTrunkRequest - 4, // 29: livekit.SIP.CreateSIPInboundTrunk:input_type -> livekit.CreateSIPInboundTrunkRequest - 6, // 30: livekit.SIP.CreateSIPOutboundTrunk:input_type -> livekit.CreateSIPOutboundTrunkRequest - 8, // 31: livekit.SIP.GetSIPInboundTrunk:input_type -> livekit.GetSIPInboundTrunkRequest - 10, // 32: livekit.SIP.GetSIPOutboundTrunk:input_type -> livekit.GetSIPOutboundTrunkRequest - 14, // 33: livekit.SIP.ListSIPInboundTrunk:input_type -> livekit.ListSIPInboundTrunkRequest - 16, // 34: livekit.SIP.ListSIPOutboundTrunk:input_type -> livekit.ListSIPOutboundTrunkRequest - 18, // 35: livekit.SIP.DeleteSIPTrunk:input_type -> livekit.DeleteSIPTrunkRequest - 23, // 36: livekit.SIP.CreateSIPDispatchRule:input_type -> livekit.CreateSIPDispatchRuleRequest - 25, // 37: livekit.SIP.ListSIPDispatchRule:input_type -> livekit.ListSIPDispatchRuleRequest - 27, // 38: livekit.SIP.DeleteSIPDispatchRule:input_type -> livekit.DeleteSIPDispatchRuleRequest - 28, // 39: livekit.SIP.CreateSIPParticipant:input_type -> livekit.CreateSIPParticipantRequest - 30, // 40: livekit.SIP.TransferSIPParticipant:input_type -> livekit.TransferSIPParticipantRequest - 3, // 41: livekit.SIP.CreateSIPTrunk:output_type -> livekit.SIPTrunkInfo - 13, // 42: livekit.SIP.ListSIPTrunk:output_type -> livekit.ListSIPTrunkResponse - 5, // 43: livekit.SIP.CreateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo - 7, // 44: livekit.SIP.CreateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo - 9, // 45: livekit.SIP.GetSIPInboundTrunk:output_type -> livekit.GetSIPInboundTrunkResponse - 11, // 46: livekit.SIP.GetSIPOutboundTrunk:output_type -> livekit.GetSIPOutboundTrunkResponse - 15, // 47: livekit.SIP.ListSIPInboundTrunk:output_type -> livekit.ListSIPInboundTrunkResponse - 17, // 48: livekit.SIP.ListSIPOutboundTrunk:output_type -> livekit.ListSIPOutboundTrunkResponse - 3, // 49: livekit.SIP.DeleteSIPTrunk:output_type -> livekit.SIPTrunkInfo - 24, // 50: livekit.SIP.CreateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo - 26, // 51: livekit.SIP.ListSIPDispatchRule:output_type -> livekit.ListSIPDispatchRuleResponse - 24, // 52: livekit.SIP.DeleteSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo - 29, // 53: livekit.SIP.CreateSIPParticipant:output_type -> livekit.SIPParticipantInfo - 39, // 54: livekit.SIP.TransferSIPParticipant:output_type -> google.protobuf.Empty - 41, // [41:55] is the sub-list for method output_type - 27, // [27:41] is the sub-list for method input_type - 27, // [27:27] is the sub-list for extension type_name - 27, // [27:27] is the sub-list for extension extendee - 0, // [0:27] is the sub-list for field type_name + 36, // 9: livekit.SIPOutboundTrunkInfo.headers:type_name -> livekit.SIPOutboundTrunkInfo.HeadersEntry + 37, // 10: livekit.SIPOutboundTrunkInfo.headers_to_attributes:type_name -> livekit.SIPOutboundTrunkInfo.HeadersToAttributesEntry + 6, // 11: livekit.GetSIPInboundTrunkResponse.trunk:type_name -> livekit.SIPInboundTrunkInfo + 8, // 12: livekit.GetSIPOutboundTrunkResponse.trunk:type_name -> livekit.SIPOutboundTrunkInfo + 4, // 13: livekit.ListSIPTrunkResponse.items:type_name -> livekit.SIPTrunkInfo + 6, // 14: livekit.ListSIPInboundTrunkResponse.items:type_name -> livekit.SIPInboundTrunkInfo + 8, // 15: livekit.ListSIPOutboundTrunkResponse.items:type_name -> livekit.SIPOutboundTrunkInfo + 20, // 16: livekit.SIPDispatchRule.dispatch_rule_direct:type_name -> livekit.SIPDispatchRuleDirect + 21, // 17: livekit.SIPDispatchRule.dispatch_rule_individual:type_name -> livekit.SIPDispatchRuleIndividual + 22, // 18: livekit.SIPDispatchRule.dispatch_rule_callee:type_name -> livekit.SIPDispatchRuleCallee + 23, // 19: livekit.CreateSIPDispatchRuleRequest.rule:type_name -> livekit.SIPDispatchRule + 38, // 20: livekit.CreateSIPDispatchRuleRequest.attributes:type_name -> livekit.CreateSIPDispatchRuleRequest.AttributesEntry + 23, // 21: livekit.SIPDispatchRuleInfo.rule:type_name -> livekit.SIPDispatchRule + 39, // 22: livekit.SIPDispatchRuleInfo.attributes:type_name -> livekit.SIPDispatchRuleInfo.AttributesEntry + 25, // 23: livekit.ListSIPDispatchRuleResponse.items:type_name -> livekit.SIPDispatchRuleInfo + 40, // 24: livekit.CreateSIPParticipantRequest.participant_attributes:type_name -> livekit.CreateSIPParticipantRequest.ParticipantAttributesEntry + 41, // 25: livekit.CreateSIPParticipantRequest.ringing_timeout:type_name -> google.protobuf.Duration + 41, // 26: livekit.CreateSIPParticipantRequest.max_call_duration:type_name -> google.protobuf.Duration + 33, // 27: livekit.SIPCallInfo.from_uri:type_name -> livekit.SIPUri + 33, // 28: livekit.SIPCallInfo.to_uri:type_name -> livekit.SIPUri + 1, // 29: livekit.SIPCallInfo.call_status:type_name -> livekit.SIPCallStatus + 42, // 30: livekit.SIPCallInfo.disconnect_reason:type_name -> livekit.DisconnectReason + 0, // 31: livekit.SIPUri.transport:type_name -> livekit.SIPTransport + 13, // 32: livekit.SIP.ListSIPTrunk:input_type -> livekit.ListSIPTrunkRequest + 5, // 33: livekit.SIP.CreateSIPInboundTrunk:input_type -> livekit.CreateSIPInboundTrunkRequest + 7, // 34: livekit.SIP.CreateSIPOutboundTrunk:input_type -> livekit.CreateSIPOutboundTrunkRequest + 9, // 35: livekit.SIP.GetSIPInboundTrunk:input_type -> livekit.GetSIPInboundTrunkRequest + 11, // 36: livekit.SIP.GetSIPOutboundTrunk:input_type -> livekit.GetSIPOutboundTrunkRequest + 15, // 37: livekit.SIP.ListSIPInboundTrunk:input_type -> livekit.ListSIPInboundTrunkRequest + 17, // 38: livekit.SIP.ListSIPOutboundTrunk:input_type -> livekit.ListSIPOutboundTrunkRequest + 19, // 39: livekit.SIP.DeleteSIPTrunk:input_type -> livekit.DeleteSIPTrunkRequest + 24, // 40: livekit.SIP.CreateSIPDispatchRule:input_type -> livekit.CreateSIPDispatchRuleRequest + 26, // 41: livekit.SIP.ListSIPDispatchRule:input_type -> livekit.ListSIPDispatchRuleRequest + 28, // 42: livekit.SIP.DeleteSIPDispatchRule:input_type -> livekit.DeleteSIPDispatchRuleRequest + 29, // 43: livekit.SIP.CreateSIPParticipant:input_type -> livekit.CreateSIPParticipantRequest + 31, // 44: livekit.SIP.TransferSIPParticipant:input_type -> livekit.TransferSIPParticipantRequest + 14, // 45: livekit.SIP.ListSIPTrunk:output_type -> livekit.ListSIPTrunkResponse + 6, // 46: livekit.SIP.CreateSIPInboundTrunk:output_type -> livekit.SIPInboundTrunkInfo + 8, // 47: livekit.SIP.CreateSIPOutboundTrunk:output_type -> livekit.SIPOutboundTrunkInfo + 10, // 48: livekit.SIP.GetSIPInboundTrunk:output_type -> livekit.GetSIPInboundTrunkResponse + 12, // 49: livekit.SIP.GetSIPOutboundTrunk:output_type -> livekit.GetSIPOutboundTrunkResponse + 16, // 50: livekit.SIP.ListSIPInboundTrunk:output_type -> livekit.ListSIPInboundTrunkResponse + 18, // 51: livekit.SIP.ListSIPOutboundTrunk:output_type -> livekit.ListSIPOutboundTrunkResponse + 4, // 52: livekit.SIP.DeleteSIPTrunk:output_type -> livekit.SIPTrunkInfo + 25, // 53: livekit.SIP.CreateSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo + 27, // 54: livekit.SIP.ListSIPDispatchRule:output_type -> livekit.ListSIPDispatchRuleResponse + 25, // 55: livekit.SIP.DeleteSIPDispatchRule:output_type -> livekit.SIPDispatchRuleInfo + 30, // 56: livekit.SIP.CreateSIPParticipant:output_type -> livekit.SIPParticipantInfo + 43, // 57: livekit.SIP.TransferSIPParticipant:output_type -> google.protobuf.Empty + 45, // [45:58] is the sub-list for method output_type + 32, // [32:45] is the sub-list for method input_type + 32, // [32:32] is the sub-list for extension type_name + 32, // [32:32] is the sub-list for extension extendee + 0, // [0:32] is the sub-list for field type_name } func init() { file_livekit_sip_proto_init() } @@ -2761,6 +3062,7 @@ func file_livekit_sip_proto_init() { if File_livekit_sip_proto != nil { return } + file_livekit_models_proto_init() file_livekit_sip_proto_msgTypes[20].OneofWrappers = []any{ (*SIPDispatchRule_DispatchRuleDirect)(nil), (*SIPDispatchRule_DispatchRuleIndividual)(nil), @@ -2771,8 +3073,8 @@ func file_livekit_sip_proto_init() { File: protoimpl.DescBuilder{ GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_livekit_sip_proto_rawDesc, - NumEnums: 2, - NumMessages: 36, + NumEnums: 3, + NumMessages: 38, NumExtensions: 0, NumServices: 1, }, diff --git a/livekit/livekit_sip.twirp.go b/livekit/livekit_sip.twirp.go index 2db8f7ea..cd79b289 100644 --- a/livekit/livekit_sip.twirp.go +++ b/livekit/livekit_sip.twirp.go @@ -16,7 +16,7 @@ import proto "google.golang.org/protobuf/proto" import twirp "github.com/twitchtv/twirp" import ctxsetters "github.com/twitchtv/twirp/ctxsetters" -import google_protobuf1 "google.golang.org/protobuf/types/known/emptypb" +import google_protobuf2 "google.golang.org/protobuf/types/known/emptypb" // Version compatibility assertion. // If the constant is not defined in the package, that likely means @@ -29,8 +29,7 @@ const _ = twirp.TwirpPackageMinVersion_8_1_0 // ============= type SIP interface { - CreateSIPTrunk(context.Context, *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) - + // rpc CreateSIPTrunk(CreateSIPTrunkRequest) returns (SIPTrunkInfo) { option deprecated = true; }; DELETED ListSIPTrunk(context.Context, *ListSIPTrunkRequest) (*ListSIPTrunkResponse, error) CreateSIPInboundTrunk(context.Context, *CreateSIPInboundTrunkRequest) (*SIPInboundTrunkInfo, error) @@ -55,7 +54,7 @@ type SIP interface { CreateSIPParticipant(context.Context, *CreateSIPParticipantRequest) (*SIPParticipantInfo, error) - TransferSIPParticipant(context.Context, *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) + TransferSIPParticipant(context.Context, *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) } // =================== @@ -64,7 +63,7 @@ type SIP interface { type sIPProtobufClient struct { client HTTPClient - urls [14]string + urls [13]string interceptor twirp.Interceptor opts twirp.ClientOptions } @@ -92,8 +91,7 @@ func NewSIPProtobufClient(baseURL string, client HTTPClient, opts ...twirp.Clien // Build method URLs: []/./ serviceURL := sanitizeBaseURL(baseURL) serviceURL += baseServicePath(pathPrefix, "livekit", "SIP") - urls := [14]string{ - serviceURL + "CreateSIPTrunk", + urls := [13]string{ serviceURL + "ListSIPTrunk", serviceURL + "CreateSIPInboundTrunk", serviceURL + "CreateSIPOutboundTrunk", @@ -117,52 +115,6 @@ func NewSIPProtobufClient(baseURL string, client HTTPClient, opts ...twirp.Clien } } -func (c *sIPProtobufClient) CreateSIPTrunk(ctx context.Context, in *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - ctx = ctxsetters.WithPackageName(ctx, "livekit") - ctx = ctxsetters.WithServiceName(ctx, "SIP") - ctx = ctxsetters.WithMethodName(ctx, "CreateSIPTrunk") - caller := c.callCreateSIPTrunk - if c.interceptor != nil { - caller = func(ctx context.Context, req *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - resp, err := c.interceptor( - func(ctx context.Context, req interface{}) (interface{}, error) { - typedReq, ok := req.(*CreateSIPTrunkRequest) - if !ok { - return nil, twirp.InternalError("failed type assertion req.(*CreateSIPTrunkRequest) when calling interceptor") - } - return c.callCreateSIPTrunk(ctx, typedReq) - }, - )(ctx, req) - if resp != nil { - typedResp, ok := resp.(*SIPTrunkInfo) - if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*SIPTrunkInfo) when calling interceptor") - } - return typedResp, err - } - return nil, err - } - } - return caller(ctx, in) -} - -func (c *sIPProtobufClient) callCreateSIPTrunk(ctx context.Context, in *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - out := new(SIPTrunkInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[0], in, out) - if err != nil { - twerr, ok := err.(twirp.Error) - if !ok { - twerr = twirp.InternalErrorWith(err) - } - callClientError(ctx, c.opts.Hooks, twerr) - return nil, err - } - - callClientResponseReceived(ctx, c.opts.Hooks) - - return out, nil -} - func (c *sIPProtobufClient) ListSIPTrunk(ctx context.Context, in *ListSIPTrunkRequest) (*ListSIPTrunkResponse, error) { ctx = ctxsetters.WithPackageName(ctx, "livekit") ctx = ctxsetters.WithServiceName(ctx, "SIP") @@ -194,7 +146,7 @@ func (c *sIPProtobufClient) ListSIPTrunk(ctx context.Context, in *ListSIPTrunkRe func (c *sIPProtobufClient) callListSIPTrunk(ctx context.Context, in *ListSIPTrunkRequest) (*ListSIPTrunkResponse, error) { out := new(ListSIPTrunkResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[1], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[0], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -240,7 +192,7 @@ func (c *sIPProtobufClient) CreateSIPInboundTrunk(ctx context.Context, in *Creat func (c *sIPProtobufClient) callCreateSIPInboundTrunk(ctx context.Context, in *CreateSIPInboundTrunkRequest) (*SIPInboundTrunkInfo, error) { out := new(SIPInboundTrunkInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[2], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[1], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -286,7 +238,7 @@ func (c *sIPProtobufClient) CreateSIPOutboundTrunk(ctx context.Context, in *Crea func (c *sIPProtobufClient) callCreateSIPOutboundTrunk(ctx context.Context, in *CreateSIPOutboundTrunkRequest) (*SIPOutboundTrunkInfo, error) { out := new(SIPOutboundTrunkInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[3], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[2], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -332,7 +284,7 @@ func (c *sIPProtobufClient) GetSIPInboundTrunk(ctx context.Context, in *GetSIPIn func (c *sIPProtobufClient) callGetSIPInboundTrunk(ctx context.Context, in *GetSIPInboundTrunkRequest) (*GetSIPInboundTrunkResponse, error) { out := new(GetSIPInboundTrunkResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[4], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[3], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -378,7 +330,7 @@ func (c *sIPProtobufClient) GetSIPOutboundTrunk(ctx context.Context, in *GetSIPO func (c *sIPProtobufClient) callGetSIPOutboundTrunk(ctx context.Context, in *GetSIPOutboundTrunkRequest) (*GetSIPOutboundTrunkResponse, error) { out := new(GetSIPOutboundTrunkResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[5], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[4], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -424,7 +376,7 @@ func (c *sIPProtobufClient) ListSIPInboundTrunk(ctx context.Context, in *ListSIP func (c *sIPProtobufClient) callListSIPInboundTrunk(ctx context.Context, in *ListSIPInboundTrunkRequest) (*ListSIPInboundTrunkResponse, error) { out := new(ListSIPInboundTrunkResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[6], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[5], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -470,7 +422,7 @@ func (c *sIPProtobufClient) ListSIPOutboundTrunk(ctx context.Context, in *ListSI func (c *sIPProtobufClient) callListSIPOutboundTrunk(ctx context.Context, in *ListSIPOutboundTrunkRequest) (*ListSIPOutboundTrunkResponse, error) { out := new(ListSIPOutboundTrunkResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[7], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[6], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -516,7 +468,7 @@ func (c *sIPProtobufClient) DeleteSIPTrunk(ctx context.Context, in *DeleteSIPTru func (c *sIPProtobufClient) callDeleteSIPTrunk(ctx context.Context, in *DeleteSIPTrunkRequest) (*SIPTrunkInfo, error) { out := new(SIPTrunkInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[8], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[7], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -562,7 +514,7 @@ func (c *sIPProtobufClient) CreateSIPDispatchRule(ctx context.Context, in *Creat func (c *sIPProtobufClient) callCreateSIPDispatchRule(ctx context.Context, in *CreateSIPDispatchRuleRequest) (*SIPDispatchRuleInfo, error) { out := new(SIPDispatchRuleInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[9], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[8], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -608,7 +560,7 @@ func (c *sIPProtobufClient) ListSIPDispatchRule(ctx context.Context, in *ListSIP func (c *sIPProtobufClient) callListSIPDispatchRule(ctx context.Context, in *ListSIPDispatchRuleRequest) (*ListSIPDispatchRuleResponse, error) { out := new(ListSIPDispatchRuleResponse) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[10], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[9], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -654,7 +606,7 @@ func (c *sIPProtobufClient) DeleteSIPDispatchRule(ctx context.Context, in *Delet func (c *sIPProtobufClient) callDeleteSIPDispatchRule(ctx context.Context, in *DeleteSIPDispatchRuleRequest) (*SIPDispatchRuleInfo, error) { out := new(SIPDispatchRuleInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[11], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[10], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -700,7 +652,7 @@ func (c *sIPProtobufClient) CreateSIPParticipant(ctx context.Context, in *Create func (c *sIPProtobufClient) callCreateSIPParticipant(ctx context.Context, in *CreateSIPParticipantRequest) (*SIPParticipantInfo, error) { out := new(SIPParticipantInfo) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[12], in, out) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[11], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -715,13 +667,13 @@ func (c *sIPProtobufClient) callCreateSIPParticipant(ctx context.Context, in *Cr return out, nil } -func (c *sIPProtobufClient) TransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { +func (c *sIPProtobufClient) TransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { ctx = ctxsetters.WithPackageName(ctx, "livekit") ctx = ctxsetters.WithServiceName(ctx, "SIP") ctx = ctxsetters.WithMethodName(ctx, "TransferSIPParticipant") caller := c.callTransferSIPParticipant if c.interceptor != nil { - caller = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { + caller = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { resp, err := c.interceptor( func(ctx context.Context, req interface{}) (interface{}, error) { typedReq, ok := req.(*TransferSIPParticipantRequest) @@ -732,9 +684,9 @@ func (c *sIPProtobufClient) TransferSIPParticipant(ctx context.Context, in *Tran }, )(ctx, req) if resp != nil { - typedResp, ok := resp.(*google_protobuf1.Empty) + typedResp, ok := resp.(*google_protobuf2.Empty) if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf1.Empty) when calling interceptor") + return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf2.Empty) when calling interceptor") } return typedResp, err } @@ -744,9 +696,9 @@ func (c *sIPProtobufClient) TransferSIPParticipant(ctx context.Context, in *Tran return caller(ctx, in) } -func (c *sIPProtobufClient) callTransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { - out := new(google_protobuf1.Empty) - ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[13], in, out) +func (c *sIPProtobufClient) callTransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { + out := new(google_protobuf2.Empty) + ctx, err := doProtobufRequest(ctx, c.client, c.opts.Hooks, c.urls[12], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -767,7 +719,7 @@ func (c *sIPProtobufClient) callTransferSIPParticipant(ctx context.Context, in * type sIPJSONClient struct { client HTTPClient - urls [14]string + urls [13]string interceptor twirp.Interceptor opts twirp.ClientOptions } @@ -795,8 +747,7 @@ func NewSIPJSONClient(baseURL string, client HTTPClient, opts ...twirp.ClientOpt // Build method URLs: []/./ serviceURL := sanitizeBaseURL(baseURL) serviceURL += baseServicePath(pathPrefix, "livekit", "SIP") - urls := [14]string{ - serviceURL + "CreateSIPTrunk", + urls := [13]string{ serviceURL + "ListSIPTrunk", serviceURL + "CreateSIPInboundTrunk", serviceURL + "CreateSIPOutboundTrunk", @@ -820,52 +771,6 @@ func NewSIPJSONClient(baseURL string, client HTTPClient, opts ...twirp.ClientOpt } } -func (c *sIPJSONClient) CreateSIPTrunk(ctx context.Context, in *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - ctx = ctxsetters.WithPackageName(ctx, "livekit") - ctx = ctxsetters.WithServiceName(ctx, "SIP") - ctx = ctxsetters.WithMethodName(ctx, "CreateSIPTrunk") - caller := c.callCreateSIPTrunk - if c.interceptor != nil { - caller = func(ctx context.Context, req *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - resp, err := c.interceptor( - func(ctx context.Context, req interface{}) (interface{}, error) { - typedReq, ok := req.(*CreateSIPTrunkRequest) - if !ok { - return nil, twirp.InternalError("failed type assertion req.(*CreateSIPTrunkRequest) when calling interceptor") - } - return c.callCreateSIPTrunk(ctx, typedReq) - }, - )(ctx, req) - if resp != nil { - typedResp, ok := resp.(*SIPTrunkInfo) - if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*SIPTrunkInfo) when calling interceptor") - } - return typedResp, err - } - return nil, err - } - } - return caller(ctx, in) -} - -func (c *sIPJSONClient) callCreateSIPTrunk(ctx context.Context, in *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - out := new(SIPTrunkInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[0], in, out) - if err != nil { - twerr, ok := err.(twirp.Error) - if !ok { - twerr = twirp.InternalErrorWith(err) - } - callClientError(ctx, c.opts.Hooks, twerr) - return nil, err - } - - callClientResponseReceived(ctx, c.opts.Hooks) - - return out, nil -} - func (c *sIPJSONClient) ListSIPTrunk(ctx context.Context, in *ListSIPTrunkRequest) (*ListSIPTrunkResponse, error) { ctx = ctxsetters.WithPackageName(ctx, "livekit") ctx = ctxsetters.WithServiceName(ctx, "SIP") @@ -897,7 +802,7 @@ func (c *sIPJSONClient) ListSIPTrunk(ctx context.Context, in *ListSIPTrunkReques func (c *sIPJSONClient) callListSIPTrunk(ctx context.Context, in *ListSIPTrunkRequest) (*ListSIPTrunkResponse, error) { out := new(ListSIPTrunkResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[1], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[0], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -943,7 +848,7 @@ func (c *sIPJSONClient) CreateSIPInboundTrunk(ctx context.Context, in *CreateSIP func (c *sIPJSONClient) callCreateSIPInboundTrunk(ctx context.Context, in *CreateSIPInboundTrunkRequest) (*SIPInboundTrunkInfo, error) { out := new(SIPInboundTrunkInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[2], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[1], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -989,7 +894,7 @@ func (c *sIPJSONClient) CreateSIPOutboundTrunk(ctx context.Context, in *CreateSI func (c *sIPJSONClient) callCreateSIPOutboundTrunk(ctx context.Context, in *CreateSIPOutboundTrunkRequest) (*SIPOutboundTrunkInfo, error) { out := new(SIPOutboundTrunkInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[3], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[2], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1035,7 +940,7 @@ func (c *sIPJSONClient) GetSIPInboundTrunk(ctx context.Context, in *GetSIPInboun func (c *sIPJSONClient) callGetSIPInboundTrunk(ctx context.Context, in *GetSIPInboundTrunkRequest) (*GetSIPInboundTrunkResponse, error) { out := new(GetSIPInboundTrunkResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[4], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[3], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1081,7 +986,7 @@ func (c *sIPJSONClient) GetSIPOutboundTrunk(ctx context.Context, in *GetSIPOutbo func (c *sIPJSONClient) callGetSIPOutboundTrunk(ctx context.Context, in *GetSIPOutboundTrunkRequest) (*GetSIPOutboundTrunkResponse, error) { out := new(GetSIPOutboundTrunkResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[5], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[4], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1127,7 +1032,7 @@ func (c *sIPJSONClient) ListSIPInboundTrunk(ctx context.Context, in *ListSIPInbo func (c *sIPJSONClient) callListSIPInboundTrunk(ctx context.Context, in *ListSIPInboundTrunkRequest) (*ListSIPInboundTrunkResponse, error) { out := new(ListSIPInboundTrunkResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[6], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[5], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1173,7 +1078,7 @@ func (c *sIPJSONClient) ListSIPOutboundTrunk(ctx context.Context, in *ListSIPOut func (c *sIPJSONClient) callListSIPOutboundTrunk(ctx context.Context, in *ListSIPOutboundTrunkRequest) (*ListSIPOutboundTrunkResponse, error) { out := new(ListSIPOutboundTrunkResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[7], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[6], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1219,7 +1124,7 @@ func (c *sIPJSONClient) DeleteSIPTrunk(ctx context.Context, in *DeleteSIPTrunkRe func (c *sIPJSONClient) callDeleteSIPTrunk(ctx context.Context, in *DeleteSIPTrunkRequest) (*SIPTrunkInfo, error) { out := new(SIPTrunkInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[8], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[7], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1265,7 +1170,7 @@ func (c *sIPJSONClient) CreateSIPDispatchRule(ctx context.Context, in *CreateSIP func (c *sIPJSONClient) callCreateSIPDispatchRule(ctx context.Context, in *CreateSIPDispatchRuleRequest) (*SIPDispatchRuleInfo, error) { out := new(SIPDispatchRuleInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[9], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[8], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1311,7 +1216,7 @@ func (c *sIPJSONClient) ListSIPDispatchRule(ctx context.Context, in *ListSIPDisp func (c *sIPJSONClient) callListSIPDispatchRule(ctx context.Context, in *ListSIPDispatchRuleRequest) (*ListSIPDispatchRuleResponse, error) { out := new(ListSIPDispatchRuleResponse) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[10], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[9], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1357,7 +1262,7 @@ func (c *sIPJSONClient) DeleteSIPDispatchRule(ctx context.Context, in *DeleteSIP func (c *sIPJSONClient) callDeleteSIPDispatchRule(ctx context.Context, in *DeleteSIPDispatchRuleRequest) (*SIPDispatchRuleInfo, error) { out := new(SIPDispatchRuleInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[11], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[10], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1403,7 +1308,7 @@ func (c *sIPJSONClient) CreateSIPParticipant(ctx context.Context, in *CreateSIPP func (c *sIPJSONClient) callCreateSIPParticipant(ctx context.Context, in *CreateSIPParticipantRequest) (*SIPParticipantInfo, error) { out := new(SIPParticipantInfo) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[12], in, out) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[11], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1418,13 +1323,13 @@ func (c *sIPJSONClient) callCreateSIPParticipant(ctx context.Context, in *Create return out, nil } -func (c *sIPJSONClient) TransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { +func (c *sIPJSONClient) TransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { ctx = ctxsetters.WithPackageName(ctx, "livekit") ctx = ctxsetters.WithServiceName(ctx, "SIP") ctx = ctxsetters.WithMethodName(ctx, "TransferSIPParticipant") caller := c.callTransferSIPParticipant if c.interceptor != nil { - caller = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { + caller = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { resp, err := c.interceptor( func(ctx context.Context, req interface{}) (interface{}, error) { typedReq, ok := req.(*TransferSIPParticipantRequest) @@ -1435,9 +1340,9 @@ func (c *sIPJSONClient) TransferSIPParticipant(ctx context.Context, in *Transfer }, )(ctx, req) if resp != nil { - typedResp, ok := resp.(*google_protobuf1.Empty) + typedResp, ok := resp.(*google_protobuf2.Empty) if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf1.Empty) when calling interceptor") + return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf2.Empty) when calling interceptor") } return typedResp, err } @@ -1447,9 +1352,9 @@ func (c *sIPJSONClient) TransferSIPParticipant(ctx context.Context, in *Transfer return caller(ctx, in) } -func (c *sIPJSONClient) callTransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { - out := new(google_protobuf1.Empty) - ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[13], in, out) +func (c *sIPJSONClient) callTransferSIPParticipant(ctx context.Context, in *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { + out := new(google_protobuf2.Empty) + ctx, err := doJSONRequest(ctx, c.client, c.opts.Hooks, c.urls[12], in, out) if err != nil { twerr, ok := err.(twirp.Error) if !ok { @@ -1561,9 +1466,6 @@ func (s *sIPServer) ServeHTTP(resp http.ResponseWriter, req *http.Request) { } switch method { - case "CreateSIPTrunk": - s.serveCreateSIPTrunk(ctx, resp, req) - return case "ListSIPTrunk": s.serveListSIPTrunk(ctx, resp, req) return @@ -1610,186 +1512,6 @@ func (s *sIPServer) ServeHTTP(resp http.ResponseWriter, req *http.Request) { } } -func (s *sIPServer) serveCreateSIPTrunk(ctx context.Context, resp http.ResponseWriter, req *http.Request) { - header := req.Header.Get("Content-Type") - i := strings.Index(header, ";") - if i == -1 { - i = len(header) - } - switch strings.TrimSpace(strings.ToLower(header[:i])) { - case "application/json": - s.serveCreateSIPTrunkJSON(ctx, resp, req) - case "application/protobuf": - s.serveCreateSIPTrunkProtobuf(ctx, resp, req) - default: - msg := fmt.Sprintf("unexpected Content-Type: %q", req.Header.Get("Content-Type")) - twerr := badRouteError(msg, req.Method, req.URL.Path) - s.writeError(ctx, resp, twerr) - } -} - -func (s *sIPServer) serveCreateSIPTrunkJSON(ctx context.Context, resp http.ResponseWriter, req *http.Request) { - var err error - ctx = ctxsetters.WithMethodName(ctx, "CreateSIPTrunk") - ctx, err = callRequestRouted(ctx, s.hooks) - if err != nil { - s.writeError(ctx, resp, err) - return - } - - d := json.NewDecoder(req.Body) - rawReqBody := json.RawMessage{} - if err := d.Decode(&rawReqBody); err != nil { - s.handleRequestBodyError(ctx, resp, "the json request could not be decoded", err) - return - } - reqContent := new(CreateSIPTrunkRequest) - unmarshaler := protojson.UnmarshalOptions{DiscardUnknown: true} - if err = unmarshaler.Unmarshal(rawReqBody, reqContent); err != nil { - s.handleRequestBodyError(ctx, resp, "the json request could not be decoded", err) - return - } - - handler := s.SIP.CreateSIPTrunk - if s.interceptor != nil { - handler = func(ctx context.Context, req *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - resp, err := s.interceptor( - func(ctx context.Context, req interface{}) (interface{}, error) { - typedReq, ok := req.(*CreateSIPTrunkRequest) - if !ok { - return nil, twirp.InternalError("failed type assertion req.(*CreateSIPTrunkRequest) when calling interceptor") - } - return s.SIP.CreateSIPTrunk(ctx, typedReq) - }, - )(ctx, req) - if resp != nil { - typedResp, ok := resp.(*SIPTrunkInfo) - if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*SIPTrunkInfo) when calling interceptor") - } - return typedResp, err - } - return nil, err - } - } - - // Call service method - var respContent *SIPTrunkInfo - func() { - defer ensurePanicResponses(ctx, resp, s.hooks) - respContent, err = handler(ctx, reqContent) - }() - - if err != nil { - s.writeError(ctx, resp, err) - return - } - if respContent == nil { - s.writeError(ctx, resp, twirp.InternalError("received a nil *SIPTrunkInfo and nil error while calling CreateSIPTrunk. nil responses are not supported")) - return - } - - ctx = callResponsePrepared(ctx, s.hooks) - - marshaler := &protojson.MarshalOptions{UseProtoNames: !s.jsonCamelCase, EmitUnpopulated: !s.jsonSkipDefaults} - respBytes, err := marshaler.Marshal(respContent) - if err != nil { - s.writeError(ctx, resp, wrapInternal(err, "failed to marshal json response")) - return - } - - ctx = ctxsetters.WithStatusCode(ctx, http.StatusOK) - resp.Header().Set("Content-Type", "application/json") - resp.Header().Set("Content-Length", strconv.Itoa(len(respBytes))) - resp.WriteHeader(http.StatusOK) - - if n, err := resp.Write(respBytes); err != nil { - msg := fmt.Sprintf("failed to write response, %d of %d bytes written: %s", n, len(respBytes), err.Error()) - twerr := twirp.NewError(twirp.Unknown, msg) - ctx = callError(ctx, s.hooks, twerr) - } - callResponseSent(ctx, s.hooks) -} - -func (s *sIPServer) serveCreateSIPTrunkProtobuf(ctx context.Context, resp http.ResponseWriter, req *http.Request) { - var err error - ctx = ctxsetters.WithMethodName(ctx, "CreateSIPTrunk") - ctx, err = callRequestRouted(ctx, s.hooks) - if err != nil { - s.writeError(ctx, resp, err) - return - } - - buf, err := io.ReadAll(req.Body) - if err != nil { - s.handleRequestBodyError(ctx, resp, "failed to read request body", err) - return - } - reqContent := new(CreateSIPTrunkRequest) - if err = proto.Unmarshal(buf, reqContent); err != nil { - s.writeError(ctx, resp, malformedRequestError("the protobuf request could not be decoded")) - return - } - - handler := s.SIP.CreateSIPTrunk - if s.interceptor != nil { - handler = func(ctx context.Context, req *CreateSIPTrunkRequest) (*SIPTrunkInfo, error) { - resp, err := s.interceptor( - func(ctx context.Context, req interface{}) (interface{}, error) { - typedReq, ok := req.(*CreateSIPTrunkRequest) - if !ok { - return nil, twirp.InternalError("failed type assertion req.(*CreateSIPTrunkRequest) when calling interceptor") - } - return s.SIP.CreateSIPTrunk(ctx, typedReq) - }, - )(ctx, req) - if resp != nil { - typedResp, ok := resp.(*SIPTrunkInfo) - if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*SIPTrunkInfo) when calling interceptor") - } - return typedResp, err - } - return nil, err - } - } - - // Call service method - var respContent *SIPTrunkInfo - func() { - defer ensurePanicResponses(ctx, resp, s.hooks) - respContent, err = handler(ctx, reqContent) - }() - - if err != nil { - s.writeError(ctx, resp, err) - return - } - if respContent == nil { - s.writeError(ctx, resp, twirp.InternalError("received a nil *SIPTrunkInfo and nil error while calling CreateSIPTrunk. nil responses are not supported")) - return - } - - ctx = callResponsePrepared(ctx, s.hooks) - - respBytes, err := proto.Marshal(respContent) - if err != nil { - s.writeError(ctx, resp, wrapInternal(err, "failed to marshal proto response")) - return - } - - ctx = ctxsetters.WithStatusCode(ctx, http.StatusOK) - resp.Header().Set("Content-Type", "application/protobuf") - resp.Header().Set("Content-Length", strconv.Itoa(len(respBytes))) - resp.WriteHeader(http.StatusOK) - if n, err := resp.Write(respBytes); err != nil { - msg := fmt.Sprintf("failed to write response, %d of %d bytes written: %s", n, len(respBytes), err.Error()) - twerr := twirp.NewError(twirp.Unknown, msg) - ctx = callError(ctx, s.hooks, twerr) - } - callResponseSent(ctx, s.hooks) -} - func (s *sIPServer) serveListSIPTrunk(ctx context.Context, resp http.ResponseWriter, req *http.Request) { header := req.Header.Get("Content-Type") i := strings.Index(header, ";") @@ -3992,7 +3714,7 @@ func (s *sIPServer) serveTransferSIPParticipantJSON(ctx context.Context, resp ht handler := s.SIP.TransferSIPParticipant if s.interceptor != nil { - handler = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { + handler = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { resp, err := s.interceptor( func(ctx context.Context, req interface{}) (interface{}, error) { typedReq, ok := req.(*TransferSIPParticipantRequest) @@ -4003,9 +3725,9 @@ func (s *sIPServer) serveTransferSIPParticipantJSON(ctx context.Context, resp ht }, )(ctx, req) if resp != nil { - typedResp, ok := resp.(*google_protobuf1.Empty) + typedResp, ok := resp.(*google_protobuf2.Empty) if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf1.Empty) when calling interceptor") + return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf2.Empty) when calling interceptor") } return typedResp, err } @@ -4014,7 +3736,7 @@ func (s *sIPServer) serveTransferSIPParticipantJSON(ctx context.Context, resp ht } // Call service method - var respContent *google_protobuf1.Empty + var respContent *google_protobuf2.Empty func() { defer ensurePanicResponses(ctx, resp, s.hooks) respContent, err = handler(ctx, reqContent) @@ -4025,7 +3747,7 @@ func (s *sIPServer) serveTransferSIPParticipantJSON(ctx context.Context, resp ht return } if respContent == nil { - s.writeError(ctx, resp, twirp.InternalError("received a nil *google_protobuf1.Empty and nil error while calling TransferSIPParticipant. nil responses are not supported")) + s.writeError(ctx, resp, twirp.InternalError("received a nil *google_protobuf2.Empty and nil error while calling TransferSIPParticipant. nil responses are not supported")) return } @@ -4073,7 +3795,7 @@ func (s *sIPServer) serveTransferSIPParticipantProtobuf(ctx context.Context, res handler := s.SIP.TransferSIPParticipant if s.interceptor != nil { - handler = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf1.Empty, error) { + handler = func(ctx context.Context, req *TransferSIPParticipantRequest) (*google_protobuf2.Empty, error) { resp, err := s.interceptor( func(ctx context.Context, req interface{}) (interface{}, error) { typedReq, ok := req.(*TransferSIPParticipantRequest) @@ -4084,9 +3806,9 @@ func (s *sIPServer) serveTransferSIPParticipantProtobuf(ctx context.Context, res }, )(ctx, req) if resp != nil { - typedResp, ok := resp.(*google_protobuf1.Empty) + typedResp, ok := resp.(*google_protobuf2.Empty) if !ok { - return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf1.Empty) when calling interceptor") + return nil, twirp.InternalError("failed type assertion resp.(*google_protobuf2.Empty) when calling interceptor") } return typedResp, err } @@ -4095,7 +3817,7 @@ func (s *sIPServer) serveTransferSIPParticipantProtobuf(ctx context.Context, res } // Call service method - var respContent *google_protobuf1.Empty + var respContent *google_protobuf2.Empty func() { defer ensurePanicResponses(ctx, resp, s.hooks) respContent, err = handler(ctx, reqContent) @@ -4106,7 +3828,7 @@ func (s *sIPServer) serveTransferSIPParticipantProtobuf(ctx context.Context, res return } if respContent == nil { - s.writeError(ctx, resp, twirp.InternalError("received a nil *google_protobuf1.Empty and nil error while calling TransferSIPParticipant. nil responses are not supported")) + s.writeError(ctx, resp, twirp.InternalError("received a nil *google_protobuf2.Empty and nil error while calling TransferSIPParticipant. nil responses are not supported")) return } @@ -4146,124 +3868,142 @@ func (s *sIPServer) PathPrefix() string { } var twirpFileDescriptor4 = []byte{ - // 1889 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xdd, 0x6e, 0xdb, 0xc8, - 0x15, 0x8e, 0x24, 0xcb, 0x96, 0x8e, 0x6c, 0x59, 0x1e, 0xff, 0x40, 0xa1, 0xed, 0x24, 0x50, 0x36, - 0xdd, 0x24, 0xbb, 0x50, 0x50, 0x07, 0x5d, 0xb4, 0x06, 0xb6, 0x85, 0x7f, 0xf2, 0x23, 0xc4, 0xb5, - 0x55, 0x5a, 0x06, 0xba, 0xc5, 0xb6, 0x2c, 0x6d, 0x8e, 0xed, 0xa9, 0x25, 0x92, 0x25, 0x47, 0x5e, - 0xbb, 0xd7, 0xbd, 0xd8, 0xcb, 0xbe, 0x42, 0x51, 0xa0, 0x17, 0xed, 0x43, 0xf4, 0x19, 0xfa, 0x00, - 0x05, 0x7a, 0xdd, 0xa7, 0x28, 0x38, 0x3f, 0xd4, 0x90, 0x1c, 0xd2, 0x72, 0xda, 0x05, 0xf6, 0x8e, - 0x3c, 0x7f, 0x73, 0x78, 0xce, 0x77, 0xce, 0x99, 0x23, 0xc1, 0xd2, 0x90, 0x5c, 0xe3, 0x2b, 0x42, - 0xad, 0x90, 0xf8, 0x5d, 0x3f, 0xf0, 0xa8, 0x87, 0xe6, 0x04, 0xc9, 0x58, 0xbf, 0xf0, 0xbc, 0x8b, - 0x21, 0x7e, 0xc5, 0xc8, 0xa7, 0xe3, 0xf3, 0x57, 0x78, 0xe4, 0xd3, 0x5b, 0x2e, 0x65, 0x3c, 0x4a, - 0x33, 0x9d, 0x71, 0x60, 0x53, 0xe2, 0xb9, 0x9c, 0xdf, 0xf9, 0x57, 0x05, 0x56, 0xf7, 0x02, 0x6c, - 0x53, 0x7c, 0xdc, 0xeb, 0x0f, 0x82, 0xb1, 0x7b, 0x65, 0xe2, 0xdf, 0x8f, 0x71, 0x48, 0xd1, 0x67, - 0xb0, 0x44, 0xdc, 0x53, 0x6f, 0xec, 0x3a, 0x96, 0xed, 0x38, 0x01, 0x0e, 0x43, 0x1c, 0xb6, 0x4b, - 0x4f, 0x2a, 0xcf, 0xeb, 0x66, 0x4b, 0x30, 0x76, 0x24, 0x1d, 0xbd, 0x80, 0x96, 0x37, 0xa6, 0x09, - 0xe9, 0x76, 0xf9, 0x49, 0xe9, 0x79, 0xdd, 0x5c, 0x94, 0x74, 0x21, 0x8c, 0x3e, 0x85, 0x98, 0x64, - 0xb9, 0xe3, 0xd1, 0x29, 0x0e, 0xda, 0x15, 0x26, 0xd9, 0x94, 0xe4, 0x43, 0x46, 0x45, 0x5f, 0xc0, - 0xaa, 0x74, 0x80, 0xcb, 0x85, 0x56, 0x80, 0x2f, 0xf0, 0x4d, 0x7b, 0x26, 0x72, 0x62, 0xb7, 0xdc, - 0x2e, 0x99, 0xcb, 0x42, 0x80, 0x6b, 0x84, 0x66, 0xc4, 0x8e, 0x0e, 0x48, 0xe9, 0xb5, 0xeb, 0xcc, - 0xed, 0x66, 0x52, 0x3a, 0x72, 0x5a, 0x0a, 0x8e, 0x43, 0x1c, 0xb8, 0xf6, 0x08, 0xb7, 0xab, 0xdc, - 0x69, 0x41, 0x3f, 0x11, 0x64, 0x55, 0xd4, 0xb7, 0xc3, 0xf0, 0x1b, 0x2f, 0x70, 0xda, 0xb3, 0x09, - 0xd1, 0xbe, 0x20, 0x47, 0x71, 0x8b, 0xbf, 0x2f, 0x36, 0x3b, 0xc7, 0x64, 0xe3, 0x18, 0xc5, 0x76, - 0x55, 0xe1, 0xd8, 0x70, 0x2d, 0x29, 0x1c, 0x5b, 0x46, 0x30, 0xc3, 0x8c, 0x01, 0xe3, 0xb3, 0x67, - 0x64, 0x40, 0x6d, 0x84, 0xa9, 0xed, 0xd8, 0xd4, 0x6e, 0x37, 0x18, 0x3d, 0x7e, 0xdf, 0x2e, 0xb7, - 0x4b, 0x9d, 0xbf, 0x56, 0x61, 0x5e, 0x66, 0xb6, 0xe7, 0x9e, 0x7b, 0xe8, 0x09, 0xcc, 0x87, 0xc4, - 0xb7, 0x68, 0x44, 0xb0, 0x88, 0xd3, 0x2e, 0x31, 0x25, 0x08, 0x89, 0xcf, 0x65, 0x1c, 0xf4, 0x1a, - 0x66, 0xae, 0x88, 0xeb, 0xb4, 0x9b, 0x4f, 0x4a, 0xcf, 0x9b, 0x5b, 0x8f, 0xbb, 0x02, 0x67, 0x5d, - 0xd5, 0x4c, 0x97, 0x3d, 0x7d, 0x20, 0xae, 0x63, 0x32, 0x61, 0x3d, 0x5a, 0xca, 0xf7, 0x40, 0x4b, - 0x65, 0x6a, 0xb4, 0xcc, 0x68, 0xd1, 0xf2, 0x1a, 0xea, 0x34, 0xb0, 0xdd, 0xd0, 0xf7, 0x02, 0xda, - 0x5e, 0x60, 0xae, 0xaf, 0x26, 0x5d, 0x17, 0x4c, 0x73, 0x22, 0x97, 0x0f, 0xb1, 0xea, 0xbd, 0x21, - 0x06, 0x53, 0x43, 0x6c, 0x76, 0x7a, 0x88, 0xcd, 0xdd, 0x03, 0x62, 0xb5, 0xfb, 0x40, 0xac, 0x7e, - 0x07, 0xc4, 0x1a, 0x39, 0x10, 0x9b, 0x4f, 0x42, 0xac, 0xb3, 0x0f, 0xf5, 0x18, 0x09, 0xa8, 0x05, - 0xf3, 0x03, 0xf3, 0xe4, 0xf0, 0x83, 0x75, 0xf0, 0xe6, 0xdd, 0xce, 0xde, 0x57, 0xad, 0x07, 0x68, - 0x09, 0x16, 0x38, 0xa5, 0x77, 0xb8, 0x7b, 0x74, 0x72, 0xb8, 0xdf, 0x2a, 0x21, 0x04, 0x4d, 0x4e, - 0x3a, 0x3a, 0x19, 0x70, 0x5a, 0x99, 0x01, 0xd5, 0x84, 0x8d, 0xb8, 0x0f, 0xf5, 0xf8, 0xf7, 0x26, - 0xda, 0xd1, 0x16, 0x54, 0x19, 0x66, 0x19, 0x60, 0x1b, 0x5b, 0x1b, 0x6a, 0x6e, 0x55, 0xf9, 0x08, - 0x9d, 0x26, 0x17, 0xed, 0xfc, 0xbb, 0x0a, 0xcb, 0x1a, 0xf6, 0x14, 0x35, 0x20, 0xe3, 0x50, 0xce, - 0x89, 0x43, 0x25, 0x19, 0x07, 0xd4, 0x86, 0x39, 0x09, 0x04, 0xd6, 0x9d, 0x4c, 0xf9, 0x1a, 0x85, - 0xdf, 0x1e, 0x0e, 0xbd, 0x6f, 0xb0, 0x5a, 0x18, 0x55, 0x5e, 0x18, 0x82, 0x31, 0x29, 0x8c, 0x4f, - 0x61, 0x51, 0x0a, 0x4b, 0x73, 0xb3, 0x1c, 0x57, 0x82, 0x2c, 0x71, 0xf5, 0x14, 0x16, 0xec, 0x31, - 0xbd, 0x4c, 0x37, 0x98, 0xf9, 0x88, 0x18, 0x67, 0x5e, 0x0a, 0xa5, 0x1a, 0x0b, 0x13, 0x8a, 0x33, - 0xbe, 0x07, 0x73, 0x97, 0xd8, 0x76, 0x64, 0x97, 0x6c, 0x6c, 0xbd, 0x28, 0x8a, 0x6c, 0xf7, 0x3d, - 0x97, 0x7d, 0xe3, 0xd2, 0xe0, 0xd6, 0x94, 0x9a, 0x88, 0xc0, 0xaa, 0x78, 0xb4, 0xa8, 0x67, 0xd9, - 0x94, 0x06, 0xe4, 0x74, 0x4c, 0x31, 0xaf, 0x8a, 0xc6, 0xd6, 0x8f, 0xa6, 0x31, 0x39, 0xf0, 0x76, - 0x62, 0x3d, 0x6e, 0x7e, 0xf9, 0x32, 0xcb, 0x41, 0xbb, 0xb0, 0x18, 0x10, 0xf7, 0x82, 0xb8, 0x17, - 0x16, 0x25, 0x23, 0xec, 0x8d, 0x29, 0x03, 0x6b, 0x63, 0xeb, 0x61, 0x97, 0x8f, 0xba, 0xae, 0x1c, - 0x75, 0xdd, 0x7d, 0x31, 0xea, 0xcc, 0xa6, 0xd0, 0x18, 0x70, 0x05, 0xf4, 0x06, 0x96, 0x46, 0xf6, - 0x8d, 0x75, 0x66, 0x0f, 0x87, 0x96, 0x9c, 0x87, 0x0c, 0xda, 0x85, 0x56, 0x16, 0x47, 0xf6, 0xcd, - 0x9e, 0x3d, 0x1c, 0x4a, 0x82, 0xb1, 0x0d, 0xf3, 0x6a, 0x38, 0x50, 0x0b, 0x2a, 0x57, 0xf8, 0x56, - 0xa0, 0x29, 0x7a, 0x44, 0x2b, 0x50, 0xbd, 0xb6, 0x87, 0x63, 0x89, 0x23, 0xfe, 0xb2, 0x5d, 0xfe, - 0x71, 0xc9, 0x78, 0x0b, 0xed, 0xbc, 0xef, 0xbe, 0x8f, 0x9d, 0xce, 0x00, 0x36, 0xe3, 0xb2, 0x39, - 0x12, 0xd5, 0x9c, 0xa8, 0x9b, 0xd7, 0xc9, 0xba, 0xd9, 0x54, 0x53, 0x91, 0x50, 0x50, 0x0b, 0xe7, - 0x9f, 0x33, 0xb0, 0xa2, 0xe3, 0x7f, 0x37, 0x95, 0x23, 0x47, 0x00, 0x6f, 0xec, 0xf2, 0x35, 0xd9, - 0xd1, 0xab, 0x53, 0x76, 0x74, 0xa5, 0x10, 0x67, 0x93, 0x85, 0xf8, 0xff, 0x2b, 0x99, 0xfd, 0x74, - 0xc9, 0xbc, 0x2c, 0x0c, 0x6a, 0x4e, 0xcd, 0xfc, 0xae, 0xb8, 0x66, 0xbe, 0x98, 0xca, 0xe6, 0x74, - 0x45, 0xf3, 0xbd, 0x40, 0xea, 0x97, 0xf0, 0xf0, 0x1d, 0xa6, 0x39, 0xdd, 0xfd, 0x4e, 0x5c, 0x75, - 0xfa, 0x60, 0xe8, 0xd4, 0x43, 0xdf, 0x73, 0x43, 0xfc, 0x51, 0xd3, 0xe1, 0xa7, 0xd2, 0xa2, 0xb6, - 0x6e, 0xee, 0xf6, 0xc8, 0x84, 0x75, 0xad, 0xbe, 0x70, 0xe9, 0xa3, 0x0a, 0xef, 0x21, 0x2c, 0x1f, - 0x90, 0x90, 0xa6, 0xee, 0xe2, 0x6c, 0x40, 0xbe, 0x83, 0x95, 0x24, 0x4b, 0x9c, 0xf3, 0x19, 0x54, - 0x09, 0xc5, 0x23, 0x7e, 0x37, 0x6f, 0xa4, 0x4b, 0x24, 0xb6, 0xcf, 0x64, 0x98, 0xa1, 0x0d, 0x30, - 0x84, 0x21, 0x4d, 0x26, 0x3a, 0xbf, 0x80, 0x75, 0x2d, 0x77, 0x12, 0x68, 0xf5, 0xb4, 0x3b, 0x02, - 0xcd, 0x44, 0x3b, 0x9b, 0xb1, 0x49, 0x5d, 0xa4, 0x3b, 0xc7, 0xb0, 0xa1, 0x67, 0x4f, 0x02, 0xa9, - 0x1e, 0x79, 0x57, 0x20, 0xf9, 0x99, 0x3f, 0x81, 0xd5, 0x7d, 0x3c, 0xc4, 0xd9, 0xb5, 0xe6, 0xee, - 0xbc, 0xbe, 0x85, 0xd5, 0xe3, 0x5e, 0x7f, 0x9f, 0x84, 0xbe, 0x4d, 0xcf, 0x2e, 0xcd, 0xf1, 0x10, - 0xef, 0x93, 0x00, 0x9f, 0x51, 0xb4, 0x0e, 0xf5, 0xc0, 0xf3, 0x46, 0x16, 0xeb, 0x1e, 0x5c, 0xaf, - 0x16, 0x11, 0x0e, 0xa3, 0xce, 0xd1, 0x82, 0x8a, 0x4f, 0x5c, 0x01, 0xfb, 0xe8, 0xb1, 0x73, 0x08, - 0x0f, 0x53, 0x76, 0x7a, 0xae, 0x43, 0xae, 0x89, 0x33, 0xb6, 0x87, 0xe8, 0x31, 0x34, 0x98, 0x2d, - 0x3f, 0xc0, 0xe7, 0xe4, 0x46, 0x7a, 0x11, 0x91, 0xfa, 0x8c, 0xa2, 0xb1, 0x77, 0x99, 0xf1, 0x2b, - 0x9a, 0x46, 0x18, 0x7f, 0x84, 0x2d, 0xb4, 0x01, 0xf5, 0xc0, 0x76, 0x1d, 0x6f, 0x44, 0xfe, 0x80, - 0x59, 0x4b, 0xae, 0x99, 0x13, 0x42, 0xe7, 0xcf, 0x65, 0x58, 0x4c, 0x1d, 0x85, 0x4c, 0x58, 0x71, - 0xc4, 0xbb, 0x15, 0x8c, 0x87, 0xd8, 0x72, 0x58, 0x50, 0x04, 0xba, 0x1f, 0xa9, 0x49, 0xc9, 0x86, - 0xee, 0xfd, 0x03, 0x13, 0x39, 0xd9, 0x80, 0xfe, 0x06, 0xda, 0x49, 0x9b, 0x24, 0x0e, 0x10, 0x73, - 0xb6, 0xb1, 0xd5, 0xc9, 0xb3, 0x3b, 0x09, 0xe5, 0xfb, 0x07, 0xe6, 0x9a, 0xa3, 0x0f, 0x72, 0xc6, - 0xe7, 0x33, 0x16, 0x30, 0xf6, 0xc1, 0x05, 0x3e, 0xf3, 0xb0, 0xa6, 0x7d, 0xe6, 0xd4, 0xdd, 0x59, - 0x98, 0x89, 0x4c, 0x75, 0xfe, 0x58, 0x51, 0x2e, 0xac, 0xaa, 0xb6, 0x04, 0xda, 0xe7, 0x5c, 0x50, - 0x04, 0xa8, 0x9d, 0x77, 0x98, 0xc9, 0xa4, 0x22, 0x6c, 0x49, 0x48, 0xca, 0xbd, 0xa9, 0x46, 0x39, - 0x20, 0x43, 0xf4, 0x12, 0x96, 0x2e, 0x89, 0x83, 0x2d, 0xff, 0xd2, 0x73, 0xb1, 0xba, 0x34, 0xd7, - 0xcc, 0xc5, 0x88, 0xd1, 0x8f, 0xe8, 0x62, 0x0f, 0xd2, 0xac, 0x26, 0xb3, 0xda, 0xd5, 0x44, 0x0e, - 0xea, 0x99, 0x9c, 0x41, 0x5d, 0x4d, 0x0d, 0xea, 0x13, 0x00, 0x65, 0x48, 0xcd, 0xa5, 0x2e, 0x76, - 0x45, 0xa1, 0xe8, 0xa6, 0x67, 0x94, 0x62, 0xc8, 0xf8, 0x12, 0x16, 0xff, 0x97, 0xa9, 0xf2, 0x97, - 0x0a, 0xbb, 0xe2, 0x27, 0xa1, 0x71, 0xee, 0xa1, 0x57, 0xb0, 0x12, 0x95, 0x79, 0x0a, 0x5e, 0xb2, - 0xdc, 0x97, 0x42, 0xe2, 0x27, 0x54, 0x9c, 0x38, 0x5d, 0xe5, 0xfb, 0xa7, 0xab, 0x32, 0x4d, 0xba, - 0x66, 0xa6, 0x4e, 0xd7, 0x5c, 0x61, 0xba, 0xaa, 0x39, 0xe9, 0x9a, 0x4d, 0xa5, 0xeb, 0x20, 0x91, - 0xae, 0x1a, 0x4b, 0xd7, 0xe7, 0xf9, 0xd5, 0x74, 0xee, 0x7d, 0x97, 0x59, 0x9a, 0x8c, 0x1c, 0x0d, - 0x3c, 0x94, 0x91, 0x93, 0xe4, 0x4e, 0x31, 0x72, 0xd2, 0x1f, 0x21, 0xdb, 0xff, 0x11, 0x6c, 0xc4, - 0xed, 0x5f, 0x57, 0x9c, 0xf7, 0x85, 0x47, 0xe7, 0x1f, 0x55, 0x58, 0x8f, 0x31, 0xde, 0xb7, 0x03, - 0x4a, 0xce, 0x88, 0x6f, 0xbb, 0x74, 0xea, 0xb1, 0x82, 0x1e, 0x41, 0x23, 0x92, 0x60, 0x4b, 0x07, - 0xf5, 0x44, 0x8c, 0xea, 0x21, 0xf1, 0xa3, 0xc6, 0x32, 0xf0, 0x92, 0xd3, 0xa5, 0x92, 0x9a, 0x2e, - 0x3f, 0x84, 0x15, 0x7f, 0x72, 0xa8, 0x45, 0x1c, 0xec, 0x52, 0x42, 0x6f, 0x45, 0xf1, 0x2e, 0x2b, - 0xbc, 0x9e, 0x60, 0xa1, 0x17, 0xd0, 0x52, 0x55, 0x94, 0x2b, 0xef, 0xa2, 0x42, 0xd7, 0x59, 0x8f, - 0x31, 0x55, 0xcb, 0x58, 0xff, 0xb9, 0x84, 0xd7, 0x35, 0xac, 0xa9, 0x2a, 0x0a, 0xd4, 0xf8, 0x95, - 0xf8, 0x67, 0xd9, 0xce, 0x90, 0x8d, 0x5a, 0x57, 0x21, 0xa5, 0xd1, 0xb7, 0xea, 0xeb, 0x78, 0x51, - 0x19, 0x38, 0x74, 0x74, 0x2e, 0xcb, 0x20, 0x7a, 0x8e, 0x2e, 0xed, 0xfe, 0xd0, 0xbe, 0xb5, 0xa2, - 0x2d, 0x8f, 0x7a, 0x2e, 0xff, 0x85, 0xa5, 0x66, 0xce, 0x47, 0x44, 0x53, 0xd0, 0xf4, 0x45, 0x09, - 0xfa, 0xa2, 0xfc, 0x1e, 0xed, 0x98, 0xef, 0xc1, 0xc8, 0x0f, 0xd2, 0xbd, 0x6a, 0xf0, 0xef, 0x25, - 0x40, 0xc9, 0x2c, 0xb0, 0x46, 0xf9, 0x0c, 0x9a, 0x49, 0x64, 0x09, 0x6b, 0x0b, 0x09, 0x4c, 0xe5, - 0x02, 0xb0, 0x9c, 0x0f, 0xc0, 0x42, 0x40, 0xab, 0xd5, 0x40, 0x1c, 0x81, 0x63, 0x59, 0x0d, 0x3d, - 0xa7, 0xf3, 0xa7, 0x12, 0x6c, 0xb2, 0x05, 0xef, 0x1c, 0x07, 0xfa, 0x8a, 0xcb, 0xf3, 0xa8, 0x34, - 0xa5, 0x47, 0xe5, 0x94, 0x47, 0x8f, 0xa1, 0x41, 0xc5, 0x81, 0x51, 0x7d, 0x72, 0x87, 0x41, 0x92, - 0x06, 0xde, 0xcb, 0x2b, 0xf1, 0x4b, 0xaa, 0x5c, 0x35, 0xd7, 0x58, 0x3c, 0xad, 0x81, 0xb9, 0x73, - 0x78, 0xdc, 0x3f, 0x32, 0x07, 0xd6, 0xce, 0xc9, 0xe0, 0xa8, 0xf5, 0x00, 0xad, 0xc2, 0x52, 0x92, - 0x7e, 0xb2, 0xdf, 0x6f, 0x95, 0xb2, 0xe4, 0xc1, 0x5e, 0xbf, 0x55, 0xd6, 0x90, 0x0f, 0x8e, 0x5b, - 0x95, 0xad, 0x6f, 0x01, 0x2a, 0xc7, 0xbd, 0x3e, 0x3a, 0x80, 0x66, 0xf2, 0xe7, 0x79, 0xf4, 0x28, - 0x5b, 0x59, 0xea, 0x05, 0xd7, 0xd0, 0x2f, 0x00, 0x9d, 0xca, 0xb7, 0xe5, 0x12, 0xea, 0xc3, 0xbc, - 0xba, 0x43, 0xa0, 0x49, 0x2f, 0xd5, 0x6c, 0x1d, 0xc6, 0x66, 0x0e, 0x97, 0xf7, 0x65, 0x6e, 0xf1, - 0x6b, 0xe5, 0xef, 0x03, 0xf5, 0xfe, 0x8f, 0x9e, 0x65, 0xdd, 0xd4, 0xac, 0x1b, 0x46, 0xe1, 0x02, - 0x81, 0x2c, 0x58, 0xd3, 0xff, 0xba, 0x81, 0x7e, 0x90, 0x35, 0xaf, 0x5b, 0x2e, 0x8c, 0xe2, 0x6d, - 0x01, 0xfd, 0x1a, 0x50, 0x76, 0xab, 0x44, 0x93, 0x5b, 0x67, 0xee, 0xc6, 0x6a, 0x3c, 0x2d, 0x94, - 0x11, 0xa3, 0xeb, 0xb7, 0xb0, 0xac, 0x59, 0x11, 0x51, 0x5a, 0x57, 0xeb, 0xf9, 0x27, 0xc5, 0x42, - 0x93, 0x13, 0x34, 0xeb, 0x9a, 0x72, 0x42, 0xfe, 0xaa, 0xa7, 0x9c, 0x50, 0xb4, 0xf1, 0x9d, 0xc5, - 0x7b, 0x67, 0xf2, 0x23, 0x32, 0xda, 0xda, 0xaf, 0x78, 0x76, 0x87, 0x94, 0x38, 0xe4, 0x1d, 0x34, - 0x93, 0xeb, 0x9a, 0x02, 0x73, 0xed, 0x1e, 0x97, 0x03, 0xf3, 0x04, 0x1e, 0x13, 0xfb, 0xcb, 0xb3, - 0xa9, 0xae, 0xaa, 0x46, 0xe1, 0xed, 0x42, 0x89, 0x76, 0xc2, 0x76, 0x26, 0xda, 0x3a, 0xcb, 0x9f, - 0x14, 0x0b, 0x89, 0x40, 0x7c, 0xad, 0xec, 0xad, 0x39, 0xfe, 0x17, 0x5d, 0x6c, 0xee, 0xf0, 0xff, - 0x2b, 0x58, 0xd1, 0x8d, 0x63, 0x25, 0x97, 0x05, 0xd3, 0xda, 0x58, 0x57, 0x6d, 0xa7, 0xe7, 0xc8, - 0x2f, 0x61, 0x4d, 0xdf, 0xaf, 0x95, 0x52, 0x2d, 0x6c, 0xe8, 0xc6, 0x5a, 0x66, 0x2c, 0xbe, 0x19, - 0xf9, 0xf4, 0x76, 0xf7, 0xed, 0xaf, 0x9e, 0x5e, 0x10, 0x7a, 0x39, 0x3e, 0xed, 0x9e, 0x79, 0xa3, - 0x57, 0xc2, 0x16, 0xff, 0x43, 0xf3, 0xcc, 0x1b, 0x4a, 0xc2, 0xdf, 0xca, 0x0b, 0x07, 0xe4, 0x1a, - 0x7f, 0x20, 0xb4, 0xdb, 0x8f, 0x58, 0xff, 0x29, 0x37, 0xc5, 0xfb, 0xf6, 0x36, 0x23, 0x9c, 0xce, - 0x32, 0x95, 0xd7, 0xff, 0x0d, 0x00, 0x00, 0xff, 0xff, 0xa4, 0xff, 0xb2, 0xf5, 0x4c, 0x1d, 0x00, - 0x00, + // 2190 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xcc, 0x59, 0xcd, 0x6e, 0xe3, 0xc8, + 0xf1, 0x1f, 0x49, 0xd6, 0x57, 0xc9, 0x96, 0xe5, 0xf6, 0xc7, 0xca, 0xb2, 0x3d, 0x33, 0xd0, 0xec, + 0xec, 0xce, 0xcc, 0x2e, 0x34, 0xf8, 0x6b, 0xf0, 0xdf, 0x24, 0x06, 0x36, 0x81, 0x2c, 0x79, 0x3c, + 0xca, 0x78, 0x65, 0x85, 0x92, 0x83, 0x6c, 0xb0, 0x09, 0x43, 0x8b, 0x6d, 0xab, 0x63, 0x89, 0x64, + 0xc8, 0x96, 0x77, 0x9c, 0x73, 0x0e, 0xc9, 0x2d, 0xaf, 0x10, 0x04, 0xc8, 0x21, 0x79, 0x82, 0xe4, + 0x92, 0x67, 0xc8, 0x03, 0x04, 0xc8, 0x39, 0x4f, 0x11, 0x74, 0xb3, 0x49, 0x35, 0x29, 0x92, 0x96, + 0x27, 0x59, 0x60, 0x6f, 0x64, 0x55, 0x75, 0x75, 0xb1, 0xea, 0x57, 0x55, 0x5d, 0x4d, 0xd8, 0x98, + 0x90, 0x1b, 0x7c, 0x4d, 0xa8, 0xea, 0x10, 0xab, 0x61, 0xd9, 0x26, 0x35, 0x51, 0x5e, 0x90, 0x6a, + 0x0f, 0xaf, 0x4c, 0xf3, 0x6a, 0x82, 0x5f, 0x72, 0xf2, 0xc5, 0xec, 0xf2, 0xa5, 0x3e, 0xb3, 0x35, + 0x4a, 0x4c, 0xc3, 0x15, 0xac, 0xed, 0x85, 0xf9, 0x78, 0x6a, 0xd1, 0x5b, 0xc1, 0xdc, 0xf2, 0x14, + 0x4f, 0x4d, 0x1d, 0x4f, 0x1c, 0x97, 0x5a, 0xff, 0x67, 0x06, 0xb6, 0xdb, 0x36, 0xd6, 0x28, 0x1e, + 0x74, 0xfb, 0x43, 0x7b, 0x66, 0x5c, 0x2b, 0xf8, 0x57, 0x33, 0xec, 0x50, 0xf4, 0x09, 0x6c, 0x10, + 0xe3, 0xc2, 0x9c, 0x19, 0xba, 0xaa, 0xe9, 0xba, 0x8d, 0x1d, 0x07, 0x3b, 0xd5, 0xd4, 0xe3, 0xcc, + 0xb3, 0xa2, 0x52, 0x11, 0x8c, 0x96, 0x47, 0x47, 0xcf, 0xa1, 0x62, 0xce, 0x68, 0x40, 0xba, 0x9a, + 0x7e, 0x9c, 0x7a, 0x56, 0x54, 0xd6, 0x3d, 0xba, 0x10, 0x46, 0x1f, 0x83, 0x4f, 0x52, 0x8d, 0xd9, + 0xf4, 0x02, 0xdb, 0xd5, 0x0c, 0x97, 0x2c, 0x7b, 0xe4, 0x1e, 0xa7, 0xa2, 0xcf, 0x60, 0xdb, 0x33, + 0xc0, 0x95, 0x73, 0x54, 0x1b, 0x5f, 0xe1, 0x77, 0xd5, 0x15, 0x66, 0xc4, 0x51, 0xba, 0x9a, 0x52, + 0x36, 0x85, 0x80, 0xbb, 0xc2, 0x51, 0x18, 0x9b, 0x6d, 0x10, 0x5a, 0x57, 0x2d, 0x72, 0xb3, 0xcb, + 0x41, 0x69, 0x66, 0xb4, 0x27, 0x38, 0x73, 0xb0, 0x6d, 0x68, 0x53, 0x5c, 0xcd, 0xba, 0x46, 0x0b, + 0xfa, 0xb9, 0x20, 0xcb, 0xa2, 0x96, 0xe6, 0x38, 0x5f, 0x9b, 0xb6, 0x5e, 0xcd, 0x05, 0x44, 0xfb, + 0x82, 0xcc, 0xfc, 0xe6, 0x7f, 0x9f, 0xaf, 0x36, 0xcf, 0x65, 0x7d, 0x1f, 0xf9, 0x7a, 0x65, 0x61, + 0x5f, 0x71, 0x21, 0x28, 0xec, 0x6b, 0x46, 0xb0, 0xc2, 0x95, 0x01, 0xe7, 0xf3, 0x67, 0x54, 0x83, + 0xc2, 0x14, 0x53, 0x4d, 0xd7, 0xa8, 0x56, 0x2d, 0x71, 0xba, 0xff, 0x7e, 0x98, 0xae, 0xa6, 0xea, + 0x7f, 0xca, 0xc2, 0xaa, 0x17, 0xd9, 0xae, 0x71, 0x69, 0xa2, 0xc7, 0xb0, 0xea, 0x10, 0x4b, 0xa5, + 0x8c, 0xa0, 0x12, 0xbd, 0x9a, 0xe2, 0x8b, 0xc0, 0x21, 0x96, 0x2b, 0xa3, 0xa3, 0x57, 0xb0, 0x72, + 0x4d, 0x0c, 0xbd, 0x5a, 0x7e, 0x9c, 0x7a, 0x56, 0x6e, 0x3e, 0x6a, 0x08, 0xdc, 0x34, 0x64, 0x35, + 0x0d, 0xfe, 0xf4, 0x96, 0x18, 0xba, 0xc2, 0x85, 0xa3, 0xd1, 0x92, 0xbe, 0x07, 0x5a, 0x32, 0x4b, + 0xa3, 0x65, 0x25, 0x12, 0x2d, 0xaf, 0xa0, 0x48, 0x6d, 0xcd, 0x70, 0x2c, 0xd3, 0xa6, 0xd5, 0x35, + 0x6e, 0xfa, 0x76, 0xd0, 0x74, 0xc1, 0x54, 0xe6, 0x72, 0xf1, 0x10, 0xcb, 0xde, 0x1b, 0x62, 0xb0, + 0x34, 0xc4, 0x72, 0xcb, 0x43, 0x2c, 0x7f, 0x0f, 0x88, 0x15, 0xee, 0x03, 0xb1, 0xe2, 0x1d, 0x10, + 0x2b, 0xc5, 0x40, 0x6c, 0x35, 0x08, 0xb1, 0x7a, 0x07, 0x8a, 0x3e, 0x12, 0x50, 0x05, 0x56, 0x87, + 0xca, 0x79, 0xef, 0xad, 0x7a, 0x7a, 0x7c, 0xd2, 0x6a, 0x7f, 0x59, 0x79, 0x80, 0x36, 0x60, 0xcd, + 0xa5, 0x74, 0x7b, 0x47, 0x67, 0xe7, 0xbd, 0x4e, 0x25, 0x85, 0x10, 0x94, 0x5d, 0xd2, 0xd9, 0xf9, + 0xd0, 0xa5, 0xa5, 0x39, 0x50, 0x15, 0xd8, 0xf7, 0xeb, 0x50, 0xd7, 0xfd, 0xde, 0x40, 0x39, 0x6a, + 0x42, 0x96, 0x63, 0x96, 0x03, 0xb6, 0xd4, 0xdc, 0x97, 0x63, 0x2b, 0xcb, 0x33, 0x74, 0x2a, 0xae, + 0x68, 0xfd, 0x5f, 0x59, 0xd8, 0x8c, 0x60, 0x2f, 0x91, 0x03, 0x9e, 0x1f, 0xd2, 0x31, 0x7e, 0xc8, + 0x04, 0xfd, 0x80, 0xaa, 0x90, 0xf7, 0x80, 0xc0, 0xab, 0x93, 0xe2, 0xbd, 0x32, 0xf7, 0x6b, 0x93, + 0x89, 0xf9, 0x35, 0x96, 0x13, 0x23, 0xeb, 0x26, 0x86, 0x60, 0xcc, 0x13, 0xe3, 0x63, 0x58, 0xf7, + 0x84, 0x3d, 0x75, 0x39, 0x17, 0x57, 0x82, 0xec, 0xe1, 0xea, 0x09, 0xac, 0x69, 0x33, 0x3a, 0x0e, + 0x17, 0x98, 0x55, 0x46, 0xf4, 0x23, 0xef, 0x09, 0x85, 0x0a, 0x0b, 0x17, 0xf2, 0x23, 0xde, 0x86, + 0xfc, 0x18, 0x6b, 0xba, 0x57, 0x25, 0x4b, 0xcd, 0xe7, 0x49, 0x9e, 0x6d, 0xbc, 0x71, 0x65, 0x8f, + 0x0d, 0x6a, 0xdf, 0x2a, 0xde, 0x4a, 0x44, 0x60, 0x5b, 0x3c, 0xaa, 0xd4, 0x54, 0x35, 0x4a, 0x6d, + 0x72, 0x31, 0xa3, 0xd8, 0xcd, 0x8a, 0x52, 0xf3, 0xff, 0x97, 0x51, 0x39, 0x34, 0x5b, 0xfe, 0x3a, + 0x57, 0xfd, 0xe6, 0x78, 0x91, 0x83, 0x8e, 0x60, 0xdd, 0x26, 0xc6, 0x15, 0x31, 0xae, 0x54, 0x4a, + 0xa6, 0xd8, 0x9c, 0x51, 0x0e, 0xd6, 0x52, 0x73, 0xb7, 0xe1, 0x76, 0xbf, 0x86, 0xd7, 0xfd, 0x1a, + 0x1d, 0xd1, 0x1d, 0x95, 0xb2, 0x58, 0x31, 0x74, 0x17, 0xa0, 0x63, 0xd8, 0x98, 0x6a, 0xef, 0xd4, + 0x91, 0x36, 0x99, 0xa8, 0x5e, 0x0b, 0xe5, 0xd0, 0x4e, 0xd4, 0xb2, 0x3e, 0xd5, 0xde, 0xb5, 0xb5, + 0xc9, 0xc4, 0x23, 0xd4, 0x0e, 0x61, 0x55, 0x76, 0x07, 0xaa, 0x40, 0xe6, 0x1a, 0xdf, 0x0a, 0x34, + 0xb1, 0x47, 0xb4, 0x05, 0xd9, 0x1b, 0x6d, 0x32, 0xf3, 0x70, 0xe4, 0xbe, 0x1c, 0xa6, 0xbf, 0x9b, + 0xaa, 0xbd, 0x86, 0x6a, 0xdc, 0x77, 0xdf, 0x47, 0x4f, 0x7d, 0x08, 0x07, 0x7e, 0xda, 0x9c, 0x89, + 0x6c, 0x0e, 0xe4, 0xcd, 0xab, 0x60, 0xde, 0x1c, 0xc8, 0xa1, 0x08, 0x2c, 0x90, 0x13, 0xe7, 0x1f, + 0x2b, 0xb0, 0x15, 0xc5, 0xff, 0x66, 0x32, 0xc7, 0x6b, 0x01, 0x6e, 0x61, 0xf7, 0x5e, 0x83, 0x15, + 0x3d, 0xbb, 0x64, 0x45, 0x97, 0x12, 0x31, 0x17, 0x4c, 0xc4, 0xff, 0x5d, 0xca, 0x74, 0xc2, 0x29, + 0xf3, 0x22, 0xd1, 0xa9, 0x31, 0x39, 0xf3, 0xcb, 0xe4, 0x9c, 0xf9, 0x6c, 0x29, 0x9d, 0xcb, 0x25, + 0xcd, 0xb7, 0x02, 0xa9, 0x9f, 0xc3, 0xee, 0x09, 0xa6, 0x31, 0xd5, 0xfd, 0x4e, 0x5c, 0xd5, 0xfb, + 0x50, 0x8b, 0x5a, 0xee, 0x58, 0xa6, 0xe1, 0xe0, 0xf7, 0xea, 0x0e, 0xdf, 0xf7, 0x34, 0x46, 0xe6, + 0xcd, 0xdd, 0x16, 0x29, 0xb0, 0x17, 0xb9, 0x5e, 0x98, 0xf4, 0x5e, 0x89, 0xb7, 0x0b, 0x9b, 0xa7, + 0xc4, 0xa1, 0xa1, 0xb3, 0x38, 0x6f, 0x90, 0x27, 0xb0, 0x15, 0x64, 0x89, 0x7d, 0x3e, 0x81, 0x2c, + 0xa1, 0x78, 0xea, 0x9e, 0xcd, 0x4b, 0xe1, 0x14, 0xf1, 0xf5, 0x73, 0x19, 0xae, 0x68, 0x1f, 0x6a, + 0x42, 0x51, 0x44, 0x24, 0xea, 0x3f, 0x82, 0xbd, 0x48, 0xee, 0xdc, 0xd1, 0xf2, 0x6e, 0x77, 0x38, + 0x9a, 0x8b, 0xd6, 0x0f, 0x7c, 0x95, 0x51, 0x9e, 0xae, 0x0f, 0x60, 0x3f, 0x9a, 0x3d, 0x77, 0xa4, + 0xbc, 0xe5, 0x5d, 0x8e, 0x74, 0xf7, 0xfc, 0x1e, 0x6c, 0x77, 0xf0, 0x04, 0x2f, 0x8e, 0x35, 0x77, + 0xc7, 0xf5, 0x35, 0x6c, 0x0f, 0xba, 0xfd, 0x0e, 0x71, 0x2c, 0x8d, 0x8e, 0xc6, 0xca, 0x6c, 0x82, + 0x3b, 0xc4, 0xc6, 0x23, 0x8a, 0xf6, 0xa0, 0x68, 0x9b, 0xe6, 0x54, 0xe5, 0xd5, 0xc3, 0x5d, 0x57, + 0x60, 0x84, 0x1e, 0xab, 0x1c, 0x15, 0xc8, 0x58, 0xc4, 0x10, 0xb0, 0x67, 0x8f, 0xf5, 0x1e, 0xec, + 0x86, 0xf4, 0x74, 0x0d, 0x9d, 0xdc, 0x10, 0x7d, 0xa6, 0x4d, 0xd0, 0x23, 0x28, 0x71, 0x5d, 0x96, + 0x8d, 0x2f, 0xc9, 0x3b, 0xcf, 0x0a, 0x46, 0xea, 0x73, 0x4a, 0x84, 0xbe, 0xf1, 0x82, 0x5d, 0xac, + 0x1b, 0x61, 0xfc, 0x1e, 0xba, 0xd0, 0x3e, 0x14, 0x6d, 0xcd, 0xd0, 0xcd, 0x29, 0xf9, 0x35, 0xe6, + 0x25, 0xb9, 0xa0, 0xcc, 0x09, 0xf5, 0x3f, 0xa4, 0x61, 0x3d, 0xb4, 0x15, 0x52, 0x60, 0x4b, 0x17, + 0xef, 0xaa, 0x3d, 0x9b, 0x60, 0x55, 0xe7, 0x4e, 0x11, 0xe8, 0x7e, 0x28, 0x07, 0x65, 0xd1, 0x75, + 0x6f, 0x1e, 0x28, 0x48, 0x5f, 0x74, 0xe8, 0xcf, 0xa1, 0x1a, 0xd4, 0x49, 0x7c, 0x07, 0x71, 0x63, + 0x4b, 0xcd, 0x7a, 0x9c, 0xde, 0xb9, 0x2b, 0xdf, 0x3c, 0x50, 0x76, 0xf4, 0x68, 0x27, 0x2f, 0xd8, + 0x3c, 0xe2, 0x0e, 0xe3, 0x1f, 0x9c, 0x60, 0xb3, 0xeb, 0xd6, 0xb0, 0xcd, 0x2e, 0xf5, 0x28, 0x07, + 0x2b, 0x4c, 0x55, 0xfd, 0x37, 0x19, 0xe9, 0xc0, 0x2a, 0xaf, 0xf6, 0x80, 0xf6, 0xa9, 0x2b, 0x28, + 0x1c, 0x54, 0x8d, 0xdb, 0x4c, 0xe1, 0x52, 0x0c, 0x5b, 0x1e, 0x24, 0xbd, 0xb9, 0xa9, 0x40, 0x5d, + 0x40, 0x3a, 0xe8, 0x05, 0x6c, 0x8c, 0x89, 0x8e, 0x55, 0x6b, 0x6c, 0x1a, 0x58, 0x1e, 0x9a, 0x0b, + 0xca, 0x3a, 0x63, 0xf4, 0x19, 0x5d, 0xcc, 0x41, 0x11, 0xa3, 0x49, 0x2e, 0x72, 0x34, 0xf1, 0x1a, + 0xf5, 0x4a, 0x4c, 0xa3, 0xce, 0x86, 0x1a, 0xf5, 0x39, 0x80, 0xd4, 0xa4, 0xf2, 0xa1, 0x83, 0x5d, + 0x92, 0x2b, 0x1a, 0xe1, 0x1e, 0x25, 0x29, 0xaa, 0x7d, 0x0e, 0xeb, 0xff, 0x4d, 0x57, 0xf9, 0x63, + 0x86, 0x1f, 0xf1, 0x83, 0xd0, 0xb8, 0x34, 0xd1, 0x4b, 0xd8, 0x62, 0x69, 0x1e, 0x82, 0x97, 0x97, + 0xee, 0x1b, 0x0e, 0xb1, 0x02, 0x4b, 0x74, 0x3f, 0x5c, 0xe9, 0xfb, 0x87, 0x2b, 0xb3, 0x4c, 0xb8, + 0x56, 0x96, 0x0e, 0x57, 0x3e, 0x31, 0x5c, 0xd9, 0x98, 0x70, 0xe5, 0x42, 0xe1, 0x3a, 0x0d, 0x84, + 0xab, 0xc0, 0xc3, 0xf5, 0x69, 0x7c, 0x36, 0x5d, 0x9a, 0xdf, 0x64, 0x94, 0xe6, 0x2d, 0x27, 0x02, + 0x1e, 0x52, 0xcb, 0x09, 0x72, 0x97, 0x68, 0x39, 0xe1, 0x8f, 0xf0, 0xca, 0xff, 0x19, 0xec, 0xfb, + 0xe5, 0x3f, 0x2a, 0x39, 0xef, 0x0b, 0x8f, 0xfa, 0xdf, 0xb3, 0xb0, 0xe7, 0x63, 0xbc, 0xaf, 0xd9, + 0x94, 0x8c, 0x88, 0xa5, 0x19, 0x74, 0xe9, 0xb6, 0x82, 0x1e, 0x42, 0x89, 0x49, 0xf0, 0xa1, 0x83, + 0x9a, 0xc2, 0x47, 0x45, 0x87, 0x58, 0xac, 0xb0, 0x0c, 0xcd, 0x60, 0x77, 0xc9, 0x84, 0xba, 0xcb, + 0xff, 0xc1, 0x96, 0x35, 0xdf, 0x54, 0x25, 0x3a, 0x36, 0x28, 0xa1, 0xb7, 0x22, 0x79, 0x37, 0x25, + 0x5e, 0x57, 0xb0, 0xd0, 0x73, 0xa8, 0xc8, 0x4b, 0xa4, 0x23, 0xef, 0xba, 0x44, 0x8f, 0xd2, 0xee, + 0x63, 0xaa, 0xb0, 0xa0, 0xfd, 0x0b, 0x0f, 0x5e, 0x37, 0xb0, 0x23, 0x2f, 0x91, 0xa0, 0xe6, 0x1e, + 0x89, 0x7f, 0xb0, 0x58, 0x19, 0x16, 0xbd, 0xd6, 0x90, 0x48, 0x61, 0xf4, 0x6d, 0x5b, 0x51, 0x3c, + 0x96, 0x06, 0x3a, 0x9d, 0x5e, 0x7a, 0x69, 0xc0, 0x9e, 0xd9, 0xa1, 0xdd, 0x9a, 0x68, 0xb7, 0x2a, + 0x9b, 0xf2, 0xa8, 0x69, 0xb8, 0x37, 0x2c, 0x05, 0x65, 0x95, 0x11, 0x15, 0x41, 0x8b, 0x4e, 0x4a, + 0x88, 0x4e, 0xca, 0x6f, 0xd1, 0x8c, 0xf9, 0x06, 0x6a, 0xf1, 0x4e, 0xba, 0x57, 0x0e, 0xfe, 0x25, + 0x05, 0x28, 0x18, 0x05, 0x5e, 0x28, 0x9f, 0x42, 0x39, 0x88, 0x2c, 0xa1, 0x6d, 0x2d, 0x80, 0xa9, + 0x58, 0x00, 0xa6, 0xe3, 0x01, 0x98, 0x08, 0x68, 0x39, 0x1b, 0x88, 0x2e, 0x70, 0xec, 0x65, 0x43, + 0x57, 0xaf, 0xff, 0x3e, 0x05, 0x07, 0x7c, 0xc0, 0xbb, 0xc4, 0x76, 0x74, 0xc6, 0xc5, 0x59, 0x94, + 0x5a, 0xd2, 0xa2, 0x74, 0xc8, 0xa2, 0x47, 0x50, 0xa2, 0x62, 0x43, 0x96, 0x9f, 0xae, 0xc1, 0xe0, + 0x91, 0x86, 0x66, 0xfd, 0xaf, 0x19, 0x28, 0x0d, 0xba, 0x7d, 0x6e, 0x20, 0xf3, 0xdc, 0x07, 0x90, + 0xf7, 0xcc, 0x77, 0xf7, 0xcc, 0x8d, 0xb8, 0xed, 0x68, 0x17, 0x0a, 0x7e, 0x1d, 0x70, 0x77, 0xc9, + 0x8b, 0xde, 0x90, 0xec, 0x93, 0x0f, 0x20, 0xcf, 0x99, 0xbe, 0x3f, 0x72, 0xec, 0x35, 0xc1, 0xf9, + 0xd9, 0xf8, 0x4f, 0x7d, 0x01, 0x85, 0x4b, 0xdb, 0x9c, 0xaa, 0x33, 0x9b, 0xf0, 0x74, 0x28, 0x35, + 0xd7, 0xe5, 0xba, 0x79, 0x6e, 0x13, 0x25, 0xcf, 0x04, 0xce, 0x6d, 0x82, 0x3e, 0x82, 0x1c, 0x35, + 0xb9, 0x64, 0x3e, 0x5a, 0x32, 0x4b, 0x4d, 0x26, 0xf7, 0x1d, 0x28, 0xf1, 0x0f, 0x76, 0xa8, 0x46, + 0x67, 0x0e, 0xaf, 0x0e, 0xe5, 0xe6, 0x8e, 0x2c, 0xcc, 0x7c, 0x33, 0xe0, 0x5c, 0x05, 0x46, 0xfe, + 0x33, 0x3a, 0x00, 0x70, 0xa8, 0x66, 0x53, 0xac, 0xab, 0x1a, 0xe5, 0x77, 0x8f, 0x19, 0xa5, 0x28, + 0x28, 0x2d, 0xca, 0xfc, 0x85, 0x0d, 0xdd, 0x65, 0x02, 0x67, 0xe6, 0xf9, 0x7b, 0x8b, 0xa2, 0xd7, + 0xb0, 0xa1, 0x13, 0x67, 0x64, 0x1a, 0x06, 0x1e, 0x51, 0xd5, 0xc6, 0x9a, 0x63, 0x1a, 0x3c, 0x17, + 0xcb, 0xcd, 0x5d, 0x7f, 0xe3, 0x8e, 0x2f, 0xa1, 0x70, 0x01, 0xa5, 0xa2, 0x87, 0x28, 0xf5, 0xdf, + 0xa5, 0x20, 0xe7, 0x7e, 0x0c, 0xab, 0x20, 0x33, 0x07, 0xdb, 0x22, 0x66, 0xfc, 0x99, 0xd1, 0xc6, + 0xa6, 0x43, 0xbd, 0x4b, 0x0b, 0xf6, 0x8c, 0xca, 0x90, 0x26, 0x96, 0x88, 0x51, 0x9a, 0x58, 0x4c, + 0x86, 0xdf, 0x44, 0x88, 0xf3, 0x12, 0xbf, 0x6d, 0x78, 0x9f, 0x2b, 0x8a, 0x17, 0xd7, 0xe2, 0x46, + 0xde, 0xbb, 0xb2, 0xd8, 0xe1, 0x79, 0xa9, 0x0e, 0x95, 0x56, 0x6f, 0xd0, 0x3f, 0x53, 0x86, 0x6a, + 0xeb, 0x7c, 0x78, 0x56, 0x79, 0x80, 0xb6, 0x61, 0x23, 0x48, 0x3f, 0xef, 0xf4, 0x2b, 0xa9, 0x45, + 0xf2, 0xb0, 0xdd, 0xaf, 0xa4, 0x23, 0xc8, 0xa7, 0x83, 0x4a, 0xe6, 0xc5, 0x18, 0xd6, 0x02, 0x71, + 0xe1, 0x72, 0xed, 0x81, 0xda, 0x6e, 0x9d, 0x9e, 0xaa, 0xdd, 0x5e, 0xfb, 0xec, 0x8b, 0x6e, 0xef, + 0xa4, 0xf2, 0x00, 0xd5, 0x60, 0x87, 0x91, 0xfb, 0x2d, 0x65, 0xd8, 0x6d, 0x77, 0xfb, 0xad, 0xde, + 0x50, 0xfd, 0xe1, 0x59, 0xb7, 0x77, 0xdc, 0xa9, 0xa4, 0x50, 0x19, 0x80, 0xf1, 0x5a, 0xed, 0x61, + 0xf7, 0xc7, 0xc7, 0x95, 0x34, 0xda, 0x82, 0x0a, 0x7b, 0xef, 0x74, 0x07, 0xed, 0xb3, 0x5e, 0xef, + 0xb8, 0x3d, 0x3c, 0xee, 0x54, 0x32, 0xcd, 0xbf, 0x15, 0x21, 0x33, 0xe8, 0xf6, 0x51, 0x1f, 0x56, + 0xe5, 0x39, 0x15, 0xcd, 0xfb, 0x75, 0xc4, 0x64, 0x5b, 0x3b, 0x88, 0xe1, 0xba, 0xbd, 0xbf, 0x9e, + 0xf9, 0x6d, 0x3a, 0x85, 0xbe, 0x92, 0x7e, 0x51, 0xc9, 0x33, 0x26, 0x7a, 0xba, 0xd8, 0x64, 0x22, + 0x46, 0xda, 0x5a, 0xe2, 0x90, 0x8a, 0x54, 0xd8, 0x89, 0xbe, 0x41, 0x43, 0x1f, 0x2d, 0xaa, 0x8f, + 0x1a, 0x60, 0x6b, 0xc9, 0x13, 0x29, 0xfa, 0x19, 0xa0, 0xc5, 0x9b, 0x0b, 0x34, 0x9f, 0x6c, 0x62, + 0x6f, 0x45, 0x6a, 0x4f, 0x12, 0x65, 0xc4, 0xf1, 0xe8, 0x17, 0xb0, 0x19, 0x71, 0x0d, 0x81, 0xc2, + 0x6b, 0x23, 0x2d, 0xff, 0x30, 0x59, 0x68, 0xbe, 0x43, 0xc4, 0x95, 0x80, 0xb4, 0x43, 0xfc, 0x75, + 0x82, 0xb4, 0x43, 0xd2, 0xad, 0xc2, 0xc8, 0xbf, 0xdb, 0x08, 0x7e, 0xc4, 0xc2, 0xea, 0xc8, 0xaf, + 0x78, 0x7a, 0x87, 0x94, 0xd8, 0xe4, 0x04, 0xca, 0xc1, 0x2b, 0x01, 0x34, 0x9f, 0x00, 0x23, 0xef, + 0x0a, 0x6a, 0xd1, 0x77, 0x29, 0x01, 0x3c, 0x06, 0x66, 0xe4, 0xa7, 0x4b, 0x8d, 0x43, 0xb5, 0xc4, + 0x13, 0xac, 0xe4, 0xed, 0x80, 0xee, 0x05, 0x6f, 0x47, 0x69, 0xfe, 0x30, 0x59, 0x48, 0x38, 0xe2, + 0x2b, 0xe9, 0x6e, 0x24, 0xc6, 0xfe, 0xa4, 0xc3, 0xf3, 0x1d, 0xf6, 0x7f, 0x09, 0x5b, 0x51, 0x47, + 0x3e, 0x29, 0x96, 0x09, 0x27, 0xc2, 0xda, 0x9e, 0xac, 0x3b, 0x7c, 0x56, 0xf9, 0x09, 0xec, 0x44, + 0x9f, 0x09, 0xa4, 0x54, 0x4d, 0x3c, 0x34, 0xd4, 0x76, 0x16, 0x8e, 0x5e, 0xc7, 0x53, 0x8b, 0xde, + 0x1e, 0xbd, 0xfe, 0xe9, 0x93, 0x2b, 0x42, 0xc7, 0xb3, 0x8b, 0xc6, 0xc8, 0x9c, 0xbe, 0x14, 0xba, + 0xdc, 0xff, 0xe8, 0x23, 0x73, 0xe2, 0x11, 0xfe, 0x9c, 0x5e, 0x3b, 0x25, 0x37, 0xf8, 0x2d, 0xa1, + 0x8d, 0x3e, 0x63, 0xfd, 0x3b, 0x5d, 0x16, 0xef, 0x87, 0x87, 0x9c, 0x70, 0x91, 0xe3, 0x4b, 0x5e, + 0xfd, 0x27, 0x00, 0x00, 0xff, 0xff, 0x35, 0x6a, 0xe0, 0x2f, 0xc6, 0x1f, 0x00, 0x00, } diff --git a/protobufs/livekit_analytics.proto b/protobufs/livekit_analytics.proto index 66d10535..6684fb56 100644 --- a/protobufs/livekit_analytics.proto +++ b/protobufs/livekit_analytics.proto @@ -23,6 +23,7 @@ import "google/protobuf/timestamp.proto"; import "livekit_models.proto"; import "livekit_egress.proto"; import "livekit_ingress.proto"; +import "livekit_sip.proto"; enum StreamType { UPSTREAM = 0; @@ -110,8 +111,18 @@ enum AnalyticsEventType { INGRESS_STARTED = 16; INGRESS_ENDED = 17; INGRESS_UPDATED = 29; - - // NEXT_ID: 30 + SIP_INBOUND_TRUNK_CREATED = 30; + SIP_INBOUND_TRUNK_DELETED = 31; + SIP_OUTBOUND_TRUNK_CREATED = 32; + SIP_OUTBOUND_TRUNK_DELETED = 33; + SIP_DISPATCH_RULE_CREATED = 34; + SIP_DISPATCH_RULE_DELETED = 35; + SIP_PARTICIPANT_CREATED = 36; + SIP_CALL_INCOMING = 37; + SIP_CALL_STARTED = 38; + SIP_CALL_ENDED = 39; + + // NEXT_ID: 40 } message AnalyticsClientMeta { @@ -152,8 +163,15 @@ message AnalyticsEvent { RTPStats rtp_stats = 21; int32 video_layer = 22; string node_id = 24; - - // NEXT_ID: 26 + string sip_call_id = 26; + SIPCallInfo sip_call = 27; + string sip_trunk_id = 28; + SIPInboundTrunkInfo sip_inbound_trunk = 29; + SIPOutboundTrunkInfo sip_outbound_trunk = 30; + string sip_dispatch_rule_id = 31; + SIPDispatchRuleInfo sip_dispatch_rule = 32; + + // NEXT_ID: 33 } message AnalyticsEvents { diff --git a/protobufs/livekit_sip.proto b/protobufs/livekit_sip.proto index b3ad5fdf..192b5a15 100644 --- a/protobufs/livekit_sip.proto +++ b/protobufs/livekit_sip.proto @@ -20,8 +20,9 @@ option go_package = "github.com/livekit/protocol/livekit"; option csharp_namespace = "LiveKit.Proto"; option ruby_package = "LiveKit::Proto"; -import "google/protobuf/empty.proto"; import "google/protobuf/duration.proto"; +import "google/protobuf/empty.proto"; +import "livekit_models.proto"; /* LiveKit's SIP API is built with 3 high level primitives @@ -50,7 +51,7 @@ import "google/protobuf/duration.proto"; service SIP { - rpc CreateSIPTrunk(CreateSIPTrunkRequest) returns (SIPTrunkInfo) { option deprecated = true; }; + // rpc CreateSIPTrunk(CreateSIPTrunkRequest) returns (SIPTrunkInfo) { option deprecated = true; }; DELETED rpc ListSIPTrunk(ListSIPTrunkRequest) returns (ListSIPTrunkResponse) { option deprecated = true; }; rpc CreateSIPInboundTrunk(CreateSIPInboundTrunkRequest) returns (SIPInboundTrunkInfo); @@ -427,3 +428,32 @@ message TransferSIPParticipantRequest { string room_name = 2; string transfer_to = 3; } + +message SIPCallInfo { + string call_id = 1; + string trunk_id = 2; + string room_name = 3; + string room_id = 4; // ID of the current/previous room published to + string participant_identity = 5; + SIPUri from_uri = 6; + SIPUri to_uri = 7; + SIPCallStatus call_status = 8; + int64 started_at = 9; + int64 ended_at = 10; + DisconnectReason disconnect_reason = 11; +} + +message SIPUri { + string user = 1; + string host = 2; + string ip = 3; + string port = 4; + SIPTransport transport = 5; +} + +enum SIPCallStatus { + SCS_CALL_INCOMING = 0; // Incoming call is being handled by the SIP service. The SIP participant hasn't joined a LiveKit room yet + SCS_PARTICIPANT_JOINED = 1; // SIP participant for outgoing call has been created. The SIP outgoing call is being established + SCS_ACTIVE = 2; // Call is ongoing. SIP participant is active in the LiveKit room + SCS_DISCONNECTED = 3; // Call has ended +} diff --git a/protobufs/rpc/io.proto b/protobufs/rpc/io.proto index b64f875a..1714db11 100644 --- a/protobufs/rpc/io.proto +++ b/protobufs/rpc/io.proto @@ -20,6 +20,7 @@ option go_package = "github.com/livekit/protocol/rpc"; import "livekit_egress.proto"; import "livekit_ingress.proto"; +import "livekit_sip.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/duration.proto"; @@ -39,6 +40,7 @@ service IOInfo { // sip rpc GetSIPTrunkAuthentication(GetSIPTrunkAuthenticationRequest) returns (GetSIPTrunkAuthenticationResponse); rpc EvaluateSIPDispatchRules(EvaluateSIPDispatchRulesRequest) returns (EvaluateSIPDispatchRulesResponse); + rpc UpdateSIPCallState(UpdateSIPCallStateRequest) returns (google.protobuf.Empty); } message GetEgressRequest { @@ -177,6 +179,12 @@ message EvaluateSIPDispatchRulesResponse { // NEXT ID: 18 } +message UpdateSIPCallStateRequest { + livekit.SIPCallInfo call_info = 1; + + // NEXT ID: 2 +} + enum SIPFeature { NONE = 0; KRISP_ENABLED = 1; diff --git a/replay/cloud_replay.pb.go b/replay/cloud_replay.pb.go index e9c71b39..7ff9a4b5 100644 --- a/replay/cloud_replay.pb.go +++ b/replay/cloud_replay.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: // protoc-gen-go v1.34.2 -// protoc v5.27.3 +// protoc v5.28.0 // source: cloud_replay.proto package replay diff --git a/rpc/io.pb.go b/rpc/io.pb.go index 65e36f0d..41b9b1c9 100644 --- a/rpc/io.pb.go +++ b/rpc/io.pb.go @@ -901,6 +901,51 @@ func (x *EvaluateSIPDispatchRulesResponse) GetMaxCallDuration() *durationpb.Dura return nil } +type UpdateSIPCallStateRequest struct { + state protoimpl.MessageState + sizeCache protoimpl.SizeCache + unknownFields protoimpl.UnknownFields + + CallInfo *livekit.SIPCallInfo `protobuf:"bytes,1,opt,name=call_info,json=callInfo,proto3" json:"call_info,omitempty"` +} + +func (x *UpdateSIPCallStateRequest) Reset() { + *x = UpdateSIPCallStateRequest{} + mi := &file_rpc_io_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) +} + +func (x *UpdateSIPCallStateRequest) String() string { + return protoimpl.X.MessageStringOf(x) +} + +func (*UpdateSIPCallStateRequest) ProtoMessage() {} + +func (x *UpdateSIPCallStateRequest) ProtoReflect() protoreflect.Message { + mi := &file_rpc_io_proto_msgTypes[9] + if x != nil { + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + if ms.LoadMessageInfo() == nil { + ms.StoreMessageInfo(mi) + } + return ms + } + return mi.MessageOf(x) +} + +// Deprecated: Use UpdateSIPCallStateRequest.ProtoReflect.Descriptor instead. +func (*UpdateSIPCallStateRequest) Descriptor() ([]byte, []int) { + return file_rpc_io_proto_rawDescGZIP(), []int{9} +} + +func (x *UpdateSIPCallStateRequest) GetCallInfo() *livekit.SIPCallInfo { + if x != nil { + return x.CallInfo + } + return nil +} + var File_rpc_io_proto protoreflect.FileDescriptor var file_rpc_io_proto_rawDesc = []byte{ @@ -908,236 +953,247 @@ var file_rpc_io_proto_rawDesc = []byte{ 0x72, 0x70, 0x63, 0x1a, 0x14, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x15, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, - 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, - 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, - 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x2f, 0x0a, - 0x10, 0x47, 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x22, 0x87, - 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, - 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x76, 0x67, 0x5f, 0x63, 0x70, 0x75, 0x5f, 0x75, 0x73, 0x61, 0x67, - 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x61, 0x76, 0x67, 0x43, 0x70, 0x75, 0x55, - 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x70, 0x75, 0x5f, - 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x6d, 0x61, 0x78, - 0x43, 0x70, 0x75, 0x55, 0x73, 0x61, 0x67, 0x65, 0x22, 0x55, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x49, - 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, - 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, - 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, - 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x6b, 0x65, 0x79, 0x18, 0x02, - 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4b, 0x65, 0x79, 0x22, - 0x88, 0x02, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, - 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, 0x04, 0x69, 0x6e, - 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, - 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x77, 0x73, - 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x77, 0x73, 0x55, 0x72, - 0x6c, 0x12, 0x55, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x66, 0x69, 0x65, - 0x6c, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, 0x70, 0x63, 0x2e, - 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x46, 0x69, - 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x67, 0x69, - 0x6e, 0x67, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x40, 0x0a, 0x12, 0x4c, 0x6f, 0x67, 0x67, - 0x69, 0x6e, 0x67, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, - 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, - 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x67, 0x0a, 0x19, 0x55, 0x70, - 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x67, - 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, - 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, - 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x05, 0x73, 0x74, - 0x61, 0x74, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, - 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, - 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, - 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, - 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x66, 0x72, 0x6f, 0x6d, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, 0x0e, 0x0a, 0x02, - 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, 0x1f, 0x0a, 0x0b, - 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x17, 0x0a, - 0x07, 0x74, 0x6f, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, - 0x74, 0x6f, 0x48, 0x6f, 0x73, 0x74, 0x22, 0xb0, 0x01, 0x0a, 0x21, 0x47, 0x65, 0x74, 0x53, 0x49, + 0x1a, 0x11, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x5f, 0x73, 0x69, 0x70, 0x2e, 0x70, 0x72, + 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, + 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, + 0x22, 0x2f, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69, + 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x65, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, + 0x64, 0x22, 0x87, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x27, 0x0a, 0x04, 0x69, 0x6e, + 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69, + 0x6e, 0x66, 0x6f, 0x12, 0x22, 0x0a, 0x0d, 0x61, 0x76, 0x67, 0x5f, 0x63, 0x70, 0x75, 0x5f, 0x75, + 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, 0x61, 0x76, 0x67, 0x43, + 0x70, 0x75, 0x55, 0x73, 0x61, 0x67, 0x65, 0x12, 0x22, 0x0a, 0x0d, 0x6d, 0x61, 0x78, 0x5f, 0x63, + 0x70, 0x75, 0x5f, 0x75, 0x73, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0b, + 0x6d, 0x61, 0x78, 0x43, 0x70, 0x75, 0x55, 0x73, 0x61, 0x67, 0x65, 0x22, 0x55, 0x0a, 0x15, 0x47, + 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, + 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, + 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x5f, 0x6b, 0x65, + 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x4b, + 0x65, 0x79, 0x22, 0x88, 0x02, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, + 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x28, 0x0a, + 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, 0x69, + 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, + 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, 0x0a, + 0x06, 0x77, 0x73, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x77, + 0x73, 0x55, 0x72, 0x6c, 0x12, 0x55, 0x0a, 0x0e, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, + 0x66, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x72, + 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, + 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, + 0x67, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0d, 0x6c, 0x6f, + 0x67, 0x67, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x1a, 0x40, 0x0a, 0x12, 0x4c, + 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x73, 0x45, 0x6e, 0x74, 0x72, + 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x67, 0x0a, + 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, + 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x69, 0x6e, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, + 0x69, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x64, 0x12, 0x2b, 0x0a, 0x05, 0x73, 0x74, 0x61, + 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, + 0x69, 0x74, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, + 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x22, 0xa0, 0x01, 0x0a, 0x20, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x0a, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, - 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x61, 0x73, 0x73, - 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x72, 0x6f, 0x70, 0x18, 0x03, 0x20, 0x01, - 0x28, 0x08, 0x52, 0x04, 0x64, 0x72, 0x6f, 0x70, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, - 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, - 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, - 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, - 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x22, 0xf6, 0x03, 0x0a, 0x1f, 0x45, 0x76, - 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, - 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, - 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x08, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x30, 0x0a, - 0x12, 0x73, 0x69, 0x70, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, - 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x52, 0x10, 0x73, - 0x69, 0x70, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, 0x64, 0x12, - 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, - 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, - 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x5f, 0x6e, 0x75, 0x6d, - 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, 0x6c, 0x6c, 0x69, - 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x63, 0x61, 0x6c, 0x6c, - 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, - 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x1f, 0x0a, - 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x12, 0x10, - 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x70, 0x69, 0x6e, - 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, - 0x52, 0x05, 0x6e, 0x6f, 0x50, 0x69, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, 0x6c, 0x6c, 0x65, - 0x64, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x63, 0x61, - 0x6c, 0x6c, 0x65, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x64, 0x0a, 0x10, 0x65, 0x78, 0x74, 0x72, - 0x61, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, - 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, - 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, - 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x74, 0x72, 0x61, 0x41, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0f, 0x65, - 0x78, 0x74, 0x72, 0x61, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x1a, 0x42, - 0x0a, 0x14, 0x45, 0x78, 0x74, 0x72, 0x61, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, - 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, - 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, - 0x38, 0x01, 0x22, 0x94, 0x09, 0x0a, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, - 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, 0x6f, 0x6d, 0x5f, - 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, 0x6f, 0x6f, 0x6d, - 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, - 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, 0x02, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x49, - 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, - 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, - 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4e, 0x61, - 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, - 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x4d, 0x65, 0x74, - 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x77, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, - 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, + 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1e, 0x0a, 0x0b, 0x73, + 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, + 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x66, + 0x72, 0x6f, 0x6d, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x66, 0x72, 0x6f, 0x6d, 0x12, + 0x0e, 0x0a, 0x02, 0x74, 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x02, 0x74, 0x6f, 0x12, + 0x1f, 0x0a, 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, 0x04, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, + 0x12, 0x17, 0x0a, 0x07, 0x74, 0x6f, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x06, 0x74, 0x6f, 0x48, 0x6f, 0x73, 0x74, 0x22, 0xb0, 0x01, 0x0a, 0x21, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, + 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x12, 0x0a, 0x04, 0x64, 0x72, 0x6f, 0x70, 0x18, + 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x04, 0x64, 0x72, 0x6f, 0x70, 0x12, 0x20, 0x0a, 0x0c, 0x73, + 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x1d, 0x0a, + 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x49, 0x64, 0x22, 0xf6, 0x03, 0x0a, + 0x1f, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, + 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, + 0x12, 0x1e, 0x0a, 0x0b, 0x73, 0x69, 0x70, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x5f, 0x69, 0x64, 0x18, + 0x08, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x69, 0x70, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x64, + 0x12, 0x30, 0x0a, 0x12, 0x73, 0x69, 0x70, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, + 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, + 0x52, 0x10, 0x73, 0x69, 0x70, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x49, 0x64, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, + 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, + 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x25, 0x0a, 0x0e, 0x63, 0x61, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x5f, + 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63, 0x61, + 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x23, 0x0a, 0x0d, 0x63, + 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, + 0x28, 0x09, 0x52, 0x0c, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, + 0x12, 0x1f, 0x0a, 0x0b, 0x73, 0x72, 0x63, 0x5f, 0x61, 0x64, 0x64, 0x72, 0x65, 0x73, 0x73, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x72, 0x63, 0x41, 0x64, 0x64, 0x72, 0x65, 0x73, + 0x73, 0x12, 0x10, 0x0a, 0x03, 0x70, 0x69, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, + 0x70, 0x69, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x6e, 0x6f, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x08, 0x52, 0x05, 0x6e, 0x6f, 0x50, 0x69, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x61, + 0x6c, 0x6c, 0x65, 0x64, 0x5f, 0x68, 0x6f, 0x73, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, + 0x0a, 0x63, 0x61, 0x6c, 0x6c, 0x65, 0x64, 0x48, 0x6f, 0x73, 0x74, 0x12, 0x64, 0x0a, 0x10, 0x65, + 0x78, 0x74, 0x72, 0x61, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, + 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x72, - 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, - 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, - 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x23, - 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, 0x18, 0x03, 0x20, - 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, - 0x50, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, 0x0a, 0x06, 0x77, 0x73, 0x5f, - 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x77, 0x73, 0x55, 0x72, 0x6c, - 0x12, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, - 0x32, 0x16, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, - 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, 0x5f, 0x69, 0x64, - 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, 0x75, 0x6e, 0x6b, - 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x61, 0x74, - 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, - 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x5f, 0x69, - 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, - 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x0d, 0x20, - 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, - 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, - 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, - 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x12, 0x72, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, 0x6f, 0x5f, 0x61, - 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, - 0x3e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, - 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, - 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, - 0x13, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, - 0x75, 0x74, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x10, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x5f, - 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x0f, - 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x49, 0x50, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, - 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, - 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, 0x69, 0x6d, 0x65, - 0x6f, 0x75, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, - 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x54, 0x69, 0x6d, - 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x61, 0x6c, 0x6c, - 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, - 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, 0x61, 0x78, 0x43, - 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x48, 0x0a, 0x1a, 0x50, - 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, + 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x2e, 0x45, 0x78, 0x74, 0x72, + 0x61, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x52, 0x0f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x1a, 0x42, 0x0a, 0x14, 0x45, 0x78, 0x74, 0x72, 0x61, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, - 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, - 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, - 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, - 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, - 0x01, 0x1a, 0x46, 0x0a, 0x18, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, - 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, - 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, - 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, - 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x2a, 0x29, 0x0a, 0x0a, 0x53, 0x49, 0x50, - 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, 0x4e, 0x45, 0x10, - 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4b, 0x52, 0x49, 0x53, 0x50, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, - 0x45, 0x44, 0x10, 0x01, 0x2a, 0x60, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, - 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x14, 0x4c, 0x45, 0x47, - 0x41, 0x43, 0x59, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x5f, 0x4f, 0x52, 0x5f, 0x50, 0x49, - 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x10, 0x01, 0x12, - 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x50, 0x49, 0x4e, 0x10, 0x02, - 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x03, 0x12, 0x08, 0x0a, 0x04, - 0x44, 0x52, 0x4f, 0x50, 0x10, 0x04, 0x32, 0xf3, 0x05, 0x0a, 0x06, 0x49, 0x4f, 0x49, 0x6e, 0x66, - 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x67, 0x72, 0x65, 0x73, + 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x94, 0x09, 0x0a, 0x20, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, + 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x72, 0x6f, + 0x6f, 0x6d, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x72, + 0x6f, 0x6f, 0x6d, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, + 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x18, + 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, + 0x6e, 0x74, 0x49, 0x64, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x12, 0x29, 0x0a, 0x10, 0x70, 0x61, + 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x07, + 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, + 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x31, 0x0a, 0x14, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, + 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x08, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x13, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, + 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x77, 0x0a, 0x16, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, + 0x65, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, + 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, + 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x15, 0x70, 0x61, 0x72, 0x74, + 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, + 0x73, 0x12, 0x23, 0x0a, 0x0b, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x70, 0x69, 0x6e, + 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0a, 0x72, 0x65, 0x71, 0x75, + 0x65, 0x73, 0x74, 0x50, 0x69, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, + 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x15, 0x0a, 0x06, + 0x77, 0x73, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x77, 0x73, + 0x55, 0x72, 0x6c, 0x12, 0x2e, 0x0a, 0x06, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x06, 0x20, + 0x01, 0x28, 0x0e, 0x32, 0x16, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, + 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x06, 0x72, 0x65, 0x73, + 0x75, 0x6c, 0x74, 0x12, 0x20, 0x0a, 0x0c, 0x73, 0x69, 0x70, 0x5f, 0x74, 0x72, 0x75, 0x6e, 0x6b, + 0x5f, 0x69, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x73, 0x69, 0x70, 0x54, 0x72, + 0x75, 0x6e, 0x6b, 0x49, 0x64, 0x12, 0x2f, 0x0a, 0x14, 0x73, 0x69, 0x70, 0x5f, 0x64, 0x69, 0x73, + 0x70, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x0a, 0x20, + 0x01, 0x28, 0x09, 0x52, 0x11, 0x73, 0x69, 0x70, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, + 0x74, 0x5f, 0x69, 0x64, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x72, 0x6f, 0x6a, + 0x65, 0x63, 0x74, 0x49, 0x64, 0x12, 0x4c, 0x0a, 0x07, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, + 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, + 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, + 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, + 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x07, 0x68, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x12, 0x72, 0x0a, 0x15, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x5f, 0x74, + 0x6f, 0x5f, 0x61, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, + 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, + 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, + 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, + 0x72, 0x79, 0x52, 0x13, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, 0x6f, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x12, 0x3a, 0x0a, 0x10, 0x65, 0x6e, 0x61, 0x62, 0x6c, + 0x65, 0x64, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, + 0x0e, 0x32, 0x0f, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x49, 0x50, 0x46, 0x65, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x52, 0x0f, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x46, 0x65, 0x61, 0x74, 0x75, + 0x72, 0x65, 0x73, 0x12, 0x42, 0x0a, 0x0f, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x74, + 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x18, 0x10, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, + 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, + 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0e, 0x72, 0x69, 0x6e, 0x67, 0x69, 0x6e, 0x67, + 0x54, 0x69, 0x6d, 0x65, 0x6f, 0x75, 0x74, 0x12, 0x45, 0x0a, 0x11, 0x6d, 0x61, 0x78, 0x5f, 0x63, + 0x61, 0x6c, 0x6c, 0x5f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x11, 0x20, 0x01, + 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x6d, + 0x61, 0x78, 0x43, 0x61, 0x6c, 0x6c, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x48, + 0x0a, 0x1a, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x41, 0x74, 0x74, + 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, + 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, + 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, + 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3a, 0x0a, 0x0c, 0x48, 0x65, 0x61, 0x64, + 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, + 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, + 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, + 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x46, 0x0a, 0x18, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x54, + 0x6f, 0x41, 0x74, 0x74, 0x72, 0x69, 0x62, 0x75, 0x74, 0x65, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, + 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, + 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, + 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x4e, 0x0a, 0x19, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x09, 0x63, 0x61, 0x6c, + 0x6c, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x14, 0x2e, 0x6c, + 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x49, 0x6e, + 0x66, 0x6f, 0x52, 0x08, 0x63, 0x61, 0x6c, 0x6c, 0x49, 0x6e, 0x66, 0x6f, 0x2a, 0x29, 0x0a, 0x0a, + 0x53, 0x49, 0x50, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x08, 0x0a, 0x04, 0x4e, 0x4f, + 0x4e, 0x45, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x4b, 0x52, 0x49, 0x53, 0x50, 0x5f, 0x45, 0x4e, + 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01, 0x2a, 0x60, 0x0a, 0x11, 0x53, 0x49, 0x50, 0x44, 0x69, + 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x18, 0x0a, 0x14, + 0x4c, 0x45, 0x47, 0x41, 0x43, 0x59, 0x5f, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, 0x5f, 0x4f, 0x52, + 0x5f, 0x50, 0x49, 0x4e, 0x10, 0x00, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x43, 0x45, 0x50, 0x54, + 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x52, 0x45, 0x51, 0x55, 0x45, 0x53, 0x54, 0x5f, 0x50, 0x49, + 0x4e, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x52, 0x45, 0x4a, 0x45, 0x43, 0x54, 0x10, 0x03, 0x12, + 0x08, 0x0a, 0x04, 0x44, 0x52, 0x4f, 0x50, 0x10, 0x04, 0x32, 0xc1, 0x06, 0x0a, 0x06, 0x49, 0x4f, + 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x3b, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x12, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x45, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x12, 0x3b, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x3b, - 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x13, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, - 0x6e, 0x66, 0x6f, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, - 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x37, 0x0a, 0x09, 0x47, - 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x15, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, - 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x45, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x12, 0x1a, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, - 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, - 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, 0x0a, 0x0d, 0x55, - 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, 0x19, 0x2e, 0x72, - 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, - 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, - 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, - 0x3d, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, - 0x12, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x49, 0x6e, 0x67, 0x72, 0x65, - 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, - 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x49, - 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, - 0x12, 0x1a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, - 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1b, 0x2e, 0x72, - 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, - 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x12, 0x55, 0x70, 0x64, - 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, - 0x1e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, - 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, - 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x6a, 0x0a, 0x19, 0x47, 0x65, 0x74, 0x53, 0x49, - 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, - 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, - 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x72, 0x70, - 0x63, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, - 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, - 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x18, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, - 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x12, - 0x24, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, - 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, - 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, - 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, - 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x21, 0x5a, 0x1f, - 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, 0x6b, - 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x72, 0x70, 0x63, 0x62, - 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, + 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x37, + 0x0a, 0x09, 0x47, 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x15, 0x2e, 0x72, 0x70, + 0x63, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x13, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x45, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x45, 0x0a, 0x0a, 0x4c, 0x69, 0x73, 0x74, 0x45, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x12, 0x1a, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, + 0x4c, 0x69, 0x73, 0x74, 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, + 0x74, 0x1a, 0x1b, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x4c, 0x69, 0x73, 0x74, + 0x45, 0x67, 0x72, 0x65, 0x73, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x42, + 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, 0x69, 0x63, 0x73, 0x12, + 0x19, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x74, 0x72, + 0x69, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, + 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, + 0x74, 0x79, 0x12, 0x3d, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, + 0x65, 0x73, 0x73, 0x12, 0x14, 0x2e, 0x6c, 0x69, 0x76, 0x65, 0x6b, 0x69, 0x74, 0x2e, 0x49, 0x6e, + 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, + 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, + 0x79, 0x12, 0x49, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x49, + 0x6e, 0x66, 0x6f, 0x12, 0x1a, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, + 0x72, 0x65, 0x73, 0x73, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, + 0x1b, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, + 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4c, 0x0a, 0x12, + 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, + 0x74, 0x65, 0x12, 0x1e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, + 0x6e, 0x67, 0x72, 0x65, 0x73, 0x73, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, + 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, + 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x6a, 0x0a, 0x19, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, + 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, + 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, + 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x47, 0x65, 0x74, 0x53, 0x49, 0x50, 0x54, 0x72, 0x75, 0x6e, 0x6b, + 0x41, 0x75, 0x74, 0x68, 0x65, 0x6e, 0x74, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, + 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x67, 0x0a, 0x18, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, + 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, + 0x65, 0x73, 0x12, 0x24, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, + 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, + 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x25, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x45, + 0x76, 0x61, 0x6c, 0x75, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x44, 0x69, 0x73, 0x70, 0x61, 0x74, + 0x63, 0x68, 0x52, 0x75, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, + 0x4c, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, + 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1e, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x55, 0x70, 0x64, 0x61, + 0x74, 0x65, 0x53, 0x49, 0x50, 0x43, 0x61, 0x6c, 0x6c, 0x53, 0x74, 0x61, 0x74, 0x65, 0x52, 0x65, + 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, + 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x42, 0x21, 0x5a, + 0x1f, 0x67, 0x69, 0x74, 0x68, 0x75, 0x62, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x6c, 0x69, 0x76, 0x65, + 0x6b, 0x69, 0x74, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x63, 0x6f, 0x6c, 0x2f, 0x72, 0x70, 0x63, + 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33, } var ( @@ -1153,7 +1209,7 @@ func file_rpc_io_proto_rawDescGZIP() []byte { } var file_rpc_io_proto_enumTypes = make([]protoimpl.EnumInfo, 2) -var file_rpc_io_proto_msgTypes = make([]protoimpl.MessageInfo, 14) +var file_rpc_io_proto_msgTypes = make([]protoimpl.MessageInfo, 15) var file_rpc_io_proto_goTypes = []any{ (SIPFeature)(0), // 0: rpc.SIPFeature (SIPDispatchResult)(0), // 1: rpc.SIPDispatchResult @@ -1166,57 +1222,62 @@ var file_rpc_io_proto_goTypes = []any{ (*GetSIPTrunkAuthenticationResponse)(nil), // 8: rpc.GetSIPTrunkAuthenticationResponse (*EvaluateSIPDispatchRulesRequest)(nil), // 9: rpc.EvaluateSIPDispatchRulesRequest (*EvaluateSIPDispatchRulesResponse)(nil), // 10: rpc.EvaluateSIPDispatchRulesResponse - nil, // 11: rpc.GetIngressInfoResponse.LoggingFieldsEntry - nil, // 12: rpc.EvaluateSIPDispatchRulesRequest.ExtraAttributesEntry - nil, // 13: rpc.EvaluateSIPDispatchRulesResponse.ParticipantAttributesEntry - nil, // 14: rpc.EvaluateSIPDispatchRulesResponse.HeadersEntry - nil, // 15: rpc.EvaluateSIPDispatchRulesResponse.HeadersToAttributesEntry - (*livekit.EgressInfo)(nil), // 16: livekit.EgressInfo - (*livekit.IngressInfo)(nil), // 17: livekit.IngressInfo - (*livekit.IngressState)(nil), // 18: livekit.IngressState - (*durationpb.Duration)(nil), // 19: google.protobuf.Duration - (*livekit.ListEgressRequest)(nil), // 20: livekit.ListEgressRequest - (*emptypb.Empty)(nil), // 21: google.protobuf.Empty - (*livekit.ListEgressResponse)(nil), // 22: livekit.ListEgressResponse + (*UpdateSIPCallStateRequest)(nil), // 11: rpc.UpdateSIPCallStateRequest + nil, // 12: rpc.GetIngressInfoResponse.LoggingFieldsEntry + nil, // 13: rpc.EvaluateSIPDispatchRulesRequest.ExtraAttributesEntry + nil, // 14: rpc.EvaluateSIPDispatchRulesResponse.ParticipantAttributesEntry + nil, // 15: rpc.EvaluateSIPDispatchRulesResponse.HeadersEntry + nil, // 16: rpc.EvaluateSIPDispatchRulesResponse.HeadersToAttributesEntry + (*livekit.EgressInfo)(nil), // 17: livekit.EgressInfo + (*livekit.IngressInfo)(nil), // 18: livekit.IngressInfo + (*livekit.IngressState)(nil), // 19: livekit.IngressState + (*durationpb.Duration)(nil), // 20: google.protobuf.Duration + (*livekit.SIPCallInfo)(nil), // 21: livekit.SIPCallInfo + (*livekit.ListEgressRequest)(nil), // 22: livekit.ListEgressRequest + (*emptypb.Empty)(nil), // 23: google.protobuf.Empty + (*livekit.ListEgressResponse)(nil), // 24: livekit.ListEgressResponse } var file_rpc_io_proto_depIdxs = []int32{ - 16, // 0: rpc.UpdateMetricsRequest.info:type_name -> livekit.EgressInfo - 17, // 1: rpc.GetIngressInfoResponse.info:type_name -> livekit.IngressInfo - 11, // 2: rpc.GetIngressInfoResponse.logging_fields:type_name -> rpc.GetIngressInfoResponse.LoggingFieldsEntry - 18, // 3: rpc.UpdateIngressStateRequest.state:type_name -> livekit.IngressState - 12, // 4: rpc.EvaluateSIPDispatchRulesRequest.extra_attributes:type_name -> rpc.EvaluateSIPDispatchRulesRequest.ExtraAttributesEntry - 13, // 5: rpc.EvaluateSIPDispatchRulesResponse.participant_attributes:type_name -> rpc.EvaluateSIPDispatchRulesResponse.ParticipantAttributesEntry + 17, // 0: rpc.UpdateMetricsRequest.info:type_name -> livekit.EgressInfo + 18, // 1: rpc.GetIngressInfoResponse.info:type_name -> livekit.IngressInfo + 12, // 2: rpc.GetIngressInfoResponse.logging_fields:type_name -> rpc.GetIngressInfoResponse.LoggingFieldsEntry + 19, // 3: rpc.UpdateIngressStateRequest.state:type_name -> livekit.IngressState + 13, // 4: rpc.EvaluateSIPDispatchRulesRequest.extra_attributes:type_name -> rpc.EvaluateSIPDispatchRulesRequest.ExtraAttributesEntry + 14, // 5: rpc.EvaluateSIPDispatchRulesResponse.participant_attributes:type_name -> rpc.EvaluateSIPDispatchRulesResponse.ParticipantAttributesEntry 1, // 6: rpc.EvaluateSIPDispatchRulesResponse.result:type_name -> rpc.SIPDispatchResult - 14, // 7: rpc.EvaluateSIPDispatchRulesResponse.headers:type_name -> rpc.EvaluateSIPDispatchRulesResponse.HeadersEntry - 15, // 8: rpc.EvaluateSIPDispatchRulesResponse.headers_to_attributes:type_name -> rpc.EvaluateSIPDispatchRulesResponse.HeadersToAttributesEntry + 15, // 7: rpc.EvaluateSIPDispatchRulesResponse.headers:type_name -> rpc.EvaluateSIPDispatchRulesResponse.HeadersEntry + 16, // 8: rpc.EvaluateSIPDispatchRulesResponse.headers_to_attributes:type_name -> rpc.EvaluateSIPDispatchRulesResponse.HeadersToAttributesEntry 0, // 9: rpc.EvaluateSIPDispatchRulesResponse.enabled_features:type_name -> rpc.SIPFeature - 19, // 10: rpc.EvaluateSIPDispatchRulesResponse.ringing_timeout:type_name -> google.protobuf.Duration - 19, // 11: rpc.EvaluateSIPDispatchRulesResponse.max_call_duration:type_name -> google.protobuf.Duration - 16, // 12: rpc.IOInfo.CreateEgress:input_type -> livekit.EgressInfo - 16, // 13: rpc.IOInfo.UpdateEgress:input_type -> livekit.EgressInfo - 2, // 14: rpc.IOInfo.GetEgress:input_type -> rpc.GetEgressRequest - 20, // 15: rpc.IOInfo.ListEgress:input_type -> livekit.ListEgressRequest - 3, // 16: rpc.IOInfo.UpdateMetrics:input_type -> rpc.UpdateMetricsRequest - 17, // 17: rpc.IOInfo.CreateIngress:input_type -> livekit.IngressInfo - 4, // 18: rpc.IOInfo.GetIngressInfo:input_type -> rpc.GetIngressInfoRequest - 6, // 19: rpc.IOInfo.UpdateIngressState:input_type -> rpc.UpdateIngressStateRequest - 7, // 20: rpc.IOInfo.GetSIPTrunkAuthentication:input_type -> rpc.GetSIPTrunkAuthenticationRequest - 9, // 21: rpc.IOInfo.EvaluateSIPDispatchRules:input_type -> rpc.EvaluateSIPDispatchRulesRequest - 21, // 22: rpc.IOInfo.CreateEgress:output_type -> google.protobuf.Empty - 21, // 23: rpc.IOInfo.UpdateEgress:output_type -> google.protobuf.Empty - 16, // 24: rpc.IOInfo.GetEgress:output_type -> livekit.EgressInfo - 22, // 25: rpc.IOInfo.ListEgress:output_type -> livekit.ListEgressResponse - 21, // 26: rpc.IOInfo.UpdateMetrics:output_type -> google.protobuf.Empty - 21, // 27: rpc.IOInfo.CreateIngress:output_type -> google.protobuf.Empty - 5, // 28: rpc.IOInfo.GetIngressInfo:output_type -> rpc.GetIngressInfoResponse - 21, // 29: rpc.IOInfo.UpdateIngressState:output_type -> google.protobuf.Empty - 8, // 30: rpc.IOInfo.GetSIPTrunkAuthentication:output_type -> rpc.GetSIPTrunkAuthenticationResponse - 10, // 31: rpc.IOInfo.EvaluateSIPDispatchRules:output_type -> rpc.EvaluateSIPDispatchRulesResponse - 22, // [22:32] is the sub-list for method output_type - 12, // [12:22] is the sub-list for method input_type - 12, // [12:12] is the sub-list for extension type_name - 12, // [12:12] is the sub-list for extension extendee - 0, // [0:12] is the sub-list for field type_name + 20, // 10: rpc.EvaluateSIPDispatchRulesResponse.ringing_timeout:type_name -> google.protobuf.Duration + 20, // 11: rpc.EvaluateSIPDispatchRulesResponse.max_call_duration:type_name -> google.protobuf.Duration + 21, // 12: rpc.UpdateSIPCallStateRequest.call_info:type_name -> livekit.SIPCallInfo + 17, // 13: rpc.IOInfo.CreateEgress:input_type -> livekit.EgressInfo + 17, // 14: rpc.IOInfo.UpdateEgress:input_type -> livekit.EgressInfo + 2, // 15: rpc.IOInfo.GetEgress:input_type -> rpc.GetEgressRequest + 22, // 16: rpc.IOInfo.ListEgress:input_type -> livekit.ListEgressRequest + 3, // 17: rpc.IOInfo.UpdateMetrics:input_type -> rpc.UpdateMetricsRequest + 18, // 18: rpc.IOInfo.CreateIngress:input_type -> livekit.IngressInfo + 4, // 19: rpc.IOInfo.GetIngressInfo:input_type -> rpc.GetIngressInfoRequest + 6, // 20: rpc.IOInfo.UpdateIngressState:input_type -> rpc.UpdateIngressStateRequest + 7, // 21: rpc.IOInfo.GetSIPTrunkAuthentication:input_type -> rpc.GetSIPTrunkAuthenticationRequest + 9, // 22: rpc.IOInfo.EvaluateSIPDispatchRules:input_type -> rpc.EvaluateSIPDispatchRulesRequest + 11, // 23: rpc.IOInfo.UpdateSIPCallState:input_type -> rpc.UpdateSIPCallStateRequest + 23, // 24: rpc.IOInfo.CreateEgress:output_type -> google.protobuf.Empty + 23, // 25: rpc.IOInfo.UpdateEgress:output_type -> google.protobuf.Empty + 17, // 26: rpc.IOInfo.GetEgress:output_type -> livekit.EgressInfo + 24, // 27: rpc.IOInfo.ListEgress:output_type -> livekit.ListEgressResponse + 23, // 28: rpc.IOInfo.UpdateMetrics:output_type -> google.protobuf.Empty + 23, // 29: rpc.IOInfo.CreateIngress:output_type -> google.protobuf.Empty + 5, // 30: rpc.IOInfo.GetIngressInfo:output_type -> rpc.GetIngressInfoResponse + 23, // 31: rpc.IOInfo.UpdateIngressState:output_type -> google.protobuf.Empty + 8, // 32: rpc.IOInfo.GetSIPTrunkAuthentication:output_type -> rpc.GetSIPTrunkAuthenticationResponse + 10, // 33: rpc.IOInfo.EvaluateSIPDispatchRules:output_type -> rpc.EvaluateSIPDispatchRulesResponse + 23, // 34: rpc.IOInfo.UpdateSIPCallState:output_type -> google.protobuf.Empty + 24, // [24:35] is the sub-list for method output_type + 13, // [13:24] is the sub-list for method input_type + 13, // [13:13] is the sub-list for extension type_name + 13, // [13:13] is the sub-list for extension extendee + 0, // [0:13] is the sub-list for field type_name } func init() { file_rpc_io_proto_init() } @@ -1230,7 +1291,7 @@ func file_rpc_io_proto_init() { GoPackagePath: reflect.TypeOf(x{}).PkgPath(), RawDescriptor: file_rpc_io_proto_rawDesc, NumEnums: 2, - NumMessages: 14, + NumMessages: 15, NumExtensions: 0, NumServices: 1, }, diff --git a/rpc/io.psrpc.go b/rpc/io.psrpc.go index 03cf899f..1cb3823c 100644 --- a/rpc/io.psrpc.go +++ b/rpc/io.psrpc.go @@ -47,6 +47,8 @@ type IOInfoClient interface { EvaluateSIPDispatchRules(ctx context.Context, req *EvaluateSIPDispatchRulesRequest, opts ...psrpc.RequestOption) (*EvaluateSIPDispatchRulesResponse, error) + UpdateSIPCallState(ctx context.Context, req *UpdateSIPCallStateRequest, opts ...psrpc.RequestOption) (*google_protobuf.Empty, error) + // Close immediately, without waiting for pending RPCs Close() } @@ -78,6 +80,8 @@ type IOInfoServerImpl interface { GetSIPTrunkAuthentication(context.Context, *GetSIPTrunkAuthenticationRequest) (*GetSIPTrunkAuthenticationResponse, error) EvaluateSIPDispatchRules(context.Context, *EvaluateSIPDispatchRulesRequest) (*EvaluateSIPDispatchRulesResponse, error) + + UpdateSIPCallState(context.Context, *UpdateSIPCallStateRequest) (*google_protobuf.Empty, error) } // ======================= @@ -118,6 +122,7 @@ func NewIOInfoClient(bus psrpc.MessageBus, opts ...psrpc.ClientOption) (IOInfoCl sd.RegisterMethod("UpdateIngressState", false, false, true, true) sd.RegisterMethod("GetSIPTrunkAuthentication", false, false, true, true) sd.RegisterMethod("EvaluateSIPDispatchRules", false, false, true, true) + sd.RegisterMethod("UpdateSIPCallState", false, false, true, true) rpcClient, err := client.NewRPCClient(sd, bus, opts...) if err != nil { @@ -169,6 +174,10 @@ func (c *iOInfoClient) EvaluateSIPDispatchRules(ctx context.Context, req *Evalua return client.RequestSingle[*EvaluateSIPDispatchRulesResponse](ctx, c.client, "EvaluateSIPDispatchRules", nil, req, opts...) } +func (c *iOInfoClient) UpdateSIPCallState(ctx context.Context, req *UpdateSIPCallStateRequest, opts ...psrpc.RequestOption) (*google_protobuf.Empty, error) { + return client.RequestSingle[*google_protobuf.Empty](ctx, c.client, "UpdateSIPCallState", nil, req, opts...) +} + func (s *iOInfoClient) Close() { s.client.Close() } @@ -263,6 +272,13 @@ func NewIOInfoServer(svc IOInfoServerImpl, bus psrpc.MessageBus, opts ...psrpc.S return nil, err } + sd.RegisterMethod("UpdateSIPCallState", false, false, true, true) + err = server.RegisterHandler(s, "UpdateSIPCallState", nil, svc.UpdateSIPCallState, nil) + if err != nil { + s.Close(false) + return nil, err + } + return &iOInfoServer{ svc: svc, rpc: s, @@ -278,92 +294,95 @@ func (s *iOInfoServer) Kill() { } var psrpcFileDescriptor4 = []byte{ - // 1383 bytes of a gzipped FileDescriptorProto - 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xdb, 0x52, 0xdb, 0x46, - 0x18, 0x8e, 0x6d, 0x70, 0xf0, 0x6f, 0xb0, 0xcd, 0xc6, 0x50, 0x21, 0xa6, 0x09, 0x71, 0x9a, 0x96, - 0xa4, 0x33, 0xa6, 0xa5, 0x17, 0x6d, 0xd3, 0x69, 0x27, 0x1c, 0x14, 0xe2, 0x86, 0x80, 0x2b, 0xe0, - 0xa2, 0xbd, 0x51, 0x17, 0x69, 0x31, 0x0a, 0xb2, 0x56, 0xdd, 0x5d, 0x41, 0x78, 0x82, 0xf6, 0x01, - 0xfa, 0x00, 0x7d, 0x84, 0xbe, 0x5b, 0x67, 0x7a, 0xdd, 0xd9, 0x83, 0x8c, 0xf0, 0x21, 0x40, 0xef, - 0xb4, 0xff, 0x69, 0xbf, 0xff, 0xb4, 0xfe, 0x0c, 0xb3, 0x2c, 0xf1, 0xd7, 0x42, 0xda, 0x4e, 0x18, - 0x15, 0x14, 0x95, 0x58, 0xe2, 0xdb, 0xcd, 0x28, 0x3c, 0x27, 0x67, 0xa1, 0xf0, 0x48, 0x8f, 0x11, - 0xce, 0xb5, 0xca, 0x5e, 0xc8, 0xa4, 0x61, 0x9c, 0x17, 0x2f, 0xf7, 0x28, 0xed, 0x45, 0x64, 0x4d, - 0x9d, 0x8e, 0xd3, 0x93, 0x35, 0xd2, 0x4f, 0xc4, 0xa5, 0x51, 0x3e, 0x1c, 0x56, 0x06, 0x29, 0xc3, - 0x22, 0xa4, 0xb1, 0xd6, 0xb7, 0xd6, 0xa0, 0xb1, 0x43, 0x84, 0xa3, 0xe2, 0xb9, 0xe4, 0xb7, 0x94, - 0x70, 0x81, 0x96, 0xa1, 0xa2, 0xef, 0xf5, 0xc2, 0xc0, 0x2a, 0xac, 0x14, 0x56, 0x2b, 0xee, 0x8c, - 0x16, 0x74, 0x82, 0xd6, 0xef, 0x05, 0x68, 0x1e, 0x25, 0x01, 0x16, 0xe4, 0x2d, 0x11, 0x2c, 0xf4, - 0x07, 0x5e, 0x9f, 0xc1, 0x54, 0x18, 0x9f, 0x50, 0xe5, 0x50, 0x5d, 0x7f, 0xd0, 0x36, 0x60, 0xdb, - 0x3a, 0x76, 0x27, 0x3e, 0xa1, 0xae, 0x32, 0x40, 0x2d, 0x98, 0xc3, 0xe7, 0x3d, 0xcf, 0x4f, 0x52, - 0x2f, 0xe5, 0xb8, 0x47, 0xac, 0xd2, 0x4a, 0x61, 0xb5, 0xe8, 0x56, 0xf1, 0x79, 0x6f, 0x2b, 0x49, - 0x8f, 0xa4, 0x48, 0xda, 0xf4, 0xf1, 0xfb, 0x9c, 0xcd, 0x94, 0xb6, 0xe9, 0xe3, 0xf7, 0x99, 0x4d, - 0xeb, 0x08, 0x16, 0x76, 0x88, 0xe8, 0xc4, 0x57, 0xf1, 0x0d, 0x92, 0x8f, 0x01, 0x4c, 0x85, 0xae, - 0x12, 0xa8, 0x18, 0x49, 0x27, 0x90, 0x6a, 0x2e, 0x18, 0xc1, 0x7d, 0xef, 0x8c, 0x5c, 0x5a, 0x45, - 0xad, 0xd6, 0x92, 0x37, 0xe4, 0xb2, 0xf5, 0x47, 0x11, 0x16, 0x87, 0xe3, 0xf2, 0x84, 0xc6, 0x9c, - 0xa0, 0xd5, 0x6b, 0x29, 0x36, 0x07, 0x29, 0xe6, 0x6d, 0x75, 0x8e, 0x4d, 0x98, 0x16, 0xf4, 0x8c, - 0xc4, 0x26, 0xbc, 0x3e, 0xa0, 0x05, 0x28, 0x5f, 0x70, 0x2f, 0x65, 0x91, 0x4a, 0xb9, 0xe2, 0x4e, - 0x5f, 0xf0, 0x23, 0x16, 0xa1, 0x23, 0xa8, 0x45, 0xb4, 0xd7, 0x0b, 0xe3, 0x9e, 0x77, 0x12, 0x92, - 0x28, 0xe0, 0xd6, 0xd4, 0x4a, 0x69, 0xb5, 0xba, 0xde, 0x6e, 0xb3, 0xc4, 0x6f, 0x8f, 0xc7, 0xd2, - 0xde, 0xd5, 0x1e, 0xaf, 0x94, 0x83, 0x13, 0x0b, 0x76, 0xe9, 0xce, 0x45, 0x79, 0x99, 0xfd, 0x12, - 0xd0, 0xa8, 0x11, 0x6a, 0x40, 0x49, 0xa6, 0xad, 0xab, 0x22, 0x3f, 0x25, 0xd6, 0x73, 0x1c, 0xa5, - 0x24, 0xc3, 0xaa, 0x0e, 0x2f, 0x8a, 0xdf, 0x14, 0x5a, 0x3d, 0x58, 0xd2, 0xad, 0x36, 0x00, 0x0e, - 0x04, 0x16, 0xe4, 0x96, 0x55, 0xfe, 0x1c, 0xa6, 0xb9, 0x34, 0x57, 0x51, 0xab, 0xeb, 0x0b, 0xc3, - 0xc5, 0xd2, 0xb1, 0xb4, 0x4d, 0xeb, 0xaf, 0x02, 0xac, 0xec, 0x10, 0x71, 0xd0, 0xe9, 0x1e, 0xb2, - 0x34, 0x3e, 0xdb, 0x48, 0xc5, 0x29, 0x89, 0x45, 0xe8, 0xab, 0x49, 0xcd, 0x2e, 0x7c, 0x08, 0x55, - 0x1e, 0x26, 0x9e, 0x8f, 0xa3, 0x48, 0xde, 0x58, 0x36, 0x8d, 0x0b, 0x93, 0x2d, 0x1c, 0x45, 0x9d, - 0x00, 0x21, 0x98, 0x3a, 0x61, 0xb4, 0x6f, 0xd2, 0x50, 0xdf, 0xa8, 0x06, 0x45, 0x41, 0x4d, 0xb5, - 0x8b, 0x82, 0xa2, 0x47, 0x50, 0xe5, 0xcc, 0xf7, 0x70, 0x10, 0x48, 0x0c, 0x6a, 0xaa, 0x2a, 0x2e, - 0x70, 0xe6, 0x6f, 0x68, 0x09, 0xfa, 0x08, 0xee, 0x0b, 0xea, 0x9d, 0x52, 0x2e, 0xac, 0x69, 0xa5, - 0x2c, 0x0b, 0xfa, 0x9a, 0x72, 0xd1, 0xfa, 0xbb, 0x00, 0x8f, 0x3f, 0x00, 0xd1, 0x4c, 0x88, 0x0d, - 0x33, 0x29, 0x27, 0x2c, 0xc6, 0x7d, 0x92, 0x6d, 0x4e, 0x76, 0x96, 0xba, 0x04, 0x73, 0x7e, 0x41, - 0x59, 0x60, 0x30, 0x0e, 0xce, 0x12, 0x7b, 0xc0, 0x68, 0xa2, 0x90, 0xce, 0xb8, 0xea, 0x1b, 0xad, - 0xc0, 0xac, 0xcc, 0x57, 0xc8, 0xeb, 0x64, 0xc2, 0x19, 0xd8, 0x30, 0x51, 0x08, 0xf4, 0x24, 0x27, - 0x8c, 0xbe, 0x23, 0xbe, 0x90, 0x7a, 0x8d, 0xb7, 0x62, 0x24, 0x9d, 0xa0, 0xf5, 0x6f, 0x09, 0x1e, - 0x39, 0xb2, 0x9b, 0x58, 0x90, 0x83, 0x4e, 0x77, 0x3b, 0xe4, 0x09, 0x16, 0xfe, 0xa9, 0x9b, 0x46, - 0x84, 0x4f, 0x28, 0xea, 0xcc, 0x70, 0x51, 0xbf, 0x00, 0x24, 0xf5, 0x09, 0x66, 0x22, 0xf4, 0xc3, - 0x04, 0xc7, 0x62, 0xd0, 0xed, 0xcd, 0xa2, 0x55, 0x70, 0x1b, 0x3c, 0x4c, 0xba, 0x57, 0xca, 0x4e, - 0x30, 0x02, 0x1b, 0x46, 0x60, 0x3f, 0x85, 0x9a, 0xbc, 0x4f, 0xce, 0x7b, 0x9c, 0xf6, 0x8f, 0x09, - 0x33, 0xe5, 0x98, 0x33, 0xd2, 0x3d, 0x25, 0x44, 0x4f, 0x40, 0x09, 0x48, 0x90, 0x59, 0xe9, 0x36, - 0xce, 0x6a, 0xa1, 0x31, 0xba, 0xb1, 0xa1, 0x0d, 0x28, 0x25, 0x61, 0x6c, 0x8a, 0x23, 0x3f, 0xe5, - 0x16, 0xc6, 0xd4, 0x93, 0xc2, 0xb2, 0xaa, 0xf6, 0x74, 0x4c, 0xbb, 0x61, 0x2c, 0x23, 0x99, 0xeb, - 0x54, 0xf7, 0xef, 0xeb, 0x48, 0x5a, 0x24, 0x27, 0x00, 0x05, 0xd0, 0x20, 0xef, 0x05, 0xc3, 0x1e, - 0x16, 0x82, 0x85, 0xc7, 0xa9, 0x20, 0xdc, 0xaa, 0xa8, 0x45, 0xfd, 0x56, 0x2d, 0xea, 0x0d, 0xa5, - 0x6e, 0x3b, 0xd2, 0x79, 0x63, 0xe0, 0xab, 0x77, 0xb6, 0x4e, 0xae, 0x4b, 0xed, 0x4d, 0x68, 0x8e, - 0x33, 0xbc, 0xd3, 0xde, 0xfe, 0x59, 0x81, 0x95, 0xc9, 0x68, 0xcc, 0xa8, 0x2e, 0x43, 0x85, 0x51, - 0xda, 0xf7, 0xf2, 0xb3, 0x2a, 0x05, 0x7b, 0x72, 0x56, 0xbf, 0x84, 0xe6, 0xf5, 0x96, 0xcb, 0x59, - 0x17, 0xd9, 0x6b, 0xf9, 0x20, 0xc9, 0x77, 0x5c, 0xab, 0xd0, 0x33, 0x68, 0xe4, 0x5d, 0x54, 0x58, - 0x5d, 0xc4, 0x7a, 0x4e, 0x3e, 0x2e, 0x7a, 0x9f, 0x08, 0x1c, 0x60, 0x81, 0xcd, 0xf4, 0xe5, 0xa3, - 0xbf, 0x35, 0x2a, 0x74, 0x01, 0x8b, 0x79, 0x97, 0x5c, 0x0b, 0xaa, 0xaa, 0x05, 0x2f, 0x6f, 0x68, - 0x81, 0x79, 0x35, 0x73, 0xa3, 0x3a, 0xdc, 0x89, 0x85, 0x64, 0x9c, 0x0e, 0x3d, 0x81, 0x2a, 0xd3, - 0x0d, 0x54, 0x23, 0xa3, 0x16, 0x54, 0x4d, 0x3e, 0x18, 0xb1, 0x9c, 0x9d, 0xc1, 0x73, 0x3f, 0x35, - 0xfe, 0xb9, 0x9f, 0xce, 0x3f, 0xf7, 0x6d, 0x28, 0x33, 0xc2, 0xd3, 0x48, 0xa8, 0xf9, 0xab, 0xad, - 0x2f, 0x2a, 0xe8, 0x79, 0xc8, 0x4a, 0xeb, 0x1a, 0xab, 0x91, 0x85, 0xaa, 0x8c, 0x2c, 0xd4, 0x1a, - 0x34, 0xa5, 0x45, 0x60, 0xfc, 0x3d, 0x96, 0x46, 0xe4, 0x6a, 0xf5, 0xe6, 0x79, 0x98, 0xe4, 0xab, - 0x31, 0xf2, 0x70, 0xcc, 0x0e, 0x3d, 0x1c, 0x68, 0x17, 0xee, 0x9f, 0x12, 0x1c, 0x10, 0xc6, 0xad, - 0x39, 0x55, 0xdd, 0xf5, 0xdb, 0x55, 0xf7, 0xb5, 0x76, 0xd2, 0xf5, 0xcc, 0x42, 0x20, 0x06, 0x0b, - 0xe6, 0xd3, 0x13, 0x34, 0xdf, 0xb9, 0x9a, 0x8a, 0xfd, 0xc3, 0x9d, 0x62, 0x1f, 0xd2, 0xe1, 0xbe, - 0x3d, 0x38, 0x1d, 0xd5, 0xa0, 0x17, 0xd0, 0x20, 0x31, 0x3e, 0x96, 0xdb, 0x7c, 0x42, 0xb0, 0x48, - 0x19, 0xe1, 0x56, 0x7d, 0xa5, 0xb4, 0x5a, 0x5b, 0xaf, 0x67, 0xd5, 0x7e, 0xa5, 0xe5, 0x6e, 0xdd, - 0x18, 0x9a, 0x33, 0x47, 0x9b, 0x50, 0x67, 0x61, 0xac, 0x7e, 0x8e, 0x45, 0xd8, 0x27, 0x34, 0x15, - 0x56, 0x43, 0xfd, 0x86, 0x2d, 0xb5, 0x35, 0x99, 0x6a, 0x67, 0x64, 0xaa, 0xbd, 0x6d, 0xc8, 0x94, - 0x5b, 0x33, 0x1e, 0x87, 0xda, 0x01, 0x39, 0x30, 0xaf, 0xf8, 0x8b, 0x7c, 0x56, 0x33, 0xc6, 0x65, - 0xcd, 0xdf, 0x14, 0xa5, 0x2e, 0xe9, 0x0d, 0x8e, 0xa2, 0x4c, 0x60, 0xbf, 0x06, 0x7b, 0xf2, 0xc4, - 0xde, 0xe5, 0x49, 0xb0, 0x5f, 0xc0, 0x6c, 0xbe, 0x3b, 0x77, 0xf2, 0x7d, 0x05, 0xd6, 0xa4, 0xea, - 0xdf, 0x25, 0xce, 0xf3, 0x67, 0x00, 0x57, 0x75, 0x47, 0x33, 0x30, 0xb5, 0xb7, 0xbf, 0xe7, 0x34, - 0xee, 0xa1, 0x79, 0x98, 0x7b, 0xe3, 0x76, 0x0e, 0xba, 0x9e, 0xb3, 0xb7, 0xb1, 0xb9, 0xeb, 0x6c, - 0x37, 0x0a, 0xcf, 0x7f, 0x85, 0xf9, 0x91, 0x85, 0x40, 0x16, 0x34, 0x77, 0x9d, 0x9d, 0x8d, 0xad, - 0x9f, 0xbd, 0x8d, 0xad, 0x2d, 0xa7, 0x7b, 0xe8, 0xed, 0xbb, 0x5e, 0xb7, 0xb3, 0xd7, 0xb8, 0x87, - 0x00, 0xca, 0x5a, 0xd4, 0x28, 0xa0, 0x3a, 0x54, 0x5d, 0xe7, 0xa7, 0x23, 0xe7, 0xe0, 0x50, 0x29, - 0x8b, 0x52, 0xe9, 0x3a, 0x3f, 0x3a, 0x5b, 0x87, 0x8d, 0x92, 0xbc, 0x74, 0xdb, 0xdd, 0xef, 0x36, - 0xa6, 0xd6, 0xff, 0x99, 0x86, 0x72, 0x67, 0x5f, 0x52, 0x2a, 0xf4, 0x1d, 0xcc, 0x6e, 0x31, 0x82, - 0x05, 0xd1, 0x54, 0x15, 0x8d, 0xe3, 0xae, 0xf6, 0xe2, 0x48, 0xdb, 0x1c, 0x49, 0xb3, 0xa5, 0xb3, - 0xe6, 0x48, 0xff, 0xc7, 0xf9, 0x6b, 0xa8, 0x0c, 0xd8, 0x37, 0x5a, 0xc8, 0xe8, 0xde, 0x35, 0x36, - 0x6e, 0x8f, 0x0b, 0x88, 0x1c, 0x80, 0xdd, 0x90, 0x67, 0x9e, 0xf6, 0xc0, 0xe4, 0x4a, 0x98, 0xb9, - 0x2f, 0x8f, 0xd5, 0x99, 0xdf, 0x80, 0x4d, 0x98, 0xbb, 0xc6, 0xe5, 0xd1, 0x92, 0xc2, 0x30, 0x8e, - 0xdf, 0x4f, 0xcc, 0xe1, 0x7b, 0x98, 0xd3, 0xd5, 0x33, 0xc4, 0x0e, 0x8d, 0xe5, 0xc5, 0x13, 0xdd, - 0x3b, 0x50, 0xbb, 0xce, 0x70, 0x91, 0x3d, 0x96, 0xf6, 0x66, 0xd9, 0x4c, 0xa6, 0xc4, 0x68, 0x17, - 0xd0, 0x28, 0x5d, 0x45, 0x0f, 0x73, 0x29, 0x8d, 0xe1, 0xb1, 0x13, 0x81, 0xbd, 0x83, 0xa5, 0x89, - 0x7c, 0x0f, 0x3d, 0xcd, 0x70, 0x7c, 0x90, 0xb2, 0xda, 0x9f, 0xde, 0x64, 0x66, 0x90, 0xf7, 0xc0, - 0x9a, 0xf4, 0x00, 0xa2, 0x4f, 0x6e, 0x43, 0x2e, 0xec, 0xa7, 0xb7, 0x7a, 0x45, 0x37, 0x1f, 0xff, - 0xf2, 0xa8, 0x17, 0x8a, 0xd3, 0xf4, 0xb8, 0xed, 0xd3, 0xfe, 0x9a, 0xe9, 0x93, 0xfe, 0x73, 0xe8, - 0xd3, 0x68, 0x8d, 0x25, 0xfe, 0x71, 0x59, 0x9d, 0xbe, 0xfa, 0x2f, 0x00, 0x00, 0xff, 0xff, 0x78, - 0x34, 0x20, 0xb1, 0x97, 0x0e, 0x00, 0x00, + // 1431 bytes of a gzipped FileDescriptorProto + 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0x9c, 0x57, 0xdb, 0x56, 0xdb, 0x46, + 0x17, 0x8e, 0x6d, 0x70, 0xf0, 0x36, 0xd8, 0x66, 0x62, 0xf8, 0x8d, 0x59, 0x7f, 0x42, 0x9c, 0xa6, + 0x25, 0xe9, 0x5a, 0xa6, 0xa1, 0x17, 0x6d, 0xd3, 0xd5, 0xae, 0x70, 0x50, 0x88, 0x1a, 0x02, 0xae, + 0x80, 0x8b, 0xf6, 0x46, 0x1d, 0xa4, 0xc1, 0x28, 0xc8, 0x1a, 0x75, 0x66, 0x04, 0xe1, 0x09, 0xda, + 0x07, 0xe8, 0x03, 0xf4, 0x11, 0xfa, 0x0a, 0x7d, 0xa9, 0x5e, 0x77, 0xcd, 0x41, 0x46, 0xc6, 0x72, + 0x80, 0xde, 0x69, 0xf6, 0x69, 0xbe, 0x7d, 0x1a, 0x7f, 0x86, 0x59, 0x16, 0x7b, 0x6b, 0x01, 0xed, + 0xc6, 0x8c, 0x0a, 0x8a, 0x4a, 0x2c, 0xf6, 0xda, 0xcd, 0x30, 0x38, 0x27, 0x67, 0x81, 0x70, 0x49, + 0x9f, 0x11, 0xce, 0xb5, 0xaa, 0xbd, 0x90, 0x4a, 0x83, 0x28, 0x2b, 0x9e, 0x4f, 0xc5, 0x3c, 0x88, + 0x8d, 0x68, 0xb9, 0x4f, 0x69, 0x3f, 0x24, 0x6b, 0xea, 0x74, 0x9c, 0x9c, 0xac, 0x91, 0x41, 0x2c, + 0x2e, 0x8d, 0xf2, 0xe1, 0x75, 0xa5, 0x9f, 0x30, 0x2c, 0x02, 0x1a, 0x69, 0x7d, 0x67, 0x0d, 0x1a, + 0x3b, 0x44, 0x58, 0xea, 0x0a, 0x87, 0xfc, 0x9a, 0x10, 0x2e, 0xd0, 0x32, 0x54, 0x34, 0x14, 0x37, + 0xf0, 0x5b, 0x85, 0x95, 0xc2, 0x6a, 0xc5, 0x99, 0xd1, 0x02, 0xdb, 0xef, 0xfc, 0x56, 0x80, 0xe6, + 0x51, 0xec, 0x63, 0x41, 0xde, 0x11, 0xc1, 0x02, 0x6f, 0xe8, 0xf5, 0x19, 0x4c, 0x05, 0xd1, 0x09, + 0x55, 0x0e, 0xd5, 0xf5, 0x07, 0x5d, 0x03, 0xb4, 0xab, 0x63, 0xdb, 0xd1, 0x09, 0x75, 0x94, 0x01, + 0xea, 0xc0, 0x1c, 0x3e, 0xef, 0xbb, 0x5e, 0x9c, 0xb8, 0x09, 0xc7, 0x7d, 0xd2, 0x2a, 0xad, 0x14, + 0x56, 0x8b, 0x4e, 0x15, 0x9f, 0xf7, 0xb7, 0xe2, 0xe4, 0x48, 0x8a, 0xa4, 0xcd, 0x00, 0x7f, 0xc8, + 0xd8, 0x4c, 0x69, 0x9b, 0x01, 0xfe, 0x90, 0xda, 0x74, 0x8e, 0x60, 0x61, 0x87, 0x08, 0x3b, 0xba, + 0x8a, 0x6f, 0x90, 0xfc, 0x1f, 0xc0, 0x14, 0xed, 0x2a, 0x81, 0x8a, 0x91, 0xd8, 0xbe, 0x54, 0x73, + 0xc1, 0x08, 0x1e, 0xb8, 0x67, 0xe4, 0xb2, 0x55, 0xd4, 0x6a, 0x2d, 0x79, 0x4b, 0x2e, 0x3b, 0xbf, + 0x17, 0x61, 0xf1, 0x7a, 0x5c, 0x1e, 0xd3, 0x88, 0x13, 0xb4, 0x3a, 0x92, 0x62, 0x73, 0x98, 0x62, + 0xd6, 0x56, 0xe7, 0xd8, 0x84, 0x69, 0x41, 0xcf, 0x48, 0x64, 0xc2, 0xeb, 0x03, 0x5a, 0x80, 0xf2, + 0x05, 0x77, 0x13, 0x16, 0xaa, 0x94, 0x2b, 0xce, 0xf4, 0x05, 0x3f, 0x62, 0x21, 0x3a, 0x82, 0x5a, + 0x48, 0xfb, 0xfd, 0x20, 0xea, 0xbb, 0x27, 0x01, 0x09, 0x7d, 0xde, 0x9a, 0x5a, 0x29, 0xad, 0x56, + 0xd7, 0xbb, 0x5d, 0x16, 0x7b, 0xdd, 0x7c, 0x2c, 0xdd, 0x5d, 0xed, 0xf1, 0x5a, 0x39, 0x58, 0x91, + 0x60, 0x97, 0xce, 0x5c, 0x98, 0x95, 0xb5, 0x5f, 0x01, 0x1a, 0x37, 0x42, 0x0d, 0x28, 0xc9, 0xb4, + 0x75, 0x55, 0xe4, 0xa7, 0xc4, 0x7a, 0x8e, 0xc3, 0x84, 0xa4, 0x58, 0xd5, 0xe1, 0x65, 0xf1, 0xeb, + 0x42, 0xa7, 0x0f, 0x4b, 0xba, 0xd5, 0x06, 0xc0, 0x81, 0xc0, 0x82, 0xdc, 0xb2, 0xca, 0x9f, 0xc3, + 0x34, 0x97, 0xe6, 0x2a, 0x6a, 0x75, 0x7d, 0xe1, 0x7a, 0xb1, 0x74, 0x2c, 0x6d, 0xd3, 0xf9, 0xb3, + 0x00, 0x2b, 0x3b, 0x44, 0x1c, 0xd8, 0xbd, 0x43, 0x96, 0x44, 0x67, 0x1b, 0x89, 0x38, 0x25, 0x91, + 0x08, 0x3c, 0x35, 0xa9, 0xe9, 0x85, 0x0f, 0xa1, 0xca, 0x83, 0xd8, 0xf5, 0x70, 0x18, 0xca, 0x1b, + 0xcb, 0xa6, 0x71, 0x41, 0xbc, 0x85, 0xc3, 0xd0, 0xf6, 0x11, 0x82, 0xa9, 0x13, 0x46, 0x07, 0x26, + 0x0d, 0xf5, 0x8d, 0x6a, 0x50, 0x14, 0xd4, 0x54, 0xbb, 0x28, 0x28, 0x7a, 0x04, 0x55, 0xce, 0x3c, + 0x17, 0xfb, 0xbe, 0xc4, 0xa0, 0xa6, 0xaa, 0xe2, 0x00, 0x67, 0xde, 0x86, 0x96, 0xa0, 0xff, 0xc1, + 0x7d, 0x41, 0xdd, 0x53, 0xca, 0x45, 0x6b, 0x5a, 0x29, 0xcb, 0x82, 0xbe, 0xa1, 0x5c, 0x74, 0xfe, + 0x2a, 0xc0, 0xe3, 0x8f, 0x40, 0x34, 0x13, 0xd2, 0x86, 0x99, 0x84, 0x13, 0x16, 0xe1, 0x01, 0x49, + 0x37, 0x27, 0x3d, 0x4b, 0x5d, 0x8c, 0x39, 0xbf, 0xa0, 0xcc, 0x37, 0x18, 0x87, 0x67, 0x89, 0xdd, + 0x67, 0x34, 0x56, 0x48, 0x67, 0x1c, 0xf5, 0x8d, 0x56, 0x60, 0x56, 0xe6, 0x2b, 0xe4, 0x75, 0x32, + 0xe1, 0x14, 0x6c, 0x10, 0x2b, 0x04, 0x7a, 0x92, 0x63, 0x46, 0xdf, 0x13, 0x4f, 0x48, 0xbd, 0xc6, + 0x5b, 0x31, 0x12, 0xdb, 0xef, 0xfc, 0x53, 0x82, 0x47, 0x96, 0xec, 0x26, 0x16, 0xe4, 0xc0, 0xee, + 0x6d, 0x07, 0x3c, 0xc6, 0xc2, 0x3b, 0x75, 0x92, 0x90, 0xf0, 0x09, 0x45, 0x9d, 0xb9, 0x5e, 0xd4, + 0x2f, 0x00, 0x49, 0x7d, 0x8c, 0x99, 0x08, 0xbc, 0x20, 0xc6, 0x91, 0x18, 0x76, 0x7b, 0xb3, 0xd8, + 0x2a, 0x38, 0x0d, 0x1e, 0xc4, 0xbd, 0x2b, 0xa5, 0xed, 0x8f, 0xc1, 0x86, 0x31, 0xd8, 0x4f, 0xa1, + 0x26, 0xef, 0x93, 0xf3, 0x1e, 0x25, 0x83, 0x63, 0xc2, 0x4c, 0x39, 0xe6, 0x8c, 0x74, 0x4f, 0x09, + 0xd1, 0x13, 0x50, 0x02, 0xe2, 0xa7, 0x56, 0xba, 0x8d, 0xb3, 0x5a, 0x68, 0x8c, 0x6e, 0x6c, 0x68, + 0x03, 0x4a, 0x71, 0x10, 0x99, 0xe2, 0xc8, 0x4f, 0xb9, 0x85, 0x11, 0x75, 0xa5, 0xb0, 0xac, 0xaa, + 0x3d, 0x1d, 0xd1, 0x5e, 0x10, 0xc9, 0x48, 0xe6, 0x3a, 0xd5, 0xfd, 0xfb, 0x3a, 0x92, 0x16, 0xc9, + 0x09, 0x40, 0x3e, 0x34, 0xc8, 0x07, 0xc1, 0xb0, 0x8b, 0x85, 0x60, 0xc1, 0x71, 0x22, 0x08, 0x6f, + 0x55, 0xd4, 0xa2, 0x7e, 0xa3, 0x16, 0xf5, 0x86, 0x52, 0x77, 0x2d, 0xe9, 0xbc, 0x31, 0xf4, 0xd5, + 0x3b, 0x5b, 0x27, 0xa3, 0xd2, 0xf6, 0x26, 0x34, 0xf3, 0x0c, 0xef, 0xb4, 0xb7, 0x7f, 0x54, 0x60, + 0x65, 0x32, 0x1a, 0x33, 0xaa, 0xcb, 0x50, 0x61, 0x94, 0x0e, 0xdc, 0xec, 0xac, 0x4a, 0xc1, 0x9e, + 0x9c, 0xd5, 0x17, 0xd0, 0x1c, 0x6d, 0xb9, 0x9c, 0x75, 0x91, 0xbe, 0x96, 0x0f, 0xe2, 0x6c, 0xc7, + 0xb5, 0x0a, 0x3d, 0x83, 0x46, 0xd6, 0x45, 0x85, 0xd5, 0x45, 0xac, 0x67, 0xe4, 0x79, 0xd1, 0x07, + 0x44, 0x60, 0x1f, 0x0b, 0x6c, 0xa6, 0x2f, 0x1b, 0xfd, 0x9d, 0x51, 0xa1, 0x0b, 0x58, 0xcc, 0xba, + 0x64, 0x5a, 0x50, 0x55, 0x2d, 0x78, 0x75, 0x43, 0x0b, 0xcc, 0xab, 0x99, 0x19, 0xd5, 0xeb, 0x9d, + 0x58, 0x88, 0xf3, 0x74, 0xe8, 0x09, 0x54, 0x99, 0x6e, 0xa0, 0x1a, 0x19, 0xb5, 0xa0, 0x6a, 0xf2, + 0xc1, 0x88, 0xe5, 0xec, 0x0c, 0x9f, 0xfb, 0xa9, 0xfc, 0xe7, 0x7e, 0x3a, 0xfb, 0xdc, 0x77, 0xa1, + 0xcc, 0x08, 0x4f, 0x42, 0xa1, 0xe6, 0xaf, 0xb6, 0xbe, 0xa8, 0xa0, 0x67, 0x21, 0x2b, 0xad, 0x63, + 0xac, 0xc6, 0x16, 0xaa, 0x32, 0xb6, 0x50, 0x6b, 0xd0, 0x94, 0x16, 0xbe, 0xf1, 0x77, 0x59, 0x12, + 0x92, 0xab, 0xd5, 0x9b, 0xe7, 0x41, 0x9c, 0xad, 0xc6, 0xd8, 0xc3, 0x31, 0x7b, 0xed, 0xe1, 0x40, + 0xbb, 0x70, 0xff, 0x94, 0x60, 0x9f, 0x30, 0xde, 0x9a, 0x53, 0xd5, 0x5d, 0xbf, 0x5d, 0x75, 0xdf, + 0x68, 0x27, 0x5d, 0xcf, 0x34, 0x04, 0x62, 0xb0, 0x60, 0x3e, 0x5d, 0x41, 0xb3, 0x9d, 0xab, 0xa9, + 0xd8, 0xdf, 0xdf, 0x29, 0xf6, 0x21, 0xbd, 0xde, 0xb7, 0x07, 0xa7, 0xe3, 0x1a, 0xf4, 0x12, 0x1a, + 0x24, 0xc2, 0xc7, 0x72, 0x9b, 0x4f, 0x08, 0x16, 0x09, 0x23, 0xbc, 0x55, 0x5f, 0x29, 0xad, 0xd6, + 0xd6, 0xeb, 0x69, 0xb5, 0x5f, 0x6b, 0xb9, 0x53, 0x37, 0x86, 0xe6, 0xcc, 0xd1, 0x26, 0xd4, 0x59, + 0x10, 0xa9, 0x9f, 0x63, 0x11, 0x0c, 0x08, 0x4d, 0x44, 0xab, 0xa1, 0x7e, 0xc3, 0x96, 0xba, 0x9a, + 0x4c, 0x75, 0x53, 0x32, 0xd5, 0xdd, 0x36, 0x64, 0xca, 0xa9, 0x19, 0x8f, 0x43, 0xed, 0x80, 0x2c, + 0x98, 0x57, 0xfc, 0x45, 0x3e, 0xab, 0x29, 0xe3, 0x6a, 0xcd, 0xdf, 0x14, 0xa5, 0x2e, 0xe9, 0x0d, + 0x0e, 0xc3, 0x54, 0xd0, 0x7e, 0x03, 0xed, 0xc9, 0x13, 0x7b, 0x97, 0x27, 0xa1, 0xfd, 0x12, 0x66, + 0xb3, 0xdd, 0xb9, 0x93, 0xef, 0x6b, 0x68, 0x4d, 0xaa, 0xfe, 0x9d, 0x9e, 0xa5, 0xbd, 0x94, 0x4e, + 0x1c, 0xd8, 0x3d, 0x99, 0xe6, 0x08, 0x9d, 0x78, 0x01, 0x15, 0xfd, 0x23, 0x94, 0x47, 0xb0, 0x8c, + 0x83, 0x22, 0x40, 0x33, 0x9e, 0xf9, 0x7a, 0xfe, 0x0c, 0xe0, 0xaa, 0x8f, 0x68, 0x06, 0xa6, 0xf6, + 0xf6, 0xf7, 0xac, 0xc6, 0x3d, 0x34, 0x0f, 0x73, 0x6f, 0x1d, 0xfb, 0xa0, 0xe7, 0x5a, 0x7b, 0x1b, + 0x9b, 0xbb, 0xd6, 0x76, 0xa3, 0xf0, 0xfc, 0x17, 0x98, 0x1f, 0x5b, 0x30, 0xd4, 0x82, 0xe6, 0xae, + 0xb5, 0xb3, 0xb1, 0xf5, 0x93, 0xbb, 0xb1, 0xb5, 0x65, 0xf5, 0x0e, 0xdd, 0x7d, 0xc7, 0xed, 0xd9, + 0x7b, 0x8d, 0x7b, 0x08, 0xa0, 0xac, 0x45, 0x8d, 0x02, 0xaa, 0x43, 0xd5, 0xb1, 0x7e, 0x3c, 0xb2, + 0x0e, 0x0e, 0x95, 0xb2, 0x28, 0x95, 0x8e, 0xf5, 0x83, 0xb5, 0x75, 0xd8, 0x28, 0xc9, 0x4b, 0xb7, + 0x9d, 0xfd, 0x5e, 0x63, 0x6a, 0xfd, 0xef, 0x32, 0x94, 0xed, 0x7d, 0x89, 0x0b, 0x7d, 0x0b, 0xb3, + 0x5b, 0x8c, 0x60, 0x41, 0x34, 0xf5, 0x45, 0x79, 0x5c, 0xb8, 0xbd, 0x38, 0x36, 0x06, 0x96, 0xa4, + 0xed, 0xd2, 0x59, 0x17, 0xe9, 0xbf, 0x38, 0x7f, 0x05, 0x95, 0x21, 0x9b, 0x47, 0x0b, 0x29, 0x7d, + 0x1c, 0x61, 0xf7, 0xed, 0xbc, 0x80, 0xc8, 0x02, 0xd8, 0x0d, 0x78, 0xea, 0xd9, 0x1e, 0x9a, 0x5c, + 0x09, 0x53, 0xf7, 0xe5, 0x5c, 0x9d, 0xf9, 0x4d, 0xd9, 0x84, 0xb9, 0x91, 0xff, 0x06, 0x68, 0x49, + 0x61, 0xc8, 0xfb, 0xbf, 0x30, 0x31, 0x87, 0xef, 0x60, 0x4e, 0x57, 0xcf, 0x10, 0x45, 0x94, 0xcb, + 0xb3, 0x27, 0xba, 0xdb, 0x50, 0x1b, 0x65, 0xcc, 0xa8, 0x9d, 0x4b, 0xa3, 0xd3, 0x6c, 0x26, 0x53, + 0x6c, 0xb4, 0x0b, 0x68, 0x9c, 0xfe, 0xa2, 0x87, 0x99, 0x94, 0x72, 0x78, 0xf1, 0x44, 0x60, 0xef, + 0x61, 0x69, 0x22, 0x7f, 0x44, 0x4f, 0x53, 0x1c, 0x1f, 0xa5, 0xc0, 0xed, 0x4f, 0x6f, 0x32, 0x33, + 0xc8, 0xfb, 0xd0, 0x9a, 0xf4, 0xa0, 0xa2, 0x4f, 0x6e, 0x43, 0x56, 0xda, 0x4f, 0x6f, 0xf5, 0x2a, + 0x5f, 0x95, 0x28, 0xbb, 0xd2, 0x23, 0x25, 0xca, 0xd9, 0xf5, 0x49, 0x25, 0xda, 0x7c, 0xfc, 0xf3, + 0xa3, 0x7e, 0x20, 0x4e, 0x93, 0xe3, 0xae, 0x47, 0x07, 0x6b, 0xa6, 0xeb, 0xfa, 0xaf, 0xab, 0x47, + 0xc3, 0x35, 0x16, 0x7b, 0xc7, 0x65, 0x75, 0xfa, 0xf2, 0xdf, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf1, + 0x19, 0x7e, 0x85, 0x48, 0x0f, 0x00, 0x00, } diff --git a/rpc/participant.psrpc.go b/rpc/participant.psrpc.go index c59ad874..046e078e 100644 --- a/rpc/participant.psrpc.go +++ b/rpc/participant.psrpc.go @@ -14,7 +14,7 @@ import ( "github.com/livekit/psrpc/version" ) import livekit1 "github.com/livekit/protocol/livekit" -import livekit6 "github.com/livekit/protocol/livekit" +import livekit7 "github.com/livekit/protocol/livekit" var _ = version.PsrpcVersion_0_6 @@ -23,13 +23,13 @@ var _ = version.PsrpcVersion_0_6 // ============================ type ParticipantClient[ParticipantTopicType ~string] interface { - RemoveParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit6.RoomParticipantIdentity, opts ...psrpc.RequestOption) (*livekit6.RemoveParticipantResponse, error) + RemoveParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit7.RoomParticipantIdentity, opts ...psrpc.RequestOption) (*livekit7.RemoveParticipantResponse, error) - MutePublishedTrack(ctx context.Context, participant ParticipantTopicType, req *livekit6.MuteRoomTrackRequest, opts ...psrpc.RequestOption) (*livekit6.MuteRoomTrackResponse, error) + MutePublishedTrack(ctx context.Context, participant ParticipantTopicType, req *livekit7.MuteRoomTrackRequest, opts ...psrpc.RequestOption) (*livekit7.MuteRoomTrackResponse, error) - UpdateParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit6.UpdateParticipantRequest, opts ...psrpc.RequestOption) (*livekit1.ParticipantInfo, error) + UpdateParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit7.UpdateParticipantRequest, opts ...psrpc.RequestOption) (*livekit1.ParticipantInfo, error) - UpdateSubscriptions(ctx context.Context, participant ParticipantTopicType, req *livekit6.UpdateSubscriptionsRequest, opts ...psrpc.RequestOption) (*livekit6.UpdateSubscriptionsResponse, error) + UpdateSubscriptions(ctx context.Context, participant ParticipantTopicType, req *livekit7.UpdateSubscriptionsRequest, opts ...psrpc.RequestOption) (*livekit7.UpdateSubscriptionsResponse, error) // Close immediately, without waiting for pending RPCs Close() @@ -40,13 +40,13 @@ type ParticipantClient[ParticipantTopicType ~string] interface { // ================================ type ParticipantServerImpl interface { - RemoveParticipant(context.Context, *livekit6.RoomParticipantIdentity) (*livekit6.RemoveParticipantResponse, error) + RemoveParticipant(context.Context, *livekit7.RoomParticipantIdentity) (*livekit7.RemoveParticipantResponse, error) - MutePublishedTrack(context.Context, *livekit6.MuteRoomTrackRequest) (*livekit6.MuteRoomTrackResponse, error) + MutePublishedTrack(context.Context, *livekit7.MuteRoomTrackRequest) (*livekit7.MuteRoomTrackResponse, error) - UpdateParticipant(context.Context, *livekit6.UpdateParticipantRequest) (*livekit1.ParticipantInfo, error) + UpdateParticipant(context.Context, *livekit7.UpdateParticipantRequest) (*livekit1.ParticipantInfo, error) - UpdateSubscriptions(context.Context, *livekit6.UpdateSubscriptionsRequest) (*livekit6.UpdateSubscriptionsResponse, error) + UpdateSubscriptions(context.Context, *livekit7.UpdateSubscriptionsRequest) (*livekit7.UpdateSubscriptionsResponse, error) } // ============================ @@ -102,20 +102,20 @@ func NewParticipantClient[ParticipantTopicType ~string](bus psrpc.MessageBus, op }, nil } -func (c *participantClient[ParticipantTopicType]) RemoveParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit6.RoomParticipantIdentity, opts ...psrpc.RequestOption) (*livekit6.RemoveParticipantResponse, error) { - return client.RequestSingle[*livekit6.RemoveParticipantResponse](ctx, c.client, "RemoveParticipant", []string{string(participant)}, req, opts...) +func (c *participantClient[ParticipantTopicType]) RemoveParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit7.RoomParticipantIdentity, opts ...psrpc.RequestOption) (*livekit7.RemoveParticipantResponse, error) { + return client.RequestSingle[*livekit7.RemoveParticipantResponse](ctx, c.client, "RemoveParticipant", []string{string(participant)}, req, opts...) } -func (c *participantClient[ParticipantTopicType]) MutePublishedTrack(ctx context.Context, participant ParticipantTopicType, req *livekit6.MuteRoomTrackRequest, opts ...psrpc.RequestOption) (*livekit6.MuteRoomTrackResponse, error) { - return client.RequestSingle[*livekit6.MuteRoomTrackResponse](ctx, c.client, "MutePublishedTrack", []string{string(participant)}, req, opts...) +func (c *participantClient[ParticipantTopicType]) MutePublishedTrack(ctx context.Context, participant ParticipantTopicType, req *livekit7.MuteRoomTrackRequest, opts ...psrpc.RequestOption) (*livekit7.MuteRoomTrackResponse, error) { + return client.RequestSingle[*livekit7.MuteRoomTrackResponse](ctx, c.client, "MutePublishedTrack", []string{string(participant)}, req, opts...) } -func (c *participantClient[ParticipantTopicType]) UpdateParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit6.UpdateParticipantRequest, opts ...psrpc.RequestOption) (*livekit1.ParticipantInfo, error) { +func (c *participantClient[ParticipantTopicType]) UpdateParticipant(ctx context.Context, participant ParticipantTopicType, req *livekit7.UpdateParticipantRequest, opts ...psrpc.RequestOption) (*livekit1.ParticipantInfo, error) { return client.RequestSingle[*livekit1.ParticipantInfo](ctx, c.client, "UpdateParticipant", []string{string(participant)}, req, opts...) } -func (c *participantClient[ParticipantTopicType]) UpdateSubscriptions(ctx context.Context, participant ParticipantTopicType, req *livekit6.UpdateSubscriptionsRequest, opts ...psrpc.RequestOption) (*livekit6.UpdateSubscriptionsResponse, error) { - return client.RequestSingle[*livekit6.UpdateSubscriptionsResponse](ctx, c.client, "UpdateSubscriptions", []string{string(participant)}, req, opts...) +func (c *participantClient[ParticipantTopicType]) UpdateSubscriptions(ctx context.Context, participant ParticipantTopicType, req *livekit7.UpdateSubscriptionsRequest, opts ...psrpc.RequestOption) (*livekit7.UpdateSubscriptionsResponse, error) { + return client.RequestSingle[*livekit7.UpdateSubscriptionsResponse](ctx, c.client, "UpdateSubscriptions", []string{string(participant)}, req, opts...) } func (s *participantClient[ParticipantTopicType]) Close() { diff --git a/rpc/room.psrpc.go b/rpc/room.psrpc.go index a29ef514..07888d09 100644 --- a/rpc/room.psrpc.go +++ b/rpc/room.psrpc.go @@ -14,7 +14,7 @@ import ( "github.com/livekit/psrpc/version" ) import livekit1 "github.com/livekit/protocol/livekit" -import livekit6 "github.com/livekit/protocol/livekit" +import livekit7 "github.com/livekit/protocol/livekit" var _ = version.PsrpcVersion_0_6 @@ -23,11 +23,11 @@ var _ = version.PsrpcVersion_0_6 // ===================== type RoomClient[RoomTopicType ~string] interface { - DeleteRoom(ctx context.Context, room RoomTopicType, req *livekit6.DeleteRoomRequest, opts ...psrpc.RequestOption) (*livekit6.DeleteRoomResponse, error) + DeleteRoom(ctx context.Context, room RoomTopicType, req *livekit7.DeleteRoomRequest, opts ...psrpc.RequestOption) (*livekit7.DeleteRoomResponse, error) - SendData(ctx context.Context, room RoomTopicType, req *livekit6.SendDataRequest, opts ...psrpc.RequestOption) (*livekit6.SendDataResponse, error) + SendData(ctx context.Context, room RoomTopicType, req *livekit7.SendDataRequest, opts ...psrpc.RequestOption) (*livekit7.SendDataResponse, error) - UpdateRoomMetadata(ctx context.Context, room RoomTopicType, req *livekit6.UpdateRoomMetadataRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) + UpdateRoomMetadata(ctx context.Context, room RoomTopicType, req *livekit7.UpdateRoomMetadataRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) // Close immediately, without waiting for pending RPCs Close() @@ -38,11 +38,11 @@ type RoomClient[RoomTopicType ~string] interface { // ========================= type RoomServerImpl interface { - DeleteRoom(context.Context, *livekit6.DeleteRoomRequest) (*livekit6.DeleteRoomResponse, error) + DeleteRoom(context.Context, *livekit7.DeleteRoomRequest) (*livekit7.DeleteRoomResponse, error) - SendData(context.Context, *livekit6.SendDataRequest) (*livekit6.SendDataResponse, error) + SendData(context.Context, *livekit7.SendDataRequest) (*livekit7.SendDataResponse, error) - UpdateRoomMetadata(context.Context, *livekit6.UpdateRoomMetadataRequest) (*livekit1.Room, error) + UpdateRoomMetadata(context.Context, *livekit7.UpdateRoomMetadataRequest) (*livekit1.Room, error) } // ===================== @@ -95,15 +95,15 @@ func NewRoomClient[RoomTopicType ~string](bus psrpc.MessageBus, opts ...psrpc.Cl }, nil } -func (c *roomClient[RoomTopicType]) DeleteRoom(ctx context.Context, room RoomTopicType, req *livekit6.DeleteRoomRequest, opts ...psrpc.RequestOption) (*livekit6.DeleteRoomResponse, error) { - return client.RequestSingle[*livekit6.DeleteRoomResponse](ctx, c.client, "DeleteRoom", []string{string(room)}, req, opts...) +func (c *roomClient[RoomTopicType]) DeleteRoom(ctx context.Context, room RoomTopicType, req *livekit7.DeleteRoomRequest, opts ...psrpc.RequestOption) (*livekit7.DeleteRoomResponse, error) { + return client.RequestSingle[*livekit7.DeleteRoomResponse](ctx, c.client, "DeleteRoom", []string{string(room)}, req, opts...) } -func (c *roomClient[RoomTopicType]) SendData(ctx context.Context, room RoomTopicType, req *livekit6.SendDataRequest, opts ...psrpc.RequestOption) (*livekit6.SendDataResponse, error) { - return client.RequestSingle[*livekit6.SendDataResponse](ctx, c.client, "SendData", []string{string(room)}, req, opts...) +func (c *roomClient[RoomTopicType]) SendData(ctx context.Context, room RoomTopicType, req *livekit7.SendDataRequest, opts ...psrpc.RequestOption) (*livekit7.SendDataResponse, error) { + return client.RequestSingle[*livekit7.SendDataResponse](ctx, c.client, "SendData", []string{string(room)}, req, opts...) } -func (c *roomClient[RoomTopicType]) UpdateRoomMetadata(ctx context.Context, room RoomTopicType, req *livekit6.UpdateRoomMetadataRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) { +func (c *roomClient[RoomTopicType]) UpdateRoomMetadata(ctx context.Context, room RoomTopicType, req *livekit7.UpdateRoomMetadataRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) { return client.RequestSingle[*livekit1.Room](ctx, c.client, "UpdateRoomMetadata", []string{string(room)}, req, opts...) } diff --git a/rpc/roommanager.psrpc.go b/rpc/roommanager.psrpc.go index 4b532cbc..a9eece3c 100644 --- a/rpc/roommanager.psrpc.go +++ b/rpc/roommanager.psrpc.go @@ -14,7 +14,7 @@ import ( "github.com/livekit/psrpc/version" ) import livekit1 "github.com/livekit/protocol/livekit" -import livekit6 "github.com/livekit/protocol/livekit" +import livekit7 "github.com/livekit/protocol/livekit" var _ = version.PsrpcVersion_0_6 @@ -23,7 +23,7 @@ var _ = version.PsrpcVersion_0_6 // ============================ type RoomManagerClient[NodeIdTopicType ~string] interface { - CreateRoom(ctx context.Context, nodeId NodeIdTopicType, req *livekit6.CreateRoomRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) + CreateRoom(ctx context.Context, nodeId NodeIdTopicType, req *livekit7.CreateRoomRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) // Close immediately, without waiting for pending RPCs Close() @@ -34,7 +34,7 @@ type RoomManagerClient[NodeIdTopicType ~string] interface { // ================================ type RoomManagerServerImpl interface { - CreateRoom(context.Context, *livekit6.CreateRoomRequest) (*livekit1.Room, error) + CreateRoom(context.Context, *livekit7.CreateRoomRequest) (*livekit1.Room, error) } // ============================ @@ -81,7 +81,7 @@ func NewRoomManagerClient[NodeIdTopicType ~string](bus psrpc.MessageBus, opts .. }, nil } -func (c *roomManagerClient[NodeIdTopicType]) CreateRoom(ctx context.Context, nodeId NodeIdTopicType, req *livekit6.CreateRoomRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) { +func (c *roomManagerClient[NodeIdTopicType]) CreateRoom(ctx context.Context, nodeId NodeIdTopicType, req *livekit7.CreateRoomRequest, opts ...psrpc.RequestOption) (*livekit1.Room, error) { return client.RequestSingle[*livekit1.Room](ctx, c.client, "CreateRoom", []string{string(nodeId)}, req, opts...) }