blob: 9e34fa9ee1979a7abc8e541b2ab24f90a0084e8b [file] [log] [blame]
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// protoc-gen-go v1.30.0
// protoc v4.23.2
// source: google/cloud/dialogflow/v2beta1/conversation.proto
package dialogflowpb
import (
context "context"
reflect "reflect"
sync "sync"
_ "google.golang.org/genproto/googleapis/api/annotations"
grpc "google.golang.org/grpc"
codes "google.golang.org/grpc/codes"
status "google.golang.org/grpc/status"
protoreflect "google.golang.org/protobuf/reflect/protoreflect"
protoimpl "google.golang.org/protobuf/runtime/protoimpl"
timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)
const (
// Verify that this generated code is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
// Verify that runtime/protoimpl is sufficiently up-to-date.
_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)
// Enumeration of the completion status of the conversation.
type Conversation_LifecycleState int32
const (
// Unknown.
Conversation_LIFECYCLE_STATE_UNSPECIFIED Conversation_LifecycleState = 0
// Conversation is currently open for media analysis.
Conversation_IN_PROGRESS Conversation_LifecycleState = 1
// Conversation has been completed.
Conversation_COMPLETED Conversation_LifecycleState = 2
)
// Enum value maps for Conversation_LifecycleState.
var (
Conversation_LifecycleState_name = map[int32]string{
0: "LIFECYCLE_STATE_UNSPECIFIED",
1: "IN_PROGRESS",
2: "COMPLETED",
}
Conversation_LifecycleState_value = map[string]int32{
"LIFECYCLE_STATE_UNSPECIFIED": 0,
"IN_PROGRESS": 1,
"COMPLETED": 2,
}
)
func (x Conversation_LifecycleState) Enum() *Conversation_LifecycleState {
p := new(Conversation_LifecycleState)
*p = x
return p
}
func (x Conversation_LifecycleState) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Conversation_LifecycleState) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[0].Descriptor()
}
func (Conversation_LifecycleState) Type() protoreflect.EnumType {
return &file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[0]
}
func (x Conversation_LifecycleState) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Conversation_LifecycleState.Descriptor instead.
func (Conversation_LifecycleState) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0, 0}
}
// Enumeration of the different conversation stages a conversation can be in.
// Reference:
// https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages
type Conversation_ConversationStage int32
const (
// Unknown. Should never be used after a conversation is successfully
// created.
Conversation_CONVERSATION_STAGE_UNSPECIFIED Conversation_ConversationStage = 0
// The conversation should return virtual agent responses into the
// conversation.
Conversation_VIRTUAL_AGENT_STAGE Conversation_ConversationStage = 1
// The conversation should not provide responses, just listen and provide
// suggestions.
Conversation_HUMAN_ASSIST_STAGE Conversation_ConversationStage = 2
)
// Enum value maps for Conversation_ConversationStage.
var (
Conversation_ConversationStage_name = map[int32]string{
0: "CONVERSATION_STAGE_UNSPECIFIED",
1: "VIRTUAL_AGENT_STAGE",
2: "HUMAN_ASSIST_STAGE",
}
Conversation_ConversationStage_value = map[string]int32{
"CONVERSATION_STAGE_UNSPECIFIED": 0,
"VIRTUAL_AGENT_STAGE": 1,
"HUMAN_ASSIST_STAGE": 2,
}
)
func (x Conversation_ConversationStage) Enum() *Conversation_ConversationStage {
p := new(Conversation_ConversationStage)
*p = x
return p
}
func (x Conversation_ConversationStage) String() string {
return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}
func (Conversation_ConversationStage) Descriptor() protoreflect.EnumDescriptor {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[1].Descriptor()
}
func (Conversation_ConversationStage) Type() protoreflect.EnumType {
return &file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[1]
}
func (x Conversation_ConversationStage) Number() protoreflect.EnumNumber {
return protoreflect.EnumNumber(x)
}
// Deprecated: Use Conversation_ConversationStage.Descriptor instead.
func (Conversation_ConversationStage) EnumDescriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0, 1}
}
// Represents a conversation.
// A conversation is an interaction between an agent, including live agents
// and Dialogflow agents, and a support customer. Conversations can
// include phone calls and text-based chat sessions.
type Conversation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Output only. The unique identifier of this conversation.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
// Output only. The current state of the Conversation.
LifecycleState Conversation_LifecycleState `protobuf:"varint,2,opt,name=lifecycle_state,json=lifecycleState,proto3,enum=google.cloud.dialogflow.v2beta1.Conversation_LifecycleState" json:"lifecycle_state,omitempty"`
// Required. The Conversation Profile to be used to configure this
// Conversation. This field cannot be updated.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversationProfiles/<Conversation Profile ID>`.
ConversationProfile string `protobuf:"bytes,3,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
// Output only. Required if the conversation is to be connected over
// telephony.
PhoneNumber *ConversationPhoneNumber `protobuf:"bytes,4,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
// The stage of a conversation. It indicates whether the virtual agent or a
// human agent is handling the conversation.
//
// If the conversation is created with the conversation profile that has
// Dialogflow config set, defaults to
// [ConversationStage.VIRTUAL_AGENT_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.VIRTUAL_AGENT_STAGE];
// Otherwise, defaults to
// [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE].
//
// If the conversation is created with the conversation profile that has
// Dialogflow config set but explicitly sets conversation_stage to
// [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE],
// it skips
// [ConversationStage.VIRTUAL_AGENT_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.VIRTUAL_AGENT_STAGE]
// stage and directly goes to
// [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE].
ConversationStage Conversation_ConversationStage `protobuf:"varint,7,opt,name=conversation_stage,json=conversationStage,proto3,enum=google.cloud.dialogflow.v2beta1.Conversation_ConversationStage" json:"conversation_stage,omitempty"`
// Output only. The time the conversation was started.
StartTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
// Output only. The time the conversation was finished.
EndTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
}
func (x *Conversation) Reset() {
*x = Conversation{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *Conversation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*Conversation) ProtoMessage() {}
func (x *Conversation) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use Conversation.ProtoReflect.Descriptor instead.
func (*Conversation) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0}
}
func (x *Conversation) GetName() string {
if x != nil {
return x.Name
}
return ""
}
func (x *Conversation) GetLifecycleState() Conversation_LifecycleState {
if x != nil {
return x.LifecycleState
}
return Conversation_LIFECYCLE_STATE_UNSPECIFIED
}
func (x *Conversation) GetConversationProfile() string {
if x != nil {
return x.ConversationProfile
}
return ""
}
func (x *Conversation) GetPhoneNumber() *ConversationPhoneNumber {
if x != nil {
return x.PhoneNumber
}
return nil
}
func (x *Conversation) GetConversationStage() Conversation_ConversationStage {
if x != nil {
return x.ConversationStage
}
return Conversation_CONVERSATION_STAGE_UNSPECIFIED
}
func (x *Conversation) GetStartTime() *timestamppb.Timestamp {
if x != nil {
return x.StartTime
}
return nil
}
func (x *Conversation) GetEndTime() *timestamppb.Timestamp {
if x != nil {
return x.EndTime
}
return nil
}
// Represents a phone number for telephony integration. It allows for connecting
// a particular conversation over telephony.
type ConversationPhoneNumber struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Output only. The phone number to connect to this conversation.
PhoneNumber string `protobuf:"bytes,3,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
}
func (x *ConversationPhoneNumber) Reset() {
*x = ConversationPhoneNumber{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ConversationPhoneNumber) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ConversationPhoneNumber) ProtoMessage() {}
func (x *ConversationPhoneNumber) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ConversationPhoneNumber.ProtoReflect.Descriptor instead.
func (*ConversationPhoneNumber) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{1}
}
func (x *ConversationPhoneNumber) GetPhoneNumber() string {
if x != nil {
return x.PhoneNumber
}
return ""
}
// The request message for
// [Conversations.CreateConversation][google.cloud.dialogflow.v2beta1.Conversations.CreateConversation].
type CreateConversationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Resource identifier of the project creating the conversation.
// Format: `projects/<Project ID>/locations/<Location ID>`.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. The conversation to create.
Conversation *Conversation `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation,omitempty"`
// Optional. Identifier of the conversation. Generally it's auto generated by
// Google. Only set it if you cannot wait for the response to return a
// auto-generated one to you.
//
// The conversation ID must be compliant with the regression fomula
// `[a-zA-Z][a-zA-Z0-9_-]*` with the characters length in range of [3,64].
// If the field is provided, the caller is resposible for
// 1. the uniqueness of the ID, otherwise the request will be rejected.
// 2. the consistency for whether to use custom ID or not under a project to
// better ensure uniqueness.
ConversationId string `protobuf:"bytes,3,opt,name=conversation_id,json=conversationId,proto3" json:"conversation_id,omitempty"`
}
func (x *CreateConversationRequest) Reset() {
*x = CreateConversationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateConversationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateConversationRequest) ProtoMessage() {}
func (x *CreateConversationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateConversationRequest.ProtoReflect.Descriptor instead.
func (*CreateConversationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{2}
}
func (x *CreateConversationRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *CreateConversationRequest) GetConversation() *Conversation {
if x != nil {
return x.Conversation
}
return nil
}
func (x *CreateConversationRequest) GetConversationId() string {
if x != nil {
return x.ConversationId
}
return ""
}
// The request message for
// [Conversations.ListConversations][google.cloud.dialogflow.v2beta1.Conversations.ListConversations].
type ListConversationsRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The project from which to list all conversation.
// Format: `projects/<Project ID>/locations/<Location ID>`.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Optional. The maximum number of items to return in a single page. By
// default 100 and at most 1000.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. The next_page_token value returned from a previous list request.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
// A filter expression that filters conversations listed in the response. In
// general, the expression must specify the field name, a comparison operator,
// and the value to use for filtering:
// <ul>
// <li>The value must be a string, a number, or a boolean.</li>
// <li>The comparison operator must be either `=`,`!=`, `>`, or `<`.</li>
// <li>To filter on multiple expressions, separate the
// expressions with `AND` or `OR` (omitting both implies `AND`).</li>
// <li>For clarity, expressions can be enclosed in parentheses.</li>
// </ul>
// Only `lifecycle_state` can be filtered on in this way. For example,
// the following expression only returns `COMPLETED` conversations:
//
// `lifecycle_state = "COMPLETED"`
//
// For more information about filtering, see
// [API Filtering](https://aip.dev/160).
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
}
func (x *ListConversationsRequest) Reset() {
*x = ListConversationsRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListConversationsRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListConversationsRequest) ProtoMessage() {}
func (x *ListConversationsRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListConversationsRequest.ProtoReflect.Descriptor instead.
func (*ListConversationsRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{3}
}
func (x *ListConversationsRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListConversationsRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListConversationsRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
func (x *ListConversationsRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
// The response message for
// [Conversations.ListConversations][google.cloud.dialogflow.v2beta1.Conversations.ListConversations].
type ListConversationsResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The list of conversations. There will be a maximum number of items
// returned based on the page_size field in the request.
Conversations []*Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations,omitempty"`
// Token to retrieve the next page of results, or empty if there are no
// more results in the list.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}
func (x *ListConversationsResponse) Reset() {
*x = ListConversationsResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListConversationsResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListConversationsResponse) ProtoMessage() {}
func (x *ListConversationsResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListConversationsResponse.ProtoReflect.Descriptor instead.
func (*ListConversationsResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{4}
}
func (x *ListConversationsResponse) GetConversations() []*Conversation {
if x != nil {
return x.Conversations
}
return nil
}
func (x *ListConversationsResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
// The request message for
// [Conversations.GetConversation][google.cloud.dialogflow.v2beta1.Conversations.GetConversation].
type GetConversationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The name of the conversation. Format:
// `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
// ID>`.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *GetConversationRequest) Reset() {
*x = GetConversationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GetConversationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GetConversationRequest) ProtoMessage() {}
func (x *GetConversationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GetConversationRequest.ProtoReflect.Descriptor instead.
func (*GetConversationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{5}
}
func (x *GetConversationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// The request message for
// [Conversations.CompleteConversation][google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation].
type CompleteConversationRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Resource identifier of the conversation to close.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`.
Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
}
func (x *CompleteConversationRequest) Reset() {
*x = CompleteConversationRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CompleteConversationRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CompleteConversationRequest) ProtoMessage() {}
func (x *CompleteConversationRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CompleteConversationRequest.ProtoReflect.Descriptor instead.
func (*CompleteConversationRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{6}
}
func (x *CompleteConversationRequest) GetName() string {
if x != nil {
return x.Name
}
return ""
}
// The request message to create one Message. Currently it is only used in
// BatchCreateMessagesRequest.
type CreateMessageRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Resource identifier of the conversation to create message.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. The message to create.
// [Message.participant][google.cloud.dialogflow.v2beta1.Message.participant]
// is required.
Message *Message `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
}
func (x *CreateMessageRequest) Reset() {
*x = CreateMessageRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *CreateMessageRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*CreateMessageRequest) ProtoMessage() {}
func (x *CreateMessageRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use CreateMessageRequest.ProtoReflect.Descriptor instead.
func (*CreateMessageRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{7}
}
func (x *CreateMessageRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *CreateMessageRequest) GetMessage() *Message {
if x != nil {
return x.Message
}
return nil
}
// The request message for [Conversations.BatchCreateMessagesRequest][].
type BatchCreateMessagesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. Resource identifier of the conversation to create message.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`.
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Required. A maximum of 300 messages can be created in a batch.
// [CreateMessageRequest.message.send_time][] is required. All created
// messages will have identical
// [Message.create_time][google.cloud.dialogflow.v2beta1.Message.create_time].
Requests []*CreateMessageRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"`
}
func (x *BatchCreateMessagesRequest) Reset() {
*x = BatchCreateMessagesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BatchCreateMessagesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BatchCreateMessagesRequest) ProtoMessage() {}
func (x *BatchCreateMessagesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BatchCreateMessagesRequest.ProtoReflect.Descriptor instead.
func (*BatchCreateMessagesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{8}
}
func (x *BatchCreateMessagesRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *BatchCreateMessagesRequest) GetRequests() []*CreateMessageRequest {
if x != nil {
return x.Requests
}
return nil
}
// The request message for [Conversations.BatchCreateMessagesResponse][].
type BatchCreateMessagesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Messages created.
Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
}
func (x *BatchCreateMessagesResponse) Reset() {
*x = BatchCreateMessagesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *BatchCreateMessagesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*BatchCreateMessagesResponse) ProtoMessage() {}
func (x *BatchCreateMessagesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use BatchCreateMessagesResponse.ProtoReflect.Descriptor instead.
func (*BatchCreateMessagesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{9}
}
func (x *BatchCreateMessagesResponse) GetMessages() []*Message {
if x != nil {
return x.Messages
}
return nil
}
// The request message for
// [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages].
type ListMessagesRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The name of the conversation to list messages for.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`
Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
// Optional. Filter on message fields. Currently predicates on `create_time`
// and `create_time_epoch_microseconds` are supported. `create_time` only
// support milliseconds accuracy. E.g.,
// `create_time_epoch_microseconds > 1551790877964485` or
// `create_time > "2017-01-15T01:30:15.01Z"`.
//
// For more information about filtering, see
// [API Filtering](https://aip.dev/160).
Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
// Optional. The maximum number of items to return in a single page. By
// default 100 and at most 1000.
PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
// Optional. The next_page_token value returned from a previous list request.
PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
}
func (x *ListMessagesRequest) Reset() {
*x = ListMessagesRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListMessagesRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListMessagesRequest) ProtoMessage() {}
func (x *ListMessagesRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListMessagesRequest.ProtoReflect.Descriptor instead.
func (*ListMessagesRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{10}
}
func (x *ListMessagesRequest) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
func (x *ListMessagesRequest) GetFilter() string {
if x != nil {
return x.Filter
}
return ""
}
func (x *ListMessagesRequest) GetPageSize() int32 {
if x != nil {
return x.PageSize
}
return 0
}
func (x *ListMessagesRequest) GetPageToken() string {
if x != nil {
return x.PageToken
}
return ""
}
// The response message for
// [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages].
type ListMessagesResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The list of messages. There will be a maximum number of items
// returned based on the page_size field in the request.
// `messages` is sorted by `create_time` in descending order.
Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
// Optional. Token to retrieve the next page of results, or empty if there are
// no more results in the list.
NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
}
func (x *ListMessagesResponse) Reset() {
*x = ListMessagesResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *ListMessagesResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*ListMessagesResponse) ProtoMessage() {}
func (x *ListMessagesResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use ListMessagesResponse.ProtoReflect.Descriptor instead.
func (*ListMessagesResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{11}
}
func (x *ListMessagesResponse) GetMessages() []*Message {
if x != nil {
return x.Messages
}
return nil
}
func (x *ListMessagesResponse) GetNextPageToken() string {
if x != nil {
return x.NextPageToken
}
return ""
}
// The request message for
// [Conversations.SuggestConversationSummary][google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary].
type SuggestConversationSummaryRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The conversation to fetch suggestion for.
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>`.
Conversation string `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"`
// The name of the latest conversation message used as context for
// compiling suggestion. If empty, the latest message of the conversation will
// be used.
//
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
LatestMessage string `protobuf:"bytes,3,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
// Max number of messages prior to and including
// [latest_message] to use as context when compiling the
// suggestion. By default 500 and at most 1000.
ContextSize int32 `protobuf:"varint,4,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
// Parameters for a human assist query. Only used for POC/demo purpose.
AssistQueryParams *AssistQueryParameters `protobuf:"bytes,5,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
}
func (x *SuggestConversationSummaryRequest) Reset() {
*x = SuggestConversationSummaryRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SuggestConversationSummaryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SuggestConversationSummaryRequest) ProtoMessage() {}
func (x *SuggestConversationSummaryRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SuggestConversationSummaryRequest.ProtoReflect.Descriptor instead.
func (*SuggestConversationSummaryRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{12}
}
func (x *SuggestConversationSummaryRequest) GetConversation() string {
if x != nil {
return x.Conversation
}
return ""
}
func (x *SuggestConversationSummaryRequest) GetLatestMessage() string {
if x != nil {
return x.LatestMessage
}
return ""
}
func (x *SuggestConversationSummaryRequest) GetContextSize() int32 {
if x != nil {
return x.ContextSize
}
return 0
}
func (x *SuggestConversationSummaryRequest) GetAssistQueryParams() *AssistQueryParameters {
if x != nil {
return x.AssistQueryParams
}
return nil
}
// The response message for
// [Conversations.SuggestConversationSummary][google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary].
type SuggestConversationSummaryResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Generated summary.
Summary *SuggestConversationSummaryResponse_Summary `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
// The name of the latest conversation message used as context for
// compiling suggestion.
//
// Format: `projects/<Project ID>/locations/<Location
// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
// Number of messages prior to and including
// [last_conversation_message][] used to compile the suggestion. It may be
// smaller than the [SuggestSummaryRequest.context_size][] field in the
// request if there weren't that many messages in the conversation.
ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
}
func (x *SuggestConversationSummaryResponse) Reset() {
*x = SuggestConversationSummaryResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SuggestConversationSummaryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SuggestConversationSummaryResponse) ProtoMessage() {}
func (x *SuggestConversationSummaryResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SuggestConversationSummaryResponse.ProtoReflect.Descriptor instead.
func (*SuggestConversationSummaryResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{13}
}
func (x *SuggestConversationSummaryResponse) GetSummary() *SuggestConversationSummaryResponse_Summary {
if x != nil {
return x.Summary
}
return nil
}
func (x *SuggestConversationSummaryResponse) GetLatestMessage() string {
if x != nil {
return x.LatestMessage
}
return ""
}
func (x *SuggestConversationSummaryResponse) GetContextSize() int32 {
if x != nil {
return x.ContextSize
}
return 0
}
// The request message for
// [Conversations.GenerateStatelessSummary][google.cloud.dialogflow.v2beta1.Conversations.GenerateStatelessSummary].
type GenerateStatelessSummaryRequest struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The conversation to suggest a summary for.
StatelessConversation *GenerateStatelessSummaryRequest_MinimalConversation `protobuf:"bytes,1,opt,name=stateless_conversation,json=statelessConversation,proto3" json:"stateless_conversation,omitempty"`
// Required. A ConversationProfile containing information required for Summary
// generation.
// Required fields: {language_code, security_settings}
// Optional fields: {agent_assistant_config}
ConversationProfile *ConversationProfile `protobuf:"bytes,2,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
// The name of the latest conversation message used as context for
// generating a Summary. If empty, the latest message of the conversation will
// be used. The format is specific to the user and the names of the messages
// provided.
LatestMessage string `protobuf:"bytes,3,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
// Max number of messages prior to and including
// [latest_message] to use as context when compiling the
// suggestion. By default 500 and at most 1000.
MaxContextSize int32 `protobuf:"varint,4,opt,name=max_context_size,json=maxContextSize,proto3" json:"max_context_size,omitempty"`
}
func (x *GenerateStatelessSummaryRequest) Reset() {
*x = GenerateStatelessSummaryRequest{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GenerateStatelessSummaryRequest) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GenerateStatelessSummaryRequest) ProtoMessage() {}
func (x *GenerateStatelessSummaryRequest) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GenerateStatelessSummaryRequest.ProtoReflect.Descriptor instead.
func (*GenerateStatelessSummaryRequest) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{14}
}
func (x *GenerateStatelessSummaryRequest) GetStatelessConversation() *GenerateStatelessSummaryRequest_MinimalConversation {
if x != nil {
return x.StatelessConversation
}
return nil
}
func (x *GenerateStatelessSummaryRequest) GetConversationProfile() *ConversationProfile {
if x != nil {
return x.ConversationProfile
}
return nil
}
func (x *GenerateStatelessSummaryRequest) GetLatestMessage() string {
if x != nil {
return x.LatestMessage
}
return ""
}
func (x *GenerateStatelessSummaryRequest) GetMaxContextSize() int32 {
if x != nil {
return x.MaxContextSize
}
return 0
}
// The response message for
// [Conversations.GenerateStatelessSummary][google.cloud.dialogflow.v2beta1.Conversations.GenerateStatelessSummary].
type GenerateStatelessSummaryResponse struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Generated summary.
Summary *GenerateStatelessSummaryResponse_Summary `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
// The name of the latest conversation message used as context for
// compiling suggestion. The format is specific to the user and the names of
// the messages provided.
LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
// Number of messages prior to and including
// [last_conversation_message][] used to compile the suggestion. It may be
// smaller than the [GenerateStatelessSummaryRequest.context_size][] field in
// the request if there weren't that many messages in the conversation.
ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
}
func (x *GenerateStatelessSummaryResponse) Reset() {
*x = GenerateStatelessSummaryResponse{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[15]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GenerateStatelessSummaryResponse) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GenerateStatelessSummaryResponse) ProtoMessage() {}
func (x *GenerateStatelessSummaryResponse) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[15]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GenerateStatelessSummaryResponse.ProtoReflect.Descriptor instead.
func (*GenerateStatelessSummaryResponse) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{15}
}
func (x *GenerateStatelessSummaryResponse) GetSummary() *GenerateStatelessSummaryResponse_Summary {
if x != nil {
return x.Summary
}
return nil
}
func (x *GenerateStatelessSummaryResponse) GetLatestMessage() string {
if x != nil {
return x.LatestMessage
}
return ""
}
func (x *GenerateStatelessSummaryResponse) GetContextSize() int32 {
if x != nil {
return x.ContextSize
}
return 0
}
// Generated summary for a conversation.
type SuggestConversationSummaryResponse_Summary struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The summary content that is concatenated into one string.
Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
// The summary content that is divided into sections. The key is the
// section's name and the value is the section's content. There is no
// specific format for the key or value.
TextSections map[string]string `protobuf:"bytes,4,rep,name=text_sections,json=textSections,proto3" json:"text_sections,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
// The name of the answer record. Format:
// "projects/<Project ID>/answerRecords/<Answer Record ID>"
AnswerRecord string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
}
func (x *SuggestConversationSummaryResponse_Summary) Reset() {
*x = SuggestConversationSummaryResponse_Summary{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[16]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *SuggestConversationSummaryResponse_Summary) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*SuggestConversationSummaryResponse_Summary) ProtoMessage() {}
func (x *SuggestConversationSummaryResponse_Summary) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[16]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use SuggestConversationSummaryResponse_Summary.ProtoReflect.Descriptor instead.
func (*SuggestConversationSummaryResponse_Summary) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{13, 0}
}
func (x *SuggestConversationSummaryResponse_Summary) GetText() string {
if x != nil {
return x.Text
}
return ""
}
func (x *SuggestConversationSummaryResponse_Summary) GetTextSections() map[string]string {
if x != nil {
return x.TextSections
}
return nil
}
func (x *SuggestConversationSummaryResponse_Summary) GetAnswerRecord() string {
if x != nil {
return x.AnswerRecord
}
return ""
}
// The minimum amount of information required to generate a Summary without
// having a Conversation resource created.
type GenerateStatelessSummaryRequest_MinimalConversation struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// Required. The messages that the Summary will be generated from. It is
// expected that this message content is already redacted and does not
// contain any PII. Required fields: {content, language_code, participant,
// participant_role} Optional fields: {send_time} If send_time is not
// provided, then the messages must be provided in chronological order.
Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
// Required. The parent resource to charge for the Summary's generation.
// Format: `projects/<Project ID>/locations/<Location ID>`.
Parent string `protobuf:"bytes,2,opt,name=parent,proto3" json:"parent,omitempty"`
}
func (x *GenerateStatelessSummaryRequest_MinimalConversation) Reset() {
*x = GenerateStatelessSummaryRequest_MinimalConversation{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[18]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GenerateStatelessSummaryRequest_MinimalConversation) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GenerateStatelessSummaryRequest_MinimalConversation) ProtoMessage() {}
func (x *GenerateStatelessSummaryRequest_MinimalConversation) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[18]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GenerateStatelessSummaryRequest_MinimalConversation.ProtoReflect.Descriptor instead.
func (*GenerateStatelessSummaryRequest_MinimalConversation) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{14, 0}
}
func (x *GenerateStatelessSummaryRequest_MinimalConversation) GetMessages() []*Message {
if x != nil {
return x.Messages
}
return nil
}
func (x *GenerateStatelessSummaryRequest_MinimalConversation) GetParent() string {
if x != nil {
return x.Parent
}
return ""
}
// Generated summary for a conversation.
type GenerateStatelessSummaryResponse_Summary struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
// The summary content that is concatenated into one string.
Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
// The summary content that is divided into sections. The key is the
// section's name and the value is the section's content. There is no
// specific format for the key or value.
TextSections map[string]string `protobuf:"bytes,2,rep,name=text_sections,json=textSections,proto3" json:"text_sections,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
}
func (x *GenerateStatelessSummaryResponse_Summary) Reset() {
*x = GenerateStatelessSummaryResponse_Summary{}
if protoimpl.UnsafeEnabled {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[19]
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
ms.StoreMessageInfo(mi)
}
}
func (x *GenerateStatelessSummaryResponse_Summary) String() string {
return protoimpl.X.MessageStringOf(x)
}
func (*GenerateStatelessSummaryResponse_Summary) ProtoMessage() {}
func (x *GenerateStatelessSummaryResponse_Summary) ProtoReflect() protoreflect.Message {
mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[19]
if protoimpl.UnsafeEnabled && x != nil {
ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
if ms.LoadMessageInfo() == nil {
ms.StoreMessageInfo(mi)
}
return ms
}
return mi.MessageOf(x)
}
// Deprecated: Use GenerateStatelessSummaryResponse_Summary.ProtoReflect.Descriptor instead.
func (*GenerateStatelessSummaryResponse_Summary) Descriptor() ([]byte, []int) {
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{15, 0}
}
func (x *GenerateStatelessSummaryResponse_Summary) GetText() string {
if x != nil {
return x.Text
}
return ""
}
func (x *GenerateStatelessSummaryResponse_Summary) GetTextSections() map[string]string {
if x != nil {
return x.TextSections
}
return nil
}
var File_google_cloud_dialogflow_v2beta1_conversation_proto protoreflect.FileDescriptor
var file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc = []byte{
0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62,
0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70,
0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xae, 0x07, 0x0a, 0x0c, 0x43, 0x6f, 0x6e,
0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61,
0x6d, 0x65, 0x12, 0x6a, 0x0a, 0x0f, 0x6c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x5f,
0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3c, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x69, 0x66, 0x65, 0x63,
0x79, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0e,
0x6c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x68,
0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70,
0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41,
0x02, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
0x69, 0x6c, 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x60, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e,
0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38,
0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x68, 0x6f,
0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x70,
0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x6e, 0x0a, 0x12, 0x63, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73, 0x74, 0x61, 0x67, 0x65,
0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x11, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x3e, 0x0a, 0x0a, 0x73, 0x74,
0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a, 0x0a, 0x08, 0x65, 0x6e,
0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 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, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x65,
0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x0e, 0x4c, 0x69, 0x66, 0x65, 0x63, 0x79,
0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x1b, 0x4c, 0x49, 0x46, 0x45,
0x43, 0x59, 0x43, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x5f,
0x50, 0x52, 0x4f, 0x47, 0x52, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x43, 0x4f,
0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x22, 0x68, 0x0a, 0x11, 0x43, 0x6f, 0x6e,
0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x22,
0x0a, 0x1e, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x53,
0x54, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x56, 0x49, 0x52, 0x54, 0x55, 0x41, 0x4c, 0x5f, 0x41, 0x47,
0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x10, 0x01, 0x12, 0x16, 0x0a, 0x12, 0x48,
0x55, 0x4d, 0x41, 0x4e, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x53, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x47,
0x45, 0x10, 0x02, 0x3a, 0xa3, 0x01, 0xea, 0x41, 0x9f, 0x01, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c,
0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x12, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72,
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x7d, 0x12, 0x44, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70,
0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e,
0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76,
0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x22, 0x41, 0x0a, 0x17, 0x43, 0x6f, 0x6e,
0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75,
0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x22, 0xe9, 0x01, 0x0a,
0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61,
0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa,
0x41, 0x28, 0x12, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
0x6e, 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65,
0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x63, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c, 0x0a, 0x0f, 0x63, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb6, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73,
0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18,
0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x12, 0x26, 0x64,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a,
0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61,
0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09,
0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c,
0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
0x72, 0x22, 0x98, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
0x53, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67,
0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e,
0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x5c, 0x0a, 0x16,
0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69,
0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x61, 0x0a, 0x1b, 0x43, 0x6f,
0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a,
0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65,
0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa7, 0x01,
0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26,
0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x47,
0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07,
0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x1a, 0x42, 0x61, 0x74, 0x63,
0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26,
0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x56,
0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b,
0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x72, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x63, 0x0a, 0x1b, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43,
0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73,
0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22, 0xac, 0x01, 0x0a, 0x13,
0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x64, 0x69, 0x61,
0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x06,
0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b,
0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70,
0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x14, 0x4c,
0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78,
0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01,
0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
0x6e, 0x22, 0xd1, 0x02, 0x0a, 0x21, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e,
0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x52, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65,
0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0,
0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0c, 0x63,
0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4d, 0x0a, 0x0e, 0x6c,
0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20,
0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x66, 0x0a,
0x13, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61,
0x72, 0x61, 0x6d, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73,
0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65,
0x72, 0x73, 0x52, 0x11, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50,
0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb5, 0x04, 0x0a, 0x22, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d,
0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x07,
0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4b, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d,
0x61, 0x72, 0x79, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23,
0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69,
0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
0x74, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0xb5, 0x02, 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5d, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
0x73, 0x65, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53,
0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x74, 0x65,
0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x50, 0x0a, 0x0d, 0x61, 0x6e,
0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
0x09, 0x42, 0x2b, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
0x6d, 0x2f, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0c,
0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3f, 0x0a, 0x11,
0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0xc1, 0x04,
0x0a, 0x1f, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c,
0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
0x74, 0x12, 0x90, 0x01, 0x0a, 0x16, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x5f,
0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x54, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61,
0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71,
0x75, 0x65, 0x73, 0x74, 0x2e, 0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x76,
0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x73,
0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6c, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x63,
0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69,
0x6c, 0x65, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a,
0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61,
0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
0x65, 0x12, 0x28, 0x0a, 0x10, 0x6d, 0x61, 0x78, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0e, 0x6d, 0x61, 0x78,
0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0xa3, 0x01, 0x0a, 0x13,
0x4d, 0x69, 0x6e, 0x69, 0x6d, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x12, 0x49, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18,
0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42,
0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x41,
0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29,
0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
0x2f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x22, 0xdd, 0x03, 0x0a, 0x20, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x74,
0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65,
0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x63, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72,
0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61,
0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61,
0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61,
0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x4d, 0x0a, 0x0e, 0x6c,
0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74,
0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f,
0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x1a, 0xe1, 0x01,
0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78,
0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x80, 0x01,
0x0a, 0x0d, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65,
0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74,
0x72, 0x79, 0x52, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x1a, 0x3f, 0x0a, 0x11, 0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 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, 0x32, 0x81, 0x14, 0x0a, 0x0d, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x73, 0x12, 0xa1, 0x02, 0x0a, 0x12, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f,
0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9f, 0x01, 0xda, 0x41, 0x13, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x2c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3,
0xe4, 0x93, 0x02, 0x82, 0x01, 0x3a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x5a, 0x46, 0x3a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x22, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x2a, 0x2f, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x81, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74,
0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x2e,
0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43,
0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x66, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f,
0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xee, 0x01, 0x0a, 0x0f,
0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65,
0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x73, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65,
0x82, 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d,
0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76,
0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x91, 0x02, 0x0a,
0x14, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75,
0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
0x6f, 0x6e, 0x22, 0x8b, 0x01, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0x7e, 0x3a, 0x01, 0x2a, 0x5a, 0x44, 0x3a, 0x01, 0x2a, 0x22, 0x3f, 0x2f, 0x76, 0x32, 0x62,
0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
0x2a, 0x7d, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x22, 0x33, 0x2f, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65,
0x12, 0xbd, 0x02, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68,
0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65,
0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82,
0xd3, 0xe4, 0x93, 0x02, 0x9a, 0x01, 0x3a, 0x01, 0x2a, 0x5a, 0x52, 0x3a, 0x01, 0x2a, 0x22, 0x4d,
0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x22, 0x41, 0x2f,
0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65,
0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73,
0x61, 0x67, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
0x12, 0x89, 0x02, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65,
0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8b,
0x01, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x7c,
0x5a, 0x43, 0x12, 0x41, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76,
0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73,
0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x35, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x88, 0x03, 0x0a,
0x1a, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x42, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75,
0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70,
0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe0, 0x01, 0xda, 0x41, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xca, 0x01, 0x3a, 0x01, 0x2a,
0x5a, 0x6a, 0x3a, 0x01, 0x2a, 0x22, 0x65, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x70, 0x72,
0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x22, 0x59, 0x2f, 0x76,
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d,
0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67,
0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0xf1, 0x02, 0x0a, 0x18, 0x47, 0x65, 0x6e, 0x65,
0x72, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d,
0x6d, 0x61, 0x72, 0x79, 0x12, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53,
0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52,
0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcf, 0x01, 0x82, 0xd3, 0xe4, 0x93,
0x02, 0xc8, 0x01, 0x3a, 0x01, 0x2a, 0x5a, 0x69, 0x3a, 0x01, 0x2a, 0x22, 0x64, 0x2f, 0x76, 0x32,
0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73,
0x5f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x61,
0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67,
0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74,
0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
0x79, 0x22, 0x58, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x74, 0x61,
0x74, 0x65, 0x6c, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
0x6e, 0x73, 0x3a, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x61, 0x74, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65,
0x6c, 0x65, 0x73, 0x73, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x1a, 0x78, 0xca, 0x41, 0x19,
0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70,
0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73,
0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa9, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f,
0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x11, 0x43,
0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x74, 0x6f,
0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69,
0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f,
0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa,
0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44,
0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x42, 0x65, 0x74, 0x61,
0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
}
var (
file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescOnce sync.Once
file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc
)
func file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP() []byte {
file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescOnce.Do(func() {
file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData)
})
return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData
}
var file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
var file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes = make([]protoimpl.MessageInfo, 21)
var file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes = []interface{}{
(Conversation_LifecycleState)(0), // 0: google.cloud.dialogflow.v2beta1.Conversation.LifecycleState
(Conversation_ConversationStage)(0), // 1: google.cloud.dialogflow.v2beta1.Conversation.ConversationStage
(*Conversation)(nil), // 2: google.cloud.dialogflow.v2beta1.Conversation
(*ConversationPhoneNumber)(nil), // 3: google.cloud.dialogflow.v2beta1.ConversationPhoneNumber
(*CreateConversationRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.CreateConversationRequest
(*ListConversationsRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.ListConversationsRequest
(*ListConversationsResponse)(nil), // 6: google.cloud.dialogflow.v2beta1.ListConversationsResponse
(*GetConversationRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.GetConversationRequest
(*CompleteConversationRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.CompleteConversationRequest
(*CreateMessageRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.CreateMessageRequest
(*BatchCreateMessagesRequest)(nil), // 10: google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest
(*BatchCreateMessagesResponse)(nil), // 11: google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse
(*ListMessagesRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.ListMessagesRequest
(*ListMessagesResponse)(nil), // 13: google.cloud.dialogflow.v2beta1.ListMessagesResponse
(*SuggestConversationSummaryRequest)(nil), // 14: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryRequest
(*SuggestConversationSummaryResponse)(nil), // 15: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse
(*GenerateStatelessSummaryRequest)(nil), // 16: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest
(*GenerateStatelessSummaryResponse)(nil), // 17: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse
(*SuggestConversationSummaryResponse_Summary)(nil), // 18: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary
nil, // 19: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.TextSectionsEntry
(*GenerateStatelessSummaryRequest_MinimalConversation)(nil), // 20: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest.MinimalConversation
(*GenerateStatelessSummaryResponse_Summary)(nil), // 21: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.Summary
nil, // 22: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.Summary.TextSectionsEntry
(*timestamppb.Timestamp)(nil), // 23: google.protobuf.Timestamp
(*Message)(nil), // 24: google.cloud.dialogflow.v2beta1.Message
(*AssistQueryParameters)(nil), // 25: google.cloud.dialogflow.v2beta1.AssistQueryParameters
(*ConversationProfile)(nil), // 26: google.cloud.dialogflow.v2beta1.ConversationProfile
}
var file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs = []int32{
0, // 0: google.cloud.dialogflow.v2beta1.Conversation.lifecycle_state:type_name -> google.cloud.dialogflow.v2beta1.Conversation.LifecycleState
3, // 1: google.cloud.dialogflow.v2beta1.Conversation.phone_number:type_name -> google.cloud.dialogflow.v2beta1.ConversationPhoneNumber
1, // 2: google.cloud.dialogflow.v2beta1.Conversation.conversation_stage:type_name -> google.cloud.dialogflow.v2beta1.Conversation.ConversationStage
23, // 3: google.cloud.dialogflow.v2beta1.Conversation.start_time:type_name -> google.protobuf.Timestamp
23, // 4: google.cloud.dialogflow.v2beta1.Conversation.end_time:type_name -> google.protobuf.Timestamp
2, // 5: google.cloud.dialogflow.v2beta1.CreateConversationRequest.conversation:type_name -> google.cloud.dialogflow.v2beta1.Conversation
2, // 6: google.cloud.dialogflow.v2beta1.ListConversationsResponse.conversations:type_name -> google.cloud.dialogflow.v2beta1.Conversation
24, // 7: google.cloud.dialogflow.v2beta1.CreateMessageRequest.message:type_name -> google.cloud.dialogflow.v2beta1.Message
9, // 8: google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest.requests:type_name -> google.cloud.dialogflow.v2beta1.CreateMessageRequest
24, // 9: google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse.messages:type_name -> google.cloud.dialogflow.v2beta1.Message
24, // 10: google.cloud.dialogflow.v2beta1.ListMessagesResponse.messages:type_name -> google.cloud.dialogflow.v2beta1.Message
25, // 11: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters
18, // 12: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.summary:type_name -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary
20, // 13: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest.stateless_conversation:type_name -> google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest.MinimalConversation
26, // 14: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest.conversation_profile:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile
21, // 15: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.summary:type_name -> google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.Summary
19, // 16: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.text_sections:type_name -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.TextSectionsEntry
24, // 17: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest.MinimalConversation.messages:type_name -> google.cloud.dialogflow.v2beta1.Message
22, // 18: google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.Summary.text_sections:type_name -> google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse.Summary.TextSectionsEntry
4, // 19: google.cloud.dialogflow.v2beta1.Conversations.CreateConversation:input_type -> google.cloud.dialogflow.v2beta1.CreateConversationRequest
5, // 20: google.cloud.dialogflow.v2beta1.Conversations.ListConversations:input_type -> google.cloud.dialogflow.v2beta1.ListConversationsRequest
7, // 21: google.cloud.dialogflow.v2beta1.Conversations.GetConversation:input_type -> google.cloud.dialogflow.v2beta1.GetConversationRequest
8, // 22: google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation:input_type -> google.cloud.dialogflow.v2beta1.CompleteConversationRequest
10, // 23: google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages:input_type -> google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest
12, // 24: google.cloud.dialogflow.v2beta1.Conversations.ListMessages:input_type -> google.cloud.dialogflow.v2beta1.ListMessagesRequest
14, // 25: google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary:input_type -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryRequest
16, // 26: google.cloud.dialogflow.v2beta1.Conversations.GenerateStatelessSummary:input_type -> google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryRequest
2, // 27: google.cloud.dialogflow.v2beta1.Conversations.CreateConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
6, // 28: google.cloud.dialogflow.v2beta1.Conversations.ListConversations:output_type -> google.cloud.dialogflow.v2beta1.ListConversationsResponse
2, // 29: google.cloud.dialogflow.v2beta1.Conversations.GetConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
2, // 30: google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
11, // 31: google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages:output_type -> google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse
13, // 32: google.cloud.dialogflow.v2beta1.Conversations.ListMessages:output_type -> google.cloud.dialogflow.v2beta1.ListMessagesResponse
15, // 33: google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary:output_type -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse
17, // 34: google.cloud.dialogflow.v2beta1.Conversations.GenerateStatelessSummary:output_type -> google.cloud.dialogflow.v2beta1.GenerateStatelessSummaryResponse
27, // [27:35] is the sub-list for method output_type
19, // [19:27] is the sub-list for method input_type
19, // [19:19] is the sub-list for extension type_name
19, // [19:19] is the sub-list for extension extendee
0, // [0:19] is the sub-list for field type_name
}
func init() { file_google_cloud_dialogflow_v2beta1_conversation_proto_init() }
func file_google_cloud_dialogflow_v2beta1_conversation_proto_init() {
if File_google_cloud_dialogflow_v2beta1_conversation_proto != nil {
return
}
file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_init()
file_google_cloud_dialogflow_v2beta1_participant_proto_init()
if !protoimpl.UnsafeEnabled {
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*Conversation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ConversationPhoneNumber); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateConversationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListConversationsRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListConversationsResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GetConversationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CompleteConversationRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*CreateMessageRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BatchCreateMessagesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*BatchCreateMessagesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListMessagesRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*ListMessagesResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SuggestConversationSummaryRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SuggestConversationSummaryResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GenerateStatelessSummaryRequest); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GenerateStatelessSummaryResponse); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*SuggestConversationSummaryResponse_Summary); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GenerateStatelessSummaryRequest_MinimalConversation); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
switch v := v.(*GenerateStatelessSummaryResponse_Summary); i {
case 0:
return &v.state
case 1:
return &v.sizeCache
case 2:
return &v.unknownFields
default:
return nil
}
}
}
type x struct{}
out := protoimpl.TypeBuilder{
File: protoimpl.DescBuilder{
GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
RawDescriptor: file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc,
NumEnums: 2,
NumMessages: 21,
NumExtensions: 0,
NumServices: 1,
},
GoTypes: file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes,
DependencyIndexes: file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs,
EnumInfos: file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes,
MessageInfos: file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes,
}.Build()
File_google_cloud_dialogflow_v2beta1_conversation_proto = out.File
file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc = nil
file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes = nil
file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs = nil
}
// Reference imports to suppress errors if they are not otherwise used.
var _ context.Context
var _ grpc.ClientConnInterface
// This is a compile-time assertion to ensure that this generated file
// is compatible with the grpc package it is being compiled against.
const _ = grpc.SupportPackageIsVersion6
// ConversationsClient is the client API for Conversations service.
//
// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
type ConversationsClient interface {
// Creates a new conversation. Conversations are auto-completed after 24
// hours.
//
// Conversation Lifecycle:
// There are two stages during a conversation: Automated Agent Stage and
// Assist Stage.
//
// For Automated Agent Stage, there will be a dialogflow agent responding to
// user queries.
//
// For Assist Stage, there's no dialogflow agent responding to user queries.
// But we will provide suggestions which are generated from conversation.
//
// If
// [Conversation.conversation_profile][google.cloud.dialogflow.v2beta1.Conversation.conversation_profile]
// is configured for a dialogflow agent, conversation will start from
// `Automated Agent Stage`, otherwise, it will start from `Assist Stage`. And
// during `Automated Agent Stage`, once an
// [Intent][google.cloud.dialogflow.v2beta1.Intent] with
// [Intent.live_agent_handoff][google.cloud.dialogflow.v2beta1.Intent.live_agent_handoff]
// is triggered, conversation will transfer to Assist Stage.
CreateConversation(ctx context.Context, in *CreateConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
// Returns the list of all conversations in the specified project.
ListConversations(ctx context.Context, in *ListConversationsRequest, opts ...grpc.CallOption) (*ListConversationsResponse, error)
// Retrieves the specific conversation.
GetConversation(ctx context.Context, in *GetConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
// Completes the specified conversation. Finished conversations are purged
// from the database after 30 days.
CompleteConversation(ctx context.Context, in *CompleteConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
// Batch ingests messages to conversation. Customers can use this RPC to
// ingest historical messages to conversation.
BatchCreateMessages(ctx context.Context, in *BatchCreateMessagesRequest, opts ...grpc.CallOption) (*BatchCreateMessagesResponse, error)
// Lists messages that belong to a given conversation.
// `messages` are ordered by `create_time` in descending order. To fetch
// updates without duplication, send request with filter
// `create_time_epoch_microseconds >
// [first item's create_time of previous request]` and empty page_token.
ListMessages(ctx context.Context, in *ListMessagesRequest, opts ...grpc.CallOption) (*ListMessagesResponse, error)
// Suggest summary for a conversation based on specific historical messages.
// The range of the messages to be used for summary can be specified in the
// request.
SuggestConversationSummary(ctx context.Context, in *SuggestConversationSummaryRequest, opts ...grpc.CallOption) (*SuggestConversationSummaryResponse, error)
// Generates and returns a summary for a conversation that does not have a
// resource created for it.
GenerateStatelessSummary(ctx context.Context, in *GenerateStatelessSummaryRequest, opts ...grpc.CallOption) (*GenerateStatelessSummaryResponse, error)
}
type conversationsClient struct {
cc grpc.ClientConnInterface
}
func NewConversationsClient(cc grpc.ClientConnInterface) ConversationsClient {
return &conversationsClient{cc}
}
func (c *conversationsClient) CreateConversation(ctx context.Context, in *CreateConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
out := new(Conversation)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/CreateConversation", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) ListConversations(ctx context.Context, in *ListConversationsRequest, opts ...grpc.CallOption) (*ListConversationsResponse, error) {
out := new(ListConversationsResponse)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/ListConversations", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) GetConversation(ctx context.Context, in *GetConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
out := new(Conversation)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/GetConversation", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) CompleteConversation(ctx context.Context, in *CompleteConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
out := new(Conversation)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/CompleteConversation", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) BatchCreateMessages(ctx context.Context, in *BatchCreateMessagesRequest, opts ...grpc.CallOption) (*BatchCreateMessagesResponse, error) {
out := new(BatchCreateMessagesResponse)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/BatchCreateMessages", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) ListMessages(ctx context.Context, in *ListMessagesRequest, opts ...grpc.CallOption) (*ListMessagesResponse, error) {
out := new(ListMessagesResponse)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/ListMessages", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) SuggestConversationSummary(ctx context.Context, in *SuggestConversationSummaryRequest, opts ...grpc.CallOption) (*SuggestConversationSummaryResponse, error) {
out := new(SuggestConversationSummaryResponse)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/SuggestConversationSummary", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
func (c *conversationsClient) GenerateStatelessSummary(ctx context.Context, in *GenerateStatelessSummaryRequest, opts ...grpc.CallOption) (*GenerateStatelessSummaryResponse, error) {
out := new(GenerateStatelessSummaryResponse)
err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/GenerateStatelessSummary", in, out, opts...)
if err != nil {
return nil, err
}
return out, nil
}
// ConversationsServer is the server API for Conversations service.
type ConversationsServer interface {
// Creates a new conversation. Conversations are auto-completed after 24
// hours.
//
// Conversation Lifecycle:
// There are two stages during a conversation: Automated Agent Stage and
// Assist Stage.
//
// For Automated Agent Stage, there will be a dialogflow agent responding to
// user queries.
//
// For Assist Stage, there's no dialogflow agent responding to user queries.
// But we will provide suggestions which are generated from conversation.
//
// If
// [Conversation.conversation_profile][google.cloud.dialogflow.v2beta1.Conversation.conversation_profile]
// is configured for a dialogflow agent, conversation will start from
// `Automated Agent Stage`, otherwise, it will start from `Assist Stage`. And
// during `Automated Agent Stage`, once an
// [Intent][google.cloud.dialogflow.v2beta1.Intent] with
// [Intent.live_agent_handoff][google.cloud.dialogflow.v2beta1.Intent.live_agent_handoff]
// is triggered, conversation will transfer to Assist Stage.
CreateConversation(context.Context, *CreateConversationRequest) (*Conversation, error)
// Returns the list of all conversations in the specified project.
ListConversations(context.Context, *ListConversationsRequest) (*ListConversationsResponse, error)
// Retrieves the specific conversation.
GetConversation(context.Context, *GetConversationRequest) (*Conversation, error)
// Completes the specified conversation. Finished conversations are purged
// from the database after 30 days.
CompleteConversation(context.Context, *CompleteConversationRequest) (*Conversation, error)
// Batch ingests messages to conversation. Customers can use this RPC to
// ingest historical messages to conversation.
BatchCreateMessages(context.Context, *BatchCreateMessagesRequest) (*BatchCreateMessagesResponse, error)
// Lists messages that belong to a given conversation.
// `messages` are ordered by `create_time` in descending order. To fetch
// updates without duplication, send request with filter
// `create_time_epoch_microseconds >
// [first item's create_time of previous request]` and empty page_token.
ListMessages(context.Context, *ListMessagesRequest) (*ListMessagesResponse, error)
// Suggest summary for a conversation based on specific historical messages.
// The range of the messages to be used for summary can be specified in the
// request.
SuggestConversationSummary(context.Context, *SuggestConversationSummaryRequest) (*SuggestConversationSummaryResponse, error)
// Generates and returns a summary for a conversation that does not have a
// resource created for it.
GenerateStatelessSummary(context.Context, *GenerateStatelessSummaryRequest) (*GenerateStatelessSummaryResponse, error)
}
// UnimplementedConversationsServer can be embedded to have forward compatible implementations.
type UnimplementedConversationsServer struct {
}
func (*UnimplementedConversationsServer) CreateConversation(context.Context, *CreateConversationRequest) (*Conversation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CreateConversation not implemented")
}
func (*UnimplementedConversationsServer) ListConversations(context.Context, *ListConversationsRequest) (*ListConversationsResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListConversations not implemented")
}
func (*UnimplementedConversationsServer) GetConversation(context.Context, *GetConversationRequest) (*Conversation, error) {
return nil, status.Errorf(codes.Unimplemented, "method GetConversation not implemented")
}
func (*UnimplementedConversationsServer) CompleteConversation(context.Context, *CompleteConversationRequest) (*Conversation, error) {
return nil, status.Errorf(codes.Unimplemented, "method CompleteConversation not implemented")
}
func (*UnimplementedConversationsServer) BatchCreateMessages(context.Context, *BatchCreateMessagesRequest) (*BatchCreateMessagesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method BatchCreateMessages not implemented")
}
func (*UnimplementedConversationsServer) ListMessages(context.Context, *ListMessagesRequest) (*ListMessagesResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method ListMessages not implemented")
}
func (*UnimplementedConversationsServer) SuggestConversationSummary(context.Context, *SuggestConversationSummaryRequest) (*SuggestConversationSummaryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method SuggestConversationSummary not implemented")
}
func (*UnimplementedConversationsServer) GenerateStatelessSummary(context.Context, *GenerateStatelessSummaryRequest) (*GenerateStatelessSummaryResponse, error) {
return nil, status.Errorf(codes.Unimplemented, "method GenerateStatelessSummary not implemented")
}
func RegisterConversationsServer(s *grpc.Server, srv ConversationsServer) {
s.RegisterService(&_Conversations_serviceDesc, srv)
}
func _Conversations_CreateConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CreateConversationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).CreateConversation(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/CreateConversation",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).CreateConversation(ctx, req.(*CreateConversationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_ListConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListConversationsRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).ListConversations(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/ListConversations",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).ListConversations(ctx, req.(*ListConversationsRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_GetConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GetConversationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).GetConversation(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/GetConversation",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).GetConversation(ctx, req.(*GetConversationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_CompleteConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(CompleteConversationRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).CompleteConversation(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/CompleteConversation",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).CompleteConversation(ctx, req.(*CompleteConversationRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_BatchCreateMessages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(BatchCreateMessagesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).BatchCreateMessages(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/BatchCreateMessages",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).BatchCreateMessages(ctx, req.(*BatchCreateMessagesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_ListMessages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(ListMessagesRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).ListMessages(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/ListMessages",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).ListMessages(ctx, req.(*ListMessagesRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_SuggestConversationSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(SuggestConversationSummaryRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).SuggestConversationSummary(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/SuggestConversationSummary",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).SuggestConversationSummary(ctx, req.(*SuggestConversationSummaryRequest))
}
return interceptor(ctx, in, info, handler)
}
func _Conversations_GenerateStatelessSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
in := new(GenerateStatelessSummaryRequest)
if err := dec(in); err != nil {
return nil, err
}
if interceptor == nil {
return srv.(ConversationsServer).GenerateStatelessSummary(ctx, in)
}
info := &grpc.UnaryServerInfo{
Server: srv,
FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/GenerateStatelessSummary",
}
handler := func(ctx context.Context, req interface{}) (interface{}, error) {
return srv.(ConversationsServer).GenerateStatelessSummary(ctx, req.(*GenerateStatelessSummaryRequest))
}
return interceptor(ctx, in, info, handler)
}
var _Conversations_serviceDesc = grpc.ServiceDesc{
ServiceName: "google.cloud.dialogflow.v2beta1.Conversations",
HandlerType: (*ConversationsServer)(nil),
Methods: []grpc.MethodDesc{
{
MethodName: "CreateConversation",
Handler: _Conversations_CreateConversation_Handler,
},
{
MethodName: "ListConversations",
Handler: _Conversations_ListConversations_Handler,
},
{
MethodName: "GetConversation",
Handler: _Conversations_GetConversation_Handler,
},
{
MethodName: "CompleteConversation",
Handler: _Conversations_CompleteConversation_Handler,
},
{
MethodName: "BatchCreateMessages",
Handler: _Conversations_BatchCreateMessages_Handler,
},
{
MethodName: "ListMessages",
Handler: _Conversations_ListMessages_Handler,
},
{
MethodName: "SuggestConversationSummary",
Handler: _Conversations_SuggestConversationSummary_Handler,
},
{
MethodName: "GenerateStatelessSummary",
Handler: _Conversations_GenerateStatelessSummary_Handler,
},
},
Streams: []grpc.StreamDesc{},
Metadata: "google/cloud/dialogflow/v2beta1/conversation.proto",
}