1// Copyright 2021 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15// Code generated by protoc-gen-go. DO NOT EDIT. 16// versions: 17// protoc-gen-go v1.25.0-devel 18// protoc v3.13.0 19// source: google/cloud/dialogflow/v2beta1/conversation_profile.proto 20 21package dialogflow 22 23import ( 24 context "context" 25 reflect "reflect" 26 sync "sync" 27 28 proto "github.com/golang/protobuf/proto" 29 _ "google.golang.org/genproto/googleapis/api/annotations" 30 _ "google.golang.org/genproto/googleapis/longrunning" 31 grpc "google.golang.org/grpc" 32 codes "google.golang.org/grpc/codes" 33 status "google.golang.org/grpc/status" 34 protoreflect "google.golang.org/protobuf/reflect/protoreflect" 35 protoimpl "google.golang.org/protobuf/runtime/protoimpl" 36 emptypb "google.golang.org/protobuf/types/known/emptypb" 37 fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb" 38 timestamppb "google.golang.org/protobuf/types/known/timestamppb" 39) 40 41const ( 42 // Verify that this generated code is sufficiently up-to-date. 43 _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion) 44 // Verify that runtime/protoimpl is sufficiently up-to-date. 45 _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20) 46) 47 48// This is a compile-time assertion that a sufficiently up-to-date version 49// of the legacy proto package is being used. 50const _ = proto.ProtoPackageIsVersion4 51 52// Format of cloud pub/sub message. 53type NotificationConfig_MessageFormat int32 54 55const ( 56 // If it is unspecified, PROTO will be used. 57 NotificationConfig_MESSAGE_FORMAT_UNSPECIFIED NotificationConfig_MessageFormat = 0 58 // Pubsub message will be serialized proto. 59 NotificationConfig_PROTO NotificationConfig_MessageFormat = 1 60 // Pubsub message will be json. 61 NotificationConfig_JSON NotificationConfig_MessageFormat = 2 62) 63 64// Enum value maps for NotificationConfig_MessageFormat. 65var ( 66 NotificationConfig_MessageFormat_name = map[int32]string{ 67 0: "MESSAGE_FORMAT_UNSPECIFIED", 68 1: "PROTO", 69 2: "JSON", 70 } 71 NotificationConfig_MessageFormat_value = map[string]int32{ 72 "MESSAGE_FORMAT_UNSPECIFIED": 0, 73 "PROTO": 1, 74 "JSON": 2, 75 } 76) 77 78func (x NotificationConfig_MessageFormat) Enum() *NotificationConfig_MessageFormat { 79 p := new(NotificationConfig_MessageFormat) 80 *p = x 81 return p 82} 83 84func (x NotificationConfig_MessageFormat) String() string { 85 return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x)) 86} 87 88func (NotificationConfig_MessageFormat) Descriptor() protoreflect.EnumDescriptor { 89 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes[0].Descriptor() 90} 91 92func (NotificationConfig_MessageFormat) Type() protoreflect.EnumType { 93 return &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes[0] 94} 95 96func (x NotificationConfig_MessageFormat) Number() protoreflect.EnumNumber { 97 return protoreflect.EnumNumber(x) 98} 99 100// Deprecated: Use NotificationConfig_MessageFormat.Descriptor instead. 101func (NotificationConfig_MessageFormat) EnumDescriptor() ([]byte, []int) { 102 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{4, 0} 103} 104 105// Defines the services to connect to incoming Dialogflow conversations. 106type ConversationProfile struct { 107 state protoimpl.MessageState 108 sizeCache protoimpl.SizeCache 109 unknownFields protoimpl.UnknownFields 110 111 // The unique identifier of this conversation profile. 112 // Format: `projects/<Project ID>/locations/<Location 113 // ID>/conversationProfiles/<Conversation Profile ID>`. 114 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 115 // Required. Human readable name for this profile. Max length 1024 bytes. 116 DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 117 // Output only. Create time of the conversation profile. 118 CreateTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 119 // Output only. Update time of the conversation profile. 120 UpdateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 121 // Configuration for an automated agent to use with this profile. 122 AutomatedAgentConfig *AutomatedAgentConfig `protobuf:"bytes,3,opt,name=automated_agent_config,json=automatedAgentConfig,proto3" json:"automated_agent_config,omitempty"` 123 // Configuration for agent assistance to use with this profile. 124 HumanAgentAssistantConfig *HumanAgentAssistantConfig `protobuf:"bytes,4,opt,name=human_agent_assistant_config,json=humanAgentAssistantConfig,proto3" json:"human_agent_assistant_config,omitempty"` 125 // Configuration for connecting to a live agent. 126 HumanAgentHandoffConfig *HumanAgentHandoffConfig `protobuf:"bytes,5,opt,name=human_agent_handoff_config,json=humanAgentHandoffConfig,proto3" json:"human_agent_handoff_config,omitempty"` 127 // Configuration for publishing conversation lifecycle events. 128 NotificationConfig *NotificationConfig `protobuf:"bytes,6,opt,name=notification_config,json=notificationConfig,proto3" json:"notification_config,omitempty"` 129 // Configuration for logging conversation lifecycle events. 130 LoggingConfig *LoggingConfig `protobuf:"bytes,7,opt,name=logging_config,json=loggingConfig,proto3" json:"logging_config,omitempty"` 131 // Configuration for publishing new message events. Event will be sent in 132 // format of [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent] 133 NewMessageEventNotificationConfig *NotificationConfig `protobuf:"bytes,8,opt,name=new_message_event_notification_config,json=newMessageEventNotificationConfig,proto3" json:"new_message_event_notification_config,omitempty"` 134 // Settings for speech transcription. 135 SttConfig *SpeechToTextConfig `protobuf:"bytes,9,opt,name=stt_config,json=sttConfig,proto3" json:"stt_config,omitempty"` 136 // Language code for the conversation profile. If not specified, the language 137 // is en-US. Language at ConversationProfile should be set for all non en-us 138 // languages. 139 LanguageCode string `protobuf:"bytes,10,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 140} 141 142func (x *ConversationProfile) Reset() { 143 *x = ConversationProfile{} 144 if protoimpl.UnsafeEnabled { 145 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0] 146 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 147 ms.StoreMessageInfo(mi) 148 } 149} 150 151func (x *ConversationProfile) String() string { 152 return protoimpl.X.MessageStringOf(x) 153} 154 155func (*ConversationProfile) ProtoMessage() {} 156 157func (x *ConversationProfile) ProtoReflect() protoreflect.Message { 158 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0] 159 if protoimpl.UnsafeEnabled && x != nil { 160 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 161 if ms.LoadMessageInfo() == nil { 162 ms.StoreMessageInfo(mi) 163 } 164 return ms 165 } 166 return mi.MessageOf(x) 167} 168 169// Deprecated: Use ConversationProfile.ProtoReflect.Descriptor instead. 170func (*ConversationProfile) Descriptor() ([]byte, []int) { 171 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{0} 172} 173 174func (x *ConversationProfile) GetName() string { 175 if x != nil { 176 return x.Name 177 } 178 return "" 179} 180 181func (x *ConversationProfile) GetDisplayName() string { 182 if x != nil { 183 return x.DisplayName 184 } 185 return "" 186} 187 188func (x *ConversationProfile) GetCreateTime() *timestamppb.Timestamp { 189 if x != nil { 190 return x.CreateTime 191 } 192 return nil 193} 194 195func (x *ConversationProfile) GetUpdateTime() *timestamppb.Timestamp { 196 if x != nil { 197 return x.UpdateTime 198 } 199 return nil 200} 201 202func (x *ConversationProfile) GetAutomatedAgentConfig() *AutomatedAgentConfig { 203 if x != nil { 204 return x.AutomatedAgentConfig 205 } 206 return nil 207} 208 209func (x *ConversationProfile) GetHumanAgentAssistantConfig() *HumanAgentAssistantConfig { 210 if x != nil { 211 return x.HumanAgentAssistantConfig 212 } 213 return nil 214} 215 216func (x *ConversationProfile) GetHumanAgentHandoffConfig() *HumanAgentHandoffConfig { 217 if x != nil { 218 return x.HumanAgentHandoffConfig 219 } 220 return nil 221} 222 223func (x *ConversationProfile) GetNotificationConfig() *NotificationConfig { 224 if x != nil { 225 return x.NotificationConfig 226 } 227 return nil 228} 229 230func (x *ConversationProfile) GetLoggingConfig() *LoggingConfig { 231 if x != nil { 232 return x.LoggingConfig 233 } 234 return nil 235} 236 237func (x *ConversationProfile) GetNewMessageEventNotificationConfig() *NotificationConfig { 238 if x != nil { 239 return x.NewMessageEventNotificationConfig 240 } 241 return nil 242} 243 244func (x *ConversationProfile) GetSttConfig() *SpeechToTextConfig { 245 if x != nil { 246 return x.SttConfig 247 } 248 return nil 249} 250 251func (x *ConversationProfile) GetLanguageCode() string { 252 if x != nil { 253 return x.LanguageCode 254 } 255 return "" 256} 257 258// Defines the Automated Agent to connect to a conversation. 259type AutomatedAgentConfig struct { 260 state protoimpl.MessageState 261 sizeCache protoimpl.SizeCache 262 unknownFields protoimpl.UnknownFields 263 264 // Required. ID of the Dialogflow agent environment to use. 265 // 266 // This project needs to either be the same project as the conversation or you 267 // need to grant `service-<Conversation Project 268 // Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` the `Dialogflow API 269 // Service Agent` role in this project. 270 // 271 // - For ES agents, use format: `projects/<Project ID>/locations/<Location 272 // ID>/agent/environments/<Environment ID or '-'>`. If environment is not 273 // specified, the default `draft` environment is used. Refer to 274 // [DetectIntentRequest](/dialogflow/docs/reference/rpc/google.cloud.dialogflow.v2beta1#google.cloud.dialogflow.v2beta1.DetectIntentRequest) 275 // for more details. 276 // 277 // - For CX agents, use format `projects/<Project ID>/locations/<Location 278 // ID>/agents/<Agent ID>/environments/<Environment ID 279 // or '-'>`. If environment is not specified, the default `draft` environment 280 // is used. 281 Agent string `protobuf:"bytes,1,opt,name=agent,proto3" json:"agent,omitempty"` 282} 283 284func (x *AutomatedAgentConfig) Reset() { 285 *x = AutomatedAgentConfig{} 286 if protoimpl.UnsafeEnabled { 287 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1] 288 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 289 ms.StoreMessageInfo(mi) 290 } 291} 292 293func (x *AutomatedAgentConfig) String() string { 294 return protoimpl.X.MessageStringOf(x) 295} 296 297func (*AutomatedAgentConfig) ProtoMessage() {} 298 299func (x *AutomatedAgentConfig) ProtoReflect() protoreflect.Message { 300 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1] 301 if protoimpl.UnsafeEnabled && x != nil { 302 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 303 if ms.LoadMessageInfo() == nil { 304 ms.StoreMessageInfo(mi) 305 } 306 return ms 307 } 308 return mi.MessageOf(x) 309} 310 311// Deprecated: Use AutomatedAgentConfig.ProtoReflect.Descriptor instead. 312func (*AutomatedAgentConfig) Descriptor() ([]byte, []int) { 313 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{1} 314} 315 316func (x *AutomatedAgentConfig) GetAgent() string { 317 if x != nil { 318 return x.Agent 319 } 320 return "" 321} 322 323// Defines the Human Agent Assistant to connect to a conversation. 324type HumanAgentAssistantConfig struct { 325 state protoimpl.MessageState 326 sizeCache protoimpl.SizeCache 327 unknownFields protoimpl.UnknownFields 328 329 // Pub/Sub topic on which to publish new agent assistant events. 330 NotificationConfig *NotificationConfig `protobuf:"bytes,2,opt,name=notification_config,json=notificationConfig,proto3" json:"notification_config,omitempty"` 331 // Configuration for agent assistance of human agent participant. 332 HumanAgentSuggestionConfig *HumanAgentAssistantConfig_SuggestionConfig `protobuf:"bytes,3,opt,name=human_agent_suggestion_config,json=humanAgentSuggestionConfig,proto3" json:"human_agent_suggestion_config,omitempty"` 333 // Configuration for agent assistance of end user participant. 334 EndUserSuggestionConfig *HumanAgentAssistantConfig_SuggestionConfig `protobuf:"bytes,4,opt,name=end_user_suggestion_config,json=endUserSuggestionConfig,proto3" json:"end_user_suggestion_config,omitempty"` 335 // Configuration for message analysis. 336 MessageAnalysisConfig *HumanAgentAssistantConfig_MessageAnalysisConfig `protobuf:"bytes,5,opt,name=message_analysis_config,json=messageAnalysisConfig,proto3" json:"message_analysis_config,omitempty"` 337} 338 339func (x *HumanAgentAssistantConfig) Reset() { 340 *x = HumanAgentAssistantConfig{} 341 if protoimpl.UnsafeEnabled { 342 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2] 343 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 344 ms.StoreMessageInfo(mi) 345 } 346} 347 348func (x *HumanAgentAssistantConfig) String() string { 349 return protoimpl.X.MessageStringOf(x) 350} 351 352func (*HumanAgentAssistantConfig) ProtoMessage() {} 353 354func (x *HumanAgentAssistantConfig) ProtoReflect() protoreflect.Message { 355 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2] 356 if protoimpl.UnsafeEnabled && x != nil { 357 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 358 if ms.LoadMessageInfo() == nil { 359 ms.StoreMessageInfo(mi) 360 } 361 return ms 362 } 363 return mi.MessageOf(x) 364} 365 366// Deprecated: Use HumanAgentAssistantConfig.ProtoReflect.Descriptor instead. 367func (*HumanAgentAssistantConfig) Descriptor() ([]byte, []int) { 368 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2} 369} 370 371func (x *HumanAgentAssistantConfig) GetNotificationConfig() *NotificationConfig { 372 if x != nil { 373 return x.NotificationConfig 374 } 375 return nil 376} 377 378func (x *HumanAgentAssistantConfig) GetHumanAgentSuggestionConfig() *HumanAgentAssistantConfig_SuggestionConfig { 379 if x != nil { 380 return x.HumanAgentSuggestionConfig 381 } 382 return nil 383} 384 385func (x *HumanAgentAssistantConfig) GetEndUserSuggestionConfig() *HumanAgentAssistantConfig_SuggestionConfig { 386 if x != nil { 387 return x.EndUserSuggestionConfig 388 } 389 return nil 390} 391 392func (x *HumanAgentAssistantConfig) GetMessageAnalysisConfig() *HumanAgentAssistantConfig_MessageAnalysisConfig { 393 if x != nil { 394 return x.MessageAnalysisConfig 395 } 396 return nil 397} 398 399// Defines the hand off to a live agent, typically on which external agent 400// service provider to connect to a conversation. 401type HumanAgentHandoffConfig struct { 402 state protoimpl.MessageState 403 sizeCache protoimpl.SizeCache 404 unknownFields protoimpl.UnknownFields 405 406 // Required. Specifies which agent service to connect for human agent handoff. 407 // 408 // Types that are assignable to AgentService: 409 // *HumanAgentHandoffConfig_LivePersonConfig_ 410 // *HumanAgentHandoffConfig_SalesforceLiveAgentConfig_ 411 AgentService isHumanAgentHandoffConfig_AgentService `protobuf_oneof:"agent_service"` 412} 413 414func (x *HumanAgentHandoffConfig) Reset() { 415 *x = HumanAgentHandoffConfig{} 416 if protoimpl.UnsafeEnabled { 417 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3] 418 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 419 ms.StoreMessageInfo(mi) 420 } 421} 422 423func (x *HumanAgentHandoffConfig) String() string { 424 return protoimpl.X.MessageStringOf(x) 425} 426 427func (*HumanAgentHandoffConfig) ProtoMessage() {} 428 429func (x *HumanAgentHandoffConfig) ProtoReflect() protoreflect.Message { 430 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3] 431 if protoimpl.UnsafeEnabled && x != nil { 432 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 433 if ms.LoadMessageInfo() == nil { 434 ms.StoreMessageInfo(mi) 435 } 436 return ms 437 } 438 return mi.MessageOf(x) 439} 440 441// Deprecated: Use HumanAgentHandoffConfig.ProtoReflect.Descriptor instead. 442func (*HumanAgentHandoffConfig) Descriptor() ([]byte, []int) { 443 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3} 444} 445 446func (m *HumanAgentHandoffConfig) GetAgentService() isHumanAgentHandoffConfig_AgentService { 447 if m != nil { 448 return m.AgentService 449 } 450 return nil 451} 452 453func (x *HumanAgentHandoffConfig) GetLivePersonConfig() *HumanAgentHandoffConfig_LivePersonConfig { 454 if x, ok := x.GetAgentService().(*HumanAgentHandoffConfig_LivePersonConfig_); ok { 455 return x.LivePersonConfig 456 } 457 return nil 458} 459 460func (x *HumanAgentHandoffConfig) GetSalesforceLiveAgentConfig() *HumanAgentHandoffConfig_SalesforceLiveAgentConfig { 461 if x, ok := x.GetAgentService().(*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_); ok { 462 return x.SalesforceLiveAgentConfig 463 } 464 return nil 465} 466 467type isHumanAgentHandoffConfig_AgentService interface { 468 isHumanAgentHandoffConfig_AgentService() 469} 470 471type HumanAgentHandoffConfig_LivePersonConfig_ struct { 472 // Uses LivePerson (https://www.liveperson.com). 473 LivePersonConfig *HumanAgentHandoffConfig_LivePersonConfig `protobuf:"bytes,1,opt,name=live_person_config,json=livePersonConfig,proto3,oneof"` 474} 475 476type HumanAgentHandoffConfig_SalesforceLiveAgentConfig_ struct { 477 // Uses Salesforce Live Agent. 478 SalesforceLiveAgentConfig *HumanAgentHandoffConfig_SalesforceLiveAgentConfig `protobuf:"bytes,2,opt,name=salesforce_live_agent_config,json=salesforceLiveAgentConfig,proto3,oneof"` 479} 480 481func (*HumanAgentHandoffConfig_LivePersonConfig_) isHumanAgentHandoffConfig_AgentService() {} 482 483func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_) isHumanAgentHandoffConfig_AgentService() {} 484 485// Defines notification behavior. 486type NotificationConfig struct { 487 state protoimpl.MessageState 488 sizeCache protoimpl.SizeCache 489 unknownFields protoimpl.UnknownFields 490 491 // Name of the Pub/Sub topic to publish conversation 492 // events like 493 // [CONVERSATION_STARTED][google.cloud.dialogflow.v2beta1.ConversationEvent.Type.CONVERSATION_STARTED] as 494 // serialized [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent] protos. 495 // 496 // Notification works for phone calls, if this topic either is in the same 497 // project as the conversation or you grant `service-<Conversation Project 498 // Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` the `Dialogflow Service 499 // Agent` role in the topic project. 500 // 501 // Format: `projects/<Project ID>/locations/<Location ID>/topics/<Topic ID>`. 502 Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"` 503 // Format of message. 504 MessageFormat NotificationConfig_MessageFormat `protobuf:"varint,2,opt,name=message_format,json=messageFormat,proto3,enum=google.cloud.dialogflow.v2beta1.NotificationConfig_MessageFormat" json:"message_format,omitempty"` 505} 506 507func (x *NotificationConfig) Reset() { 508 *x = NotificationConfig{} 509 if protoimpl.UnsafeEnabled { 510 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4] 511 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 512 ms.StoreMessageInfo(mi) 513 } 514} 515 516func (x *NotificationConfig) String() string { 517 return protoimpl.X.MessageStringOf(x) 518} 519 520func (*NotificationConfig) ProtoMessage() {} 521 522func (x *NotificationConfig) ProtoReflect() protoreflect.Message { 523 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4] 524 if protoimpl.UnsafeEnabled && x != nil { 525 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 526 if ms.LoadMessageInfo() == nil { 527 ms.StoreMessageInfo(mi) 528 } 529 return ms 530 } 531 return mi.MessageOf(x) 532} 533 534// Deprecated: Use NotificationConfig.ProtoReflect.Descriptor instead. 535func (*NotificationConfig) Descriptor() ([]byte, []int) { 536 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{4} 537} 538 539func (x *NotificationConfig) GetTopic() string { 540 if x != nil { 541 return x.Topic 542 } 543 return "" 544} 545 546func (x *NotificationConfig) GetMessageFormat() NotificationConfig_MessageFormat { 547 if x != nil { 548 return x.MessageFormat 549 } 550 return NotificationConfig_MESSAGE_FORMAT_UNSPECIFIED 551} 552 553// Defines logging behavior for conversation lifecycle events. 554type LoggingConfig struct { 555 state protoimpl.MessageState 556 sizeCache protoimpl.SizeCache 557 unknownFields protoimpl.UnknownFields 558 559 // Whether to log conversation events like 560 // [CONVERSATION_STARTED][google.cloud.dialogflow.v2beta1.ConversationEvent.Type.CONVERSATION_STARTED] to 561 // Stackdriver in the conversation project as JSON format 562 // [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent] protos. 563 EnableStackdriverLogging bool `protobuf:"varint,3,opt,name=enable_stackdriver_logging,json=enableStackdriverLogging,proto3" json:"enable_stackdriver_logging,omitempty"` 564} 565 566func (x *LoggingConfig) Reset() { 567 *x = LoggingConfig{} 568 if protoimpl.UnsafeEnabled { 569 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5] 570 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 571 ms.StoreMessageInfo(mi) 572 } 573} 574 575func (x *LoggingConfig) String() string { 576 return protoimpl.X.MessageStringOf(x) 577} 578 579func (*LoggingConfig) ProtoMessage() {} 580 581func (x *LoggingConfig) ProtoReflect() protoreflect.Message { 582 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5] 583 if protoimpl.UnsafeEnabled && x != nil { 584 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 585 if ms.LoadMessageInfo() == nil { 586 ms.StoreMessageInfo(mi) 587 } 588 return ms 589 } 590 return mi.MessageOf(x) 591} 592 593// Deprecated: Use LoggingConfig.ProtoReflect.Descriptor instead. 594func (*LoggingConfig) Descriptor() ([]byte, []int) { 595 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{5} 596} 597 598func (x *LoggingConfig) GetEnableStackdriverLogging() bool { 599 if x != nil { 600 return x.EnableStackdriverLogging 601 } 602 return false 603} 604 605// The request message for [ConversationProfiles.ListConversationProfiles][google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles]. 606type ListConversationProfilesRequest struct { 607 state protoimpl.MessageState 608 sizeCache protoimpl.SizeCache 609 unknownFields protoimpl.UnknownFields 610 611 // Required. The project to list all conversation profiles from. 612 // Format: `projects/<Project ID>/locations/<Location ID>`. 613 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 614 // The maximum number of items to return in a single page. By 615 // default 100 and at most 1000. 616 PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 617 // The next_page_token value returned from a previous list request. 618 PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 619} 620 621func (x *ListConversationProfilesRequest) Reset() { 622 *x = ListConversationProfilesRequest{} 623 if protoimpl.UnsafeEnabled { 624 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6] 625 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 626 ms.StoreMessageInfo(mi) 627 } 628} 629 630func (x *ListConversationProfilesRequest) String() string { 631 return protoimpl.X.MessageStringOf(x) 632} 633 634func (*ListConversationProfilesRequest) ProtoMessage() {} 635 636func (x *ListConversationProfilesRequest) ProtoReflect() protoreflect.Message { 637 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6] 638 if protoimpl.UnsafeEnabled && x != nil { 639 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 640 if ms.LoadMessageInfo() == nil { 641 ms.StoreMessageInfo(mi) 642 } 643 return ms 644 } 645 return mi.MessageOf(x) 646} 647 648// Deprecated: Use ListConversationProfilesRequest.ProtoReflect.Descriptor instead. 649func (*ListConversationProfilesRequest) Descriptor() ([]byte, []int) { 650 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{6} 651} 652 653func (x *ListConversationProfilesRequest) GetParent() string { 654 if x != nil { 655 return x.Parent 656 } 657 return "" 658} 659 660func (x *ListConversationProfilesRequest) GetPageSize() int32 { 661 if x != nil { 662 return x.PageSize 663 } 664 return 0 665} 666 667func (x *ListConversationProfilesRequest) GetPageToken() string { 668 if x != nil { 669 return x.PageToken 670 } 671 return "" 672} 673 674// The response message for [ConversationProfiles.ListConversationProfiles][google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles]. 675type ListConversationProfilesResponse struct { 676 state protoimpl.MessageState 677 sizeCache protoimpl.SizeCache 678 unknownFields protoimpl.UnknownFields 679 680 // The list of project conversation profiles. There is a maximum number 681 // of items returned based on the page_size field in the request. 682 ConversationProfiles []*ConversationProfile `protobuf:"bytes,1,rep,name=conversation_profiles,json=conversationProfiles,proto3" json:"conversation_profiles,omitempty"` 683 // Token to retrieve the next page of results, or empty if there are no 684 // more results in the list. 685 NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 686} 687 688func (x *ListConversationProfilesResponse) Reset() { 689 *x = ListConversationProfilesResponse{} 690 if protoimpl.UnsafeEnabled { 691 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7] 692 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 693 ms.StoreMessageInfo(mi) 694 } 695} 696 697func (x *ListConversationProfilesResponse) String() string { 698 return protoimpl.X.MessageStringOf(x) 699} 700 701func (*ListConversationProfilesResponse) ProtoMessage() {} 702 703func (x *ListConversationProfilesResponse) ProtoReflect() protoreflect.Message { 704 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7] 705 if protoimpl.UnsafeEnabled && x != nil { 706 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 707 if ms.LoadMessageInfo() == nil { 708 ms.StoreMessageInfo(mi) 709 } 710 return ms 711 } 712 return mi.MessageOf(x) 713} 714 715// Deprecated: Use ListConversationProfilesResponse.ProtoReflect.Descriptor instead. 716func (*ListConversationProfilesResponse) Descriptor() ([]byte, []int) { 717 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{7} 718} 719 720func (x *ListConversationProfilesResponse) GetConversationProfiles() []*ConversationProfile { 721 if x != nil { 722 return x.ConversationProfiles 723 } 724 return nil 725} 726 727func (x *ListConversationProfilesResponse) GetNextPageToken() string { 728 if x != nil { 729 return x.NextPageToken 730 } 731 return "" 732} 733 734// The request message for [ConversationProfiles.GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile]. 735type GetConversationProfileRequest struct { 736 state protoimpl.MessageState 737 sizeCache protoimpl.SizeCache 738 unknownFields protoimpl.UnknownFields 739 740 // Required. The resource name of the conversation profile. 741 // Format: `projects/<Project ID>/locations/<Location 742 // ID>/conversationProfiles/<Conversation Profile ID>`. 743 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 744} 745 746func (x *GetConversationProfileRequest) Reset() { 747 *x = GetConversationProfileRequest{} 748 if protoimpl.UnsafeEnabled { 749 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8] 750 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 751 ms.StoreMessageInfo(mi) 752 } 753} 754 755func (x *GetConversationProfileRequest) String() string { 756 return protoimpl.X.MessageStringOf(x) 757} 758 759func (*GetConversationProfileRequest) ProtoMessage() {} 760 761func (x *GetConversationProfileRequest) ProtoReflect() protoreflect.Message { 762 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8] 763 if protoimpl.UnsafeEnabled && x != nil { 764 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 765 if ms.LoadMessageInfo() == nil { 766 ms.StoreMessageInfo(mi) 767 } 768 return ms 769 } 770 return mi.MessageOf(x) 771} 772 773// Deprecated: Use GetConversationProfileRequest.ProtoReflect.Descriptor instead. 774func (*GetConversationProfileRequest) Descriptor() ([]byte, []int) { 775 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{8} 776} 777 778func (x *GetConversationProfileRequest) GetName() string { 779 if x != nil { 780 return x.Name 781 } 782 return "" 783} 784 785// The request message for [ConversationProfiles.CreateConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile]. 786type CreateConversationProfileRequest struct { 787 state protoimpl.MessageState 788 sizeCache protoimpl.SizeCache 789 unknownFields protoimpl.UnknownFields 790 791 // Required. The project to create a conversation profile for. 792 // Format: `projects/<Project ID>/locations/<Location ID>`. 793 Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 794 // Required. The conversation profile to create. 795 ConversationProfile *ConversationProfile `protobuf:"bytes,2,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"` 796} 797 798func (x *CreateConversationProfileRequest) Reset() { 799 *x = CreateConversationProfileRequest{} 800 if protoimpl.UnsafeEnabled { 801 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9] 802 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 803 ms.StoreMessageInfo(mi) 804 } 805} 806 807func (x *CreateConversationProfileRequest) String() string { 808 return protoimpl.X.MessageStringOf(x) 809} 810 811func (*CreateConversationProfileRequest) ProtoMessage() {} 812 813func (x *CreateConversationProfileRequest) ProtoReflect() protoreflect.Message { 814 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9] 815 if protoimpl.UnsafeEnabled && x != nil { 816 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 817 if ms.LoadMessageInfo() == nil { 818 ms.StoreMessageInfo(mi) 819 } 820 return ms 821 } 822 return mi.MessageOf(x) 823} 824 825// Deprecated: Use CreateConversationProfileRequest.ProtoReflect.Descriptor instead. 826func (*CreateConversationProfileRequest) Descriptor() ([]byte, []int) { 827 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{9} 828} 829 830func (x *CreateConversationProfileRequest) GetParent() string { 831 if x != nil { 832 return x.Parent 833 } 834 return "" 835} 836 837func (x *CreateConversationProfileRequest) GetConversationProfile() *ConversationProfile { 838 if x != nil { 839 return x.ConversationProfile 840 } 841 return nil 842} 843 844// The request message for [ConversationProfiles.UpdateConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile]. 845type UpdateConversationProfileRequest struct { 846 state protoimpl.MessageState 847 sizeCache protoimpl.SizeCache 848 unknownFields protoimpl.UnknownFields 849 850 // Required. The conversation profile to update. 851 ConversationProfile *ConversationProfile `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"` 852 // Required. The mask to control which fields to update. 853 UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"` 854} 855 856func (x *UpdateConversationProfileRequest) Reset() { 857 *x = UpdateConversationProfileRequest{} 858 if protoimpl.UnsafeEnabled { 859 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10] 860 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 861 ms.StoreMessageInfo(mi) 862 } 863} 864 865func (x *UpdateConversationProfileRequest) String() string { 866 return protoimpl.X.MessageStringOf(x) 867} 868 869func (*UpdateConversationProfileRequest) ProtoMessage() {} 870 871func (x *UpdateConversationProfileRequest) ProtoReflect() protoreflect.Message { 872 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10] 873 if protoimpl.UnsafeEnabled && x != nil { 874 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 875 if ms.LoadMessageInfo() == nil { 876 ms.StoreMessageInfo(mi) 877 } 878 return ms 879 } 880 return mi.MessageOf(x) 881} 882 883// Deprecated: Use UpdateConversationProfileRequest.ProtoReflect.Descriptor instead. 884func (*UpdateConversationProfileRequest) Descriptor() ([]byte, []int) { 885 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{10} 886} 887 888func (x *UpdateConversationProfileRequest) GetConversationProfile() *ConversationProfile { 889 if x != nil { 890 return x.ConversationProfile 891 } 892 return nil 893} 894 895func (x *UpdateConversationProfileRequest) GetUpdateMask() *fieldmaskpb.FieldMask { 896 if x != nil { 897 return x.UpdateMask 898 } 899 return nil 900} 901 902// The request message for [ConversationProfiles.DeleteConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile]. 903// 904// This operation fails if the conversation profile is still referenced from 905// a phone number. 906type DeleteConversationProfileRequest struct { 907 state protoimpl.MessageState 908 sizeCache protoimpl.SizeCache 909 unknownFields protoimpl.UnknownFields 910 911 // Required. The name of the conversation profile to delete. 912 // Format: `projects/<Project ID>/locations/<Location 913 // ID>/conversationProfiles/<Conversation Profile ID>`. 914 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 915} 916 917func (x *DeleteConversationProfileRequest) Reset() { 918 *x = DeleteConversationProfileRequest{} 919 if protoimpl.UnsafeEnabled { 920 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11] 921 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 922 ms.StoreMessageInfo(mi) 923 } 924} 925 926func (x *DeleteConversationProfileRequest) String() string { 927 return protoimpl.X.MessageStringOf(x) 928} 929 930func (*DeleteConversationProfileRequest) ProtoMessage() {} 931 932func (x *DeleteConversationProfileRequest) ProtoReflect() protoreflect.Message { 933 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11] 934 if protoimpl.UnsafeEnabled && x != nil { 935 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 936 if ms.LoadMessageInfo() == nil { 937 ms.StoreMessageInfo(mi) 938 } 939 return ms 940 } 941 return mi.MessageOf(x) 942} 943 944// Deprecated: Use DeleteConversationProfileRequest.ProtoReflect.Descriptor instead. 945func (*DeleteConversationProfileRequest) Descriptor() ([]byte, []int) { 946 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{11} 947} 948 949func (x *DeleteConversationProfileRequest) GetName() string { 950 if x != nil { 951 return x.Name 952 } 953 return "" 954} 955 956// Settings of suggestion trigger. 957type HumanAgentAssistantConfig_SuggestionTriggerSettings struct { 958 state protoimpl.MessageState 959 sizeCache protoimpl.SizeCache 960 unknownFields protoimpl.UnknownFields 961 962 // Do not trigger if last utterance is small talk. 963 NoSmallTalk bool `protobuf:"varint,1,opt,name=no_small_talk,json=noSmallTalk,proto3" json:"no_small_talk,omitempty"` 964 // Only trigger suggestion if participant role of last utterance is 965 // END_USER. 966 OnlyEndUser bool `protobuf:"varint,2,opt,name=only_end_user,json=onlyEndUser,proto3" json:"only_end_user,omitempty"` 967} 968 969func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) Reset() { 970 *x = HumanAgentAssistantConfig_SuggestionTriggerSettings{} 971 if protoimpl.UnsafeEnabled { 972 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12] 973 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 974 ms.StoreMessageInfo(mi) 975 } 976} 977 978func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) String() string { 979 return protoimpl.X.MessageStringOf(x) 980} 981 982func (*HumanAgentAssistantConfig_SuggestionTriggerSettings) ProtoMessage() {} 983 984func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) ProtoReflect() protoreflect.Message { 985 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12] 986 if protoimpl.UnsafeEnabled && x != nil { 987 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 988 if ms.LoadMessageInfo() == nil { 989 ms.StoreMessageInfo(mi) 990 } 991 return ms 992 } 993 return mi.MessageOf(x) 994} 995 996// Deprecated: Use HumanAgentAssistantConfig_SuggestionTriggerSettings.ProtoReflect.Descriptor instead. 997func (*HumanAgentAssistantConfig_SuggestionTriggerSettings) Descriptor() ([]byte, []int) { 998 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 0} 999} 1000 1001func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) GetNoSmallTalk() bool { 1002 if x != nil { 1003 return x.NoSmallTalk 1004 } 1005 return false 1006} 1007 1008func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) GetOnlyEndUser() bool { 1009 if x != nil { 1010 return x.OnlyEndUser 1011 } 1012 return false 1013} 1014 1015// Config for suggestion features. 1016type HumanAgentAssistantConfig_SuggestionFeatureConfig struct { 1017 state protoimpl.MessageState 1018 sizeCache protoimpl.SizeCache 1019 unknownFields protoimpl.UnknownFields 1020 1021 // The suggestion feature. 1022 SuggestionFeature *SuggestionFeature `protobuf:"bytes,5,opt,name=suggestion_feature,json=suggestionFeature,proto3" json:"suggestion_feature,omitempty"` 1023 // Automatically iterates all participants and tries to compile 1024 // suggestions. 1025 // 1026 // Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST. 1027 EnableEventBasedSuggestion bool `protobuf:"varint,3,opt,name=enable_event_based_suggestion,json=enableEventBasedSuggestion,proto3" json:"enable_event_based_suggestion,omitempty"` 1028 // Settings of suggestion trigger. 1029 // 1030 // Currently, only ARTICLE_SUGGESTION, FAQ, and DIALOGFLOW_ASSIST will use 1031 // this field. 1032 SuggestionTriggerSettings *HumanAgentAssistantConfig_SuggestionTriggerSettings `protobuf:"bytes,10,opt,name=suggestion_trigger_settings,json=suggestionTriggerSettings,proto3" json:"suggestion_trigger_settings,omitempty"` 1033 // Configs of query. 1034 QueryConfig *HumanAgentAssistantConfig_SuggestionQueryConfig `protobuf:"bytes,6,opt,name=query_config,json=queryConfig,proto3" json:"query_config,omitempty"` 1035 // Configs of custom conversation model. 1036 ConversationModelConfig *HumanAgentAssistantConfig_ConversationModelConfig `protobuf:"bytes,7,opt,name=conversation_model_config,json=conversationModelConfig,proto3" json:"conversation_model_config,omitempty"` 1037} 1038 1039func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) Reset() { 1040 *x = HumanAgentAssistantConfig_SuggestionFeatureConfig{} 1041 if protoimpl.UnsafeEnabled { 1042 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13] 1043 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1044 ms.StoreMessageInfo(mi) 1045 } 1046} 1047 1048func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) String() string { 1049 return protoimpl.X.MessageStringOf(x) 1050} 1051 1052func (*HumanAgentAssistantConfig_SuggestionFeatureConfig) ProtoMessage() {} 1053 1054func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) ProtoReflect() protoreflect.Message { 1055 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13] 1056 if protoimpl.UnsafeEnabled && x != nil { 1057 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1058 if ms.LoadMessageInfo() == nil { 1059 ms.StoreMessageInfo(mi) 1060 } 1061 return ms 1062 } 1063 return mi.MessageOf(x) 1064} 1065 1066// Deprecated: Use HumanAgentAssistantConfig_SuggestionFeatureConfig.ProtoReflect.Descriptor instead. 1067func (*HumanAgentAssistantConfig_SuggestionFeatureConfig) Descriptor() ([]byte, []int) { 1068 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 1} 1069} 1070 1071func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetSuggestionFeature() *SuggestionFeature { 1072 if x != nil { 1073 return x.SuggestionFeature 1074 } 1075 return nil 1076} 1077 1078func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetEnableEventBasedSuggestion() bool { 1079 if x != nil { 1080 return x.EnableEventBasedSuggestion 1081 } 1082 return false 1083} 1084 1085func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetSuggestionTriggerSettings() *HumanAgentAssistantConfig_SuggestionTriggerSettings { 1086 if x != nil { 1087 return x.SuggestionTriggerSettings 1088 } 1089 return nil 1090} 1091 1092func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetQueryConfig() *HumanAgentAssistantConfig_SuggestionQueryConfig { 1093 if x != nil { 1094 return x.QueryConfig 1095 } 1096 return nil 1097} 1098 1099func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetConversationModelConfig() *HumanAgentAssistantConfig_ConversationModelConfig { 1100 if x != nil { 1101 return x.ConversationModelConfig 1102 } 1103 return nil 1104} 1105 1106// Detail human agent assistant config. 1107type HumanAgentAssistantConfig_SuggestionConfig struct { 1108 state protoimpl.MessageState 1109 sizeCache protoimpl.SizeCache 1110 unknownFields protoimpl.UnknownFields 1111 1112 // Configuration of different suggestion features. One feature can have only 1113 // one config. 1114 FeatureConfigs []*HumanAgentAssistantConfig_SuggestionFeatureConfig `protobuf:"bytes,2,rep,name=feature_configs,json=featureConfigs,proto3" json:"feature_configs,omitempty"` 1115 // If `group_suggestion_responses` is false, and there are multiple 1116 // `feature_configs` in `event based suggestion` or 1117 // StreamingAnalyzeContent, we will try to deliver suggestions to customers 1118 // as soon as we get new suggestion. Different type of suggestions based on 1119 // the same context will be in separate Pub/Sub event or 1120 // `StreamingAnalyzeContentResponse`. 1121 // 1122 // If `group_suggestion_responses` set to true. All the suggestions to the 1123 // same participant based on the same context will be grouped into a single 1124 // Pub/Sub event or StreamingAnalyzeContentResponse. 1125 GroupSuggestionResponses bool `protobuf:"varint,3,opt,name=group_suggestion_responses,json=groupSuggestionResponses,proto3" json:"group_suggestion_responses,omitempty"` 1126} 1127 1128func (x *HumanAgentAssistantConfig_SuggestionConfig) Reset() { 1129 *x = HumanAgentAssistantConfig_SuggestionConfig{} 1130 if protoimpl.UnsafeEnabled { 1131 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14] 1132 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1133 ms.StoreMessageInfo(mi) 1134 } 1135} 1136 1137func (x *HumanAgentAssistantConfig_SuggestionConfig) String() string { 1138 return protoimpl.X.MessageStringOf(x) 1139} 1140 1141func (*HumanAgentAssistantConfig_SuggestionConfig) ProtoMessage() {} 1142 1143func (x *HumanAgentAssistantConfig_SuggestionConfig) ProtoReflect() protoreflect.Message { 1144 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14] 1145 if protoimpl.UnsafeEnabled && x != nil { 1146 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1147 if ms.LoadMessageInfo() == nil { 1148 ms.StoreMessageInfo(mi) 1149 } 1150 return ms 1151 } 1152 return mi.MessageOf(x) 1153} 1154 1155// Deprecated: Use HumanAgentAssistantConfig_SuggestionConfig.ProtoReflect.Descriptor instead. 1156func (*HumanAgentAssistantConfig_SuggestionConfig) Descriptor() ([]byte, []int) { 1157 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 2} 1158} 1159 1160func (x *HumanAgentAssistantConfig_SuggestionConfig) GetFeatureConfigs() []*HumanAgentAssistantConfig_SuggestionFeatureConfig { 1161 if x != nil { 1162 return x.FeatureConfigs 1163 } 1164 return nil 1165} 1166 1167func (x *HumanAgentAssistantConfig_SuggestionConfig) GetGroupSuggestionResponses() bool { 1168 if x != nil { 1169 return x.GroupSuggestionResponses 1170 } 1171 return false 1172} 1173 1174// Config for suggestion query. 1175type HumanAgentAssistantConfig_SuggestionQueryConfig struct { 1176 state protoimpl.MessageState 1177 sizeCache protoimpl.SizeCache 1178 unknownFields protoimpl.UnknownFields 1179 1180 // Source of query. 1181 // 1182 // Types that are assignable to QuerySource: 1183 // *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_ 1184 // *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_ 1185 // *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_ 1186 QuerySource isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource `protobuf_oneof:"query_source"` 1187 // Maximum number of results to return. Currently, if unset, defaults to 10. 1188 // And the max number is 20. 1189 MaxResults int32 `protobuf:"varint,4,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"` 1190 // Confidence threshold of query result. 1191 // 1192 // Agent Assist gives each suggestion a score in the range [0.0, 1.0], based 1193 // on the relevance between the suggestion and the current conversation 1194 // context. A score of 0.0 has no relevance, while a score of 1.0 has high 1195 // relevance. Only suggestions with a score greater than or equal to the 1196 // value of this field are included in the results. 1197 // 1198 // For a baseline model (the default), the recommended value is in the range 1199 // [0.05, 0.1]. 1200 // 1201 // For a custom model, there is no recommended value. Tune this value by 1202 // starting from a very low value and slowly increasing until you have 1203 // desired results. 1204 // 1205 // If this field is not set, it is default to 0.0, which means that all 1206 // suggestions are returned. 1207 // 1208 // Supported features: ARTICLE_SUGGESTION, FAQ, SMART_REPLY, SMART_COMPOSE. 1209 ConfidenceThreshold float32 `protobuf:"fixed32,5,opt,name=confidence_threshold,json=confidenceThreshold,proto3" json:"confidence_threshold,omitempty"` 1210 // Determines how recent conversation context is filtered when generating 1211 // suggestions. If unspecified, no messages will be dropped. 1212 ContextFilterSettings *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings `protobuf:"bytes,7,opt,name=context_filter_settings,json=contextFilterSettings,proto3" json:"context_filter_settings,omitempty"` 1213} 1214 1215func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) Reset() { 1216 *x = HumanAgentAssistantConfig_SuggestionQueryConfig{} 1217 if protoimpl.UnsafeEnabled { 1218 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15] 1219 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1220 ms.StoreMessageInfo(mi) 1221 } 1222} 1223 1224func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) String() string { 1225 return protoimpl.X.MessageStringOf(x) 1226} 1227 1228func (*HumanAgentAssistantConfig_SuggestionQueryConfig) ProtoMessage() {} 1229 1230func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) ProtoReflect() protoreflect.Message { 1231 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15] 1232 if protoimpl.UnsafeEnabled && x != nil { 1233 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1234 if ms.LoadMessageInfo() == nil { 1235 ms.StoreMessageInfo(mi) 1236 } 1237 return ms 1238 } 1239 return mi.MessageOf(x) 1240} 1241 1242// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig.ProtoReflect.Descriptor instead. 1243func (*HumanAgentAssistantConfig_SuggestionQueryConfig) Descriptor() ([]byte, []int) { 1244 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3} 1245} 1246 1247func (m *HumanAgentAssistantConfig_SuggestionQueryConfig) GetQuerySource() isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource { 1248 if m != nil { 1249 return m.QuerySource 1250 } 1251 return nil 1252} 1253 1254func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetKnowledgeBaseQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource { 1255 if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_); ok { 1256 return x.KnowledgeBaseQuerySource 1257 } 1258 return nil 1259} 1260 1261func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetDocumentQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource { 1262 if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_); ok { 1263 return x.DocumentQuerySource 1264 } 1265 return nil 1266} 1267 1268func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetDialogflowQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource { 1269 if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_); ok { 1270 return x.DialogflowQuerySource 1271 } 1272 return nil 1273} 1274 1275func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetMaxResults() int32 { 1276 if x != nil { 1277 return x.MaxResults 1278 } 1279 return 0 1280} 1281 1282func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetConfidenceThreshold() float32 { 1283 if x != nil { 1284 return x.ConfidenceThreshold 1285 } 1286 return 0 1287} 1288 1289func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetContextFilterSettings() *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings { 1290 if x != nil { 1291 return x.ContextFilterSettings 1292 } 1293 return nil 1294} 1295 1296type isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource interface { 1297 isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() 1298} 1299 1300type HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_ struct { 1301 // Query from knowledgebase. It is used by: 1302 // ARTICLE_SUGGESTION, FAQ. 1303 KnowledgeBaseQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource `protobuf:"bytes,1,opt,name=knowledge_base_query_source,json=knowledgeBaseQuerySource,proto3,oneof"` 1304} 1305 1306type HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_ struct { 1307 // Query from knowledge base document. It is used by: 1308 // SMART_REPLY, SMART_COMPOSE. 1309 DocumentQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource `protobuf:"bytes,2,opt,name=document_query_source,json=documentQuerySource,proto3,oneof"` 1310} 1311 1312type HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_ struct { 1313 // Query from Dialogflow agent. It is used by DIALOGFLOW_ASSIST. 1314 DialogflowQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource `protobuf:"bytes,3,opt,name=dialogflow_query_source,json=dialogflowQuerySource,proto3,oneof"` 1315} 1316 1317func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() { 1318} 1319 1320func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() { 1321} 1322 1323func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() { 1324} 1325 1326// Custom conversation models used in agent assist feature. 1327// 1328// Supported feature: ARTICLE_SUGGESTION, SMART_COMPOSE, SMART_REPLY. 1329type HumanAgentAssistantConfig_ConversationModelConfig struct { 1330 state protoimpl.MessageState 1331 sizeCache protoimpl.SizeCache 1332 unknownFields protoimpl.UnknownFields 1333 1334 // Required. Conversation model resource name. Format: `projects/<Project 1335 // ID>/conversationModels/<Model ID>`. 1336 Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"` 1337} 1338 1339func (x *HumanAgentAssistantConfig_ConversationModelConfig) Reset() { 1340 *x = HumanAgentAssistantConfig_ConversationModelConfig{} 1341 if protoimpl.UnsafeEnabled { 1342 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16] 1343 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1344 ms.StoreMessageInfo(mi) 1345 } 1346} 1347 1348func (x *HumanAgentAssistantConfig_ConversationModelConfig) String() string { 1349 return protoimpl.X.MessageStringOf(x) 1350} 1351 1352func (*HumanAgentAssistantConfig_ConversationModelConfig) ProtoMessage() {} 1353 1354func (x *HumanAgentAssistantConfig_ConversationModelConfig) ProtoReflect() protoreflect.Message { 1355 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16] 1356 if protoimpl.UnsafeEnabled && x != nil { 1357 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1358 if ms.LoadMessageInfo() == nil { 1359 ms.StoreMessageInfo(mi) 1360 } 1361 return ms 1362 } 1363 return mi.MessageOf(x) 1364} 1365 1366// Deprecated: Use HumanAgentAssistantConfig_ConversationModelConfig.ProtoReflect.Descriptor instead. 1367func (*HumanAgentAssistantConfig_ConversationModelConfig) Descriptor() ([]byte, []int) { 1368 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 4} 1369} 1370 1371func (x *HumanAgentAssistantConfig_ConversationModelConfig) GetModel() string { 1372 if x != nil { 1373 return x.Model 1374 } 1375 return "" 1376} 1377 1378// Configuration for analyses to run on each conversation message. 1379type HumanAgentAssistantConfig_MessageAnalysisConfig struct { 1380 state protoimpl.MessageState 1381 sizeCache protoimpl.SizeCache 1382 unknownFields protoimpl.UnknownFields 1383 1384 // Enable entity extraction in conversation messages on [agent assist 1385 // stage](https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages). 1386 // If unspecified, defaults to false. 1387 EnableEntityExtraction bool `protobuf:"varint,2,opt,name=enable_entity_extraction,json=enableEntityExtraction,proto3" json:"enable_entity_extraction,omitempty"` 1388 // Enable sentiment analysis in conversation messages on [agent assist 1389 // stage](https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages). 1390 // If unspecified, defaults to false. Sentiment analysis inspects user input 1391 // and identifies the prevailing subjective opinion, especially to determine 1392 // a user's attitude as positive, negative, or neutral: 1393 // https://cloud.google.com/natural-language/docs/basics#sentiment_analysis 1394 // For [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent] method, result will be in 1395 // [StreamingAnalyzeContentResponse.message.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.message]. 1396 // For [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent] method, result will be in 1397 // [AnalyzeContentResponse.message.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.message] 1398 // For [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages] method, result will be in 1399 // [ListMessagesResponse.messages.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.ListMessagesResponse.messages] 1400 // If Pub/Sub notification is configured, result will be in 1401 // [ConversationEvent.new_message_payload.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.ConversationEvent.new_message_payload]. 1402 EnableSentimentAnalysis bool `protobuf:"varint,3,opt,name=enable_sentiment_analysis,json=enableSentimentAnalysis,proto3" json:"enable_sentiment_analysis,omitempty"` 1403} 1404 1405func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) Reset() { 1406 *x = HumanAgentAssistantConfig_MessageAnalysisConfig{} 1407 if protoimpl.UnsafeEnabled { 1408 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17] 1409 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1410 ms.StoreMessageInfo(mi) 1411 } 1412} 1413 1414func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) String() string { 1415 return protoimpl.X.MessageStringOf(x) 1416} 1417 1418func (*HumanAgentAssistantConfig_MessageAnalysisConfig) ProtoMessage() {} 1419 1420func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) ProtoReflect() protoreflect.Message { 1421 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17] 1422 if protoimpl.UnsafeEnabled && x != nil { 1423 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1424 if ms.LoadMessageInfo() == nil { 1425 ms.StoreMessageInfo(mi) 1426 } 1427 return ms 1428 } 1429 return mi.MessageOf(x) 1430} 1431 1432// Deprecated: Use HumanAgentAssistantConfig_MessageAnalysisConfig.ProtoReflect.Descriptor instead. 1433func (*HumanAgentAssistantConfig_MessageAnalysisConfig) Descriptor() ([]byte, []int) { 1434 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 5} 1435} 1436 1437func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) GetEnableEntityExtraction() bool { 1438 if x != nil { 1439 return x.EnableEntityExtraction 1440 } 1441 return false 1442} 1443 1444func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) GetEnableSentimentAnalysis() bool { 1445 if x != nil { 1446 return x.EnableSentimentAnalysis 1447 } 1448 return false 1449} 1450 1451// Knowledge base source settings. 1452// 1453// Supported features: ARTICLE_SUGGESTION, FAQ. 1454type HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource struct { 1455 state protoimpl.MessageState 1456 sizeCache protoimpl.SizeCache 1457 unknownFields protoimpl.UnknownFields 1458 1459 // Required. Knowledge bases to query. Format: 1460 // `projects/<Project ID>/locations/<Location 1461 // ID>/knowledgeBases/<Knowledge Base ID>`. Currently, only one knowledge 1462 // base is supported. 1463 KnowledgeBases []string `protobuf:"bytes,1,rep,name=knowledge_bases,json=knowledgeBases,proto3" json:"knowledge_bases,omitempty"` 1464} 1465 1466func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) Reset() { 1467 *x = HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource{} 1468 if protoimpl.UnsafeEnabled { 1469 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18] 1470 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1471 ms.StoreMessageInfo(mi) 1472 } 1473} 1474 1475func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) String() string { 1476 return protoimpl.X.MessageStringOf(x) 1477} 1478 1479func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) ProtoMessage() {} 1480 1481func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) ProtoReflect() protoreflect.Message { 1482 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18] 1483 if protoimpl.UnsafeEnabled && x != nil { 1484 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1485 if ms.LoadMessageInfo() == nil { 1486 ms.StoreMessageInfo(mi) 1487 } 1488 return ms 1489 } 1490 return mi.MessageOf(x) 1491} 1492 1493// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource.ProtoReflect.Descriptor instead. 1494func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) Descriptor() ([]byte, []int) { 1495 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 0} 1496} 1497 1498func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) GetKnowledgeBases() []string { 1499 if x != nil { 1500 return x.KnowledgeBases 1501 } 1502 return nil 1503} 1504 1505// Document source settings. 1506// 1507// Supported features: SMART_REPLY, SMART_COMPOSE. 1508type HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource struct { 1509 state protoimpl.MessageState 1510 sizeCache protoimpl.SizeCache 1511 unknownFields protoimpl.UnknownFields 1512 1513 // Required. Knowledge documents to query from. Format: 1514 // `projects/<Project ID>/locations/<Location 1515 // ID>/knowledgeBases/<KnowledgeBase ID>/documents/<Document ID>`. 1516 // Currently, only one document is supported. 1517 Documents []string `protobuf:"bytes,1,rep,name=documents,proto3" json:"documents,omitempty"` 1518} 1519 1520func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) Reset() { 1521 *x = HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource{} 1522 if protoimpl.UnsafeEnabled { 1523 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19] 1524 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1525 ms.StoreMessageInfo(mi) 1526 } 1527} 1528 1529func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) String() string { 1530 return protoimpl.X.MessageStringOf(x) 1531} 1532 1533func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) ProtoMessage() {} 1534 1535func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) ProtoReflect() protoreflect.Message { 1536 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19] 1537 if protoimpl.UnsafeEnabled && x != nil { 1538 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1539 if ms.LoadMessageInfo() == nil { 1540 ms.StoreMessageInfo(mi) 1541 } 1542 return ms 1543 } 1544 return mi.MessageOf(x) 1545} 1546 1547// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource.ProtoReflect.Descriptor instead. 1548func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) Descriptor() ([]byte, []int) { 1549 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 1} 1550} 1551 1552func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) GetDocuments() []string { 1553 if x != nil { 1554 return x.Documents 1555 } 1556 return nil 1557} 1558 1559// Dialogflow source setting. 1560// 1561// Supported feature: DIALOGFLOW_ASSIST. 1562type HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource struct { 1563 state protoimpl.MessageState 1564 sizeCache protoimpl.SizeCache 1565 unknownFields protoimpl.UnknownFields 1566 1567 // Required. The name of a dialogflow virtual agent used for end user side intent 1568 // detection and suggestion. Format: `projects/<Project Number / 1569 // ID>/locations/<Location ID>/agent`. When multiple agents are allowed in 1570 // the same Dialogflow project. 1571 Agent string `protobuf:"bytes,1,opt,name=agent,proto3" json:"agent,omitempty"` 1572} 1573 1574func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) Reset() { 1575 *x = HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource{} 1576 if protoimpl.UnsafeEnabled { 1577 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20] 1578 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1579 ms.StoreMessageInfo(mi) 1580 } 1581} 1582 1583func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) String() string { 1584 return protoimpl.X.MessageStringOf(x) 1585} 1586 1587func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) ProtoMessage() {} 1588 1589func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) ProtoReflect() protoreflect.Message { 1590 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20] 1591 if protoimpl.UnsafeEnabled && x != nil { 1592 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1593 if ms.LoadMessageInfo() == nil { 1594 ms.StoreMessageInfo(mi) 1595 } 1596 return ms 1597 } 1598 return mi.MessageOf(x) 1599} 1600 1601// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource.ProtoReflect.Descriptor instead. 1602func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) Descriptor() ([]byte, []int) { 1603 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 2} 1604} 1605 1606func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) GetAgent() string { 1607 if x != nil { 1608 return x.Agent 1609 } 1610 return "" 1611} 1612 1613// Settings that determine how to filter recent conversation context when 1614// generating suggestions. 1615type HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings struct { 1616 state protoimpl.MessageState 1617 sizeCache protoimpl.SizeCache 1618 unknownFields protoimpl.UnknownFields 1619 1620 // If set to true, the last message from virtual agent (hand off message) 1621 // and the message before it (trigger message of hand off) are dropped. 1622 DropHandoffMessages bool `protobuf:"varint,1,opt,name=drop_handoff_messages,json=dropHandoffMessages,proto3" json:"drop_handoff_messages,omitempty"` 1623 // If set to true, all messages from virtual agent are dropped. 1624 DropVirtualAgentMessages bool `protobuf:"varint,2,opt,name=drop_virtual_agent_messages,json=dropVirtualAgentMessages,proto3" json:"drop_virtual_agent_messages,omitempty"` 1625 // If set to true, all messages from ivr stage are dropped. 1626 DropIvrMessages bool `protobuf:"varint,3,opt,name=drop_ivr_messages,json=dropIvrMessages,proto3" json:"drop_ivr_messages,omitempty"` 1627} 1628 1629func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) Reset() { 1630 *x = HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings{} 1631 if protoimpl.UnsafeEnabled { 1632 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21] 1633 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1634 ms.StoreMessageInfo(mi) 1635 } 1636} 1637 1638func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) String() string { 1639 return protoimpl.X.MessageStringOf(x) 1640} 1641 1642func (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) ProtoMessage() {} 1643 1644func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) ProtoReflect() protoreflect.Message { 1645 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21] 1646 if protoimpl.UnsafeEnabled && x != nil { 1647 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1648 if ms.LoadMessageInfo() == nil { 1649 ms.StoreMessageInfo(mi) 1650 } 1651 return ms 1652 } 1653 return mi.MessageOf(x) 1654} 1655 1656// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings.ProtoReflect.Descriptor instead. 1657func (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) Descriptor() ([]byte, []int) { 1658 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 3} 1659} 1660 1661func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropHandoffMessages() bool { 1662 if x != nil { 1663 return x.DropHandoffMessages 1664 } 1665 return false 1666} 1667 1668func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropVirtualAgentMessages() bool { 1669 if x != nil { 1670 return x.DropVirtualAgentMessages 1671 } 1672 return false 1673} 1674 1675func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropIvrMessages() bool { 1676 if x != nil { 1677 return x.DropIvrMessages 1678 } 1679 return false 1680} 1681 1682// Configuration specific to LivePerson (https://www.liveperson.com). 1683type HumanAgentHandoffConfig_LivePersonConfig struct { 1684 state protoimpl.MessageState 1685 sizeCache protoimpl.SizeCache 1686 unknownFields protoimpl.UnknownFields 1687 1688 // Required. Account number of the LivePerson account to connect. This is 1689 // the account number you input at the login page. 1690 AccountNumber string `protobuf:"bytes,1,opt,name=account_number,json=accountNumber,proto3" json:"account_number,omitempty"` 1691} 1692 1693func (x *HumanAgentHandoffConfig_LivePersonConfig) Reset() { 1694 *x = HumanAgentHandoffConfig_LivePersonConfig{} 1695 if protoimpl.UnsafeEnabled { 1696 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22] 1697 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1698 ms.StoreMessageInfo(mi) 1699 } 1700} 1701 1702func (x *HumanAgentHandoffConfig_LivePersonConfig) String() string { 1703 return protoimpl.X.MessageStringOf(x) 1704} 1705 1706func (*HumanAgentHandoffConfig_LivePersonConfig) ProtoMessage() {} 1707 1708func (x *HumanAgentHandoffConfig_LivePersonConfig) ProtoReflect() protoreflect.Message { 1709 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22] 1710 if protoimpl.UnsafeEnabled && x != nil { 1711 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1712 if ms.LoadMessageInfo() == nil { 1713 ms.StoreMessageInfo(mi) 1714 } 1715 return ms 1716 } 1717 return mi.MessageOf(x) 1718} 1719 1720// Deprecated: Use HumanAgentHandoffConfig_LivePersonConfig.ProtoReflect.Descriptor instead. 1721func (*HumanAgentHandoffConfig_LivePersonConfig) Descriptor() ([]byte, []int) { 1722 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3, 0} 1723} 1724 1725func (x *HumanAgentHandoffConfig_LivePersonConfig) GetAccountNumber() string { 1726 if x != nil { 1727 return x.AccountNumber 1728 } 1729 return "" 1730} 1731 1732// Configuration specific to Salesforce Live Agent. 1733type HumanAgentHandoffConfig_SalesforceLiveAgentConfig struct { 1734 state protoimpl.MessageState 1735 sizeCache protoimpl.SizeCache 1736 unknownFields protoimpl.UnknownFields 1737 1738 // Required. The organization ID of the Salesforce account. 1739 OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"` 1740 // Required. Live Agent deployment ID. 1741 DeploymentId string `protobuf:"bytes,2,opt,name=deployment_id,json=deploymentId,proto3" json:"deployment_id,omitempty"` 1742 // Required. Live Agent chat button ID. 1743 ButtonId string `protobuf:"bytes,3,opt,name=button_id,json=buttonId,proto3" json:"button_id,omitempty"` 1744 // Required. Domain of the Live Agent endpoint for this agent. You can find 1745 // the endpoint URL in the `Live Agent settings` page. For example if URL 1746 // has the form https://d.la4-c2-phx.salesforceliveagent.com/..., 1747 // you should fill in d.la4-c2-phx.salesforceliveagent.com. 1748 EndpointDomain string `protobuf:"bytes,4,opt,name=endpoint_domain,json=endpointDomain,proto3" json:"endpoint_domain,omitempty"` 1749} 1750 1751func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) Reset() { 1752 *x = HumanAgentHandoffConfig_SalesforceLiveAgentConfig{} 1753 if protoimpl.UnsafeEnabled { 1754 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23] 1755 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1756 ms.StoreMessageInfo(mi) 1757 } 1758} 1759 1760func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) String() string { 1761 return protoimpl.X.MessageStringOf(x) 1762} 1763 1764func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig) ProtoMessage() {} 1765 1766func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) ProtoReflect() protoreflect.Message { 1767 mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23] 1768 if protoimpl.UnsafeEnabled && x != nil { 1769 ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) 1770 if ms.LoadMessageInfo() == nil { 1771 ms.StoreMessageInfo(mi) 1772 } 1773 return ms 1774 } 1775 return mi.MessageOf(x) 1776} 1777 1778// Deprecated: Use HumanAgentHandoffConfig_SalesforceLiveAgentConfig.ProtoReflect.Descriptor instead. 1779func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig) Descriptor() ([]byte, []int) { 1780 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3, 1} 1781} 1782 1783func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetOrganizationId() string { 1784 if x != nil { 1785 return x.OrganizationId 1786 } 1787 return "" 1788} 1789 1790func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetDeploymentId() string { 1791 if x != nil { 1792 return x.DeploymentId 1793 } 1794 return "" 1795} 1796 1797func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetButtonId() string { 1798 if x != nil { 1799 return x.ButtonId 1800 } 1801 return "" 1802} 1803 1804func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetEndpointDomain() string { 1805 if x != nil { 1806 return x.EndpointDomain 1807 } 1808 return "" 1809} 1810 1811var File_google_cloud_dialogflow_v2beta1_conversation_profile_proto protoreflect.FileDescriptor 1812 1813var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc = []byte{ 1814 0x0a, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 1815 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1816 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 1817 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 1818 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 1819 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 1820 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 1821 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 1822 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 1823 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 1824 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 1825 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 1826 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 1827 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 1828 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1829 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 1830 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 1831 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 1832 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 1833 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 1834 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 1835 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 1836 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 1837 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 1838 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 1839 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 1840 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 1841 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 1842 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 1843 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 1844 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 0x09, 0x0a, 1845 0x13, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 1846 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 1847 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 1848 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 1849 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 1850 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 1851 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 1852 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 1853 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 1854 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 1855 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1856 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 1857 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 1858 0x54, 0x69, 0x6d, 0x65, 0x12, 0x6b, 0x0a, 0x16, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 1859 0x64, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 1860 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1861 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 1862 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 1863 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x61, 0x75, 0x74, 1864 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 1865 0x67, 0x12, 0x7b, 0x0a, 0x1c, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 1866 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 1867 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1868 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 1869 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 1870 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 1871 0x66, 0x69, 0x67, 0x52, 0x19, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 1872 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x75, 1873 0x0a, 0x1a, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 1874 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 1875 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1876 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 1877 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 1878 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x68, 0x75, 1879 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 1880 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x64, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 1881 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 1882 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1883 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 1884 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 1885 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 1886 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x55, 0x0a, 0x0e, 0x6c, 1887 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20, 1888 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 1889 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 1890 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 1891 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 1892 0x69, 0x67, 0x12, 0x85, 0x01, 0x0a, 0x25, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 1893 0x67, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 1894 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01, 1895 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 1896 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 1897 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 1898 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x21, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x73, 0x73, 1899 0x61, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 1900 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x52, 0x0a, 0x0a, 0x73, 0x74, 1901 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 1902 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 1903 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 1904 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x54, 0x6f, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 1905 0x66, 0x69, 0x67, 0x52, 0x09, 0x73, 0x74, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 1906 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 1907 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 1908 0x6f, 0x64, 0x65, 0x3a, 0xc8, 0x01, 0xea, 0x41, 0xc4, 0x01, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 1909 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 1910 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 1911 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 1912 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 1913 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 1914 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 1915 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x7d, 0x12, 0x53, 0x70, 0x72, 0x6f, 0x6a, 0x65, 1916 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 1917 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 1918 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 1919 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 1920 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x7d, 0x22, 0x55, 1921 0x0a, 0x14, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 1922 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 1923 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x64, 1924 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1925 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 1926 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xf6, 0x16, 0x0a, 0x19, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 1927 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 1928 0x66, 0x69, 0x67, 0x12, 0x64, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 1929 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 1930 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 1931 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 1932 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 1933 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 1934 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x8e, 0x01, 0x0a, 0x1d, 0x68, 0x75, 1935 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 1936 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 1937 0x0b, 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 1938 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 1939 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 1940 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 1941 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x1a, 1942 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 1943 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x88, 0x01, 0x0a, 0x1a, 0x65, 1944 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 1945 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 1946 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 1947 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 1948 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 1949 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 1950 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x65, 0x6e, 1951 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 1952 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x88, 0x01, 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 1953 0x65, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 1954 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1955 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 1956 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 1957 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 1958 0x66, 0x69, 0x67, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 1959 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 1960 0x67, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1961 0x1a, 0x63, 0x0a, 0x19, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 1962 0x69, 0x67, 0x67, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x22, 0x0a, 1963 0x0d, 0x6e, 0x6f, 0x5f, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x6c, 0x6b, 0x18, 0x01, 1964 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6e, 0x6f, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x54, 0x61, 0x6c, 1965 0x6b, 0x12, 0x22, 0x0a, 0x0d, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x75, 0x73, 1966 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6f, 0x6e, 0x6c, 0x79, 0x45, 0x6e, 1967 0x64, 0x55, 0x73, 0x65, 0x72, 0x1a, 0xdc, 0x04, 0x0a, 0x17, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 1968 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 1969 0x67, 0x12, 0x61, 0x0a, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 1970 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 1971 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 1972 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 1973 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 1974 0x65, 0x52, 0x11, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 1975 0x74, 0x75, 0x72, 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 1976 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 1977 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x65, 0x6e, 0x61, 1978 0x62, 0x6c, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x64, 0x53, 0x75, 0x67, 1979 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x94, 0x01, 0x0a, 0x1b, 0x73, 0x75, 0x67, 0x67, 1980 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x73, 1981 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x54, 0x2e, 1982 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 1983 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 1984 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 1985 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 1986 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 1987 0x6e, 0x67, 0x73, 0x52, 0x19, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 1988 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x73, 1989 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 1990 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 1991 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 1992 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 1993 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 1994 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 1995 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 1996 0x66, 0x69, 0x67, 0x12, 0x8e, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 1997 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 1998 0x67, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 1999 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 2000 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 2001 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 2002 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2003 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x63, 0x6f, 0x6e, 2004 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 2005 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xcd, 0x01, 0x0a, 0x10, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 2006 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7b, 0x0a, 0x0f, 0x66, 0x65, 0x61, 2007 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x02, 0x20, 0x03, 2008 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 2009 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 2010 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 2011 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 2012 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 2013 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 2014 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x67, 0x72, 0x6f, 0x75, 0x70, 0x5f, 2015 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 2016 0x6e, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x67, 0x72, 0x6f, 0x75, 2017 0x70, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 2018 0x6e, 0x73, 0x65, 0x73, 0x1a, 0xf1, 0x09, 0x0a, 0x15, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 2019 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0xaa, 2020 0x01, 0x0a, 0x1b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 2021 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 2022 0x20, 0x01, 0x28, 0x0b, 0x32, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 2023 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 2024 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 2025 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 2026 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 2027 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 2028 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 2029 0x00, 0x52, 0x18, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 2030 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x9a, 0x01, 0x0a, 0x15, 2031 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 2032 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x64, 0x2e, 0x67, 0x6f, 2033 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 2034 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 2035 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 2036 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 2037 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x6f, 2038 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 2039 0x65, 0x48, 0x00, 0x52, 0x13, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 2040 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0xa0, 0x01, 0x0a, 0x17, 0x64, 0x69, 0x61, 2041 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 2042 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x66, 0x2e, 0x67, 0x6f, 0x6f, 2043 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 2044 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 2045 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 2046 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 2047 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x44, 0x69, 0x61, 2048 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 2049 0x63, 0x65, 0x48, 0x00, 0x52, 0x15, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 2050 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x6d, 2051 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 2052 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x31, 0x0a, 0x14, 2053 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 2054 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x66, 2055 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 2056 0x9e, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x74, 2057 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 2058 0x0b, 0x32, 0x66, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2059 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 2060 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 2061 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 2062 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 2063 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 2064 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x15, 0x63, 0x6f, 0x6e, 0x74, 0x65, 2065 0x78, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 2066 0x1a, 0x74, 0x0a, 0x18, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 2067 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x58, 0x0a, 0x0f, 2068 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 2069 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x64, 2070 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 2071 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 2072 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 2073 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x1a, 0x5f, 0x0a, 0x13, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 2074 0x6e, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x48, 0x0a, 2075 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 2076 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 2077 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 2078 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x6f, 2079 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x56, 0x0a, 0x15, 0x44, 0x69, 0x61, 0x6c, 0x6f, 2080 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 2081 0x12, 0x3d, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 2082 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 2083 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 2084 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x1a, 2085 0xb6, 0x01, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 2086 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x72, 0x6f, 2087 0x70, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 2088 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x72, 0x6f, 0x70, 0x48, 0x61, 2089 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3d, 0x0a, 2090 0x1b, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x5f, 0x61, 0x67, 2091 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 2092 0x28, 0x08, 0x52, 0x18, 0x64, 0x72, 0x6f, 0x70, 0x56, 0x69, 0x72, 0x74, 0x75, 0x61, 0x6c, 0x41, 2093 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x2a, 0x0a, 0x11, 2094 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x69, 0x76, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 2095 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x72, 0x6f, 0x70, 0x49, 0x76, 0x72, 2096 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 2097 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x34, 0x0a, 0x17, 0x43, 0x6f, 0x6e, 0x76, 2098 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 2099 0x66, 0x69, 0x67, 0x12, 0x19, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x01, 0x20, 0x01, 2100 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a, 0x8d, 2101 0x01, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 2102 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x18, 0x65, 0x6e, 0x61, 0x62, 2103 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61, 0x63, 2104 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16, 0x65, 0x6e, 0x61, 0x62, 2105 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x45, 0x78, 0x74, 0x72, 0x61, 0x63, 0x74, 0x69, 2106 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x65, 0x6e, 2107 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 2108 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x65, 0x6e, 2109 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x22, 0xc3, 2110 0x04, 0x0a, 0x17, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 2111 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x79, 0x0a, 0x12, 0x6c, 0x69, 2112 0x76, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 2113 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2114 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 2115 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 2116 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 2117 0x2e, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 2118 0x67, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x43, 2119 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x95, 0x01, 0x0a, 0x1c, 0x73, 0x61, 0x6c, 0x65, 0x73, 0x66, 2120 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 2121 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 2122 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 2123 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 2124 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 2125 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x63, 2126 0x65, 0x4c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 2127 0x48, 0x00, 0x52, 0x19, 0x73, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x69, 2128 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x3e, 0x0a, 2129 0x10, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 2130 0x67, 0x12, 0x2a, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x5f, 0x6e, 0x75, 0x6d, 2131 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 2132 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x1a, 0xc3, 0x01, 2133 0x0a, 0x19, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x69, 0x76, 0x65, 2134 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2c, 0x0a, 0x0f, 0x6f, 2135 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x01, 2136 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f, 0x72, 0x67, 0x61, 0x6e, 2137 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a, 0x0d, 0x64, 0x65, 0x70, 2138 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 2139 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 2140 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 2141 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x62, 0x75, 0x74, 2142 0x74, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 2143 0x74, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 2144 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x44, 0x6f, 0x6d, 2145 0x61, 0x69, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x72, 2146 0x76, 0x69, 0x63, 0x65, 0x22, 0xda, 0x01, 0x0a, 0x12, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 2147 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14, 0x0a, 0x05, 0x74, 2148 0x6f, 0x70, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x6f, 0x70, 0x69, 2149 0x63, 0x12, 0x68, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x66, 0x6f, 0x72, 2150 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2151 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 2152 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 2153 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4d, 2154 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x52, 0x0d, 0x6d, 0x65, 2155 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22, 0x44, 0x0a, 0x0d, 0x4d, 2156 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x12, 0x1e, 0x0a, 0x1a, 2157 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x4d, 0x41, 0x54, 0x5f, 0x55, 2158 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 2159 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4a, 0x53, 0x4f, 0x4e, 0x10, 2160 0x02, 0x22, 0x4d, 0x0a, 0x0d, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66, 2161 0x69, 0x67, 0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 2162 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 2163 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x53, 0x74, 2164 0x61, 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 2165 0x22, 0xac, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 2166 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 2167 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 2168 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f, 0x12, 0x2d, 0x64, 0x69, 2169 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 2170 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2171 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 2172 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 2173 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 2174 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 2175 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 2176 0xb5, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2177 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 2178 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x15, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2179 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x18, 0x01, 0x20, 2180 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 2181 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 2182 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 2183 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2184 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 2185 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 2186 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 2187 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x6a, 0x0a, 0x1d, 0x47, 0x65, 0x74, 0x43, 0x6f, 2188 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 2189 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 2190 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 2191 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2192 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 2193 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x6e, 2194 0x61, 0x6d, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x20, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 2195 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 2196 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 2197 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f, 2198 0x12, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 2199 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 2200 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 2201 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6c, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2202 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 2203 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2204 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 2205 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2206 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 2207 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 2208 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xd2, 0x01, 0x0a, 0x20, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 2209 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 2210 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6c, 0x0a, 0x14, 0x63, 0x6f, 2211 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 2212 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 2213 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 2214 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 2215 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42, 0x03, 2216 0xe0, 0x41, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 2217 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 2218 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 2219 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2220 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 2221 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x6d, 0x0a, 0x20, 0x44, 0x65, 2222 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 2223 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 2224 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 2225 0x02, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 2226 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 2227 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 2228 0x69, 0x6c, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0xb7, 0x0d, 0x0a, 0x14, 0x43, 0x6f, 2229 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 2230 0x65, 0x73, 0x12, 0xa5, 0x02, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 2231 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 2232 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 2233 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 2234 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 2235 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 2236 0x74, 0x1a, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 2237 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 2238 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2239 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 2240 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x83, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x12, 0x31, 0x2f, 2241 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 2242 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 2243 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 2244 0x5a, 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 2245 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2246 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 2247 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 2248 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x92, 0x02, 0x0a, 0x16, 0x47, 2249 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 2250 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2251 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 2252 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 2253 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 2254 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 2255 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 2256 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 2257 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0x81, 0x01, 0x82, 0xd3, 2258 0xe4, 0x93, 0x02, 0x74, 0x12, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 2259 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2260 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 2261 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 2262 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 2263 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 2264 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 2265 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 2266 0xdc, 0x02, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 2267 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x2e, 2268 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 2269 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 2270 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 2271 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 2272 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 2273 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 2274 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 2275 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xc5, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa0, 0x01, 2276 0x22, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 2277 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 2278 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 2279 0x6c, 0x65, 0x73, 0x3a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 2280 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5a, 0x55, 0x22, 0x3d, 0x2f, 0x76, 0x32, 2281 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 2282 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 2283 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 2284 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x3a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 2285 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 2286 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 2287 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x8b, 2288 0x03, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 2289 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x2e, 0x67, 2290 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 2291 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 2292 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 2293 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 2294 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 2295 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 2296 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 2297 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xf4, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xca, 0x01, 0x32, 2298 0x46, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2299 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 2300 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2301 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 2302 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 2303 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5a, 0x6a, 0x32, 2304 0x52, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2305 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 2306 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 2307 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 2308 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 2309 0x2f, 0x2a, 0x7d, 0x3a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 2310 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0xda, 0x41, 0x20, 0x63, 0x6f, 0x6e, 0x76, 2311 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 2312 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xfa, 0x01, 0x0a, 2313 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 2314 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 2315 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 2316 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 2317 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 2318 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 2319 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 2320 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x81, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x2a, 0x31, 2321 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 2322 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 2323 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 2324 0x7d, 0x5a, 0x3f, 0x2a, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 2325 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 2326 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 2327 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 2328 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 2329 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 2330 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 2331 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 2332 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 2333 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 2334 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 2335 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 2336 0x6c, 0x6f, 0x77, 0x42, 0xb6, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 2337 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 2338 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x18, 0x43, 0x6f, 0x6e, 2339 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 2340 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x49, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 2341 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 2342 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x63, 2343 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 2344 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 2345 0x6f, 0x77, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 2346 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 2347 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 2348 0x6f, 0x74, 0x6f, 0x33, 2349} 2350 2351var ( 2352 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescOnce sync.Once 2353 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc 2354) 2355 2356func file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP() []byte { 2357 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescOnce.Do(func() { 2358 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData) 2359 }) 2360 return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData 2361} 2362 2363var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes = make([]protoimpl.EnumInfo, 1) 2364var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes = make([]protoimpl.MessageInfo, 24) 2365var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes = []interface{}{ 2366 (NotificationConfig_MessageFormat)(0), // 0: google.cloud.dialogflow.v2beta1.NotificationConfig.MessageFormat 2367 (*ConversationProfile)(nil), // 1: google.cloud.dialogflow.v2beta1.ConversationProfile 2368 (*AutomatedAgentConfig)(nil), // 2: google.cloud.dialogflow.v2beta1.AutomatedAgentConfig 2369 (*HumanAgentAssistantConfig)(nil), // 3: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig 2370 (*HumanAgentHandoffConfig)(nil), // 4: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig 2371 (*NotificationConfig)(nil), // 5: google.cloud.dialogflow.v2beta1.NotificationConfig 2372 (*LoggingConfig)(nil), // 6: google.cloud.dialogflow.v2beta1.LoggingConfig 2373 (*ListConversationProfilesRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.ListConversationProfilesRequest 2374 (*ListConversationProfilesResponse)(nil), // 8: google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse 2375 (*GetConversationProfileRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.GetConversationProfileRequest 2376 (*CreateConversationProfileRequest)(nil), // 10: google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest 2377 (*UpdateConversationProfileRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest 2378 (*DeleteConversationProfileRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.DeleteConversationProfileRequest 2379 (*HumanAgentAssistantConfig_SuggestionTriggerSettings)(nil), // 13: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionTriggerSettings 2380 (*HumanAgentAssistantConfig_SuggestionFeatureConfig)(nil), // 14: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig 2381 (*HumanAgentAssistantConfig_SuggestionConfig)(nil), // 15: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig 2382 (*HumanAgentAssistantConfig_SuggestionQueryConfig)(nil), // 16: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig 2383 (*HumanAgentAssistantConfig_ConversationModelConfig)(nil), // 17: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationModelConfig 2384 (*HumanAgentAssistantConfig_MessageAnalysisConfig)(nil), // 18: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.MessageAnalysisConfig 2385 (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource)(nil), // 19: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.KnowledgeBaseQuerySource 2386 (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource)(nil), // 20: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DocumentQuerySource 2387 (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource)(nil), // 21: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DialogflowQuerySource 2388 (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings)(nil), // 22: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.ContextFilterSettings 2389 (*HumanAgentHandoffConfig_LivePersonConfig)(nil), // 23: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.LivePersonConfig 2390 (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig)(nil), // 24: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.SalesforceLiveAgentConfig 2391 (*timestamppb.Timestamp)(nil), // 25: google.protobuf.Timestamp 2392 (*SpeechToTextConfig)(nil), // 26: google.cloud.dialogflow.v2beta1.SpeechToTextConfig 2393 (*fieldmaskpb.FieldMask)(nil), // 27: google.protobuf.FieldMask 2394 (*SuggestionFeature)(nil), // 28: google.cloud.dialogflow.v2beta1.SuggestionFeature 2395 (*emptypb.Empty)(nil), // 29: google.protobuf.Empty 2396} 2397var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs = []int32{ 2398 25, // 0: google.cloud.dialogflow.v2beta1.ConversationProfile.create_time:type_name -> google.protobuf.Timestamp 2399 25, // 1: google.cloud.dialogflow.v2beta1.ConversationProfile.update_time:type_name -> google.protobuf.Timestamp 2400 2, // 2: google.cloud.dialogflow.v2beta1.ConversationProfile.automated_agent_config:type_name -> google.cloud.dialogflow.v2beta1.AutomatedAgentConfig 2401 3, // 3: google.cloud.dialogflow.v2beta1.ConversationProfile.human_agent_assistant_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig 2402 4, // 4: google.cloud.dialogflow.v2beta1.ConversationProfile.human_agent_handoff_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig 2403 5, // 5: google.cloud.dialogflow.v2beta1.ConversationProfile.notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig 2404 6, // 6: google.cloud.dialogflow.v2beta1.ConversationProfile.logging_config:type_name -> google.cloud.dialogflow.v2beta1.LoggingConfig 2405 5, // 7: google.cloud.dialogflow.v2beta1.ConversationProfile.new_message_event_notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig 2406 26, // 8: google.cloud.dialogflow.v2beta1.ConversationProfile.stt_config:type_name -> google.cloud.dialogflow.v2beta1.SpeechToTextConfig 2407 5, // 9: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig 2408 15, // 10: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.human_agent_suggestion_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig 2409 15, // 11: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.end_user_suggestion_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig 2410 18, // 12: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.message_analysis_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.MessageAnalysisConfig 2411 23, // 13: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.live_person_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.LivePersonConfig 2412 24, // 14: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.salesforce_live_agent_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.SalesforceLiveAgentConfig 2413 0, // 15: google.cloud.dialogflow.v2beta1.NotificationConfig.message_format:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig.MessageFormat 2414 1, // 16: google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse.conversation_profiles:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile 2415 1, // 17: google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest.conversation_profile:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile 2416 1, // 18: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest.conversation_profile:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile 2417 27, // 19: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest.update_mask:type_name -> google.protobuf.FieldMask 2418 28, // 20: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.suggestion_feature:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature 2419 13, // 21: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.suggestion_trigger_settings:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionTriggerSettings 2420 16, // 22: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.query_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig 2421 17, // 23: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.conversation_model_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationModelConfig 2422 14, // 24: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig 2423 19, // 25: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.knowledge_base_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.KnowledgeBaseQuerySource 2424 20, // 26: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.document_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DocumentQuerySource 2425 21, // 27: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.dialogflow_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DialogflowQuerySource 2426 22, // 28: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.context_filter_settings:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.ContextFilterSettings 2427 7, // 29: google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles:input_type -> google.cloud.dialogflow.v2beta1.ListConversationProfilesRequest 2428 9, // 30: google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.GetConversationProfileRequest 2429 10, // 31: google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest 2430 11, // 32: google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest 2431 12, // 33: google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.DeleteConversationProfileRequest 2432 8, // 34: google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles:output_type -> google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse 2433 1, // 35: google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile 2434 1, // 36: google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile 2435 1, // 37: google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile 2436 29, // 38: google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile:output_type -> google.protobuf.Empty 2437 34, // [34:39] is the sub-list for method output_type 2438 29, // [29:34] is the sub-list for method input_type 2439 29, // [29:29] is the sub-list for extension type_name 2440 29, // [29:29] is the sub-list for extension extendee 2441 0, // [0:29] is the sub-list for field type_name 2442} 2443 2444func init() { file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_init() } 2445func file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_init() { 2446 if File_google_cloud_dialogflow_v2beta1_conversation_profile_proto != nil { 2447 return 2448 } 2449 file_google_cloud_dialogflow_v2beta1_audio_config_proto_init() 2450 file_google_cloud_dialogflow_v2beta1_document_proto_init() 2451 file_google_cloud_dialogflow_v2beta1_participant_proto_init() 2452 if !protoimpl.UnsafeEnabled { 2453 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { 2454 switch v := v.(*ConversationProfile); i { 2455 case 0: 2456 return &v.state 2457 case 1: 2458 return &v.sizeCache 2459 case 2: 2460 return &v.unknownFields 2461 default: 2462 return nil 2463 } 2464 } 2465 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { 2466 switch v := v.(*AutomatedAgentConfig); i { 2467 case 0: 2468 return &v.state 2469 case 1: 2470 return &v.sizeCache 2471 case 2: 2472 return &v.unknownFields 2473 default: 2474 return nil 2475 } 2476 } 2477 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { 2478 switch v := v.(*HumanAgentAssistantConfig); i { 2479 case 0: 2480 return &v.state 2481 case 1: 2482 return &v.sizeCache 2483 case 2: 2484 return &v.unknownFields 2485 default: 2486 return nil 2487 } 2488 } 2489 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { 2490 switch v := v.(*HumanAgentHandoffConfig); i { 2491 case 0: 2492 return &v.state 2493 case 1: 2494 return &v.sizeCache 2495 case 2: 2496 return &v.unknownFields 2497 default: 2498 return nil 2499 } 2500 } 2501 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { 2502 switch v := v.(*NotificationConfig); i { 2503 case 0: 2504 return &v.state 2505 case 1: 2506 return &v.sizeCache 2507 case 2: 2508 return &v.unknownFields 2509 default: 2510 return nil 2511 } 2512 } 2513 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { 2514 switch v := v.(*LoggingConfig); i { 2515 case 0: 2516 return &v.state 2517 case 1: 2518 return &v.sizeCache 2519 case 2: 2520 return &v.unknownFields 2521 default: 2522 return nil 2523 } 2524 } 2525 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { 2526 switch v := v.(*ListConversationProfilesRequest); i { 2527 case 0: 2528 return &v.state 2529 case 1: 2530 return &v.sizeCache 2531 case 2: 2532 return &v.unknownFields 2533 default: 2534 return nil 2535 } 2536 } 2537 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { 2538 switch v := v.(*ListConversationProfilesResponse); i { 2539 case 0: 2540 return &v.state 2541 case 1: 2542 return &v.sizeCache 2543 case 2: 2544 return &v.unknownFields 2545 default: 2546 return nil 2547 } 2548 } 2549 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { 2550 switch v := v.(*GetConversationProfileRequest); i { 2551 case 0: 2552 return &v.state 2553 case 1: 2554 return &v.sizeCache 2555 case 2: 2556 return &v.unknownFields 2557 default: 2558 return nil 2559 } 2560 } 2561 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { 2562 switch v := v.(*CreateConversationProfileRequest); i { 2563 case 0: 2564 return &v.state 2565 case 1: 2566 return &v.sizeCache 2567 case 2: 2568 return &v.unknownFields 2569 default: 2570 return nil 2571 } 2572 } 2573 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { 2574 switch v := v.(*UpdateConversationProfileRequest); i { 2575 case 0: 2576 return &v.state 2577 case 1: 2578 return &v.sizeCache 2579 case 2: 2580 return &v.unknownFields 2581 default: 2582 return nil 2583 } 2584 } 2585 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { 2586 switch v := v.(*DeleteConversationProfileRequest); i { 2587 case 0: 2588 return &v.state 2589 case 1: 2590 return &v.sizeCache 2591 case 2: 2592 return &v.unknownFields 2593 default: 2594 return nil 2595 } 2596 } 2597 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { 2598 switch v := v.(*HumanAgentAssistantConfig_SuggestionTriggerSettings); i { 2599 case 0: 2600 return &v.state 2601 case 1: 2602 return &v.sizeCache 2603 case 2: 2604 return &v.unknownFields 2605 default: 2606 return nil 2607 } 2608 } 2609 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { 2610 switch v := v.(*HumanAgentAssistantConfig_SuggestionFeatureConfig); i { 2611 case 0: 2612 return &v.state 2613 case 1: 2614 return &v.sizeCache 2615 case 2: 2616 return &v.unknownFields 2617 default: 2618 return nil 2619 } 2620 } 2621 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} { 2622 switch v := v.(*HumanAgentAssistantConfig_SuggestionConfig); i { 2623 case 0: 2624 return &v.state 2625 case 1: 2626 return &v.sizeCache 2627 case 2: 2628 return &v.unknownFields 2629 default: 2630 return nil 2631 } 2632 } 2633 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} { 2634 switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig); i { 2635 case 0: 2636 return &v.state 2637 case 1: 2638 return &v.sizeCache 2639 case 2: 2640 return &v.unknownFields 2641 default: 2642 return nil 2643 } 2644 } 2645 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} { 2646 switch v := v.(*HumanAgentAssistantConfig_ConversationModelConfig); i { 2647 case 0: 2648 return &v.state 2649 case 1: 2650 return &v.sizeCache 2651 case 2: 2652 return &v.unknownFields 2653 default: 2654 return nil 2655 } 2656 } 2657 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} { 2658 switch v := v.(*HumanAgentAssistantConfig_MessageAnalysisConfig); i { 2659 case 0: 2660 return &v.state 2661 case 1: 2662 return &v.sizeCache 2663 case 2: 2664 return &v.unknownFields 2665 default: 2666 return nil 2667 } 2668 } 2669 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} { 2670 switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource); i { 2671 case 0: 2672 return &v.state 2673 case 1: 2674 return &v.sizeCache 2675 case 2: 2676 return &v.unknownFields 2677 default: 2678 return nil 2679 } 2680 } 2681 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} { 2682 switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource); i { 2683 case 0: 2684 return &v.state 2685 case 1: 2686 return &v.sizeCache 2687 case 2: 2688 return &v.unknownFields 2689 default: 2690 return nil 2691 } 2692 } 2693 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} { 2694 switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource); i { 2695 case 0: 2696 return &v.state 2697 case 1: 2698 return &v.sizeCache 2699 case 2: 2700 return &v.unknownFields 2701 default: 2702 return nil 2703 } 2704 } 2705 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} { 2706 switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings); i { 2707 case 0: 2708 return &v.state 2709 case 1: 2710 return &v.sizeCache 2711 case 2: 2712 return &v.unknownFields 2713 default: 2714 return nil 2715 } 2716 } 2717 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} { 2718 switch v := v.(*HumanAgentHandoffConfig_LivePersonConfig); i { 2719 case 0: 2720 return &v.state 2721 case 1: 2722 return &v.sizeCache 2723 case 2: 2724 return &v.unknownFields 2725 default: 2726 return nil 2727 } 2728 } 2729 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} { 2730 switch v := v.(*HumanAgentHandoffConfig_SalesforceLiveAgentConfig); i { 2731 case 0: 2732 return &v.state 2733 case 1: 2734 return &v.sizeCache 2735 case 2: 2736 return &v.unknownFields 2737 default: 2738 return nil 2739 } 2740 } 2741 } 2742 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3].OneofWrappers = []interface{}{ 2743 (*HumanAgentHandoffConfig_LivePersonConfig_)(nil), 2744 (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_)(nil), 2745 } 2746 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15].OneofWrappers = []interface{}{ 2747 (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_)(nil), 2748 (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_)(nil), 2749 (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_)(nil), 2750 } 2751 type x struct{} 2752 out := protoimpl.TypeBuilder{ 2753 File: protoimpl.DescBuilder{ 2754 GoPackagePath: reflect.TypeOf(x{}).PkgPath(), 2755 RawDescriptor: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc, 2756 NumEnums: 1, 2757 NumMessages: 24, 2758 NumExtensions: 0, 2759 NumServices: 1, 2760 }, 2761 GoTypes: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes, 2762 DependencyIndexes: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs, 2763 EnumInfos: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes, 2764 MessageInfos: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes, 2765 }.Build() 2766 File_google_cloud_dialogflow_v2beta1_conversation_profile_proto = out.File 2767 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc = nil 2768 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes = nil 2769 file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs = nil 2770} 2771 2772// Reference imports to suppress errors if they are not otherwise used. 2773var _ context.Context 2774var _ grpc.ClientConnInterface 2775 2776// This is a compile-time assertion to ensure that this generated file 2777// is compatible with the grpc package it is being compiled against. 2778const _ = grpc.SupportPackageIsVersion6 2779 2780// ConversationProfilesClient is the client API for ConversationProfiles service. 2781// 2782// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 2783type ConversationProfilesClient interface { 2784 // Returns the list of all conversation profiles in the specified project. 2785 ListConversationProfiles(ctx context.Context, in *ListConversationProfilesRequest, opts ...grpc.CallOption) (*ListConversationProfilesResponse, error) 2786 // Retrieves the specified conversation profile. 2787 GetConversationProfile(ctx context.Context, in *GetConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) 2788 // Creates a conversation profile in the specified project. 2789 // 2790 // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][] 2791 // aren't populated in the response. You can retrieve them via 2792 // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile] API. 2793 CreateConversationProfile(ctx context.Context, in *CreateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) 2794 // Updates the specified conversation profile. 2795 // 2796 // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][] 2797 // aren't populated in the response. You can retrieve them via 2798 // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile] API. 2799 UpdateConversationProfile(ctx context.Context, in *UpdateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) 2800 // Deletes the specified conversation profile. 2801 DeleteConversationProfile(ctx context.Context, in *DeleteConversationProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) 2802} 2803 2804type conversationProfilesClient struct { 2805 cc grpc.ClientConnInterface 2806} 2807 2808func NewConversationProfilesClient(cc grpc.ClientConnInterface) ConversationProfilesClient { 2809 return &conversationProfilesClient{cc} 2810} 2811 2812func (c *conversationProfilesClient) ListConversationProfiles(ctx context.Context, in *ListConversationProfilesRequest, opts ...grpc.CallOption) (*ListConversationProfilesResponse, error) { 2813 out := new(ListConversationProfilesResponse) 2814 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ListConversationProfiles", in, out, opts...) 2815 if err != nil { 2816 return nil, err 2817 } 2818 return out, nil 2819} 2820 2821func (c *conversationProfilesClient) GetConversationProfile(ctx context.Context, in *GetConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) { 2822 out := new(ConversationProfile) 2823 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/GetConversationProfile", in, out, opts...) 2824 if err != nil { 2825 return nil, err 2826 } 2827 return out, nil 2828} 2829 2830func (c *conversationProfilesClient) CreateConversationProfile(ctx context.Context, in *CreateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) { 2831 out := new(ConversationProfile) 2832 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/CreateConversationProfile", in, out, opts...) 2833 if err != nil { 2834 return nil, err 2835 } 2836 return out, nil 2837} 2838 2839func (c *conversationProfilesClient) UpdateConversationProfile(ctx context.Context, in *UpdateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) { 2840 out := new(ConversationProfile) 2841 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/UpdateConversationProfile", in, out, opts...) 2842 if err != nil { 2843 return nil, err 2844 } 2845 return out, nil 2846} 2847 2848func (c *conversationProfilesClient) DeleteConversationProfile(ctx context.Context, in *DeleteConversationProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) { 2849 out := new(emptypb.Empty) 2850 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/DeleteConversationProfile", in, out, opts...) 2851 if err != nil { 2852 return nil, err 2853 } 2854 return out, nil 2855} 2856 2857// ConversationProfilesServer is the server API for ConversationProfiles service. 2858type ConversationProfilesServer interface { 2859 // Returns the list of all conversation profiles in the specified project. 2860 ListConversationProfiles(context.Context, *ListConversationProfilesRequest) (*ListConversationProfilesResponse, error) 2861 // Retrieves the specified conversation profile. 2862 GetConversationProfile(context.Context, *GetConversationProfileRequest) (*ConversationProfile, error) 2863 // Creates a conversation profile in the specified project. 2864 // 2865 // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][] 2866 // aren't populated in the response. You can retrieve them via 2867 // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile] API. 2868 CreateConversationProfile(context.Context, *CreateConversationProfileRequest) (*ConversationProfile, error) 2869 // Updates the specified conversation profile. 2870 // 2871 // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][] 2872 // aren't populated in the response. You can retrieve them via 2873 // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile] API. 2874 UpdateConversationProfile(context.Context, *UpdateConversationProfileRequest) (*ConversationProfile, error) 2875 // Deletes the specified conversation profile. 2876 DeleteConversationProfile(context.Context, *DeleteConversationProfileRequest) (*emptypb.Empty, error) 2877} 2878 2879// UnimplementedConversationProfilesServer can be embedded to have forward compatible implementations. 2880type UnimplementedConversationProfilesServer struct { 2881} 2882 2883func (*UnimplementedConversationProfilesServer) ListConversationProfiles(context.Context, *ListConversationProfilesRequest) (*ListConversationProfilesResponse, error) { 2884 return nil, status.Errorf(codes.Unimplemented, "method ListConversationProfiles not implemented") 2885} 2886func (*UnimplementedConversationProfilesServer) GetConversationProfile(context.Context, *GetConversationProfileRequest) (*ConversationProfile, error) { 2887 return nil, status.Errorf(codes.Unimplemented, "method GetConversationProfile not implemented") 2888} 2889func (*UnimplementedConversationProfilesServer) CreateConversationProfile(context.Context, *CreateConversationProfileRequest) (*ConversationProfile, error) { 2890 return nil, status.Errorf(codes.Unimplemented, "method CreateConversationProfile not implemented") 2891} 2892func (*UnimplementedConversationProfilesServer) UpdateConversationProfile(context.Context, *UpdateConversationProfileRequest) (*ConversationProfile, error) { 2893 return nil, status.Errorf(codes.Unimplemented, "method UpdateConversationProfile not implemented") 2894} 2895func (*UnimplementedConversationProfilesServer) DeleteConversationProfile(context.Context, *DeleteConversationProfileRequest) (*emptypb.Empty, error) { 2896 return nil, status.Errorf(codes.Unimplemented, "method DeleteConversationProfile not implemented") 2897} 2898 2899func RegisterConversationProfilesServer(s *grpc.Server, srv ConversationProfilesServer) { 2900 s.RegisterService(&_ConversationProfiles_serviceDesc, srv) 2901} 2902 2903func _ConversationProfiles_ListConversationProfiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2904 in := new(ListConversationProfilesRequest) 2905 if err := dec(in); err != nil { 2906 return nil, err 2907 } 2908 if interceptor == nil { 2909 return srv.(ConversationProfilesServer).ListConversationProfiles(ctx, in) 2910 } 2911 info := &grpc.UnaryServerInfo{ 2912 Server: srv, 2913 FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ListConversationProfiles", 2914 } 2915 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2916 return srv.(ConversationProfilesServer).ListConversationProfiles(ctx, req.(*ListConversationProfilesRequest)) 2917 } 2918 return interceptor(ctx, in, info, handler) 2919} 2920 2921func _ConversationProfiles_GetConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2922 in := new(GetConversationProfileRequest) 2923 if err := dec(in); err != nil { 2924 return nil, err 2925 } 2926 if interceptor == nil { 2927 return srv.(ConversationProfilesServer).GetConversationProfile(ctx, in) 2928 } 2929 info := &grpc.UnaryServerInfo{ 2930 Server: srv, 2931 FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/GetConversationProfile", 2932 } 2933 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2934 return srv.(ConversationProfilesServer).GetConversationProfile(ctx, req.(*GetConversationProfileRequest)) 2935 } 2936 return interceptor(ctx, in, info, handler) 2937} 2938 2939func _ConversationProfiles_CreateConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2940 in := new(CreateConversationProfileRequest) 2941 if err := dec(in); err != nil { 2942 return nil, err 2943 } 2944 if interceptor == nil { 2945 return srv.(ConversationProfilesServer).CreateConversationProfile(ctx, in) 2946 } 2947 info := &grpc.UnaryServerInfo{ 2948 Server: srv, 2949 FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/CreateConversationProfile", 2950 } 2951 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2952 return srv.(ConversationProfilesServer).CreateConversationProfile(ctx, req.(*CreateConversationProfileRequest)) 2953 } 2954 return interceptor(ctx, in, info, handler) 2955} 2956 2957func _ConversationProfiles_UpdateConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2958 in := new(UpdateConversationProfileRequest) 2959 if err := dec(in); err != nil { 2960 return nil, err 2961 } 2962 if interceptor == nil { 2963 return srv.(ConversationProfilesServer).UpdateConversationProfile(ctx, in) 2964 } 2965 info := &grpc.UnaryServerInfo{ 2966 Server: srv, 2967 FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/UpdateConversationProfile", 2968 } 2969 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2970 return srv.(ConversationProfilesServer).UpdateConversationProfile(ctx, req.(*UpdateConversationProfileRequest)) 2971 } 2972 return interceptor(ctx, in, info, handler) 2973} 2974 2975func _ConversationProfiles_DeleteConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 2976 in := new(DeleteConversationProfileRequest) 2977 if err := dec(in); err != nil { 2978 return nil, err 2979 } 2980 if interceptor == nil { 2981 return srv.(ConversationProfilesServer).DeleteConversationProfile(ctx, in) 2982 } 2983 info := &grpc.UnaryServerInfo{ 2984 Server: srv, 2985 FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/DeleteConversationProfile", 2986 } 2987 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 2988 return srv.(ConversationProfilesServer).DeleteConversationProfile(ctx, req.(*DeleteConversationProfileRequest)) 2989 } 2990 return interceptor(ctx, in, info, handler) 2991} 2992 2993var _ConversationProfiles_serviceDesc = grpc.ServiceDesc{ 2994 ServiceName: "google.cloud.dialogflow.v2beta1.ConversationProfiles", 2995 HandlerType: (*ConversationProfilesServer)(nil), 2996 Methods: []grpc.MethodDesc{ 2997 { 2998 MethodName: "ListConversationProfiles", 2999 Handler: _ConversationProfiles_ListConversationProfiles_Handler, 3000 }, 3001 { 3002 MethodName: "GetConversationProfile", 3003 Handler: _ConversationProfiles_GetConversationProfile_Handler, 3004 }, 3005 { 3006 MethodName: "CreateConversationProfile", 3007 Handler: _ConversationProfiles_CreateConversationProfile_Handler, 3008 }, 3009 { 3010 MethodName: "UpdateConversationProfile", 3011 Handler: _ConversationProfiles_UpdateConversationProfile_Handler, 3012 }, 3013 { 3014 MethodName: "DeleteConversationProfile", 3015 Handler: _ConversationProfiles_DeleteConversationProfile_Handler, 3016 }, 3017 }, 3018 Streams: []grpc.StreamDesc{}, 3019 Metadata: "google/cloud/dialogflow/v2beta1/conversation_profile.proto", 3020} 3021