chore: generate more proto stubs (#7436)
Updates: #7357
Updates: #7349
Changes:
feat(apigeeregistry): start generating proto stubs
feat(apikeys): start generating proto stubs
feat(dialogflow): start generating proto stubs
feat(iam): start generating proto stubs
diff --git a/apigeeregistry/apiv1/apigeeregistrypb/provisioning_service.pb.go b/apigeeregistry/apiv1/apigeeregistrypb/provisioning_service.pb.go
new file mode 100644
index 0000000..bc12163
--- /dev/null
+++ b/apigeeregistry/apiv1/apigeeregistrypb/provisioning_service.pb.go
@@ -0,0 +1,1015 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/apigeeregistry/v1/provisioning_service.proto
+
+package apigeeregistrypb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// State of the Instance.
+type Instance_State int32
+
+const (
+ // The default value. This value is used if the state is omitted.
+ Instance_STATE_UNSPECIFIED Instance_State = 0
+ // The Instance has not been initialized or has been deleted.
+ Instance_INACTIVE Instance_State = 1
+ // The Instance is being created.
+ Instance_CREATING Instance_State = 2
+ // The Instance has been created and is ready for use.
+ Instance_ACTIVE Instance_State = 3
+ // The Instance is being updated.
+ Instance_UPDATING Instance_State = 4
+ // The Instance is being deleted.
+ Instance_DELETING Instance_State = 5
+ // The Instance encountered an error during a state change.
+ Instance_FAILED Instance_State = 6
+)
+
+// Enum value maps for Instance_State.
+var (
+ Instance_State_name = map[int32]string{
+ 0: "STATE_UNSPECIFIED",
+ 1: "INACTIVE",
+ 2: "CREATING",
+ 3: "ACTIVE",
+ 4: "UPDATING",
+ 5: "DELETING",
+ 6: "FAILED",
+ }
+ Instance_State_value = map[string]int32{
+ "STATE_UNSPECIFIED": 0,
+ "INACTIVE": 1,
+ "CREATING": 2,
+ "ACTIVE": 3,
+ "UPDATING": 4,
+ "DELETING": 5,
+ "FAILED": 6,
+ }
+)
+
+func (x Instance_State) Enum() *Instance_State {
+ p := new(Instance_State)
+ *p = x
+ return p
+}
+
+func (x Instance_State) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Instance_State) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_enumTypes[0].Descriptor()
+}
+
+func (Instance_State) Type() protoreflect.EnumType {
+ return &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_enumTypes[0]
+}
+
+func (x Instance_State) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Instance_State.Descriptor instead.
+func (Instance_State) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{4, 0}
+}
+
+// Request message for CreateInstance.
+type CreateInstanceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Parent resource of the Instance, of the form: `projects/*/locations/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. Identifier to assign to the Instance. Must be unique within scope of the
+ // parent resource.
+ InstanceId string `protobuf:"bytes,2,opt,name=instance_id,json=instanceId,proto3" json:"instance_id,omitempty"`
+ // Required. The Instance.
+ Instance *Instance `protobuf:"bytes,3,opt,name=instance,proto3" json:"instance,omitempty"`
+}
+
+func (x *CreateInstanceRequest) Reset() {
+ *x = CreateInstanceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateInstanceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateInstanceRequest) ProtoMessage() {}
+
+func (x *CreateInstanceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateInstanceRequest.ProtoReflect.Descriptor instead.
+func (*CreateInstanceRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *CreateInstanceRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateInstanceRequest) GetInstanceId() string {
+ if x != nil {
+ return x.InstanceId
+ }
+ return ""
+}
+
+func (x *CreateInstanceRequest) GetInstance() *Instance {
+ if x != nil {
+ return x.Instance
+ }
+ return nil
+}
+
+// Request message for DeleteInstance.
+type DeleteInstanceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the Instance to delete.
+ // Format: `projects/*/locations/*/instances/*`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteInstanceRequest) Reset() {
+ *x = DeleteInstanceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteInstanceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteInstanceRequest) ProtoMessage() {}
+
+func (x *DeleteInstanceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteInstanceRequest.ProtoReflect.Descriptor instead.
+func (*DeleteInstanceRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *DeleteInstanceRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for GetInstance.
+type GetInstanceRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the Instance to retrieve.
+ // Format: `projects/*/locations/*/instances/*`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetInstanceRequest) Reset() {
+ *x = GetInstanceRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetInstanceRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetInstanceRequest) ProtoMessage() {}
+
+func (x *GetInstanceRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetInstanceRequest.ProtoReflect.Descriptor instead.
+func (*GetInstanceRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *GetInstanceRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Represents the metadata of the long-running operation.
+type OperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The time the operation was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // The time the operation finished running.
+ EndTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
+ // Server-defined resource path for the target of the operation.
+ Target string `protobuf:"bytes,3,opt,name=target,proto3" json:"target,omitempty"`
+ // Name of the verb executed by the operation.
+ Verb string `protobuf:"bytes,4,opt,name=verb,proto3" json:"verb,omitempty"`
+ // Human-readable status of the operation, if any.
+ StatusMessage string `protobuf:"bytes,5,opt,name=status_message,json=statusMessage,proto3" json:"status_message,omitempty"`
+ // Identifies whether the user has requested cancellation
+ // of the operation. Operations that have successfully been cancelled
+ // have [Operation.error][] value with a [google.rpc.Status.code][google.rpc.Status.code] of 1,
+ // corresponding to `Code.CANCELLED`.
+ CancellationRequested bool `protobuf:"varint,6,opt,name=cancellation_requested,json=cancellationRequested,proto3" json:"cancellation_requested,omitempty"`
+ // API version used to start the operation.
+ ApiVersion string `protobuf:"bytes,7,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`
+}
+
+func (x *OperationMetadata) Reset() {
+ *x = OperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OperationMetadata) ProtoMessage() {}
+
+func (x *OperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OperationMetadata.ProtoReflect.Descriptor instead.
+func (*OperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *OperationMetadata) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *OperationMetadata) GetEndTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.EndTime
+ }
+ return nil
+}
+
+func (x *OperationMetadata) GetTarget() string {
+ if x != nil {
+ return x.Target
+ }
+ return ""
+}
+
+func (x *OperationMetadata) GetVerb() string {
+ if x != nil {
+ return x.Verb
+ }
+ return ""
+}
+
+func (x *OperationMetadata) GetStatusMessage() string {
+ if x != nil {
+ return x.StatusMessage
+ }
+ return ""
+}
+
+func (x *OperationMetadata) GetCancellationRequested() bool {
+ if x != nil {
+ return x.CancellationRequested
+ }
+ return false
+}
+
+func (x *OperationMetadata) GetApiVersion() string {
+ if x != nil {
+ return x.ApiVersion
+ }
+ return ""
+}
+
+// An Instance represents the instance resources of the Registry.
+// Currently, only one instance is allowed for each project.
+type Instance struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Format: `projects/*/locations/*/instance`.
+ // Currently only `locations/global` is supported.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Output only. Creation timestamp.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Last update timestamp.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Output only. The current state of the Instance.
+ State Instance_State `protobuf:"varint,4,opt,name=state,proto3,enum=google.cloud.apigeeregistry.v1.Instance_State" json:"state,omitempty"`
+ // Output only. Extra information of Instance.State if the state is `FAILED`.
+ StateMessage string `protobuf:"bytes,5,opt,name=state_message,json=stateMessage,proto3" json:"state_message,omitempty"`
+ // Required. Config of the Instance.
+ Config *Instance_Config `protobuf:"bytes,6,opt,name=config,proto3" json:"config,omitempty"`
+}
+
+func (x *Instance) Reset() {
+ *x = Instance{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Instance) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Instance) ProtoMessage() {}
+
+func (x *Instance) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Instance.ProtoReflect.Descriptor instead.
+func (*Instance) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Instance) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Instance) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Instance) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Instance) GetState() Instance_State {
+ if x != nil {
+ return x.State
+ }
+ return Instance_STATE_UNSPECIFIED
+}
+
+func (x *Instance) GetStateMessage() string {
+ if x != nil {
+ return x.StateMessage
+ }
+ return ""
+}
+
+func (x *Instance) GetConfig() *Instance_Config {
+ if x != nil {
+ return x.Config
+ }
+ return nil
+}
+
+// Available configurations to provision an Instance.
+type Instance_Config struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The GCP location where the Instance resides.
+ Location string `protobuf:"bytes,1,opt,name=location,proto3" json:"location,omitempty"`
+ // Required. The Customer Managed Encryption Key (CMEK) used for data encryption.
+ // The CMEK name should follow the format of
+ // `projects/([^/]+)/locations/([^/]+)/keyRings/([^/]+)/cryptoKeys/([^/]+)`,
+ // where the `location` must match InstanceConfig.location.
+ CmekKeyName string `protobuf:"bytes,2,opt,name=cmek_key_name,json=cmekKeyName,proto3" json:"cmek_key_name,omitempty"`
+}
+
+func (x *Instance_Config) Reset() {
+ *x = Instance_Config{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Instance_Config) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Instance_Config) ProtoMessage() {}
+
+func (x *Instance_Config) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Instance_Config.ProtoReflect.Descriptor instead.
+func (*Instance_Config) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP(), []int{4, 0}
+}
+
+func (x *Instance_Config) GetLocation() string {
+ if x != nil {
+ return x.Location
+ }
+ return ""
+}
+
+func (x *Instance_Config) GetCmekKeyName() string {
+ if x != nil {
+ return x.CmekKeyName
+ }
+ return ""
+}
+
+var File_google_cloud_apigeeregistry_v1_provisioning_service_proto protoreflect.FileDescriptor
+
+var file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDesc = []byte{
+ 0x0a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x76, 0x31,
+ 0x2f, 0x70, 0x72, 0x6f, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x5f, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66,
+ 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+ 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69,
+ 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xcb, 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49,
+ 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41,
+ 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29,
+ 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x69, 0x6e, 0x73,
+ 0x74, 0x61, 0x6e, 0x63, 0x65, 0x49, 0x64, 0x12, 0x49, 0x0a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61,
+ 0x6e, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61,
+ 0x6e, 0x63, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
+ 0x63, 0x65, 0x22, 0x5b, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x73, 0x74,
+ 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x28, 0x0a, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22,
+ 0x58, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x73, 0x74, 0x61,
+ 0x6e, 0x63, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xb2, 0x02, 0x0a, 0x11, 0x4f, 0x70,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12,
+ 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x35, 0x0a, 0x08,
+ 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54,
+ 0x69, 0x6d, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x06, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x76,
+ 0x65, 0x72, 0x62, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x76, 0x65, 0x72, 0x62, 0x12,
+ 0x25, 0x0a, 0x0e, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x35, 0x0a, 0x16, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c,
+ 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x15, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x65, 0x64, 0x12, 0x1f, 0x0a,
+ 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x94,
+ 0x05, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
+ 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
+ 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54,
+ 0x69, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x2e, 0x53, 0x74, 0x61,
+ 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x28,
+ 0x0a, 0x0d, 0x73, 0x74, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0c, 0x73, 0x74, 0x61, 0x74,
+ 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4c, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
+ 0x63, 0x65, 0x2e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x52, 0x0a, 0x06, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x1f, 0x0a, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x08, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x27, 0x0a, 0x0d, 0x63, 0x6d, 0x65, 0x6b, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x63,
+ 0x6d, 0x65, 0x6b, 0x4b, 0x65, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x6e, 0x0a, 0x05, 0x53, 0x74,
+ 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53,
+ 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x49, 0x4e,
+ 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41,
+ 0x54, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45,
+ 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x04,
+ 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x12, 0x0a,
+ 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x06, 0x3a, 0x69, 0xea, 0x41, 0x66, 0x0a,
+ 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49,
+ 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x3c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x73, 0x74,
+ 0x61, 0x6e, 0x63, 0x65, 0x7d, 0x32, 0xc9, 0x05, 0x0a, 0x0c, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73,
+ 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x12, 0xe5, 0x01, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
+ 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
+ 0x7d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x39, 0x22, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e, 0x73,
+ 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x3a, 0x08, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
+ 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e,
+ 0x63, 0x65, 0x2c, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x5f, 0x69, 0x64, 0xca, 0x41,
+ 0x1d, 0x0a, 0x08, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x11, 0x4f, 0x70, 0x65,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xd1,
+ 0x01, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
+ 0x65, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x69, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x2a,
+ 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xca, 0x41, 0x2a, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12,
+ 0x11, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x12, 0xa9, 0x01, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e,
+ 0x63, 0x65, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x49, 0x6e, 0x73, 0x74, 0x61, 0x6e, 0x63, 0x65,
+ 0x22, 0x3c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x69, 0x6e, 0x73, 0x74, 0x61,
+ 0x6e, 0x63, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x51,
+ 0xca, 0x41, 0x1d, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
+ 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
+ 0x6d, 0x42, 0xf2, 0x01, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x18, 0x50, 0x72, 0x6f, 0x76, 0x69, 0x73,
+ 0x69, 0x6f, 0x6e, 0x69, 0x6e, 0x67, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70, 0x62, 0x3b,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70, 0x62,
+ 0xaa, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x56,
+ 0x31, 0xca, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x5c, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5c,
+ 0x56, 0x31, 0xea, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c, 0x6f,
+ 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescOnce sync.Once
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescData = file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDesc
+)
+
+func file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescGZIP() []byte {
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescOnce.Do(func() {
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescData)
+ })
+ return file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDescData
+}
+
+var file_google_cloud_apigeeregistry_v1_provisioning_service_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
+var file_google_cloud_apigeeregistry_v1_provisioning_service_proto_goTypes = []interface{}{
+ (Instance_State)(0), // 0: google.cloud.apigeeregistry.v1.Instance.State
+ (*CreateInstanceRequest)(nil), // 1: google.cloud.apigeeregistry.v1.CreateInstanceRequest
+ (*DeleteInstanceRequest)(nil), // 2: google.cloud.apigeeregistry.v1.DeleteInstanceRequest
+ (*GetInstanceRequest)(nil), // 3: google.cloud.apigeeregistry.v1.GetInstanceRequest
+ (*OperationMetadata)(nil), // 4: google.cloud.apigeeregistry.v1.OperationMetadata
+ (*Instance)(nil), // 5: google.cloud.apigeeregistry.v1.Instance
+ (*Instance_Config)(nil), // 6: google.cloud.apigeeregistry.v1.Instance.Config
+ (*timestamppb.Timestamp)(nil), // 7: google.protobuf.Timestamp
+ (*longrunning.Operation)(nil), // 8: google.longrunning.Operation
+}
+var file_google_cloud_apigeeregistry_v1_provisioning_service_proto_depIdxs = []int32{
+ 5, // 0: google.cloud.apigeeregistry.v1.CreateInstanceRequest.instance:type_name -> google.cloud.apigeeregistry.v1.Instance
+ 7, // 1: google.cloud.apigeeregistry.v1.OperationMetadata.create_time:type_name -> google.protobuf.Timestamp
+ 7, // 2: google.cloud.apigeeregistry.v1.OperationMetadata.end_time:type_name -> google.protobuf.Timestamp
+ 7, // 3: google.cloud.apigeeregistry.v1.Instance.create_time:type_name -> google.protobuf.Timestamp
+ 7, // 4: google.cloud.apigeeregistry.v1.Instance.update_time:type_name -> google.protobuf.Timestamp
+ 0, // 5: google.cloud.apigeeregistry.v1.Instance.state:type_name -> google.cloud.apigeeregistry.v1.Instance.State
+ 6, // 6: google.cloud.apigeeregistry.v1.Instance.config:type_name -> google.cloud.apigeeregistry.v1.Instance.Config
+ 1, // 7: google.cloud.apigeeregistry.v1.Provisioning.CreateInstance:input_type -> google.cloud.apigeeregistry.v1.CreateInstanceRequest
+ 2, // 8: google.cloud.apigeeregistry.v1.Provisioning.DeleteInstance:input_type -> google.cloud.apigeeregistry.v1.DeleteInstanceRequest
+ 3, // 9: google.cloud.apigeeregistry.v1.Provisioning.GetInstance:input_type -> google.cloud.apigeeregistry.v1.GetInstanceRequest
+ 8, // 10: google.cloud.apigeeregistry.v1.Provisioning.CreateInstance:output_type -> google.longrunning.Operation
+ 8, // 11: google.cloud.apigeeregistry.v1.Provisioning.DeleteInstance:output_type -> google.longrunning.Operation
+ 5, // 12: google.cloud.apigeeregistry.v1.Provisioning.GetInstance:output_type -> google.cloud.apigeeregistry.v1.Instance
+ 10, // [10:13] is the sub-list for method output_type
+ 7, // [7:10] is the sub-list for method input_type
+ 7, // [7:7] is the sub-list for extension type_name
+ 7, // [7:7] is the sub-list for extension extendee
+ 0, // [0:7] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_apigeeregistry_v1_provisioning_service_proto_init() }
+func file_google_cloud_apigeeregistry_v1_provisioning_service_proto_init() {
+ if File_google_cloud_apigeeregistry_v1_provisioning_service_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateInstanceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteInstanceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetInstanceRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Instance); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Instance_Config); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 6,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_apigeeregistry_v1_provisioning_service_proto_goTypes,
+ DependencyIndexes: file_google_cloud_apigeeregistry_v1_provisioning_service_proto_depIdxs,
+ EnumInfos: file_google_cloud_apigeeregistry_v1_provisioning_service_proto_enumTypes,
+ MessageInfos: file_google_cloud_apigeeregistry_v1_provisioning_service_proto_msgTypes,
+ }.Build()
+ File_google_cloud_apigeeregistry_v1_provisioning_service_proto = out.File
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_rawDesc = nil
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_goTypes = nil
+ file_google_cloud_apigeeregistry_v1_provisioning_service_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ProvisioningClient is the client API for Provisioning service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ProvisioningClient interface {
+ // Provisions instance resources for the Registry.
+ CreateInstance(ctx context.Context, in *CreateInstanceRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes the Registry instance.
+ DeleteInstance(ctx context.Context, in *DeleteInstanceRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Gets details of a single Instance.
+ GetInstance(ctx context.Context, in *GetInstanceRequest, opts ...grpc.CallOption) (*Instance, error)
+}
+
+type provisioningClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewProvisioningClient(cc grpc.ClientConnInterface) ProvisioningClient {
+ return &provisioningClient{cc}
+}
+
+func (c *provisioningClient) CreateInstance(ctx context.Context, in *CreateInstanceRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Provisioning/CreateInstance", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *provisioningClient) DeleteInstance(ctx context.Context, in *DeleteInstanceRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Provisioning/DeleteInstance", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *provisioningClient) GetInstance(ctx context.Context, in *GetInstanceRequest, opts ...grpc.CallOption) (*Instance, error) {
+ out := new(Instance)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Provisioning/GetInstance", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ProvisioningServer is the server API for Provisioning service.
+type ProvisioningServer interface {
+ // Provisions instance resources for the Registry.
+ CreateInstance(context.Context, *CreateInstanceRequest) (*longrunning.Operation, error)
+ // Deletes the Registry instance.
+ DeleteInstance(context.Context, *DeleteInstanceRequest) (*longrunning.Operation, error)
+ // Gets details of a single Instance.
+ GetInstance(context.Context, *GetInstanceRequest) (*Instance, error)
+}
+
+// UnimplementedProvisioningServer can be embedded to have forward compatible implementations.
+type UnimplementedProvisioningServer struct {
+}
+
+func (*UnimplementedProvisioningServer) CreateInstance(context.Context, *CreateInstanceRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateInstance not implemented")
+}
+func (*UnimplementedProvisioningServer) DeleteInstance(context.Context, *DeleteInstanceRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteInstance not implemented")
+}
+func (*UnimplementedProvisioningServer) GetInstance(context.Context, *GetInstanceRequest) (*Instance, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetInstance not implemented")
+}
+
+func RegisterProvisioningServer(s *grpc.Server, srv ProvisioningServer) {
+ s.RegisterService(&_Provisioning_serviceDesc, srv)
+}
+
+func _Provisioning_CreateInstance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateInstanceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProvisioningServer).CreateInstance(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Provisioning/CreateInstance",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProvisioningServer).CreateInstance(ctx, req.(*CreateInstanceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Provisioning_DeleteInstance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteInstanceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProvisioningServer).DeleteInstance(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Provisioning/DeleteInstance",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProvisioningServer).DeleteInstance(ctx, req.(*DeleteInstanceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Provisioning_GetInstance_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetInstanceRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ProvisioningServer).GetInstance(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Provisioning/GetInstance",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ProvisioningServer).GetInstance(ctx, req.(*GetInstanceRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Provisioning_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.apigeeregistry.v1.Provisioning",
+ HandlerType: (*ProvisioningServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CreateInstance",
+ Handler: _Provisioning_CreateInstance_Handler,
+ },
+ {
+ MethodName: "DeleteInstance",
+ Handler: _Provisioning_DeleteInstance_Handler,
+ },
+ {
+ MethodName: "GetInstance",
+ Handler: _Provisioning_GetInstance_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/apigeeregistry/v1/provisioning_service.proto",
+}
diff --git a/apigeeregistry/apiv1/apigeeregistrypb/registry_models.pb.go b/apigeeregistry/apiv1/apigeeregistrypb/registry_models.pb.go
new file mode 100644
index 0000000..c8d9e01
--- /dev/null
+++ b/apigeeregistry/apiv1/apigeeregistrypb/registry_models.pb.go
@@ -0,0 +1,1279 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/apigeeregistry/v1/registry_models.proto
+
+package apigeeregistrypb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// A top-level description of an API.
+// Produced by producers and are commitments to provide services.
+type Api struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Resource name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Human-meaningful name.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // A detailed description.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. Creation timestamp.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Last update timestamp.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // A user-definable description of the availability of this service.
+ // Format: free-form, but we expect single words that describe availability,
+ // e.g., "NONE", "TESTING", "PREVIEW", "GENERAL", "DEPRECATED", "SHUTDOWN".
+ Availability string `protobuf:"bytes,6,opt,name=availability,proto3" json:"availability,omitempty"`
+ // The recommended version of the API.
+ // Format: `apis/{api}/versions/{version}`
+ RecommendedVersion string `protobuf:"bytes,7,opt,name=recommended_version,json=recommendedVersion,proto3" json:"recommended_version,omitempty"`
+ // The recommended deployment of the API.
+ // Format: `apis/{api}/deployments/{deployment}`
+ RecommendedDeployment string `protobuf:"bytes,8,opt,name=recommended_deployment,json=recommendedDeployment,proto3" json:"recommended_deployment,omitempty"`
+ // Labels attach identifying metadata to resources. Identifying metadata can
+ // be used to filter list operations.
+ //
+ // Label keys and values can be no longer than 64 characters
+ // (Unicode codepoints), can only contain lowercase letters, numeric
+ // characters, underscores, and dashes. International characters are allowed.
+ // No more than 64 user labels can be associated with one resource (System
+ // labels are excluded).
+ //
+ // See https://goo.gl/xmQnxf for more information and examples of labels.
+ // System reserved label keys are prefixed with
+ // `apigeeregistry.googleapis.com/` and cannot be changed.
+ Labels map[string]string `protobuf:"bytes,9,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Annotations attach non-identifying metadata to resources.
+ //
+ // Annotation keys and values are less restricted than those of labels, but
+ // should be generally used for small values of broad interest. Larger, topic-
+ // specific metadata should be stored in Artifacts.
+ Annotations map[string]string `protobuf:"bytes,10,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *Api) Reset() {
+ *x = Api{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Api) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Api) ProtoMessage() {}
+
+func (x *Api) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Api.ProtoReflect.Descriptor instead.
+func (*Api) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Api) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Api) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Api) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Api) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Api) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Api) GetAvailability() string {
+ if x != nil {
+ return x.Availability
+ }
+ return ""
+}
+
+func (x *Api) GetRecommendedVersion() string {
+ if x != nil {
+ return x.RecommendedVersion
+ }
+ return ""
+}
+
+func (x *Api) GetRecommendedDeployment() string {
+ if x != nil {
+ return x.RecommendedDeployment
+ }
+ return ""
+}
+
+func (x *Api) GetLabels() map[string]string {
+ if x != nil {
+ return x.Labels
+ }
+ return nil
+}
+
+func (x *Api) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+// Describes a particular version of an API.
+// ApiVersions are what consumers actually use.
+type ApiVersion struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Resource name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Human-meaningful name.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // A detailed description.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. Creation timestamp.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Last update timestamp.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // A user-definable description of the lifecycle phase of this API version.
+ // Format: free-form, but we expect single words that describe API maturity,
+ // e.g., "CONCEPT", "DESIGN", "DEVELOPMENT", "STAGING", "PRODUCTION",
+ // "DEPRECATED", "RETIRED".
+ State string `protobuf:"bytes,6,opt,name=state,proto3" json:"state,omitempty"`
+ // Labels attach identifying metadata to resources. Identifying metadata can
+ // be used to filter list operations.
+ //
+ // Label keys and values can be no longer than 64 characters
+ // (Unicode codepoints), can only contain lowercase letters, numeric
+ // characters, underscores and dashes. International characters are allowed.
+ // No more than 64 user labels can be associated with one resource (System
+ // labels are excluded).
+ //
+ // See https://goo.gl/xmQnxf for more information and examples of labels.
+ // System reserved label keys are prefixed with
+ // `apigeeregistry.googleapis.com/` and cannot be changed.
+ Labels map[string]string `protobuf:"bytes,7,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Annotations attach non-identifying metadata to resources.
+ //
+ // Annotation keys and values are less restricted than those of labels, but
+ // should be generally used for small values of broad interest. Larger, topic-
+ // specific metadata should be stored in Artifacts.
+ Annotations map[string]string `protobuf:"bytes,8,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *ApiVersion) Reset() {
+ *x = ApiVersion{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ApiVersion) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ApiVersion) ProtoMessage() {}
+
+func (x *ApiVersion) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ApiVersion.ProtoReflect.Descriptor instead.
+func (*ApiVersion) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ApiVersion) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ApiVersion) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *ApiVersion) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *ApiVersion) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *ApiVersion) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *ApiVersion) GetState() string {
+ if x != nil {
+ return x.State
+ }
+ return ""
+}
+
+func (x *ApiVersion) GetLabels() map[string]string {
+ if x != nil {
+ return x.Labels
+ }
+ return nil
+}
+
+func (x *ApiVersion) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+// Describes a version of an API in a structured way.
+// ApiSpecs provide formal descriptions that consumers can use to use a version.
+// ApiSpec resources are intended to be fully-resolved descriptions of an
+// ApiVersion. When specs consist of multiple files, these should be bundled
+// together (e.g., in a zip archive) and stored as a unit. Multiple specs can
+// exist to provide representations in different API description formats.
+// Synchronization of these representations would be provided by tooling and
+// background services.
+type ApiSpec struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Resource name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // A possibly-hierarchical name used to refer to the spec from other specs.
+ Filename string `protobuf:"bytes,2,opt,name=filename,proto3" json:"filename,omitempty"`
+ // A detailed description.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. Immutable. The revision ID of the spec.
+ // A new revision is committed whenever the spec contents are changed.
+ // The format is an 8-character hexadecimal string.
+ RevisionId string `protobuf:"bytes,4,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
+ // Output only. Creation timestamp; when the spec resource was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Revision creation timestamp; when the represented revision was created.
+ RevisionCreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=revision_create_time,json=revisionCreateTime,proto3" json:"revision_create_time,omitempty"`
+ // Output only. Last update timestamp: when the represented revision was last modified.
+ RevisionUpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=revision_update_time,json=revisionUpdateTime,proto3" json:"revision_update_time,omitempty"`
+ // A style (format) descriptor for this spec that is specified as a Media Type
+ // (https://en.wikipedia.org/wiki/Media_type). Possible values include
+ // `application/vnd.apigee.proto`, `application/vnd.apigee.openapi`, and
+ // `application/vnd.apigee.graphql`, with possible suffixes representing
+ // compression types. These hypothetical names are defined in the vendor tree
+ // defined in RFC6838 (https://tools.ietf.org/html/rfc6838) and are not final.
+ // Content types can specify compression. Currently only GZip compression is
+ // supported (indicated with "+gzip").
+ MimeType string `protobuf:"bytes,8,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
+ // Output only. The size of the spec file in bytes. If the spec is gzipped, this is the
+ // size of the uncompressed spec.
+ SizeBytes int32 `protobuf:"varint,9,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
+ // Output only. A SHA-256 hash of the spec's contents. If the spec is gzipped, this is
+ // the hash of the uncompressed spec.
+ Hash string `protobuf:"bytes,10,opt,name=hash,proto3" json:"hash,omitempty"`
+ // The original source URI of the spec (if one exists).
+ // This is an external location that can be used for reference purposes
+ // but which may not be authoritative since this external resource may
+ // change after the spec is retrieved.
+ SourceUri string `protobuf:"bytes,11,opt,name=source_uri,json=sourceUri,proto3" json:"source_uri,omitempty"`
+ // Input only. The contents of the spec.
+ // Provided by API callers when specs are created or updated.
+ // To access the contents of a spec, use GetApiSpecContents.
+ Contents []byte `protobuf:"bytes,12,opt,name=contents,proto3" json:"contents,omitempty"`
+ // Labels attach identifying metadata to resources. Identifying metadata can
+ // be used to filter list operations.
+ //
+ // Label keys and values can be no longer than 64 characters
+ // (Unicode codepoints), can only contain lowercase letters, numeric
+ // characters, underscores and dashes. International characters are allowed.
+ // No more than 64 user labels can be associated with one resource (System
+ // labels are excluded).
+ //
+ // See https://goo.gl/xmQnxf for more information and examples of labels.
+ // System reserved label keys are prefixed with
+ // `apigeeregistry.googleapis.com/` and cannot be changed.
+ Labels map[string]string `protobuf:"bytes,14,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Annotations attach non-identifying metadata to resources.
+ //
+ // Annotation keys and values are less restricted than those of labels, but
+ // should be generally used for small values of broad interest. Larger, topic-
+ // specific metadata should be stored in Artifacts.
+ Annotations map[string]string `protobuf:"bytes,15,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *ApiSpec) Reset() {
+ *x = ApiSpec{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ApiSpec) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ApiSpec) ProtoMessage() {}
+
+func (x *ApiSpec) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ApiSpec.ProtoReflect.Descriptor instead.
+func (*ApiSpec) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ApiSpec) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetFilename() string {
+ if x != nil {
+ return x.Filename
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetRevisionId() string {
+ if x != nil {
+ return x.RevisionId
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *ApiSpec) GetRevisionCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.RevisionCreateTime
+ }
+ return nil
+}
+
+func (x *ApiSpec) GetRevisionUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.RevisionUpdateTime
+ }
+ return nil
+}
+
+func (x *ApiSpec) GetMimeType() string {
+ if x != nil {
+ return x.MimeType
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetSizeBytes() int32 {
+ if x != nil {
+ return x.SizeBytes
+ }
+ return 0
+}
+
+func (x *ApiSpec) GetHash() string {
+ if x != nil {
+ return x.Hash
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetSourceUri() string {
+ if x != nil {
+ return x.SourceUri
+ }
+ return ""
+}
+
+func (x *ApiSpec) GetContents() []byte {
+ if x != nil {
+ return x.Contents
+ }
+ return nil
+}
+
+func (x *ApiSpec) GetLabels() map[string]string {
+ if x != nil {
+ return x.Labels
+ }
+ return nil
+}
+
+func (x *ApiSpec) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+// Describes a service running at particular address that
+// provides a particular version of an API. ApiDeployments have revisions which
+// correspond to different configurations of a single deployment in time.
+// Revision identifiers should be updated whenever the served API spec or
+// endpoint address changes.
+type ApiDeployment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Resource name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Human-meaningful name.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // A detailed description.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. Immutable. The revision ID of the deployment.
+ // A new revision is committed whenever the deployment contents are changed.
+ // The format is an 8-character hexadecimal string.
+ RevisionId string `protobuf:"bytes,4,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
+ // Output only. Creation timestamp; when the deployment resource was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Revision creation timestamp; when the represented revision was created.
+ RevisionCreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=revision_create_time,json=revisionCreateTime,proto3" json:"revision_create_time,omitempty"`
+ // Output only. Last update timestamp: when the represented revision was last modified.
+ RevisionUpdateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=revision_update_time,json=revisionUpdateTime,proto3" json:"revision_update_time,omitempty"`
+ // The full resource name (including revision ID) of the spec of the API being
+ // served by the deployment. Changes to this value will update the revision.
+ // Format: `apis/{api}/deployments/{deployment}`
+ ApiSpecRevision string `protobuf:"bytes,8,opt,name=api_spec_revision,json=apiSpecRevision,proto3" json:"api_spec_revision,omitempty"`
+ // The address where the deployment is serving. Changes to this value will
+ // update the revision.
+ EndpointUri string `protobuf:"bytes,9,opt,name=endpoint_uri,json=endpointUri,proto3" json:"endpoint_uri,omitempty"`
+ // The address of the external channel of the API (e.g., the Developer
+ // Portal). Changes to this value will not affect the revision.
+ ExternalChannelUri string `protobuf:"bytes,10,opt,name=external_channel_uri,json=externalChannelUri,proto3" json:"external_channel_uri,omitempty"`
+ // Text briefly identifying the intended audience of the API. Changes to this
+ // value will not affect the revision.
+ IntendedAudience string `protobuf:"bytes,11,opt,name=intended_audience,json=intendedAudience,proto3" json:"intended_audience,omitempty"`
+ // Text briefly describing how to access the endpoint. Changes to this value
+ // will not affect the revision.
+ AccessGuidance string `protobuf:"bytes,12,opt,name=access_guidance,json=accessGuidance,proto3" json:"access_guidance,omitempty"`
+ // Labels attach identifying metadata to resources. Identifying metadata can
+ // be used to filter list operations.
+ //
+ // Label keys and values can be no longer than 64 characters
+ // (Unicode codepoints), can only contain lowercase letters, numeric
+ // characters, underscores and dashes. International characters are allowed.
+ // No more than 64 user labels can be associated with one resource (System
+ // labels are excluded).
+ //
+ // See https://goo.gl/xmQnxf for more information and examples of labels.
+ // System reserved label keys are prefixed with
+ // `apigeeregistry.googleapis.com/` and cannot be changed.
+ Labels map[string]string `protobuf:"bytes,14,rep,name=labels,proto3" json:"labels,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Annotations attach non-identifying metadata to resources.
+ //
+ // Annotation keys and values are less restricted than those of labels, but
+ // should be generally used for small values of broad interest. Larger, topic-
+ // specific metadata should be stored in Artifacts.
+ Annotations map[string]string `protobuf:"bytes,15,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *ApiDeployment) Reset() {
+ *x = ApiDeployment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ApiDeployment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ApiDeployment) ProtoMessage() {}
+
+func (x *ApiDeployment) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ApiDeployment.ProtoReflect.Descriptor instead.
+func (*ApiDeployment) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ApiDeployment) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetRevisionId() string {
+ if x != nil {
+ return x.RevisionId
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *ApiDeployment) GetRevisionCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.RevisionCreateTime
+ }
+ return nil
+}
+
+func (x *ApiDeployment) GetRevisionUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.RevisionUpdateTime
+ }
+ return nil
+}
+
+func (x *ApiDeployment) GetApiSpecRevision() string {
+ if x != nil {
+ return x.ApiSpecRevision
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetEndpointUri() string {
+ if x != nil {
+ return x.EndpointUri
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetExternalChannelUri() string {
+ if x != nil {
+ return x.ExternalChannelUri
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetIntendedAudience() string {
+ if x != nil {
+ return x.IntendedAudience
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetAccessGuidance() string {
+ if x != nil {
+ return x.AccessGuidance
+ }
+ return ""
+}
+
+func (x *ApiDeployment) GetLabels() map[string]string {
+ if x != nil {
+ return x.Labels
+ }
+ return nil
+}
+
+func (x *ApiDeployment) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+// Artifacts of resources. Artifacts are unique (single-value) per resource
+// and are used to store metadata that is too large or numerous to be stored
+// directly on the resource. Since artifacts are stored separately from parent
+// resources, they should generally be used for metadata that is needed
+// infrequently, i.e., not for display in primary views of the resource but
+// perhaps displayed or downloaded upon request. The `ListArtifacts` method
+// allows artifacts to be quickly enumerated and checked for presence without
+// downloading their (potentially-large) contents.
+type Artifact struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Resource name.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Output only. Creation timestamp.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Last update timestamp.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // A content type specifier for the artifact.
+ // Content type specifiers are Media Types
+ // (https://en.wikipedia.org/wiki/Media_type) with a possible "schema"
+ // parameter that specifies a schema for the stored information.
+ // Content types can specify compression. Currently only GZip compression is
+ // supported (indicated with "+gzip").
+ MimeType string `protobuf:"bytes,4,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
+ // Output only. The size of the artifact in bytes. If the artifact is gzipped, this is
+ // the size of the uncompressed artifact.
+ SizeBytes int32 `protobuf:"varint,5,opt,name=size_bytes,json=sizeBytes,proto3" json:"size_bytes,omitempty"`
+ // Output only. A SHA-256 hash of the artifact's contents. If the artifact is gzipped,
+ // this is the hash of the uncompressed artifact.
+ Hash string `protobuf:"bytes,6,opt,name=hash,proto3" json:"hash,omitempty"`
+ // Input only. The contents of the artifact.
+ // Provided by API callers when artifacts are created or replaced.
+ // To access the contents of an artifact, use GetArtifactContents.
+ Contents []byte `protobuf:"bytes,7,opt,name=contents,proto3" json:"contents,omitempty"`
+}
+
+func (x *Artifact) Reset() {
+ *x = Artifact{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Artifact) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Artifact) ProtoMessage() {}
+
+func (x *Artifact) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Artifact.ProtoReflect.Descriptor instead.
+func (*Artifact) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *Artifact) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Artifact) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Artifact) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Artifact) GetMimeType() string {
+ if x != nil {
+ return x.MimeType
+ }
+ return ""
+}
+
+func (x *Artifact) GetSizeBytes() int32 {
+ if x != nil {
+ return x.SizeBytes
+ }
+ return 0
+}
+
+func (x *Artifact) GetHash() string {
+ if x != nil {
+ return x.Hash
+ }
+ return ""
+}
+
+func (x *Artifact) GetContents() []byte {
+ if x != nil {
+ return x.Contents
+ }
+ return nil
+}
+
+var File_google_cloud_apigeeregistry_v1_registry_models_proto protoreflect.FileDescriptor
+
+var file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDesc = []byte{
+ 0x0a, 0x34, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x76, 0x31,
+ 0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f,
+ 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0xc7, 0x06, 0x0a, 0x03, 0x41, 0x70, 0x69, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61,
+ 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74,
+ 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
+ 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0c, 0x61, 0x76, 0x61, 0x69,
+ 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
+ 0x61, 0x76, 0x61, 0x69, 0x6c, 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x5e, 0x0a, 0x13,
+ 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x76, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xfa, 0x41, 0x2a, 0x0a, 0x28,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70,
+ 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x12, 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d,
+ 0x65, 0x6e, 0x64, 0x65, 0x64, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x67, 0x0a, 0x16,
+ 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x5f, 0x64, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xfa, 0x41,
+ 0x2d, 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x15,
+ 0x72, 0x65, 0x63, 0x6f, 0x6d, 0x6d, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x44, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18,
+ 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
+ 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x56,
+ 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0a, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+ 0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+ 0x01, 0x3a, 0x5a, 0xea, 0x41, 0x57, 0x0a, 0x21, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x12, 0x32, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d, 0x22, 0x9f, 0x05,
+ 0x0a, 0x0a, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e,
+ 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f,
+ 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
+ 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54,
+ 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x74, 0x61,
+ 0x74, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12,
+ 0x4e, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x4c, 0x61, 0x62, 0x65,
+ 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12,
+ 0x5d, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x08,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72,
+ 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x39,
+ 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
+ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e,
+ 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
+ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x74, 0xea, 0x41, 0x71, 0x0a, 0x28,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70,
+ 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x45, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d, 0x2f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x22,
+ 0xaa, 0x07, 0x0a, 0x07, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x1a, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x66, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64,
+ 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a,
+ 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41, 0x05, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69,
+ 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69,
+ 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x76, 0x69,
+ 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
+ 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
+ 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x72,
+ 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74,
+ 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x72, 0x65, 0x76, 0x69,
+ 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1b,
+ 0x0a, 0x09, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x73,
+ 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x05, 0x42,
+ 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73, 0x12,
+ 0x17, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x1d, 0x0a, 0x0a, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x55, 0x72, 0x69, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x04, 0x52, 0x08,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x4b, 0x0a, 0x06, 0x6c, 0x61, 0x62, 0x65,
+ 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65,
+ 0x63, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x5a, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53,
+ 0x70, 0x65, 0x63, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45,
+ 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
+ 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
+ 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e, 0x0a, 0x10,
+ 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79,
+ 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b,
+ 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x7e, 0xea, 0x41,
+ 0x7b, 0x0a, 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x52, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d, 0x2f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
+ 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x7b, 0x73, 0x70, 0x65, 0x63, 0x7d, 0x22, 0xab, 0x08, 0x0a,
+ 0x0d, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x12,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
+ 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x27, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x06, 0xe0, 0x41,
+ 0x05, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64,
+ 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
+ 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69,
+ 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x12, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x14, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
+ 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x56, 0x0a, 0x11, 0x61, 0x70, 0x69, 0x5f,
+ 0x73, 0x70, 0x65, 0x63, 0x5f, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x2a, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52,
+ 0x0f, 0x61, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
+ 0x12, 0x21, 0x0a, 0x0c, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74,
+ 0x55, 0x72, 0x69, 0x12, 0x30, 0x0a, 0x14, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x5f,
+ 0x63, 0x68, 0x61, 0x6e, 0x6e, 0x65, 0x6c, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x0a, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x12, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x43, 0x68, 0x61, 0x6e, 0x6e,
+ 0x65, 0x6c, 0x55, 0x72, 0x69, 0x12, 0x2b, 0x0a, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65,
+ 0x64, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x10, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x64, 0x65, 0x64, 0x41, 0x75, 0x64, 0x69, 0x65, 0x6e,
+ 0x63, 0x65, 0x12, 0x27, 0x0a, 0x0f, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x67, 0x75, 0x69,
+ 0x64, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0e, 0x61, 0x63, 0x63,
+ 0x65, 0x73, 0x73, 0x47, 0x75, 0x69, 0x64, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x51, 0x0a, 0x06, 0x6c,
+ 0x61, 0x62, 0x65, 0x6c, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69,
+ 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4c, 0x61, 0x62, 0x65, 0x6c,
+ 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x06, 0x6c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x12, 0x60,
+ 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x0f, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x1a, 0x39, 0x0a, 0x0b, 0x4c, 0x61, 0x62, 0x65, 0x6c, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
+ 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x3e, 0x0a, 0x10, 0x41,
+ 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
+ 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x3a, 0x7d, 0xea, 0x41, 0x7a,
+ 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x4b, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69,
+ 0x7d, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x64,
+ 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x22, 0xfa, 0x05, 0x0a, 0x08, 0x41,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a,
+ 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12,
+ 0x1b, 0x0a, 0x09, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x22, 0x0a, 0x0a,
+ 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x62, 0x79, 0x74, 0x65, 0x73, 0x18, 0x05, 0x20, 0x01, 0x28, 0x05,
+ 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x69, 0x7a, 0x65, 0x42, 0x79, 0x74, 0x65, 0x73,
+ 0x12, 0x17, 0x0a, 0x04, 0x68, 0x61, 0x73, 0x68, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x04, 0x68, 0x61, 0x73, 0x68, 0x12, 0x1f, 0x0a, 0x08, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0c, 0x42, 0x03, 0xe0, 0x41, 0x04,
+ 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0xda, 0x03, 0xea, 0x41, 0xd6,
+ 0x03, 0x0a, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x3c, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x61, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x7d, 0x12, 0x47, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x7d,
+ 0x12, 0x5a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b,
+ 0x61, 0x70, 0x69, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x7d, 0x12, 0x67, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d,
+ 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x7d, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x7b, 0x73, 0x70, 0x65, 0x63, 0x7d,
+ 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x7d, 0x12, 0x60, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61,
+ 0x70, 0x69, 0x73, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x7d, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x61, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x7d, 0x42, 0xed, 0x01, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x13,
+ 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70, 0x62,
+ 0x3b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70,
+ 0x62, 0xaa, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x56, 0x31, 0xca, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75,
+ 0x64, 0x5c, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x5c, 0x56, 0x31, 0xea, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c,
+ 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescOnce sync.Once
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescData = file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDesc
+)
+
+func file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescGZIP() []byte {
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescOnce.Do(func() {
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescData)
+ })
+ return file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDescData
+}
+
+var file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
+var file_google_cloud_apigeeregistry_v1_registry_models_proto_goTypes = []interface{}{
+ (*Api)(nil), // 0: google.cloud.apigeeregistry.v1.Api
+ (*ApiVersion)(nil), // 1: google.cloud.apigeeregistry.v1.ApiVersion
+ (*ApiSpec)(nil), // 2: google.cloud.apigeeregistry.v1.ApiSpec
+ (*ApiDeployment)(nil), // 3: google.cloud.apigeeregistry.v1.ApiDeployment
+ (*Artifact)(nil), // 4: google.cloud.apigeeregistry.v1.Artifact
+ nil, // 5: google.cloud.apigeeregistry.v1.Api.LabelsEntry
+ nil, // 6: google.cloud.apigeeregistry.v1.Api.AnnotationsEntry
+ nil, // 7: google.cloud.apigeeregistry.v1.ApiVersion.LabelsEntry
+ nil, // 8: google.cloud.apigeeregistry.v1.ApiVersion.AnnotationsEntry
+ nil, // 9: google.cloud.apigeeregistry.v1.ApiSpec.LabelsEntry
+ nil, // 10: google.cloud.apigeeregistry.v1.ApiSpec.AnnotationsEntry
+ nil, // 11: google.cloud.apigeeregistry.v1.ApiDeployment.LabelsEntry
+ nil, // 12: google.cloud.apigeeregistry.v1.ApiDeployment.AnnotationsEntry
+ (*timestamppb.Timestamp)(nil), // 13: google.protobuf.Timestamp
+}
+var file_google_cloud_apigeeregistry_v1_registry_models_proto_depIdxs = []int32{
+ 13, // 0: google.cloud.apigeeregistry.v1.Api.create_time:type_name -> google.protobuf.Timestamp
+ 13, // 1: google.cloud.apigeeregistry.v1.Api.update_time:type_name -> google.protobuf.Timestamp
+ 5, // 2: google.cloud.apigeeregistry.v1.Api.labels:type_name -> google.cloud.apigeeregistry.v1.Api.LabelsEntry
+ 6, // 3: google.cloud.apigeeregistry.v1.Api.annotations:type_name -> google.cloud.apigeeregistry.v1.Api.AnnotationsEntry
+ 13, // 4: google.cloud.apigeeregistry.v1.ApiVersion.create_time:type_name -> google.protobuf.Timestamp
+ 13, // 5: google.cloud.apigeeregistry.v1.ApiVersion.update_time:type_name -> google.protobuf.Timestamp
+ 7, // 6: google.cloud.apigeeregistry.v1.ApiVersion.labels:type_name -> google.cloud.apigeeregistry.v1.ApiVersion.LabelsEntry
+ 8, // 7: google.cloud.apigeeregistry.v1.ApiVersion.annotations:type_name -> google.cloud.apigeeregistry.v1.ApiVersion.AnnotationsEntry
+ 13, // 8: google.cloud.apigeeregistry.v1.ApiSpec.create_time:type_name -> google.protobuf.Timestamp
+ 13, // 9: google.cloud.apigeeregistry.v1.ApiSpec.revision_create_time:type_name -> google.protobuf.Timestamp
+ 13, // 10: google.cloud.apigeeregistry.v1.ApiSpec.revision_update_time:type_name -> google.protobuf.Timestamp
+ 9, // 11: google.cloud.apigeeregistry.v1.ApiSpec.labels:type_name -> google.cloud.apigeeregistry.v1.ApiSpec.LabelsEntry
+ 10, // 12: google.cloud.apigeeregistry.v1.ApiSpec.annotations:type_name -> google.cloud.apigeeregistry.v1.ApiSpec.AnnotationsEntry
+ 13, // 13: google.cloud.apigeeregistry.v1.ApiDeployment.create_time:type_name -> google.protobuf.Timestamp
+ 13, // 14: google.cloud.apigeeregistry.v1.ApiDeployment.revision_create_time:type_name -> google.protobuf.Timestamp
+ 13, // 15: google.cloud.apigeeregistry.v1.ApiDeployment.revision_update_time:type_name -> google.protobuf.Timestamp
+ 11, // 16: google.cloud.apigeeregistry.v1.ApiDeployment.labels:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment.LabelsEntry
+ 12, // 17: google.cloud.apigeeregistry.v1.ApiDeployment.annotations:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment.AnnotationsEntry
+ 13, // 18: google.cloud.apigeeregistry.v1.Artifact.create_time:type_name -> google.protobuf.Timestamp
+ 13, // 19: google.cloud.apigeeregistry.v1.Artifact.update_time:type_name -> google.protobuf.Timestamp
+ 20, // [20:20] is the sub-list for method output_type
+ 20, // [20:20] is the sub-list for method input_type
+ 20, // [20:20] is the sub-list for extension type_name
+ 20, // [20:20] is the sub-list for extension extendee
+ 0, // [0:20] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_apigeeregistry_v1_registry_models_proto_init() }
+func file_google_cloud_apigeeregistry_v1_registry_models_proto_init() {
+ if File_google_cloud_apigeeregistry_v1_registry_models_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Api); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ApiVersion); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ApiSpec); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ApiDeployment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Artifact); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 13,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_apigeeregistry_v1_registry_models_proto_goTypes,
+ DependencyIndexes: file_google_cloud_apigeeregistry_v1_registry_models_proto_depIdxs,
+ MessageInfos: file_google_cloud_apigeeregistry_v1_registry_models_proto_msgTypes,
+ }.Build()
+ File_google_cloud_apigeeregistry_v1_registry_models_proto = out.File
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_rawDesc = nil
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_goTypes = nil
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_depIdxs = nil
+}
diff --git a/apigeeregistry/apiv1/apigeeregistrypb/registry_service.pb.go b/apigeeregistry/apiv1/apigeeregistrypb/registry_service.pb.go
new file mode 100644
index 0000000..c6cdf05
--- /dev/null
+++ b/apigeeregistry/apiv1/apigeeregistrypb/registry_service.pb.go
@@ -0,0 +1,5805 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/apigeeregistry/v1/registry_service.proto
+
+package apigeeregistrypb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ httpbody "google.golang.org/genproto/googleapis/api/httpbody"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Request message for ListApis.
+type ListApisRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of APIs.
+ // Format: `projects/*/locations/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of APIs to return.
+ // The service may return fewer than this value.
+ // If unspecified, at most 50 values will be returned.
+ // The maximum is 1000; values above 1000 will be coerced to 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token, received from a previous `ListApis` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListApis` must match
+ // the call that provided the page token.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // An expression that can be used to filter the list. Filters use the Common
+ // Expression Language and can refer to all message fields.
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListApisRequest) Reset() {
+ *x = ListApisRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApisRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApisRequest) ProtoMessage() {}
+
+func (x *ListApisRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApisRequest.ProtoReflect.Descriptor instead.
+func (*ListApisRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ListApisRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListApisRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApisRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListApisRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for ListApis.
+type ListApisResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The APIs from the specified publisher.
+ Apis []*Api `protobuf:"bytes,1,rep,name=apis,proto3" json:"apis,omitempty"`
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApisResponse) Reset() {
+ *x = ListApisResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApisResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApisResponse) ProtoMessage() {}
+
+func (x *ListApisResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApisResponse.ProtoReflect.Descriptor instead.
+func (*ListApisResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListApisResponse) GetApis() []*Api {
+ if x != nil {
+ return x.Apis
+ }
+ return nil
+}
+
+func (x *ListApisResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for GetApi.
+type GetApiRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the API to retrieve.
+ // Format: `projects/*/locations/*/apis/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetApiRequest) Reset() {
+ *x = GetApiRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetApiRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetApiRequest) ProtoMessage() {}
+
+func (x *GetApiRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetApiRequest.ProtoReflect.Descriptor instead.
+func (*GetApiRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *GetApiRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for CreateApi.
+type CreateApiRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of APIs.
+ // Format: `projects/*/locations/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The API to create.
+ Api *Api `protobuf:"bytes,2,opt,name=api,proto3" json:"api,omitempty"`
+ // Required. The ID to use for the API, which will become the final component of
+ // the API's resource name.
+ //
+ // This value should be 4-63 characters, and valid characters
+ // are /[a-z][0-9]-/.
+ //
+ // Following AIP-162, IDs must not have the form of a UUID.
+ ApiId string `protobuf:"bytes,3,opt,name=api_id,json=apiId,proto3" json:"api_id,omitempty"`
+}
+
+func (x *CreateApiRequest) Reset() {
+ *x = CreateApiRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateApiRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateApiRequest) ProtoMessage() {}
+
+func (x *CreateApiRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateApiRequest.ProtoReflect.Descriptor instead.
+func (*CreateApiRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *CreateApiRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateApiRequest) GetApi() *Api {
+ if x != nil {
+ return x.Api
+ }
+ return nil
+}
+
+func (x *CreateApiRequest) GetApiId() string {
+ if x != nil {
+ return x.ApiId
+ }
+ return ""
+}
+
+// Request message for UpdateApi.
+type UpdateApiRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The API to update.
+ //
+ // The `name` field is used to identify the API to update.
+ // Format: `projects/*/locations/*/apis/*`
+ Api *Api `protobuf:"bytes,1,opt,name=api,proto3" json:"api,omitempty"`
+ // The list of fields to be updated. If omitted, all fields are updated that
+ // are set in the request message (fields set to default values are ignored).
+ // If an asterisk "*" is specified, all fields are updated, including fields
+ // that are unspecified/default in the request.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // If set to true, and the API is not found, a new API will be created.
+ // In this situation, `update_mask` is ignored.
+ AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
+}
+
+func (x *UpdateApiRequest) Reset() {
+ *x = UpdateApiRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateApiRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateApiRequest) ProtoMessage() {}
+
+func (x *UpdateApiRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateApiRequest.ProtoReflect.Descriptor instead.
+func (*UpdateApiRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *UpdateApiRequest) GetApi() *Api {
+ if x != nil {
+ return x.Api
+ }
+ return nil
+}
+
+func (x *UpdateApiRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateApiRequest) GetAllowMissing() bool {
+ if x != nil {
+ return x.AllowMissing
+ }
+ return false
+}
+
+// Request message for DeleteApi.
+type DeleteApiRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the API to delete.
+ // Format: `projects/*/locations/*/apis/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // If set to true, any child resources will also be deleted.
+ // (Otherwise, the request will only work if there are no child resources.)
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+}
+
+func (x *DeleteApiRequest) Reset() {
+ *x = DeleteApiRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiRequest) ProtoMessage() {}
+
+func (x *DeleteApiRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *DeleteApiRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteApiRequest) GetForce() bool {
+ if x != nil {
+ return x.Force
+ }
+ return false
+}
+
+// Request message for ListApiVersions.
+type ListApiVersionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of versions.
+ // Format: `projects/*/locations/*/apis/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of versions to return.
+ // The service may return fewer than this value.
+ // If unspecified, at most 50 values will be returned.
+ // The maximum is 1000; values above 1000 will be coerced to 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token, received from a previous `ListApiVersions` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListApiVersions` must
+ // match the call that provided the page token.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // An expression that can be used to filter the list. Filters use the Common
+ // Expression Language and can refer to all message fields.
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListApiVersionsRequest) Reset() {
+ *x = ListApiVersionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiVersionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiVersionsRequest) ProtoMessage() {}
+
+func (x *ListApiVersionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiVersionsRequest.ProtoReflect.Descriptor instead.
+func (*ListApiVersionsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ListApiVersionsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListApiVersionsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApiVersionsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListApiVersionsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for ListApiVersions.
+type ListApiVersionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The versions from the specified publisher.
+ ApiVersions []*ApiVersion `protobuf:"bytes,1,rep,name=api_versions,json=apiVersions,proto3" json:"api_versions,omitempty"`
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApiVersionsResponse) Reset() {
+ *x = ListApiVersionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiVersionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiVersionsResponse) ProtoMessage() {}
+
+func (x *ListApiVersionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiVersionsResponse.ProtoReflect.Descriptor instead.
+func (*ListApiVersionsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ListApiVersionsResponse) GetApiVersions() []*ApiVersion {
+ if x != nil {
+ return x.ApiVersions
+ }
+ return nil
+}
+
+func (x *ListApiVersionsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for GetApiVersion.
+type GetApiVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the version to retrieve.
+ // Format: `projects/*/locations/*/apis/*/versions/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetApiVersionRequest) Reset() {
+ *x = GetApiVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetApiVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetApiVersionRequest) ProtoMessage() {}
+
+func (x *GetApiVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetApiVersionRequest.ProtoReflect.Descriptor instead.
+func (*GetApiVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *GetApiVersionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for CreateApiVersion.
+type CreateApiVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of versions.
+ // Format: `projects/*/locations/*/apis/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The version to create.
+ ApiVersion *ApiVersion `protobuf:"bytes,2,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`
+ // Required. The ID to use for the version, which will become the final component of
+ // the version's resource name.
+ //
+ // This value should be 1-63 characters, and valid characters
+ // are /[a-z][0-9]-/.
+ //
+ // Following AIP-162, IDs must not have the form of a UUID.
+ ApiVersionId string `protobuf:"bytes,3,opt,name=api_version_id,json=apiVersionId,proto3" json:"api_version_id,omitempty"`
+}
+
+func (x *CreateApiVersionRequest) Reset() {
+ *x = CreateApiVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateApiVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateApiVersionRequest) ProtoMessage() {}
+
+func (x *CreateApiVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateApiVersionRequest.ProtoReflect.Descriptor instead.
+func (*CreateApiVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *CreateApiVersionRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateApiVersionRequest) GetApiVersion() *ApiVersion {
+ if x != nil {
+ return x.ApiVersion
+ }
+ return nil
+}
+
+func (x *CreateApiVersionRequest) GetApiVersionId() string {
+ if x != nil {
+ return x.ApiVersionId
+ }
+ return ""
+}
+
+// Request message for UpdateApiVersion.
+type UpdateApiVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The version to update.
+ //
+ // The `name` field is used to identify the version to update.
+ // Format: `projects/*/locations/*/apis/*/versions/*`
+ ApiVersion *ApiVersion `protobuf:"bytes,1,opt,name=api_version,json=apiVersion,proto3" json:"api_version,omitempty"`
+ // The list of fields to be updated. If omitted, all fields are updated that
+ // are set in the request message (fields set to default values are ignored).
+ // If an asterisk "*" is specified, all fields are updated, including fields
+ // that are unspecified/default in the request.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // If set to true, and the version is not found, a new version will be
+ // created. In this situation, `update_mask` is ignored.
+ AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
+}
+
+func (x *UpdateApiVersionRequest) Reset() {
+ *x = UpdateApiVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateApiVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateApiVersionRequest) ProtoMessage() {}
+
+func (x *UpdateApiVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateApiVersionRequest.ProtoReflect.Descriptor instead.
+func (*UpdateApiVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *UpdateApiVersionRequest) GetApiVersion() *ApiVersion {
+ if x != nil {
+ return x.ApiVersion
+ }
+ return nil
+}
+
+func (x *UpdateApiVersionRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateApiVersionRequest) GetAllowMissing() bool {
+ if x != nil {
+ return x.AllowMissing
+ }
+ return false
+}
+
+// Request message for DeleteApiVersion.
+type DeleteApiVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the version to delete.
+ // Format: `projects/*/locations/*/apis/*/versions/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // If set to true, any child resources will also be deleted.
+ // (Otherwise, the request will only work if there are no child resources.)
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+}
+
+func (x *DeleteApiVersionRequest) Reset() {
+ *x = DeleteApiVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiVersionRequest) ProtoMessage() {}
+
+func (x *DeleteApiVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiVersionRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *DeleteApiVersionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteApiVersionRequest) GetForce() bool {
+ if x != nil {
+ return x.Force
+ }
+ return false
+}
+
+// Request message for ListApiSpecs.
+type ListApiSpecsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of specs.
+ // Format: `projects/*/locations/*/apis/*/versions/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of specs to return.
+ // The service may return fewer than this value.
+ // If unspecified, at most 50 values will be returned.
+ // The maximum is 1000; values above 1000 will be coerced to 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token, received from a previous `ListApiSpecs` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListApiSpecs` must match
+ // the call that provided the page token.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // An expression that can be used to filter the list. Filters use the Common
+ // Expression Language and can refer to all message fields except contents.
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListApiSpecsRequest) Reset() {
+ *x = ListApiSpecsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiSpecsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiSpecsRequest) ProtoMessage() {}
+
+func (x *ListApiSpecsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiSpecsRequest.ProtoReflect.Descriptor instead.
+func (*ListApiSpecsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *ListApiSpecsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListApiSpecsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApiSpecsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListApiSpecsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for ListApiSpecs.
+type ListApiSpecsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The specs from the specified publisher.
+ ApiSpecs []*ApiSpec `protobuf:"bytes,1,rep,name=api_specs,json=apiSpecs,proto3" json:"api_specs,omitempty"`
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApiSpecsResponse) Reset() {
+ *x = ListApiSpecsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiSpecsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiSpecsResponse) ProtoMessage() {}
+
+func (x *ListApiSpecsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiSpecsResponse.ProtoReflect.Descriptor instead.
+func (*ListApiSpecsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *ListApiSpecsResponse) GetApiSpecs() []*ApiSpec {
+ if x != nil {
+ return x.ApiSpecs
+ }
+ return nil
+}
+
+func (x *ListApiSpecsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for GetApiSpec.
+type GetApiSpecRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec to retrieve.
+ // Format: `projects/*/locations/*/apis/*/versions/*/specs/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetApiSpecRequest) Reset() {
+ *x = GetApiSpecRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetApiSpecRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetApiSpecRequest) ProtoMessage() {}
+
+func (x *GetApiSpecRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetApiSpecRequest.ProtoReflect.Descriptor instead.
+func (*GetApiSpecRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *GetApiSpecRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for GetApiSpecContents.
+type GetApiSpecContentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec whose contents should be retrieved.
+ // Format: `projects/*/locations/*/apis/*/versions/*/specs/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetApiSpecContentsRequest) Reset() {
+ *x = GetApiSpecContentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetApiSpecContentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetApiSpecContentsRequest) ProtoMessage() {}
+
+func (x *GetApiSpecContentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[15]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetApiSpecContentsRequest.ProtoReflect.Descriptor instead.
+func (*GetApiSpecContentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *GetApiSpecContentsRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for CreateApiSpec.
+type CreateApiSpecRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of specs.
+ // Format: `projects/*/locations/*/apis/*/versions/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The spec to create.
+ ApiSpec *ApiSpec `protobuf:"bytes,2,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"`
+ // Required. The ID to use for the spec, which will become the final component of
+ // the spec's resource name.
+ //
+ // This value should be 4-63 characters, and valid characters
+ // are /[a-z][0-9]-/.
+ //
+ // Following AIP-162, IDs must not have the form of a UUID.
+ ApiSpecId string `protobuf:"bytes,3,opt,name=api_spec_id,json=apiSpecId,proto3" json:"api_spec_id,omitempty"`
+}
+
+func (x *CreateApiSpecRequest) Reset() {
+ *x = CreateApiSpecRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateApiSpecRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateApiSpecRequest) ProtoMessage() {}
+
+func (x *CreateApiSpecRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[16]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateApiSpecRequest.ProtoReflect.Descriptor instead.
+func (*CreateApiSpecRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *CreateApiSpecRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateApiSpecRequest) GetApiSpec() *ApiSpec {
+ if x != nil {
+ return x.ApiSpec
+ }
+ return nil
+}
+
+func (x *CreateApiSpecRequest) GetApiSpecId() string {
+ if x != nil {
+ return x.ApiSpecId
+ }
+ return ""
+}
+
+// Request message for UpdateApiSpec.
+type UpdateApiSpecRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The spec to update.
+ //
+ // The `name` field is used to identify the spec to update.
+ // Format: `projects/*/locations/*/apis/*/versions/*/specs/*`
+ ApiSpec *ApiSpec `protobuf:"bytes,1,opt,name=api_spec,json=apiSpec,proto3" json:"api_spec,omitempty"`
+ // The list of fields to be updated. If omitted, all fields are updated that
+ // are set in the request message (fields set to default values are ignored).
+ // If an asterisk "*" is specified, all fields are updated, including fields
+ // that are unspecified/default in the request.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // If set to true, and the spec is not found, a new spec will be created.
+ // In this situation, `update_mask` is ignored.
+ AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
+}
+
+func (x *UpdateApiSpecRequest) Reset() {
+ *x = UpdateApiSpecRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateApiSpecRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateApiSpecRequest) ProtoMessage() {}
+
+func (x *UpdateApiSpecRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[17]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateApiSpecRequest.ProtoReflect.Descriptor instead.
+func (*UpdateApiSpecRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *UpdateApiSpecRequest) GetApiSpec() *ApiSpec {
+ if x != nil {
+ return x.ApiSpec
+ }
+ return nil
+}
+
+func (x *UpdateApiSpecRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateApiSpecRequest) GetAllowMissing() bool {
+ if x != nil {
+ return x.AllowMissing
+ }
+ return false
+}
+
+// Request message for DeleteApiSpec.
+type DeleteApiSpecRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec to delete.
+ // Format: `projects/*/locations/*/apis/*/versions/*/specs/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // If set to true, any child resources will also be deleted.
+ // (Otherwise, the request will only work if there are no child resources.)
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+}
+
+func (x *DeleteApiSpecRequest) Reset() {
+ *x = DeleteApiSpecRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiSpecRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiSpecRequest) ProtoMessage() {}
+
+func (x *DeleteApiSpecRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[18]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiSpecRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiSpecRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{18}
+}
+
+func (x *DeleteApiSpecRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteApiSpecRequest) GetForce() bool {
+ if x != nil {
+ return x.Force
+ }
+ return false
+}
+
+// Request message for TagApiSpecRevision.
+type TagApiSpecRevisionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec to be tagged, including the revision ID.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The tag to apply.
+ // The tag should be at most 40 characters, and match `[a-z][a-z0-9-]{3,39}`.
+ Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
+}
+
+func (x *TagApiSpecRevisionRequest) Reset() {
+ *x = TagApiSpecRevisionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TagApiSpecRevisionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TagApiSpecRevisionRequest) ProtoMessage() {}
+
+func (x *TagApiSpecRevisionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[19]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TagApiSpecRevisionRequest.ProtoReflect.Descriptor instead.
+func (*TagApiSpecRevisionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *TagApiSpecRevisionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *TagApiSpecRevisionRequest) GetTag() string {
+ if x != nil {
+ return x.Tag
+ }
+ return ""
+}
+
+// Request message for ListApiSpecRevisions.
+type ListApiSpecRevisionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec to list revisions for.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The maximum number of revisions to return per page.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // The page token, received from a previous ListApiSpecRevisions call.
+ // Provide this to retrieve the subsequent page.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListApiSpecRevisionsRequest) Reset() {
+ *x = ListApiSpecRevisionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiSpecRevisionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiSpecRevisionsRequest) ProtoMessage() {}
+
+func (x *ListApiSpecRevisionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[20]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiSpecRevisionsRequest.ProtoReflect.Descriptor instead.
+func (*ListApiSpecRevisionsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *ListApiSpecRevisionsRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ListApiSpecRevisionsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApiSpecRevisionsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// Response message for ListApiSpecRevisionsResponse.
+type ListApiSpecRevisionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The revisions of the spec.
+ ApiSpecs []*ApiSpec `protobuf:"bytes,1,rep,name=api_specs,json=apiSpecs,proto3" json:"api_specs,omitempty"`
+ // A token that can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApiSpecRevisionsResponse) Reset() {
+ *x = ListApiSpecRevisionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiSpecRevisionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiSpecRevisionsResponse) ProtoMessage() {}
+
+func (x *ListApiSpecRevisionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[21]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiSpecRevisionsResponse.ProtoReflect.Descriptor instead.
+func (*ListApiSpecRevisionsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *ListApiSpecRevisionsResponse) GetApiSpecs() []*ApiSpec {
+ if x != nil {
+ return x.ApiSpecs
+ }
+ return nil
+}
+
+func (x *ListApiSpecRevisionsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for RollbackApiSpec.
+type RollbackApiSpecRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The spec being rolled back.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The revision ID to roll back to.
+ // It must be a revision of the same spec.
+ //
+ // Example: `c7cfa2a8`
+ RevisionId string `protobuf:"bytes,2,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
+}
+
+func (x *RollbackApiSpecRequest) Reset() {
+ *x = RollbackApiSpecRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RollbackApiSpecRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RollbackApiSpecRequest) ProtoMessage() {}
+
+func (x *RollbackApiSpecRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[22]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use RollbackApiSpecRequest.ProtoReflect.Descriptor instead.
+func (*RollbackApiSpecRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *RollbackApiSpecRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *RollbackApiSpecRequest) GetRevisionId() string {
+ if x != nil {
+ return x.RevisionId
+ }
+ return ""
+}
+
+// Request message for DeleteApiSpecRevision.
+type DeleteApiSpecRevisionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the spec revision to be deleted,
+ // with a revision ID explicitly included.
+ //
+ // Example:
+ // `projects/sample/locations/global/apis/petstore/versions/1.0.0/specs/openapi.yaml@c7cfa2a8`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteApiSpecRevisionRequest) Reset() {
+ *x = DeleteApiSpecRevisionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiSpecRevisionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiSpecRevisionRequest) ProtoMessage() {}
+
+func (x *DeleteApiSpecRevisionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[23]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiSpecRevisionRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiSpecRevisionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{23}
+}
+
+func (x *DeleteApiSpecRevisionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for ListApiDeployments.
+type ListApiDeploymentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of deployments.
+ // Format: `projects/*/locations/*/apis/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of deployments to return.
+ // The service may return fewer than this value.
+ // If unspecified, at most 50 values will be returned.
+ // The maximum is 1000; values above 1000 will be coerced to 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token, received from a previous `ListApiDeployments` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListApiDeployments` must
+ // match the call that provided the page token.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // An expression that can be used to filter the list. Filters use the Common
+ // Expression Language and can refer to all message fields.
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListApiDeploymentsRequest) Reset() {
+ *x = ListApiDeploymentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiDeploymentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiDeploymentsRequest) ProtoMessage() {}
+
+func (x *ListApiDeploymentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[24]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiDeploymentsRequest.ProtoReflect.Descriptor instead.
+func (*ListApiDeploymentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{24}
+}
+
+func (x *ListApiDeploymentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListApiDeploymentsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApiDeploymentsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListApiDeploymentsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for ListApiDeployments.
+type ListApiDeploymentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The deployments from the specified publisher.
+ ApiDeployments []*ApiDeployment `protobuf:"bytes,1,rep,name=api_deployments,json=apiDeployments,proto3" json:"api_deployments,omitempty"`
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApiDeploymentsResponse) Reset() {
+ *x = ListApiDeploymentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiDeploymentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiDeploymentsResponse) ProtoMessage() {}
+
+func (x *ListApiDeploymentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[25]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiDeploymentsResponse.ProtoReflect.Descriptor instead.
+func (*ListApiDeploymentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{25}
+}
+
+func (x *ListApiDeploymentsResponse) GetApiDeployments() []*ApiDeployment {
+ if x != nil {
+ return x.ApiDeployments
+ }
+ return nil
+}
+
+func (x *ListApiDeploymentsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for GetApiDeployment.
+type GetApiDeploymentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the deployment to retrieve.
+ // Format: `projects/*/locations/*/apis/*/deployments/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetApiDeploymentRequest) Reset() {
+ *x = GetApiDeploymentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetApiDeploymentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetApiDeploymentRequest) ProtoMessage() {}
+
+func (x *GetApiDeploymentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[26]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetApiDeploymentRequest.ProtoReflect.Descriptor instead.
+func (*GetApiDeploymentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{26}
+}
+
+func (x *GetApiDeploymentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for CreateApiDeployment.
+type CreateApiDeploymentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of deployments.
+ // Format: `projects/*/locations/*/apis/*`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The deployment to create.
+ ApiDeployment *ApiDeployment `protobuf:"bytes,2,opt,name=api_deployment,json=apiDeployment,proto3" json:"api_deployment,omitempty"`
+ // Required. The ID to use for the deployment, which will become the final component of
+ // the deployment's resource name.
+ //
+ // This value should be 4-63 characters, and valid characters
+ // are /[a-z][0-9]-/.
+ //
+ // Following AIP-162, IDs must not have the form of a UUID.
+ ApiDeploymentId string `protobuf:"bytes,3,opt,name=api_deployment_id,json=apiDeploymentId,proto3" json:"api_deployment_id,omitempty"`
+}
+
+func (x *CreateApiDeploymentRequest) Reset() {
+ *x = CreateApiDeploymentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateApiDeploymentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateApiDeploymentRequest) ProtoMessage() {}
+
+func (x *CreateApiDeploymentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[27]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateApiDeploymentRequest.ProtoReflect.Descriptor instead.
+func (*CreateApiDeploymentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{27}
+}
+
+func (x *CreateApiDeploymentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateApiDeploymentRequest) GetApiDeployment() *ApiDeployment {
+ if x != nil {
+ return x.ApiDeployment
+ }
+ return nil
+}
+
+func (x *CreateApiDeploymentRequest) GetApiDeploymentId() string {
+ if x != nil {
+ return x.ApiDeploymentId
+ }
+ return ""
+}
+
+// Request message for UpdateApiDeployment.
+type UpdateApiDeploymentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The deployment to update.
+ //
+ // The `name` field is used to identify the deployment to update.
+ // Format: `projects/*/locations/*/apis/*/deployments/*`
+ ApiDeployment *ApiDeployment `protobuf:"bytes,1,opt,name=api_deployment,json=apiDeployment,proto3" json:"api_deployment,omitempty"`
+ // The list of fields to be updated. If omitted, all fields are updated that
+ // are set in the request message (fields set to default values are ignored).
+ // If an asterisk "*" is specified, all fields are updated, including fields
+ // that are unspecified/default in the request.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // If set to true, and the deployment is not found, a new deployment will be
+ // created. In this situation, `update_mask` is ignored.
+ AllowMissing bool `protobuf:"varint,3,opt,name=allow_missing,json=allowMissing,proto3" json:"allow_missing,omitempty"`
+}
+
+func (x *UpdateApiDeploymentRequest) Reset() {
+ *x = UpdateApiDeploymentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateApiDeploymentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateApiDeploymentRequest) ProtoMessage() {}
+
+func (x *UpdateApiDeploymentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[28]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateApiDeploymentRequest.ProtoReflect.Descriptor instead.
+func (*UpdateApiDeploymentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *UpdateApiDeploymentRequest) GetApiDeployment() *ApiDeployment {
+ if x != nil {
+ return x.ApiDeployment
+ }
+ return nil
+}
+
+func (x *UpdateApiDeploymentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateApiDeploymentRequest) GetAllowMissing() bool {
+ if x != nil {
+ return x.AllowMissing
+ }
+ return false
+}
+
+// Request message for DeleteApiDeployment.
+type DeleteApiDeploymentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the deployment to delete.
+ // Format: `projects/*/locations/*/apis/*/deployments/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // If set to true, any child resources will also be deleted.
+ // (Otherwise, the request will only work if there are no child resources.)
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+}
+
+func (x *DeleteApiDeploymentRequest) Reset() {
+ *x = DeleteApiDeploymentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiDeploymentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiDeploymentRequest) ProtoMessage() {}
+
+func (x *DeleteApiDeploymentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[29]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiDeploymentRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiDeploymentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{29}
+}
+
+func (x *DeleteApiDeploymentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteApiDeploymentRequest) GetForce() bool {
+ if x != nil {
+ return x.Force
+ }
+ return false
+}
+
+// Request message for TagApiDeploymentRevision.
+type TagApiDeploymentRevisionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the deployment to be tagged, including the revision ID.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The tag to apply.
+ // The tag should be at most 40 characters, and match `[a-z][a-z0-9-]{3,39}`.
+ Tag string `protobuf:"bytes,2,opt,name=tag,proto3" json:"tag,omitempty"`
+}
+
+func (x *TagApiDeploymentRevisionRequest) Reset() {
+ *x = TagApiDeploymentRevisionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TagApiDeploymentRevisionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TagApiDeploymentRevisionRequest) ProtoMessage() {}
+
+func (x *TagApiDeploymentRevisionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[30]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TagApiDeploymentRevisionRequest.ProtoReflect.Descriptor instead.
+func (*TagApiDeploymentRevisionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{30}
+}
+
+func (x *TagApiDeploymentRevisionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *TagApiDeploymentRevisionRequest) GetTag() string {
+ if x != nil {
+ return x.Tag
+ }
+ return ""
+}
+
+// Request message for ListApiDeploymentRevisions.
+type ListApiDeploymentRevisionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the deployment to list revisions for.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The maximum number of revisions to return per page.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // The page token, received from a previous ListApiDeploymentRevisions call.
+ // Provide this to retrieve the subsequent page.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListApiDeploymentRevisionsRequest) Reset() {
+ *x = ListApiDeploymentRevisionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiDeploymentRevisionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiDeploymentRevisionsRequest) ProtoMessage() {}
+
+func (x *ListApiDeploymentRevisionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[31]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiDeploymentRevisionsRequest.ProtoReflect.Descriptor instead.
+func (*ListApiDeploymentRevisionsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{31}
+}
+
+func (x *ListApiDeploymentRevisionsRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ListApiDeploymentRevisionsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListApiDeploymentRevisionsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// Response message for ListApiDeploymentRevisionsResponse.
+type ListApiDeploymentRevisionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The revisions of the deployment.
+ ApiDeployments []*ApiDeployment `protobuf:"bytes,1,rep,name=api_deployments,json=apiDeployments,proto3" json:"api_deployments,omitempty"`
+ // A token that can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListApiDeploymentRevisionsResponse) Reset() {
+ *x = ListApiDeploymentRevisionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListApiDeploymentRevisionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListApiDeploymentRevisionsResponse) ProtoMessage() {}
+
+func (x *ListApiDeploymentRevisionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[32]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListApiDeploymentRevisionsResponse.ProtoReflect.Descriptor instead.
+func (*ListApiDeploymentRevisionsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{32}
+}
+
+func (x *ListApiDeploymentRevisionsResponse) GetApiDeployments() []*ApiDeployment {
+ if x != nil {
+ return x.ApiDeployments
+ }
+ return nil
+}
+
+func (x *ListApiDeploymentRevisionsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for RollbackApiDeployment.
+type RollbackApiDeploymentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The deployment being rolled back.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The revision ID to roll back to.
+ // It must be a revision of the same deployment.
+ //
+ // Example: `c7cfa2a8`
+ RevisionId string `protobuf:"bytes,2,opt,name=revision_id,json=revisionId,proto3" json:"revision_id,omitempty"`
+}
+
+func (x *RollbackApiDeploymentRequest) Reset() {
+ *x = RollbackApiDeploymentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RollbackApiDeploymentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RollbackApiDeploymentRequest) ProtoMessage() {}
+
+func (x *RollbackApiDeploymentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[33]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use RollbackApiDeploymentRequest.ProtoReflect.Descriptor instead.
+func (*RollbackApiDeploymentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{33}
+}
+
+func (x *RollbackApiDeploymentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *RollbackApiDeploymentRequest) GetRevisionId() string {
+ if x != nil {
+ return x.RevisionId
+ }
+ return ""
+}
+
+// Request message for DeleteApiDeploymentRevision.
+type DeleteApiDeploymentRevisionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the deployment revision to be deleted,
+ // with a revision ID explicitly included.
+ //
+ // Example:
+ // `projects/sample/locations/global/apis/petstore/deployments/prod@c7cfa2a8`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteApiDeploymentRevisionRequest) Reset() {
+ *x = DeleteApiDeploymentRevisionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteApiDeploymentRevisionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteApiDeploymentRevisionRequest) ProtoMessage() {}
+
+func (x *DeleteApiDeploymentRevisionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[34]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteApiDeploymentRevisionRequest.ProtoReflect.Descriptor instead.
+func (*DeleteApiDeploymentRevisionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{34}
+}
+
+func (x *DeleteApiDeploymentRevisionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for ListArtifacts.
+type ListArtifactsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of artifacts.
+ // Format: `{parent}`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of artifacts to return.
+ // The service may return fewer than this value.
+ // If unspecified, at most 50 values will be returned.
+ // The maximum is 1000; values above 1000 will be coerced to 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token, received from a previous `ListArtifacts` call.
+ // Provide this to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided to `ListArtifacts` must
+ // match the call that provided the page token.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // An expression that can be used to filter the list. Filters use the Common
+ // Expression Language and can refer to all message fields except contents.
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListArtifactsRequest) Reset() {
+ *x = ListArtifactsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListArtifactsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListArtifactsRequest) ProtoMessage() {}
+
+func (x *ListArtifactsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[35]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListArtifactsRequest.ProtoReflect.Descriptor instead.
+func (*ListArtifactsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{35}
+}
+
+func (x *ListArtifactsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListArtifactsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListArtifactsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListArtifactsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for ListArtifacts.
+type ListArtifactsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The artifacts from the specified publisher.
+ Artifacts []*Artifact `protobuf:"bytes,1,rep,name=artifacts,proto3" json:"artifacts,omitempty"`
+ // A token, which can be sent as `page_token` to retrieve the next page.
+ // If this field is omitted, there are no subsequent pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListArtifactsResponse) Reset() {
+ *x = ListArtifactsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListArtifactsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListArtifactsResponse) ProtoMessage() {}
+
+func (x *ListArtifactsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[36]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListArtifactsResponse.ProtoReflect.Descriptor instead.
+func (*ListArtifactsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{36}
+}
+
+func (x *ListArtifactsResponse) GetArtifacts() []*Artifact {
+ if x != nil {
+ return x.Artifacts
+ }
+ return nil
+}
+
+func (x *ListArtifactsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for GetArtifact.
+type GetArtifactRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the artifact to retrieve.
+ // Format: `{parent}/artifacts/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetArtifactRequest) Reset() {
+ *x = GetArtifactRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[37]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetArtifactRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetArtifactRequest) ProtoMessage() {}
+
+func (x *GetArtifactRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[37]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetArtifactRequest.ProtoReflect.Descriptor instead.
+func (*GetArtifactRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{37}
+}
+
+func (x *GetArtifactRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for GetArtifactContents.
+type GetArtifactContentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the artifact whose contents should be retrieved.
+ // Format: `{parent}/artifacts/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetArtifactContentsRequest) Reset() {
+ *x = GetArtifactContentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetArtifactContentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetArtifactContentsRequest) ProtoMessage() {}
+
+func (x *GetArtifactContentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[38]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetArtifactContentsRequest.ProtoReflect.Descriptor instead.
+func (*GetArtifactContentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{38}
+}
+
+func (x *GetArtifactContentsRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for CreateArtifact.
+type CreateArtifactRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The parent, which owns this collection of artifacts.
+ // Format: `{parent}`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The artifact to create.
+ Artifact *Artifact `protobuf:"bytes,2,opt,name=artifact,proto3" json:"artifact,omitempty"`
+ // Required. The ID to use for the artifact, which will become the final component of
+ // the artifact's resource name.
+ //
+ // This value should be 4-63 characters, and valid characters
+ // are /[a-z][0-9]-/.
+ //
+ // Following AIP-162, IDs must not have the form of a UUID.
+ ArtifactId string `protobuf:"bytes,3,opt,name=artifact_id,json=artifactId,proto3" json:"artifact_id,omitempty"`
+}
+
+func (x *CreateArtifactRequest) Reset() {
+ *x = CreateArtifactRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[39]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateArtifactRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateArtifactRequest) ProtoMessage() {}
+
+func (x *CreateArtifactRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[39]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateArtifactRequest.ProtoReflect.Descriptor instead.
+func (*CreateArtifactRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{39}
+}
+
+func (x *CreateArtifactRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateArtifactRequest) GetArtifact() *Artifact {
+ if x != nil {
+ return x.Artifact
+ }
+ return nil
+}
+
+func (x *CreateArtifactRequest) GetArtifactId() string {
+ if x != nil {
+ return x.ArtifactId
+ }
+ return ""
+}
+
+// Request message for ReplaceArtifact.
+type ReplaceArtifactRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The artifact to replace.
+ //
+ // The `name` field is used to identify the artifact to replace.
+ // Format: `{parent}/artifacts/*`
+ Artifact *Artifact `protobuf:"bytes,1,opt,name=artifact,proto3" json:"artifact,omitempty"`
+}
+
+func (x *ReplaceArtifactRequest) Reset() {
+ *x = ReplaceArtifactRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ReplaceArtifactRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ReplaceArtifactRequest) ProtoMessage() {}
+
+func (x *ReplaceArtifactRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[40]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ReplaceArtifactRequest.ProtoReflect.Descriptor instead.
+func (*ReplaceArtifactRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{40}
+}
+
+func (x *ReplaceArtifactRequest) GetArtifact() *Artifact {
+ if x != nil {
+ return x.Artifact
+ }
+ return nil
+}
+
+// Request message for DeleteArtifact.
+type DeleteArtifactRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the artifact to delete.
+ // Format: `{parent}/artifacts/*`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteArtifactRequest) Reset() {
+ *x = DeleteArtifactRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteArtifactRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteArtifactRequest) ProtoMessage() {}
+
+func (x *DeleteArtifactRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[41]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteArtifactRequest.ProtoReflect.Descriptor instead.
+func (*DeleteArtifactRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP(), []int{41}
+}
+
+func (x *DeleteArtifactRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+var File_google_cloud_apigeeregistry_v1_registry_service_proto protoreflect.FileDescriptor
+
+var file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDesc = []byte{
+ 0x0a, 0x35, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x76, 0x31,
+ 0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x68, 0x74, 0x74, 0x70,
+ 0x62, 0x6f, 0x64, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x34, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2f, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2f, 0x76, 0x31, 0x2f, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x5f, 0x6d,
+ 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70,
+ 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f,
+ 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa8, 0x01, 0x0a, 0x0f, 0x4c,
+ 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41,
+ 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29,
+ 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a,
+ 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66,
+ 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x73, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x37, 0x0a, 0x04, 0x61, 0x70, 0x69,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x52, 0x04, 0x61, 0x70,
+ 0x69, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f,
+ 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78,
+ 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x4e, 0x0a, 0x0d, 0x47, 0x65,
+ 0x74, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x23, 0x0a, 0x21, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x41, 0x70, 0x69, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xad, 0x01, 0x0a, 0x10, 0x43,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x3a, 0x0a, 0x03, 0x61, 0x70, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x41, 0x70, 0x69, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x61, 0x70, 0x69, 0x12, 0x1a,
+ 0x0a, 0x06, 0x61, 0x70, 0x69, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x02, 0x52, 0x05, 0x61, 0x70, 0x69, 0x49, 0x64, 0x22, 0xb0, 0x01, 0x0a, 0x10, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x3a, 0x0a, 0x03, 0x61, 0x70, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70,
+ 0x69, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x61, 0x70, 0x69, 0x12, 0x3b, 0x0a, 0x0b, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f,
+ 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0x67, 0x0a,
+ 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0xb6, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74, 0x41,
+ 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x48, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a, 0x12, 0x28, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70,
+ 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
+ 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65,
+ 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61,
+ 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
+ 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22,
+ 0x90, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d, 0x0a, 0x0c, 0x61,
+ 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x61,
+ 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65,
+ 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x22, 0x5c, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2a,
+ 0x0a, 0x28, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x22, 0xe0, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x48, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x2a, 0x12, 0x28, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x61, 0x70,
+ 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x0e, 0x61, 0x70, 0x69, 0x5f,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x49, 0x64, 0x22, 0xcd, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x50, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61,
+ 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x23,
+ 0x0a, 0x0d, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73,
+ 0x69, 0x6e, 0x67, 0x22, 0x75, 0x0a, 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x2a, 0x0a, 0x28, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0xb0, 0x01, 0x0a, 0x13, 0x4c,
+ 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65,
+ 0x63, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67,
+ 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61,
+ 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x84, 0x01,
+ 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x09, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70,
+ 0x65, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70,
+ 0x65, 0x63, 0x52, 0x08, 0x61, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x26, 0x0a, 0x0f,
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x56, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70,
+ 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a,
+ 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41,
+ 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5e, 0x0a, 0x19,
+ 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a,
+ 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41,
+ 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xcb, 0x01, 0x0a,
+ 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69,
+ 0x53, 0x70, 0x65, 0x63, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x08,
+ 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e,
+ 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x23, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65,
+ 0x63, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
+ 0x09, 0x61, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x49, 0x64, 0x22, 0xc1, 0x01, 0x0a, 0x14, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x08, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x42, 0x03,
+ 0xe0, 0x41, 0x02, 0x52, 0x07, 0x61, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x3b, 0x0a, 0x0b,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6c, 0x6c,
+ 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x22, 0x6f,
+ 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53,
+ 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72,
+ 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22,
+ 0x75, 0x0a, 0x19, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76,
+ 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x27, 0x0a, 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x15, 0x0a, 0x03, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x02, 0x52, 0x03, 0x74, 0x61, 0x67, 0x22, 0x9c, 0x01, 0x0a, 0x1b, 0x4c, 0x69, 0x73, 0x74, 0x41,
+ 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53,
+ 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67,
+ 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61,
+ 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8c, 0x01, 0x0a, 0x1c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x09, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70,
+ 0x65, 0x63, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70,
+ 0x65, 0x63, 0x52, 0x08, 0x61, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x26, 0x0a, 0x0f,
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x81, 0x01, 0x0a, 0x16, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63,
+ 0x6b, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x24, 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x72, 0x65,
+ 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x61, 0x0a, 0x1c, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x19,
+ 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x2d, 0x12, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73,
+ 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53,
+ 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x9c, 0x01, 0x0a, 0x1a, 0x4c,
+ 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x61, 0x70, 0x69,
+ 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x0e, 0x61, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74,
+ 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x62, 0x0a, 0x17, 0x47, 0x65, 0x74,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70,
+ 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xf5, 0x01,
+ 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x2d, 0x12, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a, 0x0e, 0x61, 0x70, 0x69,
+ 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x61, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2f, 0x0a, 0x11, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x61, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0xd9, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x59, 0x0a, 0x0e, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70,
+ 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x0d, 0x61, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12,
+ 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b,
+ 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x23, 0x0a, 0x0d,
+ 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x08, 0x52, 0x0c, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4d, 0x69, 0x73, 0x73, 0x69, 0x6e,
+ 0x67, 0x22, 0x7b, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x44, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x66, 0x6f, 0x72, 0x63,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0x81,
+ 0x01, 0x0a, 0x1f, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x74,
+ 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x74,
+ 0x61, 0x67, 0x22, 0xa8, 0x01, 0x0a, 0x21, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70,
+ 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xa4, 0x01,
+ 0x0a, 0x22, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x56, 0x0a, 0x0f, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41,
+ 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x0e, 0x61, 0x70,
+ 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f,
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x8d, 0x01, 0x0a, 0x1c, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63,
+ 0x6b, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x70, 0x69, 0x44, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x24,
+ 0x0a, 0x0b, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x72, 0x65, 0x76, 0x69, 0x73, 0x69,
+ 0x6f, 0x6e, 0x49, 0x64, 0x22, 0x6d, 0x0a, 0x22, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d,
+ 0x0a, 0x2b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x22, 0xb2, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x28, 0x12, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
+ 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x87, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73,
+ 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x46, 0x0a, 0x09, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52,
+ 0x09, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65,
+ 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x22, 0x58, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x60, 0x0a, 0x1a,
+ 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28,
+ 0x0a, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd0,
+ 0x01, 0x0a, 0x15, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28,
+ 0x12, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x12, 0x49, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41,
+ 0x02, 0x52, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x24, 0x0a, 0x0b, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x49,
+ 0x64, 0x22, 0x63, 0x0a, 0x16, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x41, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x08, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x61, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x22, 0x5b, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x42, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x32, 0xc0, 0x45, 0x0a, 0x08, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x12, 0xa8, 0x01, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x73, 0x12, 0x2f, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x30,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x39, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x70,
+ 0x69, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x95, 0x01, 0x0a, 0x06,
+ 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x12, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x12, 0xad, 0x01, 0x0a, 0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x22, 0x49, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f,
+ 0x22, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x3a, 0x03, 0x61, 0x70, 0x69, 0xda,
+ 0x41, 0x11, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x61, 0x70, 0x69, 0x2c, 0x61, 0x70, 0x69,
+ 0x5f, 0x69, 0x64, 0x12, 0xaf, 0x01, 0x0a, 0x09, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x22, 0x4b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33,
+ 0x32, 0x2c, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x03,
+ 0x61, 0x70, 0x69, 0xda, 0x41, 0x0f, 0x61, 0x70, 0x69, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x8e, 0x01, 0x0a, 0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x70, 0x69, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x37, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x2a, 0x28, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0xda,
+ 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc8, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x41,
+ 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x44, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x35, 0x12, 0x33, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x12, 0xb5, 0x01, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72,
+ 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x42, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x12, 0x33, 0x2f,
+ 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xe5, 0x01, 0x0a, 0x10, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x22, 0x6c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x42, 0x22, 0x33, 0x2f, 0x76, 0x31,
+ 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x3a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0xda, 0x41, 0x21,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x2c, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
+ 0x64, 0x12, 0xe7, 0x01, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x6e, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x4e, 0x32, 0x3f, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0xda, 0x41, 0x17, 0x61, 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2c,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xa7, 0x01, 0x0a, 0x10,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76,
+ 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x22, 0x42, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x35, 0x2a, 0x33, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc7, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x53,
+ 0x70, 0x65, 0x63, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73,
+ 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3d, 0x12, 0x3b, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70,
+ 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0xb4, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x31,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e,
+ 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0x3d, 0x12, 0x3b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d, 0xda,
+ 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xbd, 0x01, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x39, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22, 0x56,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x49, 0x12, 0x47, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0xda,
+ 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xdb, 0x01, 0x0a, 0x0d, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70,
+ 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e,
+ 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x6b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22,
+ 0x3b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x3a, 0x08, 0x61, 0x70,
+ 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2c, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65,
+ 0x63, 0x5f, 0x69, 0x64, 0x12, 0xdd, 0x01, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
+ 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x6d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x50, 0x32, 0x44, 0x2f,
+ 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2e, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0xda, 0x41, 0x14,
+ 0x61, 0x70, 0x69, 0x5f, 0x73, 0x70, 0x65, 0x63, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
+ 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xa9, 0x01, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41,
+ 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
+ 0x6d, 0x70, 0x74, 0x79, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x3d, 0x2a, 0x3b, 0x2f, 0x76,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0xcc, 0x01, 0x0a, 0x12, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52,
+ 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x53,
+ 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x52, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x4c, 0x22, 0x47, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x3a, 0x74, 0x61, 0x67, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x12,
+ 0xe4, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52,
+ 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x53, 0x70,
+ 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x22, 0x51, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x4b, 0x12, 0x49, 0x2f, 0x76, 0x31,
+ 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70,
+ 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76,
+ 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xc3, 0x01, 0x0a, 0x0f, 0x52, 0x6f, 0x6c, 0x6c, 0x62,
+ 0x61, 0x63, 0x6b, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f, 0x6c, 0x6c,
+ 0x62, 0x61, 0x63, 0x6b, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x4f, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x49, 0x22, 0x44, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x3a, 0x72, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x3a, 0x01, 0x2a, 0x12, 0xd9, 0x01, 0x0a,
+ 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65,
+ 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x53, 0x70, 0x65, 0x63, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x53, 0x70, 0x65, 0x63, 0x22, 0x59, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x4c, 0x2a, 0x4a, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
+ 0x6e, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xd4, 0x01, 0x0a, 0x12, 0x4c, 0x69, 0x73,
+ 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12,
+ 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x47, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36,
+ 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0xc1, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41,
+ 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x45, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x12, 0xfa, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x41, 0x70,
+ 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x78, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x48, 0x22, 0x36,
+ 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x0e, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c,
+ 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x27, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x61,
+ 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64,
+ 0x12, 0xfc, 0x01, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x70, 0x69, 0x44, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x22, 0x7a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x57, 0x32, 0x45, 0x2f, 0x76, 0x31,
+ 0x2f, 0x7b, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x0e, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65,
+ 0x6e, 0x74, 0xda, 0x41, 0x1a, 0x61, 0x70, 0x69, 0x5f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12,
+ 0xb0, 0x01, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70,
+ 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67,
+ 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41,
+ 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x45, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x38, 0x2a, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70,
+ 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0xd9, 0x01, 0x0a, 0x18, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70,
+ 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12,
+ 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x54, 0x61, 0x67, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76,
+ 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22,
+ 0x4d, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47, 0x22, 0x42, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61,
+ 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
+ 0x74, 0x61, 0x67, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x3a, 0x01, 0x2a, 0x12, 0xf1,
+ 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x41, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76,
+ 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x46, 0x12, 0x44, 0x2f, 0x76,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x6c, 0x69, 0x73, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x12, 0xd0, 0x01, 0x0a, 0x15, 0x52, 0x6f, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x41,
+ 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3c, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x6f,
+ 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44,
+ 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x4a, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0x44, 0x22, 0x3f, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x6f, 0x6c, 0x6c, 0x62, 0x61,
+ 0x63, 0x6b, 0x3a, 0x01, 0x2a, 0x12, 0xe6, 0x01, 0x0a, 0x1b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x70, 0x69, 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76,
+ 0x69, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x70, 0x69,
+ 0x44, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x76, 0x69, 0x73, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x70, 0x69, 0x44, 0x65,
+ 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x54, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x47,
+ 0x2a, 0x45, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x52,
+ 0x65, 0x76, 0x69, 0x73, 0x69, 0x6f, 0x6e, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xca,
+ 0x03, 0x0a, 0x0d, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73,
+ 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76,
+ 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69,
+ 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xcb, 0x02,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xbb, 0x02, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x5a, 0x36, 0x12, 0x34, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x5a, 0x41,
+ 0x12, 0x3f, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
+ 0x73, 0x5a, 0x49, 0x12, 0x47, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x5a, 0x44, 0x12, 0x42,
+ 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
+ 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xb7, 0x03, 0x0a, 0x0b,
+ 0x47, 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x32, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47, 0x65, 0x74,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61,
+ 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31,
+ 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x22, 0xc9, 0x02, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0xbb, 0x02, 0x12, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x5a, 0x36, 0x12, 0x34, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x41, 0x12, 0x3f, 0x2f, 0x76,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x49, 0x12,
+ 0x47, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x44, 0x12, 0x42, 0x2f, 0x76, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xef, 0x03, 0x0a, 0x13, 0x47, 0x65, 0x74, 0x41, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3a, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69,
+ 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x14, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x48, 0x74, 0x74, 0x70, 0x42, 0x6f, 0x64, 0x79, 0x22,
+ 0x85, 0x03, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xf7, 0x02, 0x12, 0x39, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x42, 0x12, 0x40, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x4d, 0x12, 0x4b, 0x2f, 0x76, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x43,
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x55, 0x12, 0x53, 0x2f, 0x76, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70,
+ 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x50,
+ 0x12, 0x4e, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x67, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
+ 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x86, 0x04, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65,
+ 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x76, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x22, 0x92, 0x03, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0xed, 0x02, 0x22, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66,
+ 0x61, 0x63, 0x74, 0x73, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5a, 0x40,
+ 0x22, 0x34, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74,
+ 0x5a, 0x4b, 0x22, 0x3f, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0x73, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5a, 0x53, 0x22,
+ 0x47, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0x5a, 0x4e, 0x22, 0x42, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x2c, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5f, 0x69, 0x64,
+ 0x12, 0xa2, 0x04, 0x0a, 0x0f, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x41, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74,
+ 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x52, 0x65, 0x70, 0x6c, 0x61, 0x63, 0x65, 0x41, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x41, 0x72,
+ 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x22, 0xac, 0x03, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9a, 0x03,
+ 0x1a, 0x36, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x2e,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0x5a, 0x49, 0x1a, 0x3d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66,
+ 0x61, 0x63, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x5a, 0x54, 0x1a,
+ 0x48, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x2e, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66,
+ 0x61, 0x63, 0x74, 0x5a, 0x5c, 0x1a, 0x50, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66,
+ 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63,
+ 0x74, 0x5a, 0x57, 0x1a, 0x4b, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x3a, 0x08, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0xda, 0x41, 0x08, 0x61, 0x72, 0x74,
+ 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0xab, 0x03, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xc9, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xbb,
+ 0x02, 0x2a, 0x2d, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x5a, 0x36, 0x2a, 0x34, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69,
+ 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x41, 0x2a, 0x3f, 0x2f, 0x76, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x49, 0x2a, 0x47, 0x2f,
+ 0x76, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x70, 0x69, 0x73, 0x2f, 0x2a, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x73, 0x70, 0x65, 0x63, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x72, 0x74, 0x69, 0x66, 0x61,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x44, 0x2a, 0x42, 0x2f, 0x76, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x70, 0x69, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x72, 0x74, 0x69, 0x66, 0x61, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x1a, 0x51, 0xca, 0x41, 0x1d, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65,
+ 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f,
+ 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c,
+ 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0xee, 0x01, 0x0a, 0x22, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x61, 0x70, 0x69, 0x67,
+ 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e, 0x76, 0x31, 0x42, 0x14, 0x52,
+ 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x4a, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x61, 0x70, 0x69, 0x67, 0x65,
+ 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x31, 0x2f,
+ 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70, 0x62,
+ 0x3b, 0x61, 0x70, 0x69, 0x67, 0x65, 0x65, 0x72, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x70,
+ 0x62, 0xaa, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79, 0x2e,
+ 0x56, 0x31, 0xca, 0x02, 0x1e, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75,
+ 0x64, 0x5c, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73, 0x74, 0x72, 0x79,
+ 0x5c, 0x56, 0x31, 0xea, 0x02, 0x21, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c,
+ 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x67, 0x65, 0x65, 0x52, 0x65, 0x67, 0x69, 0x73,
+ 0x74, 0x72, 0x79, 0x3a, 0x3a, 0x56, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescOnce sync.Once
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescData = file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDesc
+)
+
+func file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescGZIP() []byte {
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescOnce.Do(func() {
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescData)
+ })
+ return file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDescData
+}
+
+var file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes = make([]protoimpl.MessageInfo, 42)
+var file_google_cloud_apigeeregistry_v1_registry_service_proto_goTypes = []interface{}{
+ (*ListApisRequest)(nil), // 0: google.cloud.apigeeregistry.v1.ListApisRequest
+ (*ListApisResponse)(nil), // 1: google.cloud.apigeeregistry.v1.ListApisResponse
+ (*GetApiRequest)(nil), // 2: google.cloud.apigeeregistry.v1.GetApiRequest
+ (*CreateApiRequest)(nil), // 3: google.cloud.apigeeregistry.v1.CreateApiRequest
+ (*UpdateApiRequest)(nil), // 4: google.cloud.apigeeregistry.v1.UpdateApiRequest
+ (*DeleteApiRequest)(nil), // 5: google.cloud.apigeeregistry.v1.DeleteApiRequest
+ (*ListApiVersionsRequest)(nil), // 6: google.cloud.apigeeregistry.v1.ListApiVersionsRequest
+ (*ListApiVersionsResponse)(nil), // 7: google.cloud.apigeeregistry.v1.ListApiVersionsResponse
+ (*GetApiVersionRequest)(nil), // 8: google.cloud.apigeeregistry.v1.GetApiVersionRequest
+ (*CreateApiVersionRequest)(nil), // 9: google.cloud.apigeeregistry.v1.CreateApiVersionRequest
+ (*UpdateApiVersionRequest)(nil), // 10: google.cloud.apigeeregistry.v1.UpdateApiVersionRequest
+ (*DeleteApiVersionRequest)(nil), // 11: google.cloud.apigeeregistry.v1.DeleteApiVersionRequest
+ (*ListApiSpecsRequest)(nil), // 12: google.cloud.apigeeregistry.v1.ListApiSpecsRequest
+ (*ListApiSpecsResponse)(nil), // 13: google.cloud.apigeeregistry.v1.ListApiSpecsResponse
+ (*GetApiSpecRequest)(nil), // 14: google.cloud.apigeeregistry.v1.GetApiSpecRequest
+ (*GetApiSpecContentsRequest)(nil), // 15: google.cloud.apigeeregistry.v1.GetApiSpecContentsRequest
+ (*CreateApiSpecRequest)(nil), // 16: google.cloud.apigeeregistry.v1.CreateApiSpecRequest
+ (*UpdateApiSpecRequest)(nil), // 17: google.cloud.apigeeregistry.v1.UpdateApiSpecRequest
+ (*DeleteApiSpecRequest)(nil), // 18: google.cloud.apigeeregistry.v1.DeleteApiSpecRequest
+ (*TagApiSpecRevisionRequest)(nil), // 19: google.cloud.apigeeregistry.v1.TagApiSpecRevisionRequest
+ (*ListApiSpecRevisionsRequest)(nil), // 20: google.cloud.apigeeregistry.v1.ListApiSpecRevisionsRequest
+ (*ListApiSpecRevisionsResponse)(nil), // 21: google.cloud.apigeeregistry.v1.ListApiSpecRevisionsResponse
+ (*RollbackApiSpecRequest)(nil), // 22: google.cloud.apigeeregistry.v1.RollbackApiSpecRequest
+ (*DeleteApiSpecRevisionRequest)(nil), // 23: google.cloud.apigeeregistry.v1.DeleteApiSpecRevisionRequest
+ (*ListApiDeploymentsRequest)(nil), // 24: google.cloud.apigeeregistry.v1.ListApiDeploymentsRequest
+ (*ListApiDeploymentsResponse)(nil), // 25: google.cloud.apigeeregistry.v1.ListApiDeploymentsResponse
+ (*GetApiDeploymentRequest)(nil), // 26: google.cloud.apigeeregistry.v1.GetApiDeploymentRequest
+ (*CreateApiDeploymentRequest)(nil), // 27: google.cloud.apigeeregistry.v1.CreateApiDeploymentRequest
+ (*UpdateApiDeploymentRequest)(nil), // 28: google.cloud.apigeeregistry.v1.UpdateApiDeploymentRequest
+ (*DeleteApiDeploymentRequest)(nil), // 29: google.cloud.apigeeregistry.v1.DeleteApiDeploymentRequest
+ (*TagApiDeploymentRevisionRequest)(nil), // 30: google.cloud.apigeeregistry.v1.TagApiDeploymentRevisionRequest
+ (*ListApiDeploymentRevisionsRequest)(nil), // 31: google.cloud.apigeeregistry.v1.ListApiDeploymentRevisionsRequest
+ (*ListApiDeploymentRevisionsResponse)(nil), // 32: google.cloud.apigeeregistry.v1.ListApiDeploymentRevisionsResponse
+ (*RollbackApiDeploymentRequest)(nil), // 33: google.cloud.apigeeregistry.v1.RollbackApiDeploymentRequest
+ (*DeleteApiDeploymentRevisionRequest)(nil), // 34: google.cloud.apigeeregistry.v1.DeleteApiDeploymentRevisionRequest
+ (*ListArtifactsRequest)(nil), // 35: google.cloud.apigeeregistry.v1.ListArtifactsRequest
+ (*ListArtifactsResponse)(nil), // 36: google.cloud.apigeeregistry.v1.ListArtifactsResponse
+ (*GetArtifactRequest)(nil), // 37: google.cloud.apigeeregistry.v1.GetArtifactRequest
+ (*GetArtifactContentsRequest)(nil), // 38: google.cloud.apigeeregistry.v1.GetArtifactContentsRequest
+ (*CreateArtifactRequest)(nil), // 39: google.cloud.apigeeregistry.v1.CreateArtifactRequest
+ (*ReplaceArtifactRequest)(nil), // 40: google.cloud.apigeeregistry.v1.ReplaceArtifactRequest
+ (*DeleteArtifactRequest)(nil), // 41: google.cloud.apigeeregistry.v1.DeleteArtifactRequest
+ (*Api)(nil), // 42: google.cloud.apigeeregistry.v1.Api
+ (*fieldmaskpb.FieldMask)(nil), // 43: google.protobuf.FieldMask
+ (*ApiVersion)(nil), // 44: google.cloud.apigeeregistry.v1.ApiVersion
+ (*ApiSpec)(nil), // 45: google.cloud.apigeeregistry.v1.ApiSpec
+ (*ApiDeployment)(nil), // 46: google.cloud.apigeeregistry.v1.ApiDeployment
+ (*Artifact)(nil), // 47: google.cloud.apigeeregistry.v1.Artifact
+ (*emptypb.Empty)(nil), // 48: google.protobuf.Empty
+ (*httpbody.HttpBody)(nil), // 49: google.api.HttpBody
+}
+var file_google_cloud_apigeeregistry_v1_registry_service_proto_depIdxs = []int32{
+ 42, // 0: google.cloud.apigeeregistry.v1.ListApisResponse.apis:type_name -> google.cloud.apigeeregistry.v1.Api
+ 42, // 1: google.cloud.apigeeregistry.v1.CreateApiRequest.api:type_name -> google.cloud.apigeeregistry.v1.Api
+ 42, // 2: google.cloud.apigeeregistry.v1.UpdateApiRequest.api:type_name -> google.cloud.apigeeregistry.v1.Api
+ 43, // 3: google.cloud.apigeeregistry.v1.UpdateApiRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 44, // 4: google.cloud.apigeeregistry.v1.ListApiVersionsResponse.api_versions:type_name -> google.cloud.apigeeregistry.v1.ApiVersion
+ 44, // 5: google.cloud.apigeeregistry.v1.CreateApiVersionRequest.api_version:type_name -> google.cloud.apigeeregistry.v1.ApiVersion
+ 44, // 6: google.cloud.apigeeregistry.v1.UpdateApiVersionRequest.api_version:type_name -> google.cloud.apigeeregistry.v1.ApiVersion
+ 43, // 7: google.cloud.apigeeregistry.v1.UpdateApiVersionRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 45, // 8: google.cloud.apigeeregistry.v1.ListApiSpecsResponse.api_specs:type_name -> google.cloud.apigeeregistry.v1.ApiSpec
+ 45, // 9: google.cloud.apigeeregistry.v1.CreateApiSpecRequest.api_spec:type_name -> google.cloud.apigeeregistry.v1.ApiSpec
+ 45, // 10: google.cloud.apigeeregistry.v1.UpdateApiSpecRequest.api_spec:type_name -> google.cloud.apigeeregistry.v1.ApiSpec
+ 43, // 11: google.cloud.apigeeregistry.v1.UpdateApiSpecRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 45, // 12: google.cloud.apigeeregistry.v1.ListApiSpecRevisionsResponse.api_specs:type_name -> google.cloud.apigeeregistry.v1.ApiSpec
+ 46, // 13: google.cloud.apigeeregistry.v1.ListApiDeploymentsResponse.api_deployments:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 46, // 14: google.cloud.apigeeregistry.v1.CreateApiDeploymentRequest.api_deployment:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 46, // 15: google.cloud.apigeeregistry.v1.UpdateApiDeploymentRequest.api_deployment:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 43, // 16: google.cloud.apigeeregistry.v1.UpdateApiDeploymentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 46, // 17: google.cloud.apigeeregistry.v1.ListApiDeploymentRevisionsResponse.api_deployments:type_name -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 47, // 18: google.cloud.apigeeregistry.v1.ListArtifactsResponse.artifacts:type_name -> google.cloud.apigeeregistry.v1.Artifact
+ 47, // 19: google.cloud.apigeeregistry.v1.CreateArtifactRequest.artifact:type_name -> google.cloud.apigeeregistry.v1.Artifact
+ 47, // 20: google.cloud.apigeeregistry.v1.ReplaceArtifactRequest.artifact:type_name -> google.cloud.apigeeregistry.v1.Artifact
+ 0, // 21: google.cloud.apigeeregistry.v1.Registry.ListApis:input_type -> google.cloud.apigeeregistry.v1.ListApisRequest
+ 2, // 22: google.cloud.apigeeregistry.v1.Registry.GetApi:input_type -> google.cloud.apigeeregistry.v1.GetApiRequest
+ 3, // 23: google.cloud.apigeeregistry.v1.Registry.CreateApi:input_type -> google.cloud.apigeeregistry.v1.CreateApiRequest
+ 4, // 24: google.cloud.apigeeregistry.v1.Registry.UpdateApi:input_type -> google.cloud.apigeeregistry.v1.UpdateApiRequest
+ 5, // 25: google.cloud.apigeeregistry.v1.Registry.DeleteApi:input_type -> google.cloud.apigeeregistry.v1.DeleteApiRequest
+ 6, // 26: google.cloud.apigeeregistry.v1.Registry.ListApiVersions:input_type -> google.cloud.apigeeregistry.v1.ListApiVersionsRequest
+ 8, // 27: google.cloud.apigeeregistry.v1.Registry.GetApiVersion:input_type -> google.cloud.apigeeregistry.v1.GetApiVersionRequest
+ 9, // 28: google.cloud.apigeeregistry.v1.Registry.CreateApiVersion:input_type -> google.cloud.apigeeregistry.v1.CreateApiVersionRequest
+ 10, // 29: google.cloud.apigeeregistry.v1.Registry.UpdateApiVersion:input_type -> google.cloud.apigeeregistry.v1.UpdateApiVersionRequest
+ 11, // 30: google.cloud.apigeeregistry.v1.Registry.DeleteApiVersion:input_type -> google.cloud.apigeeregistry.v1.DeleteApiVersionRequest
+ 12, // 31: google.cloud.apigeeregistry.v1.Registry.ListApiSpecs:input_type -> google.cloud.apigeeregistry.v1.ListApiSpecsRequest
+ 14, // 32: google.cloud.apigeeregistry.v1.Registry.GetApiSpec:input_type -> google.cloud.apigeeregistry.v1.GetApiSpecRequest
+ 15, // 33: google.cloud.apigeeregistry.v1.Registry.GetApiSpecContents:input_type -> google.cloud.apigeeregistry.v1.GetApiSpecContentsRequest
+ 16, // 34: google.cloud.apigeeregistry.v1.Registry.CreateApiSpec:input_type -> google.cloud.apigeeregistry.v1.CreateApiSpecRequest
+ 17, // 35: google.cloud.apigeeregistry.v1.Registry.UpdateApiSpec:input_type -> google.cloud.apigeeregistry.v1.UpdateApiSpecRequest
+ 18, // 36: google.cloud.apigeeregistry.v1.Registry.DeleteApiSpec:input_type -> google.cloud.apigeeregistry.v1.DeleteApiSpecRequest
+ 19, // 37: google.cloud.apigeeregistry.v1.Registry.TagApiSpecRevision:input_type -> google.cloud.apigeeregistry.v1.TagApiSpecRevisionRequest
+ 20, // 38: google.cloud.apigeeregistry.v1.Registry.ListApiSpecRevisions:input_type -> google.cloud.apigeeregistry.v1.ListApiSpecRevisionsRequest
+ 22, // 39: google.cloud.apigeeregistry.v1.Registry.RollbackApiSpec:input_type -> google.cloud.apigeeregistry.v1.RollbackApiSpecRequest
+ 23, // 40: google.cloud.apigeeregistry.v1.Registry.DeleteApiSpecRevision:input_type -> google.cloud.apigeeregistry.v1.DeleteApiSpecRevisionRequest
+ 24, // 41: google.cloud.apigeeregistry.v1.Registry.ListApiDeployments:input_type -> google.cloud.apigeeregistry.v1.ListApiDeploymentsRequest
+ 26, // 42: google.cloud.apigeeregistry.v1.Registry.GetApiDeployment:input_type -> google.cloud.apigeeregistry.v1.GetApiDeploymentRequest
+ 27, // 43: google.cloud.apigeeregistry.v1.Registry.CreateApiDeployment:input_type -> google.cloud.apigeeregistry.v1.CreateApiDeploymentRequest
+ 28, // 44: google.cloud.apigeeregistry.v1.Registry.UpdateApiDeployment:input_type -> google.cloud.apigeeregistry.v1.UpdateApiDeploymentRequest
+ 29, // 45: google.cloud.apigeeregistry.v1.Registry.DeleteApiDeployment:input_type -> google.cloud.apigeeregistry.v1.DeleteApiDeploymentRequest
+ 30, // 46: google.cloud.apigeeregistry.v1.Registry.TagApiDeploymentRevision:input_type -> google.cloud.apigeeregistry.v1.TagApiDeploymentRevisionRequest
+ 31, // 47: google.cloud.apigeeregistry.v1.Registry.ListApiDeploymentRevisions:input_type -> google.cloud.apigeeregistry.v1.ListApiDeploymentRevisionsRequest
+ 33, // 48: google.cloud.apigeeregistry.v1.Registry.RollbackApiDeployment:input_type -> google.cloud.apigeeregistry.v1.RollbackApiDeploymentRequest
+ 34, // 49: google.cloud.apigeeregistry.v1.Registry.DeleteApiDeploymentRevision:input_type -> google.cloud.apigeeregistry.v1.DeleteApiDeploymentRevisionRequest
+ 35, // 50: google.cloud.apigeeregistry.v1.Registry.ListArtifacts:input_type -> google.cloud.apigeeregistry.v1.ListArtifactsRequest
+ 37, // 51: google.cloud.apigeeregistry.v1.Registry.GetArtifact:input_type -> google.cloud.apigeeregistry.v1.GetArtifactRequest
+ 38, // 52: google.cloud.apigeeregistry.v1.Registry.GetArtifactContents:input_type -> google.cloud.apigeeregistry.v1.GetArtifactContentsRequest
+ 39, // 53: google.cloud.apigeeregistry.v1.Registry.CreateArtifact:input_type -> google.cloud.apigeeregistry.v1.CreateArtifactRequest
+ 40, // 54: google.cloud.apigeeregistry.v1.Registry.ReplaceArtifact:input_type -> google.cloud.apigeeregistry.v1.ReplaceArtifactRequest
+ 41, // 55: google.cloud.apigeeregistry.v1.Registry.DeleteArtifact:input_type -> google.cloud.apigeeregistry.v1.DeleteArtifactRequest
+ 1, // 56: google.cloud.apigeeregistry.v1.Registry.ListApis:output_type -> google.cloud.apigeeregistry.v1.ListApisResponse
+ 42, // 57: google.cloud.apigeeregistry.v1.Registry.GetApi:output_type -> google.cloud.apigeeregistry.v1.Api
+ 42, // 58: google.cloud.apigeeregistry.v1.Registry.CreateApi:output_type -> google.cloud.apigeeregistry.v1.Api
+ 42, // 59: google.cloud.apigeeregistry.v1.Registry.UpdateApi:output_type -> google.cloud.apigeeregistry.v1.Api
+ 48, // 60: google.cloud.apigeeregistry.v1.Registry.DeleteApi:output_type -> google.protobuf.Empty
+ 7, // 61: google.cloud.apigeeregistry.v1.Registry.ListApiVersions:output_type -> google.cloud.apigeeregistry.v1.ListApiVersionsResponse
+ 44, // 62: google.cloud.apigeeregistry.v1.Registry.GetApiVersion:output_type -> google.cloud.apigeeregistry.v1.ApiVersion
+ 44, // 63: google.cloud.apigeeregistry.v1.Registry.CreateApiVersion:output_type -> google.cloud.apigeeregistry.v1.ApiVersion
+ 44, // 64: google.cloud.apigeeregistry.v1.Registry.UpdateApiVersion:output_type -> google.cloud.apigeeregistry.v1.ApiVersion
+ 48, // 65: google.cloud.apigeeregistry.v1.Registry.DeleteApiVersion:output_type -> google.protobuf.Empty
+ 13, // 66: google.cloud.apigeeregistry.v1.Registry.ListApiSpecs:output_type -> google.cloud.apigeeregistry.v1.ListApiSpecsResponse
+ 45, // 67: google.cloud.apigeeregistry.v1.Registry.GetApiSpec:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 49, // 68: google.cloud.apigeeregistry.v1.Registry.GetApiSpecContents:output_type -> google.api.HttpBody
+ 45, // 69: google.cloud.apigeeregistry.v1.Registry.CreateApiSpec:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 45, // 70: google.cloud.apigeeregistry.v1.Registry.UpdateApiSpec:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 48, // 71: google.cloud.apigeeregistry.v1.Registry.DeleteApiSpec:output_type -> google.protobuf.Empty
+ 45, // 72: google.cloud.apigeeregistry.v1.Registry.TagApiSpecRevision:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 21, // 73: google.cloud.apigeeregistry.v1.Registry.ListApiSpecRevisions:output_type -> google.cloud.apigeeregistry.v1.ListApiSpecRevisionsResponse
+ 45, // 74: google.cloud.apigeeregistry.v1.Registry.RollbackApiSpec:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 45, // 75: google.cloud.apigeeregistry.v1.Registry.DeleteApiSpecRevision:output_type -> google.cloud.apigeeregistry.v1.ApiSpec
+ 25, // 76: google.cloud.apigeeregistry.v1.Registry.ListApiDeployments:output_type -> google.cloud.apigeeregistry.v1.ListApiDeploymentsResponse
+ 46, // 77: google.cloud.apigeeregistry.v1.Registry.GetApiDeployment:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 46, // 78: google.cloud.apigeeregistry.v1.Registry.CreateApiDeployment:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 46, // 79: google.cloud.apigeeregistry.v1.Registry.UpdateApiDeployment:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 48, // 80: google.cloud.apigeeregistry.v1.Registry.DeleteApiDeployment:output_type -> google.protobuf.Empty
+ 46, // 81: google.cloud.apigeeregistry.v1.Registry.TagApiDeploymentRevision:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 32, // 82: google.cloud.apigeeregistry.v1.Registry.ListApiDeploymentRevisions:output_type -> google.cloud.apigeeregistry.v1.ListApiDeploymentRevisionsResponse
+ 46, // 83: google.cloud.apigeeregistry.v1.Registry.RollbackApiDeployment:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 46, // 84: google.cloud.apigeeregistry.v1.Registry.DeleteApiDeploymentRevision:output_type -> google.cloud.apigeeregistry.v1.ApiDeployment
+ 36, // 85: google.cloud.apigeeregistry.v1.Registry.ListArtifacts:output_type -> google.cloud.apigeeregistry.v1.ListArtifactsResponse
+ 47, // 86: google.cloud.apigeeregistry.v1.Registry.GetArtifact:output_type -> google.cloud.apigeeregistry.v1.Artifact
+ 49, // 87: google.cloud.apigeeregistry.v1.Registry.GetArtifactContents:output_type -> google.api.HttpBody
+ 47, // 88: google.cloud.apigeeregistry.v1.Registry.CreateArtifact:output_type -> google.cloud.apigeeregistry.v1.Artifact
+ 47, // 89: google.cloud.apigeeregistry.v1.Registry.ReplaceArtifact:output_type -> google.cloud.apigeeregistry.v1.Artifact
+ 48, // 90: google.cloud.apigeeregistry.v1.Registry.DeleteArtifact:output_type -> google.protobuf.Empty
+ 56, // [56:91] is the sub-list for method output_type
+ 21, // [21:56] is the sub-list for method input_type
+ 21, // [21:21] is the sub-list for extension type_name
+ 21, // [21:21] is the sub-list for extension extendee
+ 0, // [0:21] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_apigeeregistry_v1_registry_service_proto_init() }
+func file_google_cloud_apigeeregistry_v1_registry_service_proto_init() {
+ if File_google_cloud_apigeeregistry_v1_registry_service_proto != nil {
+ return
+ }
+ file_google_cloud_apigeeregistry_v1_registry_models_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApisRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApisResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetApiRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateApiRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateApiRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiVersionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiVersionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetApiVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateApiVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateApiVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiSpecsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiSpecsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetApiSpecRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetApiSpecContentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateApiSpecRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateApiSpecRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiSpecRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TagApiSpecRevisionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiSpecRevisionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiSpecRevisionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RollbackApiSpecRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiSpecRevisionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiDeploymentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiDeploymentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetApiDeploymentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateApiDeploymentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateApiDeploymentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiDeploymentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TagApiDeploymentRevisionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiDeploymentRevisionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListApiDeploymentRevisionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RollbackApiDeploymentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteApiDeploymentRevisionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListArtifactsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListArtifactsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetArtifactRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetArtifactContentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateArtifactRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ReplaceArtifactRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteArtifactRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 42,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_apigeeregistry_v1_registry_service_proto_goTypes,
+ DependencyIndexes: file_google_cloud_apigeeregistry_v1_registry_service_proto_depIdxs,
+ MessageInfos: file_google_cloud_apigeeregistry_v1_registry_service_proto_msgTypes,
+ }.Build()
+ File_google_cloud_apigeeregistry_v1_registry_service_proto = out.File
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_rawDesc = nil
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_goTypes = nil
+ file_google_cloud_apigeeregistry_v1_registry_service_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// RegistryClient is the client API for Registry service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type RegistryClient interface {
+ // Returns matching APIs.
+ ListApis(ctx context.Context, in *ListApisRequest, opts ...grpc.CallOption) (*ListApisResponse, error)
+ // Returns a specified API.
+ GetApi(ctx context.Context, in *GetApiRequest, opts ...grpc.CallOption) (*Api, error)
+ // Creates a specified API.
+ CreateApi(ctx context.Context, in *CreateApiRequest, opts ...grpc.CallOption) (*Api, error)
+ // Used to modify a specified API.
+ UpdateApi(ctx context.Context, in *UpdateApiRequest, opts ...grpc.CallOption) (*Api, error)
+ // Removes a specified API and all of the resources that it
+ // owns.
+ DeleteApi(ctx context.Context, in *DeleteApiRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Returns matching versions.
+ ListApiVersions(ctx context.Context, in *ListApiVersionsRequest, opts ...grpc.CallOption) (*ListApiVersionsResponse, error)
+ // Returns a specified version.
+ GetApiVersion(ctx context.Context, in *GetApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error)
+ // Creates a specified version.
+ CreateApiVersion(ctx context.Context, in *CreateApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error)
+ // Used to modify a specified version.
+ UpdateApiVersion(ctx context.Context, in *UpdateApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error)
+ // Removes a specified version and all of the resources that
+ // it owns.
+ DeleteApiVersion(ctx context.Context, in *DeleteApiVersionRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Returns matching specs.
+ ListApiSpecs(ctx context.Context, in *ListApiSpecsRequest, opts ...grpc.CallOption) (*ListApiSpecsResponse, error)
+ // Returns a specified spec.
+ GetApiSpec(ctx context.Context, in *GetApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Returns the contents of a specified spec.
+ // If specs are stored with GZip compression, the default behavior
+ // is to return the spec uncompressed (the mime_type response field
+ // indicates the exact format returned).
+ GetApiSpecContents(ctx context.Context, in *GetApiSpecContentsRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error)
+ // Creates a specified spec.
+ CreateApiSpec(ctx context.Context, in *CreateApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Used to modify a specified spec.
+ UpdateApiSpec(ctx context.Context, in *UpdateApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Removes a specified spec, all revisions, and all child
+ // resources (e.g., artifacts).
+ DeleteApiSpec(ctx context.Context, in *DeleteApiSpecRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Adds a tag to a specified revision of a spec.
+ TagApiSpecRevision(ctx context.Context, in *TagApiSpecRevisionRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Lists all revisions of a spec.
+ // Revisions are returned in descending order of revision creation time.
+ ListApiSpecRevisions(ctx context.Context, in *ListApiSpecRevisionsRequest, opts ...grpc.CallOption) (*ListApiSpecRevisionsResponse, error)
+ // Sets the current revision to a specified prior revision.
+ // Note that this creates a new revision with a new revision ID.
+ RollbackApiSpec(ctx context.Context, in *RollbackApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Deletes a revision of a spec.
+ DeleteApiSpecRevision(ctx context.Context, in *DeleteApiSpecRevisionRequest, opts ...grpc.CallOption) (*ApiSpec, error)
+ // Returns matching deployments.
+ ListApiDeployments(ctx context.Context, in *ListApiDeploymentsRequest, opts ...grpc.CallOption) (*ListApiDeploymentsResponse, error)
+ // Returns a specified deployment.
+ GetApiDeployment(ctx context.Context, in *GetApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Creates a specified deployment.
+ CreateApiDeployment(ctx context.Context, in *CreateApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Used to modify a specified deployment.
+ UpdateApiDeployment(ctx context.Context, in *UpdateApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Removes a specified deployment, all revisions, and all
+ // child resources (e.g., artifacts).
+ DeleteApiDeployment(ctx context.Context, in *DeleteApiDeploymentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Adds a tag to a specified revision of a
+ // deployment.
+ TagApiDeploymentRevision(ctx context.Context, in *TagApiDeploymentRevisionRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Lists all revisions of a deployment.
+ // Revisions are returned in descending order of revision creation time.
+ ListApiDeploymentRevisions(ctx context.Context, in *ListApiDeploymentRevisionsRequest, opts ...grpc.CallOption) (*ListApiDeploymentRevisionsResponse, error)
+ // Sets the current revision to a specified prior
+ // revision. Note that this creates a new revision with a new revision ID.
+ RollbackApiDeployment(ctx context.Context, in *RollbackApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Deletes a revision of a deployment.
+ DeleteApiDeploymentRevision(ctx context.Context, in *DeleteApiDeploymentRevisionRequest, opts ...grpc.CallOption) (*ApiDeployment, error)
+ // Returns matching artifacts.
+ ListArtifacts(ctx context.Context, in *ListArtifactsRequest, opts ...grpc.CallOption) (*ListArtifactsResponse, error)
+ // Returns a specified artifact.
+ GetArtifact(ctx context.Context, in *GetArtifactRequest, opts ...grpc.CallOption) (*Artifact, error)
+ // Returns the contents of a specified artifact.
+ // If artifacts are stored with GZip compression, the default behavior
+ // is to return the artifact uncompressed (the mime_type response field
+ // indicates the exact format returned).
+ GetArtifactContents(ctx context.Context, in *GetArtifactContentsRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error)
+ // Creates a specified artifact.
+ CreateArtifact(ctx context.Context, in *CreateArtifactRequest, opts ...grpc.CallOption) (*Artifact, error)
+ // Used to replace a specified artifact.
+ ReplaceArtifact(ctx context.Context, in *ReplaceArtifactRequest, opts ...grpc.CallOption) (*Artifact, error)
+ // Removes a specified artifact.
+ DeleteArtifact(ctx context.Context, in *DeleteArtifactRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+}
+
+type registryClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewRegistryClient(cc grpc.ClientConnInterface) RegistryClient {
+ return ®istryClient{cc}
+}
+
+func (c *registryClient) ListApis(ctx context.Context, in *ListApisRequest, opts ...grpc.CallOption) (*ListApisResponse, error) {
+ out := new(ListApisResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApis", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetApi(ctx context.Context, in *GetApiRequest, opts ...grpc.CallOption) (*Api, error) {
+ out := new(Api)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetApi", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) CreateApi(ctx context.Context, in *CreateApiRequest, opts ...grpc.CallOption) (*Api, error) {
+ out := new(Api)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/CreateApi", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) UpdateApi(ctx context.Context, in *UpdateApiRequest, opts ...grpc.CallOption) (*Api, error) {
+ out := new(Api)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/UpdateApi", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApi(ctx context.Context, in *DeleteApiRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApi", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListApiVersions(ctx context.Context, in *ListApiVersionsRequest, opts ...grpc.CallOption) (*ListApiVersionsResponse, error) {
+ out := new(ListApiVersionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApiVersions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetApiVersion(ctx context.Context, in *GetApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error) {
+ out := new(ApiVersion)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetApiVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) CreateApiVersion(ctx context.Context, in *CreateApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error) {
+ out := new(ApiVersion)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/CreateApiVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) UpdateApiVersion(ctx context.Context, in *UpdateApiVersionRequest, opts ...grpc.CallOption) (*ApiVersion, error) {
+ out := new(ApiVersion)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/UpdateApiVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApiVersion(ctx context.Context, in *DeleteApiVersionRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApiVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListApiSpecs(ctx context.Context, in *ListApiSpecsRequest, opts ...grpc.CallOption) (*ListApiSpecsResponse, error) {
+ out := new(ListApiSpecsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApiSpecs", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetApiSpec(ctx context.Context, in *GetApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetApiSpec", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetApiSpecContents(ctx context.Context, in *GetApiSpecContentsRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error) {
+ out := new(httpbody.HttpBody)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetApiSpecContents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) CreateApiSpec(ctx context.Context, in *CreateApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/CreateApiSpec", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) UpdateApiSpec(ctx context.Context, in *UpdateApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/UpdateApiSpec", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApiSpec(ctx context.Context, in *DeleteApiSpecRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApiSpec", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) TagApiSpecRevision(ctx context.Context, in *TagApiSpecRevisionRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/TagApiSpecRevision", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListApiSpecRevisions(ctx context.Context, in *ListApiSpecRevisionsRequest, opts ...grpc.CallOption) (*ListApiSpecRevisionsResponse, error) {
+ out := new(ListApiSpecRevisionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApiSpecRevisions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) RollbackApiSpec(ctx context.Context, in *RollbackApiSpecRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/RollbackApiSpec", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApiSpecRevision(ctx context.Context, in *DeleteApiSpecRevisionRequest, opts ...grpc.CallOption) (*ApiSpec, error) {
+ out := new(ApiSpec)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApiSpecRevision", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListApiDeployments(ctx context.Context, in *ListApiDeploymentsRequest, opts ...grpc.CallOption) (*ListApiDeploymentsResponse, error) {
+ out := new(ListApiDeploymentsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApiDeployments", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetApiDeployment(ctx context.Context, in *GetApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetApiDeployment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) CreateApiDeployment(ctx context.Context, in *CreateApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/CreateApiDeployment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) UpdateApiDeployment(ctx context.Context, in *UpdateApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/UpdateApiDeployment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApiDeployment(ctx context.Context, in *DeleteApiDeploymentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApiDeployment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) TagApiDeploymentRevision(ctx context.Context, in *TagApiDeploymentRevisionRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/TagApiDeploymentRevision", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListApiDeploymentRevisions(ctx context.Context, in *ListApiDeploymentRevisionsRequest, opts ...grpc.CallOption) (*ListApiDeploymentRevisionsResponse, error) {
+ out := new(ListApiDeploymentRevisionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListApiDeploymentRevisions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) RollbackApiDeployment(ctx context.Context, in *RollbackApiDeploymentRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/RollbackApiDeployment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteApiDeploymentRevision(ctx context.Context, in *DeleteApiDeploymentRevisionRequest, opts ...grpc.CallOption) (*ApiDeployment, error) {
+ out := new(ApiDeployment)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteApiDeploymentRevision", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ListArtifacts(ctx context.Context, in *ListArtifactsRequest, opts ...grpc.CallOption) (*ListArtifactsResponse, error) {
+ out := new(ListArtifactsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ListArtifacts", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetArtifact(ctx context.Context, in *GetArtifactRequest, opts ...grpc.CallOption) (*Artifact, error) {
+ out := new(Artifact)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetArtifact", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) GetArtifactContents(ctx context.Context, in *GetArtifactContentsRequest, opts ...grpc.CallOption) (*httpbody.HttpBody, error) {
+ out := new(httpbody.HttpBody)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/GetArtifactContents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) CreateArtifact(ctx context.Context, in *CreateArtifactRequest, opts ...grpc.CallOption) (*Artifact, error) {
+ out := new(Artifact)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/CreateArtifact", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) ReplaceArtifact(ctx context.Context, in *ReplaceArtifactRequest, opts ...grpc.CallOption) (*Artifact, error) {
+ out := new(Artifact)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/ReplaceArtifact", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *registryClient) DeleteArtifact(ctx context.Context, in *DeleteArtifactRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.apigeeregistry.v1.Registry/DeleteArtifact", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// RegistryServer is the server API for Registry service.
+type RegistryServer interface {
+ // Returns matching APIs.
+ ListApis(context.Context, *ListApisRequest) (*ListApisResponse, error)
+ // Returns a specified API.
+ GetApi(context.Context, *GetApiRequest) (*Api, error)
+ // Creates a specified API.
+ CreateApi(context.Context, *CreateApiRequest) (*Api, error)
+ // Used to modify a specified API.
+ UpdateApi(context.Context, *UpdateApiRequest) (*Api, error)
+ // Removes a specified API and all of the resources that it
+ // owns.
+ DeleteApi(context.Context, *DeleteApiRequest) (*emptypb.Empty, error)
+ // Returns matching versions.
+ ListApiVersions(context.Context, *ListApiVersionsRequest) (*ListApiVersionsResponse, error)
+ // Returns a specified version.
+ GetApiVersion(context.Context, *GetApiVersionRequest) (*ApiVersion, error)
+ // Creates a specified version.
+ CreateApiVersion(context.Context, *CreateApiVersionRequest) (*ApiVersion, error)
+ // Used to modify a specified version.
+ UpdateApiVersion(context.Context, *UpdateApiVersionRequest) (*ApiVersion, error)
+ // Removes a specified version and all of the resources that
+ // it owns.
+ DeleteApiVersion(context.Context, *DeleteApiVersionRequest) (*emptypb.Empty, error)
+ // Returns matching specs.
+ ListApiSpecs(context.Context, *ListApiSpecsRequest) (*ListApiSpecsResponse, error)
+ // Returns a specified spec.
+ GetApiSpec(context.Context, *GetApiSpecRequest) (*ApiSpec, error)
+ // Returns the contents of a specified spec.
+ // If specs are stored with GZip compression, the default behavior
+ // is to return the spec uncompressed (the mime_type response field
+ // indicates the exact format returned).
+ GetApiSpecContents(context.Context, *GetApiSpecContentsRequest) (*httpbody.HttpBody, error)
+ // Creates a specified spec.
+ CreateApiSpec(context.Context, *CreateApiSpecRequest) (*ApiSpec, error)
+ // Used to modify a specified spec.
+ UpdateApiSpec(context.Context, *UpdateApiSpecRequest) (*ApiSpec, error)
+ // Removes a specified spec, all revisions, and all child
+ // resources (e.g., artifacts).
+ DeleteApiSpec(context.Context, *DeleteApiSpecRequest) (*emptypb.Empty, error)
+ // Adds a tag to a specified revision of a spec.
+ TagApiSpecRevision(context.Context, *TagApiSpecRevisionRequest) (*ApiSpec, error)
+ // Lists all revisions of a spec.
+ // Revisions are returned in descending order of revision creation time.
+ ListApiSpecRevisions(context.Context, *ListApiSpecRevisionsRequest) (*ListApiSpecRevisionsResponse, error)
+ // Sets the current revision to a specified prior revision.
+ // Note that this creates a new revision with a new revision ID.
+ RollbackApiSpec(context.Context, *RollbackApiSpecRequest) (*ApiSpec, error)
+ // Deletes a revision of a spec.
+ DeleteApiSpecRevision(context.Context, *DeleteApiSpecRevisionRequest) (*ApiSpec, error)
+ // Returns matching deployments.
+ ListApiDeployments(context.Context, *ListApiDeploymentsRequest) (*ListApiDeploymentsResponse, error)
+ // Returns a specified deployment.
+ GetApiDeployment(context.Context, *GetApiDeploymentRequest) (*ApiDeployment, error)
+ // Creates a specified deployment.
+ CreateApiDeployment(context.Context, *CreateApiDeploymentRequest) (*ApiDeployment, error)
+ // Used to modify a specified deployment.
+ UpdateApiDeployment(context.Context, *UpdateApiDeploymentRequest) (*ApiDeployment, error)
+ // Removes a specified deployment, all revisions, and all
+ // child resources (e.g., artifacts).
+ DeleteApiDeployment(context.Context, *DeleteApiDeploymentRequest) (*emptypb.Empty, error)
+ // Adds a tag to a specified revision of a
+ // deployment.
+ TagApiDeploymentRevision(context.Context, *TagApiDeploymentRevisionRequest) (*ApiDeployment, error)
+ // Lists all revisions of a deployment.
+ // Revisions are returned in descending order of revision creation time.
+ ListApiDeploymentRevisions(context.Context, *ListApiDeploymentRevisionsRequest) (*ListApiDeploymentRevisionsResponse, error)
+ // Sets the current revision to a specified prior
+ // revision. Note that this creates a new revision with a new revision ID.
+ RollbackApiDeployment(context.Context, *RollbackApiDeploymentRequest) (*ApiDeployment, error)
+ // Deletes a revision of a deployment.
+ DeleteApiDeploymentRevision(context.Context, *DeleteApiDeploymentRevisionRequest) (*ApiDeployment, error)
+ // Returns matching artifacts.
+ ListArtifacts(context.Context, *ListArtifactsRequest) (*ListArtifactsResponse, error)
+ // Returns a specified artifact.
+ GetArtifact(context.Context, *GetArtifactRequest) (*Artifact, error)
+ // Returns the contents of a specified artifact.
+ // If artifacts are stored with GZip compression, the default behavior
+ // is to return the artifact uncompressed (the mime_type response field
+ // indicates the exact format returned).
+ GetArtifactContents(context.Context, *GetArtifactContentsRequest) (*httpbody.HttpBody, error)
+ // Creates a specified artifact.
+ CreateArtifact(context.Context, *CreateArtifactRequest) (*Artifact, error)
+ // Used to replace a specified artifact.
+ ReplaceArtifact(context.Context, *ReplaceArtifactRequest) (*Artifact, error)
+ // Removes a specified artifact.
+ DeleteArtifact(context.Context, *DeleteArtifactRequest) (*emptypb.Empty, error)
+}
+
+// UnimplementedRegistryServer can be embedded to have forward compatible implementations.
+type UnimplementedRegistryServer struct {
+}
+
+func (*UnimplementedRegistryServer) ListApis(context.Context, *ListApisRequest) (*ListApisResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApis not implemented")
+}
+func (*UnimplementedRegistryServer) GetApi(context.Context, *GetApiRequest) (*Api, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetApi not implemented")
+}
+func (*UnimplementedRegistryServer) CreateApi(context.Context, *CreateApiRequest) (*Api, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateApi not implemented")
+}
+func (*UnimplementedRegistryServer) UpdateApi(context.Context, *UpdateApiRequest) (*Api, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateApi not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApi(context.Context, *DeleteApiRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApi not implemented")
+}
+func (*UnimplementedRegistryServer) ListApiVersions(context.Context, *ListApiVersionsRequest) (*ListApiVersionsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApiVersions not implemented")
+}
+func (*UnimplementedRegistryServer) GetApiVersion(context.Context, *GetApiVersionRequest) (*ApiVersion, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetApiVersion not implemented")
+}
+func (*UnimplementedRegistryServer) CreateApiVersion(context.Context, *CreateApiVersionRequest) (*ApiVersion, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateApiVersion not implemented")
+}
+func (*UnimplementedRegistryServer) UpdateApiVersion(context.Context, *UpdateApiVersionRequest) (*ApiVersion, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateApiVersion not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApiVersion(context.Context, *DeleteApiVersionRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApiVersion not implemented")
+}
+func (*UnimplementedRegistryServer) ListApiSpecs(context.Context, *ListApiSpecsRequest) (*ListApiSpecsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApiSpecs not implemented")
+}
+func (*UnimplementedRegistryServer) GetApiSpec(context.Context, *GetApiSpecRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetApiSpec not implemented")
+}
+func (*UnimplementedRegistryServer) GetApiSpecContents(context.Context, *GetApiSpecContentsRequest) (*httpbody.HttpBody, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetApiSpecContents not implemented")
+}
+func (*UnimplementedRegistryServer) CreateApiSpec(context.Context, *CreateApiSpecRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateApiSpec not implemented")
+}
+func (*UnimplementedRegistryServer) UpdateApiSpec(context.Context, *UpdateApiSpecRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateApiSpec not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApiSpec(context.Context, *DeleteApiSpecRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApiSpec not implemented")
+}
+func (*UnimplementedRegistryServer) TagApiSpecRevision(context.Context, *TagApiSpecRevisionRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TagApiSpecRevision not implemented")
+}
+func (*UnimplementedRegistryServer) ListApiSpecRevisions(context.Context, *ListApiSpecRevisionsRequest) (*ListApiSpecRevisionsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApiSpecRevisions not implemented")
+}
+func (*UnimplementedRegistryServer) RollbackApiSpec(context.Context, *RollbackApiSpecRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RollbackApiSpec not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApiSpecRevision(context.Context, *DeleteApiSpecRevisionRequest) (*ApiSpec, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApiSpecRevision not implemented")
+}
+func (*UnimplementedRegistryServer) ListApiDeployments(context.Context, *ListApiDeploymentsRequest) (*ListApiDeploymentsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApiDeployments not implemented")
+}
+func (*UnimplementedRegistryServer) GetApiDeployment(context.Context, *GetApiDeploymentRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetApiDeployment not implemented")
+}
+func (*UnimplementedRegistryServer) CreateApiDeployment(context.Context, *CreateApiDeploymentRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateApiDeployment not implemented")
+}
+func (*UnimplementedRegistryServer) UpdateApiDeployment(context.Context, *UpdateApiDeploymentRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateApiDeployment not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApiDeployment(context.Context, *DeleteApiDeploymentRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApiDeployment not implemented")
+}
+func (*UnimplementedRegistryServer) TagApiDeploymentRevision(context.Context, *TagApiDeploymentRevisionRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TagApiDeploymentRevision not implemented")
+}
+func (*UnimplementedRegistryServer) ListApiDeploymentRevisions(context.Context, *ListApiDeploymentRevisionsRequest) (*ListApiDeploymentRevisionsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListApiDeploymentRevisions not implemented")
+}
+func (*UnimplementedRegistryServer) RollbackApiDeployment(context.Context, *RollbackApiDeploymentRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RollbackApiDeployment not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteApiDeploymentRevision(context.Context, *DeleteApiDeploymentRevisionRequest) (*ApiDeployment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteApiDeploymentRevision not implemented")
+}
+func (*UnimplementedRegistryServer) ListArtifacts(context.Context, *ListArtifactsRequest) (*ListArtifactsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListArtifacts not implemented")
+}
+func (*UnimplementedRegistryServer) GetArtifact(context.Context, *GetArtifactRequest) (*Artifact, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetArtifact not implemented")
+}
+func (*UnimplementedRegistryServer) GetArtifactContents(context.Context, *GetArtifactContentsRequest) (*httpbody.HttpBody, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetArtifactContents not implemented")
+}
+func (*UnimplementedRegistryServer) CreateArtifact(context.Context, *CreateArtifactRequest) (*Artifact, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateArtifact not implemented")
+}
+func (*UnimplementedRegistryServer) ReplaceArtifact(context.Context, *ReplaceArtifactRequest) (*Artifact, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ReplaceArtifact not implemented")
+}
+func (*UnimplementedRegistryServer) DeleteArtifact(context.Context, *DeleteArtifactRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteArtifact not implemented")
+}
+
+func RegisterRegistryServer(s *grpc.Server, srv RegistryServer) {
+ s.RegisterService(&_Registry_serviceDesc, srv)
+}
+
+func _Registry_ListApis_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApisRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApis(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApis",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApis(ctx, req.(*ListApisRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetApi_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetApiRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetApi(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetApi",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetApi(ctx, req.(*GetApiRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_CreateApi_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateApiRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).CreateApi(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/CreateApi",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).CreateApi(ctx, req.(*CreateApiRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_UpdateApi_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateApiRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).UpdateApi(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/UpdateApi",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).UpdateApi(ctx, req.(*UpdateApiRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApi_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApi(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApi",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApi(ctx, req.(*DeleteApiRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListApiVersions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApiVersionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApiVersions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApiVersions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApiVersions(ctx, req.(*ListApiVersionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetApiVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetApiVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetApiVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetApiVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetApiVersion(ctx, req.(*GetApiVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_CreateApiVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateApiVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).CreateApiVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/CreateApiVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).CreateApiVersion(ctx, req.(*CreateApiVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_UpdateApiVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateApiVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).UpdateApiVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/UpdateApiVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).UpdateApiVersion(ctx, req.(*UpdateApiVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApiVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApiVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApiVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApiVersion(ctx, req.(*DeleteApiVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListApiSpecs_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApiSpecsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApiSpecs(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApiSpecs",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApiSpecs(ctx, req.(*ListApiSpecsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetApiSpec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetApiSpecRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetApiSpec(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetApiSpec",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetApiSpec(ctx, req.(*GetApiSpecRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetApiSpecContents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetApiSpecContentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetApiSpecContents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetApiSpecContents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetApiSpecContents(ctx, req.(*GetApiSpecContentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_CreateApiSpec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateApiSpecRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).CreateApiSpec(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/CreateApiSpec",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).CreateApiSpec(ctx, req.(*CreateApiSpecRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_UpdateApiSpec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateApiSpecRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).UpdateApiSpec(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/UpdateApiSpec",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).UpdateApiSpec(ctx, req.(*UpdateApiSpecRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApiSpec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiSpecRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApiSpec(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApiSpec",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApiSpec(ctx, req.(*DeleteApiSpecRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_TagApiSpecRevision_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(TagApiSpecRevisionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).TagApiSpecRevision(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/TagApiSpecRevision",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).TagApiSpecRevision(ctx, req.(*TagApiSpecRevisionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListApiSpecRevisions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApiSpecRevisionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApiSpecRevisions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApiSpecRevisions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApiSpecRevisions(ctx, req.(*ListApiSpecRevisionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_RollbackApiSpec_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RollbackApiSpecRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).RollbackApiSpec(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/RollbackApiSpec",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).RollbackApiSpec(ctx, req.(*RollbackApiSpecRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApiSpecRevision_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiSpecRevisionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApiSpecRevision(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApiSpecRevision",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApiSpecRevision(ctx, req.(*DeleteApiSpecRevisionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListApiDeployments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApiDeploymentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApiDeployments(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApiDeployments",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApiDeployments(ctx, req.(*ListApiDeploymentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetApiDeployment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetApiDeploymentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetApiDeployment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetApiDeployment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetApiDeployment(ctx, req.(*GetApiDeploymentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_CreateApiDeployment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateApiDeploymentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).CreateApiDeployment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/CreateApiDeployment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).CreateApiDeployment(ctx, req.(*CreateApiDeploymentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_UpdateApiDeployment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateApiDeploymentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).UpdateApiDeployment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/UpdateApiDeployment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).UpdateApiDeployment(ctx, req.(*UpdateApiDeploymentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApiDeployment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiDeploymentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApiDeployment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApiDeployment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApiDeployment(ctx, req.(*DeleteApiDeploymentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_TagApiDeploymentRevision_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(TagApiDeploymentRevisionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).TagApiDeploymentRevision(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/TagApiDeploymentRevision",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).TagApiDeploymentRevision(ctx, req.(*TagApiDeploymentRevisionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListApiDeploymentRevisions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListApiDeploymentRevisionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListApiDeploymentRevisions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListApiDeploymentRevisions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListApiDeploymentRevisions(ctx, req.(*ListApiDeploymentRevisionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_RollbackApiDeployment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RollbackApiDeploymentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).RollbackApiDeployment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/RollbackApiDeployment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).RollbackApiDeployment(ctx, req.(*RollbackApiDeploymentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteApiDeploymentRevision_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteApiDeploymentRevisionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteApiDeploymentRevision(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteApiDeploymentRevision",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteApiDeploymentRevision(ctx, req.(*DeleteApiDeploymentRevisionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ListArtifacts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListArtifactsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ListArtifacts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ListArtifacts",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ListArtifacts(ctx, req.(*ListArtifactsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetArtifact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetArtifactRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetArtifact(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetArtifact",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetArtifact(ctx, req.(*GetArtifactRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_GetArtifactContents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetArtifactContentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).GetArtifactContents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/GetArtifactContents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).GetArtifactContents(ctx, req.(*GetArtifactContentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_CreateArtifact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateArtifactRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).CreateArtifact(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/CreateArtifact",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).CreateArtifact(ctx, req.(*CreateArtifactRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_ReplaceArtifact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ReplaceArtifactRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).ReplaceArtifact(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/ReplaceArtifact",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).ReplaceArtifact(ctx, req.(*ReplaceArtifactRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Registry_DeleteArtifact_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteArtifactRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(RegistryServer).DeleteArtifact(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.apigeeregistry.v1.Registry/DeleteArtifact",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(RegistryServer).DeleteArtifact(ctx, req.(*DeleteArtifactRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Registry_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.apigeeregistry.v1.Registry",
+ HandlerType: (*RegistryServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListApis",
+ Handler: _Registry_ListApis_Handler,
+ },
+ {
+ MethodName: "GetApi",
+ Handler: _Registry_GetApi_Handler,
+ },
+ {
+ MethodName: "CreateApi",
+ Handler: _Registry_CreateApi_Handler,
+ },
+ {
+ MethodName: "UpdateApi",
+ Handler: _Registry_UpdateApi_Handler,
+ },
+ {
+ MethodName: "DeleteApi",
+ Handler: _Registry_DeleteApi_Handler,
+ },
+ {
+ MethodName: "ListApiVersions",
+ Handler: _Registry_ListApiVersions_Handler,
+ },
+ {
+ MethodName: "GetApiVersion",
+ Handler: _Registry_GetApiVersion_Handler,
+ },
+ {
+ MethodName: "CreateApiVersion",
+ Handler: _Registry_CreateApiVersion_Handler,
+ },
+ {
+ MethodName: "UpdateApiVersion",
+ Handler: _Registry_UpdateApiVersion_Handler,
+ },
+ {
+ MethodName: "DeleteApiVersion",
+ Handler: _Registry_DeleteApiVersion_Handler,
+ },
+ {
+ MethodName: "ListApiSpecs",
+ Handler: _Registry_ListApiSpecs_Handler,
+ },
+ {
+ MethodName: "GetApiSpec",
+ Handler: _Registry_GetApiSpec_Handler,
+ },
+ {
+ MethodName: "GetApiSpecContents",
+ Handler: _Registry_GetApiSpecContents_Handler,
+ },
+ {
+ MethodName: "CreateApiSpec",
+ Handler: _Registry_CreateApiSpec_Handler,
+ },
+ {
+ MethodName: "UpdateApiSpec",
+ Handler: _Registry_UpdateApiSpec_Handler,
+ },
+ {
+ MethodName: "DeleteApiSpec",
+ Handler: _Registry_DeleteApiSpec_Handler,
+ },
+ {
+ MethodName: "TagApiSpecRevision",
+ Handler: _Registry_TagApiSpecRevision_Handler,
+ },
+ {
+ MethodName: "ListApiSpecRevisions",
+ Handler: _Registry_ListApiSpecRevisions_Handler,
+ },
+ {
+ MethodName: "RollbackApiSpec",
+ Handler: _Registry_RollbackApiSpec_Handler,
+ },
+ {
+ MethodName: "DeleteApiSpecRevision",
+ Handler: _Registry_DeleteApiSpecRevision_Handler,
+ },
+ {
+ MethodName: "ListApiDeployments",
+ Handler: _Registry_ListApiDeployments_Handler,
+ },
+ {
+ MethodName: "GetApiDeployment",
+ Handler: _Registry_GetApiDeployment_Handler,
+ },
+ {
+ MethodName: "CreateApiDeployment",
+ Handler: _Registry_CreateApiDeployment_Handler,
+ },
+ {
+ MethodName: "UpdateApiDeployment",
+ Handler: _Registry_UpdateApiDeployment_Handler,
+ },
+ {
+ MethodName: "DeleteApiDeployment",
+ Handler: _Registry_DeleteApiDeployment_Handler,
+ },
+ {
+ MethodName: "TagApiDeploymentRevision",
+ Handler: _Registry_TagApiDeploymentRevision_Handler,
+ },
+ {
+ MethodName: "ListApiDeploymentRevisions",
+ Handler: _Registry_ListApiDeploymentRevisions_Handler,
+ },
+ {
+ MethodName: "RollbackApiDeployment",
+ Handler: _Registry_RollbackApiDeployment_Handler,
+ },
+ {
+ MethodName: "DeleteApiDeploymentRevision",
+ Handler: _Registry_DeleteApiDeploymentRevision_Handler,
+ },
+ {
+ MethodName: "ListArtifacts",
+ Handler: _Registry_ListArtifacts_Handler,
+ },
+ {
+ MethodName: "GetArtifact",
+ Handler: _Registry_GetArtifact_Handler,
+ },
+ {
+ MethodName: "GetArtifactContents",
+ Handler: _Registry_GetArtifactContents_Handler,
+ },
+ {
+ MethodName: "CreateArtifact",
+ Handler: _Registry_CreateArtifact_Handler,
+ },
+ {
+ MethodName: "ReplaceArtifact",
+ Handler: _Registry_ReplaceArtifact_Handler,
+ },
+ {
+ MethodName: "DeleteArtifact",
+ Handler: _Registry_DeleteArtifact_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/apigeeregistry/v1/registry_service.proto",
+}
diff --git a/apikeys/apiv2/apikeyspb/apikeys.pb.go b/apikeys/apiv2/apikeyspb/apikeys.pb.go
new file mode 100644
index 0000000..9177b25
--- /dev/null
+++ b/apikeys/apiv2/apikeyspb/apikeys.pb.go
@@ -0,0 +1,1503 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/api/apikeys/v2/apikeys.proto
+
+package apikeyspb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Request message for `CreateKey` method.
+type CreateKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project in which the API key is created.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The API key fields to set at creation time.
+ // You can configure only the `display_name`, `restrictions`, and
+ // `annotations` fields.
+ Key *Key `protobuf:"bytes,2,opt,name=key,proto3" json:"key,omitempty"`
+ // User specified key id (optional). If specified, it will become the final
+ // component of the key resource name.
+ //
+ // The id must be unique within the project, must conform with RFC-1034,
+ // is restricted to lower-cased letters, and has a maximum length of 63
+ // characters. In another word, the id must match the regular
+ // expression: `[a-z]([a-z0-9-]{0,61}[a-z0-9])?`.
+ //
+ // The id must NOT be a UUID-like string.
+ KeyId string `protobuf:"bytes,3,opt,name=key_id,json=keyId,proto3" json:"key_id,omitempty"`
+}
+
+func (x *CreateKeyRequest) Reset() {
+ *x = CreateKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateKeyRequest) ProtoMessage() {}
+
+func (x *CreateKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateKeyRequest.ProtoReflect.Descriptor instead.
+func (*CreateKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *CreateKeyRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateKeyRequest) GetKey() *Key {
+ if x != nil {
+ return x.Key
+ }
+ return nil
+}
+
+func (x *CreateKeyRequest) GetKeyId() string {
+ if x != nil {
+ return x.KeyId
+ }
+ return ""
+}
+
+// Request message for `ListKeys` method.
+type ListKeysRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Lists all API keys associated with this project.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. Specifies the maximum number of results to be returned at a time.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. Requests a specific page of results.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // Optional. Indicate that keys deleted in the past 30 days should also be
+ // returned.
+ ShowDeleted bool `protobuf:"varint,6,opt,name=show_deleted,json=showDeleted,proto3" json:"show_deleted,omitempty"`
+}
+
+func (x *ListKeysRequest) Reset() {
+ *x = ListKeysRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListKeysRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListKeysRequest) ProtoMessage() {}
+
+func (x *ListKeysRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListKeysRequest.ProtoReflect.Descriptor instead.
+func (*ListKeysRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListKeysRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListKeysRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListKeysRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListKeysRequest) GetShowDeleted() bool {
+ if x != nil {
+ return x.ShowDeleted
+ }
+ return false
+}
+
+// Response message for `ListKeys` method.
+type ListKeysResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of API keys.
+ Keys []*Key `protobuf:"bytes,1,rep,name=keys,proto3" json:"keys,omitempty"`
+ // The pagination token for the next page of results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListKeysResponse) Reset() {
+ *x = ListKeysResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListKeysResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListKeysResponse) ProtoMessage() {}
+
+func (x *ListKeysResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListKeysResponse.ProtoReflect.Descriptor instead.
+func (*ListKeysResponse) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListKeysResponse) GetKeys() []*Key {
+ if x != nil {
+ return x.Keys
+ }
+ return nil
+}
+
+func (x *ListKeysResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for `GetKey` method.
+type GetKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the API key to get.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetKeyRequest) Reset() {
+ *x = GetKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetKeyRequest) ProtoMessage() {}
+
+func (x *GetKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetKeyRequest.ProtoReflect.Descriptor instead.
+func (*GetKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetKeyRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for `GetKeyString` method.
+type GetKeyStringRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the API key to be retrieved.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetKeyStringRequest) Reset() {
+ *x = GetKeyStringRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetKeyStringRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetKeyStringRequest) ProtoMessage() {}
+
+func (x *GetKeyStringRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetKeyStringRequest.ProtoReflect.Descriptor instead.
+func (*GetKeyStringRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *GetKeyStringRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Response message for `GetKeyString` method.
+type GetKeyStringResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // An encrypted and signed value of the key.
+ KeyString string `protobuf:"bytes,1,opt,name=key_string,json=keyString,proto3" json:"key_string,omitempty"`
+}
+
+func (x *GetKeyStringResponse) Reset() {
+ *x = GetKeyStringResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetKeyStringResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetKeyStringResponse) ProtoMessage() {}
+
+func (x *GetKeyStringResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetKeyStringResponse.ProtoReflect.Descriptor instead.
+func (*GetKeyStringResponse) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GetKeyStringResponse) GetKeyString() string {
+ if x != nil {
+ return x.KeyString
+ }
+ return ""
+}
+
+// Request message for `UpdateKey` method.
+type UpdateKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Set the `name` field to the resource name of the API key to be
+ // updated. You can update only the `display_name`, `restrictions`, and
+ // `annotations` fields.
+ Key *Key `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
+ // The field mask specifies which fields to be updated as part of this
+ // request. All other fields are ignored.
+ // Mutable fields are: `display_name`, `restrictions`, and `annotations`.
+ // If an update mask is not provided, the service treats it as an implied mask
+ // equivalent to all allowed fields that are set on the wire. If the field
+ // mask has a special value "*", the service treats it equivalent to replace
+ // all allowed mutable fields.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateKeyRequest) Reset() {
+ *x = UpdateKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateKeyRequest) ProtoMessage() {}
+
+func (x *UpdateKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateKeyRequest.ProtoReflect.Descriptor instead.
+func (*UpdateKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateKeyRequest) GetKey() *Key {
+ if x != nil {
+ return x.Key
+ }
+ return nil
+}
+
+func (x *UpdateKeyRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// Request message for `DeleteKey` method.
+type DeleteKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the API key to be deleted.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The etag known to the client for the expected state of the key.
+ // This is to be used for optimistic concurrency.
+ Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"`
+}
+
+func (x *DeleteKeyRequest) Reset() {
+ *x = DeleteKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteKeyRequest) ProtoMessage() {}
+
+func (x *DeleteKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteKeyRequest.ProtoReflect.Descriptor instead.
+func (*DeleteKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *DeleteKeyRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteKeyRequest) GetEtag() string {
+ if x != nil {
+ return x.Etag
+ }
+ return ""
+}
+
+// Request message for `UndeleteKey` method.
+type UndeleteKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the API key to be undeleted.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *UndeleteKeyRequest) Reset() {
+ *x = UndeleteKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UndeleteKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UndeleteKeyRequest) ProtoMessage() {}
+
+func (x *UndeleteKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UndeleteKeyRequest.ProtoReflect.Descriptor instead.
+func (*UndeleteKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *UndeleteKeyRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for `LookupKey` method.
+type LookupKeyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Finds the project that owns the key string value.
+ KeyString string `protobuf:"bytes,1,opt,name=key_string,json=keyString,proto3" json:"key_string,omitempty"`
+}
+
+func (x *LookupKeyRequest) Reset() {
+ *x = LookupKeyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LookupKeyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LookupKeyRequest) ProtoMessage() {}
+
+func (x *LookupKeyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use LookupKeyRequest.ProtoReflect.Descriptor instead.
+func (*LookupKeyRequest) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *LookupKeyRequest) GetKeyString() string {
+ if x != nil {
+ return x.KeyString
+ }
+ return ""
+}
+
+// Response message for `LookupKey` method.
+type LookupKeyResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The project that owns the key with the value specified in the request.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The resource name of the API key. If the API key has been purged,
+ // resource name is empty.
+ Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *LookupKeyResponse) Reset() {
+ *x = LookupKeyResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LookupKeyResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LookupKeyResponse) ProtoMessage() {}
+
+func (x *LookupKeyResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_apikeys_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use LookupKeyResponse.ProtoReflect.Descriptor instead.
+func (*LookupKeyResponse) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *LookupKeyResponse) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *LookupKeyResponse) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+var File_google_api_apikeys_v2_apikeys_proto protoreflect.FileDescriptor
+
+var file_google_api_apikeys_v2_apikeys_proto_rawDesc = []byte{
+ 0x0a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x70, 0x69,
+ 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70,
+ 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x25, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x76,
+ 0x32, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c,
+ 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68,
+ 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c,
+ 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65,
+ 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x98, 0x01,
+ 0x0a, 0x10, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x22, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1c, 0x12, 0x1a, 0x61, 0x70, 0x69, 0x6b,
+ 0x65, 0x79, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 0x79, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x31,
+ 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73,
+ 0x2e, 0x76, 0x32, 0x2e, 0x4b, 0x65, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x12, 0x15, 0x0a, 0x06, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x6b, 0x65, 0x79, 0x49, 0x64, 0x22, 0xbb, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73,
+ 0x74, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3a, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x1c, 0x12, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 0x79,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65,
+ 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61,
+ 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x26,
+ 0x0a, 0x0c, 0x73, 0x68, 0x6f, 0x77, 0x5f, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x18, 0x06,
+ 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x73, 0x68, 0x6f, 0x77, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x64, 0x22, 0x6a, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65,
+ 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x2e, 0x0a, 0x04, 0x6b, 0x65,
+ 0x79, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32,
+ 0x2e, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65,
+ 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x22, 0x47, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x22, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1c, 0x0a, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65,
+ 0x79, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x4d, 0x0a, 0x13, 0x47,
+ 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x36, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x22, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1c, 0x0a, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79,
+ 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x35, 0x0a, 0x14, 0x47, 0x65,
+ 0x74, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x22, 0x82, 0x01, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x31, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
+ 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4b, 0x65, 0x79, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x63, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x22, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1c,
+ 0x0a, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 0x4c, 0x0a, 0x12, 0x55,
+ 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x36, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x22, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x1c, 0x0a, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x4b, 0x65, 0x79, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x36, 0x0a, 0x10, 0x4c, 0x6f, 0x6f,
+ 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x22, 0x0a,
+ 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x09, 0x6b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e,
+ 0x67, 0x22, 0x3f, 0x0a, 0x11, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x12,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x32, 0xbe, 0x0b, 0x0a, 0x07, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x12, 0xbd,
+ 0x01, 0x0a, 0x09, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79,
+ 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c,
+ 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x68, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2f, 0x22, 0x28, 0x2f, 0x76,
+ 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x3a, 0x03, 0x6b, 0x65, 0x79, 0xda, 0x41, 0x11, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x6b, 0x65, 0x79, 0x2c, 0x6b, 0x65, 0x79, 0x5f, 0x69, 0x64, 0xca,
+ 0x41, 0x1c, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x96,
+ 0x01, 0x0a, 0x08, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x12, 0x26, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73,
+ 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69,
+ 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x4b, 0x65, 0x79, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x39, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0xda, 0x41,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x83, 0x01, 0x0a, 0x06, 0x47, 0x65, 0x74, 0x4b,
+ 0x65, 0x79, 0x12, 0x24, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e,
+ 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65,
+ 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32,
+ 0x2e, 0x4b, 0x65, 0x79, 0x22, 0x37, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x12, 0x28, 0x2f, 0x76,
+ 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b,
+ 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xaa, 0x01,
+ 0x0a, 0x0c, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x2a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b,
+ 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x4b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x41, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x34, 0x12,
+ 0x32, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x53, 0x74, 0x72,
+ 0x69, 0x6e, 0x67, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xbf, 0x01, 0x0a, 0x09, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32,
+ 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72,
+ 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x22, 0x6a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x33, 0x32, 0x2c, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x6b,
+ 0x65, 0x79, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b,
+ 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x03, 0x6b, 0x65, 0x79, 0xda, 0x41, 0x0f, 0x6b, 0x65,
+ 0x79, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0xca, 0x41, 0x1c,
+ 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0xab, 0x01, 0x0a,
+ 0x09, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x27, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e,
+ 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x56, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a, 0x2a, 0x28, 0x2f, 0x76, 0x32, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x65, 0x79,
+ 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xca, 0x41, 0x1c, 0x0a, 0x03,
+ 0x4b, 0x65, 0x79, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0xb4, 0x01, 0x0a, 0x0b, 0x55,
+ 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x12, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x76, 0x32, 0x2e, 0x55, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x65, 0x79, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c,
+ 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x5b, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x36, 0x22, 0x31, 0x2f, 0x76,
+ 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b,
+ 0x65, 0x79, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x75, 0x6e, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x3a,
+ 0x01, 0x2a, 0xca, 0x41, 0x1c, 0x0a, 0x03, 0x4b, 0x65, 0x79, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x12, 0x7a, 0x0a, 0x09, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x12, 0x27,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b,
+ 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e,
+ 0x4c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x22, 0x1a, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x14, 0x12, 0x12, 0x2f, 0x76, 0x32, 0x2f, 0x6b,
+ 0x65, 0x79, 0x73, 0x3a, 0x6c, 0x6f, 0x6f, 0x6b, 0x75, 0x70, 0x4b, 0x65, 0x79, 0x1a, 0x83, 0x01,
+ 0xca, 0x41, 0x16, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x67, 0x68, 0x74, 0x74, 0x70,
+ 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73,
+ 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2e, 0x72, 0x65, 0x61, 0x64, 0x2d, 0x6f,
+ 0x6e, 0x6c, 0x79, 0x42, 0xba, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76,
+ 0x32, 0x42, 0x0c, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
+ 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67,
+ 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x70, 0x69,
+ 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x76, 0x32, 0x3b, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0xaa,
+ 0x02, 0x17, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x41,
+ 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x2e, 0x56, 0x32, 0xca, 0x02, 0x17, 0x47, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73,
+ 0x5c, 0x56, 0x32, 0xea, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a, 0x43, 0x6c,
+ 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x3a, 0x3a, 0x56, 0x32,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_api_apikeys_v2_apikeys_proto_rawDescOnce sync.Once
+ file_google_api_apikeys_v2_apikeys_proto_rawDescData = file_google_api_apikeys_v2_apikeys_proto_rawDesc
+)
+
+func file_google_api_apikeys_v2_apikeys_proto_rawDescGZIP() []byte {
+ file_google_api_apikeys_v2_apikeys_proto_rawDescOnce.Do(func() {
+ file_google_api_apikeys_v2_apikeys_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_apikeys_v2_apikeys_proto_rawDescData)
+ })
+ return file_google_api_apikeys_v2_apikeys_proto_rawDescData
+}
+
+var file_google_api_apikeys_v2_apikeys_proto_msgTypes = make([]protoimpl.MessageInfo, 11)
+var file_google_api_apikeys_v2_apikeys_proto_goTypes = []interface{}{
+ (*CreateKeyRequest)(nil), // 0: google.api.apikeys.v2.CreateKeyRequest
+ (*ListKeysRequest)(nil), // 1: google.api.apikeys.v2.ListKeysRequest
+ (*ListKeysResponse)(nil), // 2: google.api.apikeys.v2.ListKeysResponse
+ (*GetKeyRequest)(nil), // 3: google.api.apikeys.v2.GetKeyRequest
+ (*GetKeyStringRequest)(nil), // 4: google.api.apikeys.v2.GetKeyStringRequest
+ (*GetKeyStringResponse)(nil), // 5: google.api.apikeys.v2.GetKeyStringResponse
+ (*UpdateKeyRequest)(nil), // 6: google.api.apikeys.v2.UpdateKeyRequest
+ (*DeleteKeyRequest)(nil), // 7: google.api.apikeys.v2.DeleteKeyRequest
+ (*UndeleteKeyRequest)(nil), // 8: google.api.apikeys.v2.UndeleteKeyRequest
+ (*LookupKeyRequest)(nil), // 9: google.api.apikeys.v2.LookupKeyRequest
+ (*LookupKeyResponse)(nil), // 10: google.api.apikeys.v2.LookupKeyResponse
+ (*Key)(nil), // 11: google.api.apikeys.v2.Key
+ (*fieldmaskpb.FieldMask)(nil), // 12: google.protobuf.FieldMask
+ (*longrunning.Operation)(nil), // 13: google.longrunning.Operation
+}
+var file_google_api_apikeys_v2_apikeys_proto_depIdxs = []int32{
+ 11, // 0: google.api.apikeys.v2.CreateKeyRequest.key:type_name -> google.api.apikeys.v2.Key
+ 11, // 1: google.api.apikeys.v2.ListKeysResponse.keys:type_name -> google.api.apikeys.v2.Key
+ 11, // 2: google.api.apikeys.v2.UpdateKeyRequest.key:type_name -> google.api.apikeys.v2.Key
+ 12, // 3: google.api.apikeys.v2.UpdateKeyRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 0, // 4: google.api.apikeys.v2.ApiKeys.CreateKey:input_type -> google.api.apikeys.v2.CreateKeyRequest
+ 1, // 5: google.api.apikeys.v2.ApiKeys.ListKeys:input_type -> google.api.apikeys.v2.ListKeysRequest
+ 3, // 6: google.api.apikeys.v2.ApiKeys.GetKey:input_type -> google.api.apikeys.v2.GetKeyRequest
+ 4, // 7: google.api.apikeys.v2.ApiKeys.GetKeyString:input_type -> google.api.apikeys.v2.GetKeyStringRequest
+ 6, // 8: google.api.apikeys.v2.ApiKeys.UpdateKey:input_type -> google.api.apikeys.v2.UpdateKeyRequest
+ 7, // 9: google.api.apikeys.v2.ApiKeys.DeleteKey:input_type -> google.api.apikeys.v2.DeleteKeyRequest
+ 8, // 10: google.api.apikeys.v2.ApiKeys.UndeleteKey:input_type -> google.api.apikeys.v2.UndeleteKeyRequest
+ 9, // 11: google.api.apikeys.v2.ApiKeys.LookupKey:input_type -> google.api.apikeys.v2.LookupKeyRequest
+ 13, // 12: google.api.apikeys.v2.ApiKeys.CreateKey:output_type -> google.longrunning.Operation
+ 2, // 13: google.api.apikeys.v2.ApiKeys.ListKeys:output_type -> google.api.apikeys.v2.ListKeysResponse
+ 11, // 14: google.api.apikeys.v2.ApiKeys.GetKey:output_type -> google.api.apikeys.v2.Key
+ 5, // 15: google.api.apikeys.v2.ApiKeys.GetKeyString:output_type -> google.api.apikeys.v2.GetKeyStringResponse
+ 13, // 16: google.api.apikeys.v2.ApiKeys.UpdateKey:output_type -> google.longrunning.Operation
+ 13, // 17: google.api.apikeys.v2.ApiKeys.DeleteKey:output_type -> google.longrunning.Operation
+ 13, // 18: google.api.apikeys.v2.ApiKeys.UndeleteKey:output_type -> google.longrunning.Operation
+ 10, // 19: google.api.apikeys.v2.ApiKeys.LookupKey:output_type -> google.api.apikeys.v2.LookupKeyResponse
+ 12, // [12:20] is the sub-list for method output_type
+ 4, // [4:12] is the sub-list for method input_type
+ 4, // [4:4] is the sub-list for extension type_name
+ 4, // [4:4] is the sub-list for extension extendee
+ 0, // [0:4] is the sub-list for field type_name
+}
+
+func init() { file_google_api_apikeys_v2_apikeys_proto_init() }
+func file_google_api_apikeys_v2_apikeys_proto_init() {
+ if File_google_api_apikeys_v2_apikeys_proto != nil {
+ return
+ }
+ file_google_api_apikeys_v2_resources_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListKeysRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListKeysResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetKeyStringRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetKeyStringResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UndeleteKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LookupKeyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_apikeys_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LookupKeyResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_api_apikeys_v2_apikeys_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 11,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_api_apikeys_v2_apikeys_proto_goTypes,
+ DependencyIndexes: file_google_api_apikeys_v2_apikeys_proto_depIdxs,
+ MessageInfos: file_google_api_apikeys_v2_apikeys_proto_msgTypes,
+ }.Build()
+ File_google_api_apikeys_v2_apikeys_proto = out.File
+ file_google_api_apikeys_v2_apikeys_proto_rawDesc = nil
+ file_google_api_apikeys_v2_apikeys_proto_goTypes = nil
+ file_google_api_apikeys_v2_apikeys_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ApiKeysClient is the client API for ApiKeys service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ApiKeysClient interface {
+ // Creates a new API key.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ CreateKey(ctx context.Context, in *CreateKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Lists the API keys owned by a project. The key string of the API key
+ // isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ ListKeys(ctx context.Context, in *ListKeysRequest, opts ...grpc.CallOption) (*ListKeysResponse, error)
+ // Gets the metadata for an API key. The key string of the API key
+ // isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ GetKey(ctx context.Context, in *GetKeyRequest, opts ...grpc.CallOption) (*Key, error)
+ // Get the key string for an API key.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ GetKeyString(ctx context.Context, in *GetKeyStringRequest, opts ...grpc.CallOption) (*GetKeyStringResponse, error)
+ // Patches the modifiable fields of an API key.
+ // The key string of the API key isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ UpdateKey(ctx context.Context, in *UpdateKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes an API key. Deleted key can be retrieved within 30 days of
+ // deletion. Afterward, key will be purged from the project.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ DeleteKey(ctx context.Context, in *DeleteKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Undeletes an API key which was deleted within 30 days.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ UndeleteKey(ctx context.Context, in *UndeleteKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Find the parent project and resource name of the API
+ // key that matches the key string in the request. If the API key has been
+ // purged, resource name will not be set.
+ // The service account must have the `apikeys.keys.lookup` permission
+ // on the parent project.
+ LookupKey(ctx context.Context, in *LookupKeyRequest, opts ...grpc.CallOption) (*LookupKeyResponse, error)
+}
+
+type apiKeysClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewApiKeysClient(cc grpc.ClientConnInterface) ApiKeysClient {
+ return &apiKeysClient{cc}
+}
+
+func (c *apiKeysClient) CreateKey(ctx context.Context, in *CreateKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/CreateKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) ListKeys(ctx context.Context, in *ListKeysRequest, opts ...grpc.CallOption) (*ListKeysResponse, error) {
+ out := new(ListKeysResponse)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/ListKeys", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) GetKey(ctx context.Context, in *GetKeyRequest, opts ...grpc.CallOption) (*Key, error) {
+ out := new(Key)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/GetKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) GetKeyString(ctx context.Context, in *GetKeyStringRequest, opts ...grpc.CallOption) (*GetKeyStringResponse, error) {
+ out := new(GetKeyStringResponse)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/GetKeyString", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) UpdateKey(ctx context.Context, in *UpdateKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/UpdateKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) DeleteKey(ctx context.Context, in *DeleteKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/DeleteKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) UndeleteKey(ctx context.Context, in *UndeleteKeyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/UndeleteKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *apiKeysClient) LookupKey(ctx context.Context, in *LookupKeyRequest, opts ...grpc.CallOption) (*LookupKeyResponse, error) {
+ out := new(LookupKeyResponse)
+ err := c.cc.Invoke(ctx, "/google.api.apikeys.v2.ApiKeys/LookupKey", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ApiKeysServer is the server API for ApiKeys service.
+type ApiKeysServer interface {
+ // Creates a new API key.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ CreateKey(context.Context, *CreateKeyRequest) (*longrunning.Operation, error)
+ // Lists the API keys owned by a project. The key string of the API key
+ // isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ ListKeys(context.Context, *ListKeysRequest) (*ListKeysResponse, error)
+ // Gets the metadata for an API key. The key string of the API key
+ // isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ GetKey(context.Context, *GetKeyRequest) (*Key, error)
+ // Get the key string for an API key.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ GetKeyString(context.Context, *GetKeyStringRequest) (*GetKeyStringResponse, error)
+ // Patches the modifiable fields of an API key.
+ // The key string of the API key isn't included in the response.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ UpdateKey(context.Context, *UpdateKeyRequest) (*longrunning.Operation, error)
+ // Deletes an API key. Deleted key can be retrieved within 30 days of
+ // deletion. Afterward, key will be purged from the project.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ DeleteKey(context.Context, *DeleteKeyRequest) (*longrunning.Operation, error)
+ // Undeletes an API key which was deleted within 30 days.
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ UndeleteKey(context.Context, *UndeleteKeyRequest) (*longrunning.Operation, error)
+ // Find the parent project and resource name of the API
+ // key that matches the key string in the request. If the API key has been
+ // purged, resource name will not be set.
+ // The service account must have the `apikeys.keys.lookup` permission
+ // on the parent project.
+ LookupKey(context.Context, *LookupKeyRequest) (*LookupKeyResponse, error)
+}
+
+// UnimplementedApiKeysServer can be embedded to have forward compatible implementations.
+type UnimplementedApiKeysServer struct {
+}
+
+func (*UnimplementedApiKeysServer) CreateKey(context.Context, *CreateKeyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateKey not implemented")
+}
+func (*UnimplementedApiKeysServer) ListKeys(context.Context, *ListKeysRequest) (*ListKeysResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListKeys not implemented")
+}
+func (*UnimplementedApiKeysServer) GetKey(context.Context, *GetKeyRequest) (*Key, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetKey not implemented")
+}
+func (*UnimplementedApiKeysServer) GetKeyString(context.Context, *GetKeyStringRequest) (*GetKeyStringResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetKeyString not implemented")
+}
+func (*UnimplementedApiKeysServer) UpdateKey(context.Context, *UpdateKeyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateKey not implemented")
+}
+func (*UnimplementedApiKeysServer) DeleteKey(context.Context, *DeleteKeyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteKey not implemented")
+}
+func (*UnimplementedApiKeysServer) UndeleteKey(context.Context, *UndeleteKeyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UndeleteKey not implemented")
+}
+func (*UnimplementedApiKeysServer) LookupKey(context.Context, *LookupKeyRequest) (*LookupKeyResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method LookupKey not implemented")
+}
+
+func RegisterApiKeysServer(s *grpc.Server, srv ApiKeysServer) {
+ s.RegisterService(&_ApiKeys_serviceDesc, srv)
+}
+
+func _ApiKeys_CreateKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).CreateKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/CreateKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).CreateKey(ctx, req.(*CreateKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_ListKeys_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListKeysRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).ListKeys(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/ListKeys",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).ListKeys(ctx, req.(*ListKeysRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_GetKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).GetKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/GetKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).GetKey(ctx, req.(*GetKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_GetKeyString_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetKeyStringRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).GetKeyString(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/GetKeyString",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).GetKeyString(ctx, req.(*GetKeyStringRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_UpdateKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).UpdateKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/UpdateKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).UpdateKey(ctx, req.(*UpdateKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_DeleteKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).DeleteKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/DeleteKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).DeleteKey(ctx, req.(*DeleteKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_UndeleteKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UndeleteKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).UndeleteKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/UndeleteKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).UndeleteKey(ctx, req.(*UndeleteKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ApiKeys_LookupKey_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(LookupKeyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ApiKeysServer).LookupKey(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.api.apikeys.v2.ApiKeys/LookupKey",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ApiKeysServer).LookupKey(ctx, req.(*LookupKeyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _ApiKeys_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.api.apikeys.v2.ApiKeys",
+ HandlerType: (*ApiKeysServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CreateKey",
+ Handler: _ApiKeys_CreateKey_Handler,
+ },
+ {
+ MethodName: "ListKeys",
+ Handler: _ApiKeys_ListKeys_Handler,
+ },
+ {
+ MethodName: "GetKey",
+ Handler: _ApiKeys_GetKey_Handler,
+ },
+ {
+ MethodName: "GetKeyString",
+ Handler: _ApiKeys_GetKeyString_Handler,
+ },
+ {
+ MethodName: "UpdateKey",
+ Handler: _ApiKeys_UpdateKey_Handler,
+ },
+ {
+ MethodName: "DeleteKey",
+ Handler: _ApiKeys_DeleteKey_Handler,
+ },
+ {
+ MethodName: "UndeleteKey",
+ Handler: _ApiKeys_UndeleteKey_Handler,
+ },
+ {
+ MethodName: "LookupKey",
+ Handler: _ApiKeys_LookupKey_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/api/apikeys/v2/apikeys.proto",
+}
diff --git a/apikeys/apiv2/apikeyspb/resources.pb.go b/apikeys/apiv2/apikeyspb/resources.pb.go
new file mode 100644
index 0000000..b5f1a8c
--- /dev/null
+++ b/apikeys/apiv2/apikeyspb/resources.pb.go
@@ -0,0 +1,950 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/api/apikeys/v2/resources.proto
+
+package apikeyspb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The representation of a key managed by the API Keys API.
+type Key struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The resource name of the key.
+ // The `name` has the form:
+ // `projects/<PROJECT_NUMBER>/locations/global/keys/<KEY_ID>`.
+ // For example:
+ // `projects/123456867718/locations/global/keys/b7ff1f9f-8275-410a-94dd-3855ee9b5dd2`
+ //
+ // NOTE: Key is a global resource; hence the only supported value for
+ // location is `global`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Output only. Unique id in UUID4 format.
+ Uid string `protobuf:"bytes,5,opt,name=uid,proto3" json:"uid,omitempty"`
+ // Human-readable display name of this key that you can modify.
+ // The maximum length is 63 characters.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Output only. An encrypted and signed value held by this key.
+ // This field can be accessed only through the `GetKeyString` method.
+ KeyString string `protobuf:"bytes,3,opt,name=key_string,json=keyString,proto3" json:"key_string,omitempty"`
+ // Output only. A timestamp identifying the time this key was originally
+ // created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. A timestamp identifying the time this key was last
+ // updated.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Output only. A timestamp when this key was deleted. If the resource is not deleted,
+ // this must be empty.
+ DeleteTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
+ // Annotations is an unstructured key-value map stored with a policy that
+ // may be set by external tools to store and retrieve arbitrary metadata.
+ // They are not queryable and should be preserved when modifying objects.
+ Annotations map[string]string `protobuf:"bytes,8,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Key restrictions.
+ Restrictions *Restrictions `protobuf:"bytes,9,opt,name=restrictions,proto3" json:"restrictions,omitempty"`
+ // Output only. A checksum computed by the server based on the current value of the Key
+ // resource. This may be sent on update and delete requests to ensure the
+ // client has an up-to-date value before proceeding.
+ // See https://google.aip.dev/154.
+ Etag string `protobuf:"bytes,11,opt,name=etag,proto3" json:"etag,omitempty"`
+}
+
+func (x *Key) Reset() {
+ *x = Key{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Key) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Key) ProtoMessage() {}
+
+func (x *Key) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Key.ProtoReflect.Descriptor instead.
+func (*Key) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Key) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Key) GetUid() string {
+ if x != nil {
+ return x.Uid
+ }
+ return ""
+}
+
+func (x *Key) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Key) GetKeyString() string {
+ if x != nil {
+ return x.KeyString
+ }
+ return ""
+}
+
+func (x *Key) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Key) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Key) GetDeleteTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.DeleteTime
+ }
+ return nil
+}
+
+func (x *Key) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+func (x *Key) GetRestrictions() *Restrictions {
+ if x != nil {
+ return x.Restrictions
+ }
+ return nil
+}
+
+func (x *Key) GetEtag() string {
+ if x != nil {
+ return x.Etag
+ }
+ return ""
+}
+
+// Describes the restrictions on the key.
+type Restrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The websites, IP addresses, Android apps, or iOS apps (the clients) that
+ // are allowed to use the key. You can specify only one type of client
+ // restrictions per key.
+ //
+ // Types that are assignable to ClientRestrictions:
+ //
+ // *Restrictions_BrowserKeyRestrictions
+ // *Restrictions_ServerKeyRestrictions
+ // *Restrictions_AndroidKeyRestrictions
+ // *Restrictions_IosKeyRestrictions
+ ClientRestrictions isRestrictions_ClientRestrictions `protobuf_oneof:"client_restrictions"`
+ // A restriction for a specific service and optionally one or
+ // more specific methods. Requests are allowed if they
+ // match any of these restrictions. If no restrictions are
+ // specified, all targets are allowed.
+ ApiTargets []*ApiTarget `protobuf:"bytes,5,rep,name=api_targets,json=apiTargets,proto3" json:"api_targets,omitempty"`
+}
+
+func (x *Restrictions) Reset() {
+ *x = Restrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Restrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Restrictions) ProtoMessage() {}
+
+func (x *Restrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Restrictions.ProtoReflect.Descriptor instead.
+func (*Restrictions) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *Restrictions) GetClientRestrictions() isRestrictions_ClientRestrictions {
+ if m != nil {
+ return m.ClientRestrictions
+ }
+ return nil
+}
+
+func (x *Restrictions) GetBrowserKeyRestrictions() *BrowserKeyRestrictions {
+ if x, ok := x.GetClientRestrictions().(*Restrictions_BrowserKeyRestrictions); ok {
+ return x.BrowserKeyRestrictions
+ }
+ return nil
+}
+
+func (x *Restrictions) GetServerKeyRestrictions() *ServerKeyRestrictions {
+ if x, ok := x.GetClientRestrictions().(*Restrictions_ServerKeyRestrictions); ok {
+ return x.ServerKeyRestrictions
+ }
+ return nil
+}
+
+func (x *Restrictions) GetAndroidKeyRestrictions() *AndroidKeyRestrictions {
+ if x, ok := x.GetClientRestrictions().(*Restrictions_AndroidKeyRestrictions); ok {
+ return x.AndroidKeyRestrictions
+ }
+ return nil
+}
+
+func (x *Restrictions) GetIosKeyRestrictions() *IosKeyRestrictions {
+ if x, ok := x.GetClientRestrictions().(*Restrictions_IosKeyRestrictions); ok {
+ return x.IosKeyRestrictions
+ }
+ return nil
+}
+
+func (x *Restrictions) GetApiTargets() []*ApiTarget {
+ if x != nil {
+ return x.ApiTargets
+ }
+ return nil
+}
+
+type isRestrictions_ClientRestrictions interface {
+ isRestrictions_ClientRestrictions()
+}
+
+type Restrictions_BrowserKeyRestrictions struct {
+ // The HTTP referrers (websites) that are allowed to use the key.
+ BrowserKeyRestrictions *BrowserKeyRestrictions `protobuf:"bytes,1,opt,name=browser_key_restrictions,json=browserKeyRestrictions,proto3,oneof"`
+}
+
+type Restrictions_ServerKeyRestrictions struct {
+ // The IP addresses of callers that are allowed to use the key.
+ ServerKeyRestrictions *ServerKeyRestrictions `protobuf:"bytes,2,opt,name=server_key_restrictions,json=serverKeyRestrictions,proto3,oneof"`
+}
+
+type Restrictions_AndroidKeyRestrictions struct {
+ // The Android apps that are allowed to use the key.
+ AndroidKeyRestrictions *AndroidKeyRestrictions `protobuf:"bytes,3,opt,name=android_key_restrictions,json=androidKeyRestrictions,proto3,oneof"`
+}
+
+type Restrictions_IosKeyRestrictions struct {
+ // The iOS apps that are allowed to use the key.
+ IosKeyRestrictions *IosKeyRestrictions `protobuf:"bytes,4,opt,name=ios_key_restrictions,json=iosKeyRestrictions,proto3,oneof"`
+}
+
+func (*Restrictions_BrowserKeyRestrictions) isRestrictions_ClientRestrictions() {}
+
+func (*Restrictions_ServerKeyRestrictions) isRestrictions_ClientRestrictions() {}
+
+func (*Restrictions_AndroidKeyRestrictions) isRestrictions_ClientRestrictions() {}
+
+func (*Restrictions_IosKeyRestrictions) isRestrictions_ClientRestrictions() {}
+
+// The HTTP referrers (websites) that are allowed to use the key.
+type BrowserKeyRestrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of regular expressions for the referrer URLs that are allowed
+ // to make API calls with this key.
+ AllowedReferrers []string `protobuf:"bytes,1,rep,name=allowed_referrers,json=allowedReferrers,proto3" json:"allowed_referrers,omitempty"`
+}
+
+func (x *BrowserKeyRestrictions) Reset() {
+ *x = BrowserKeyRestrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BrowserKeyRestrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BrowserKeyRestrictions) ProtoMessage() {}
+
+func (x *BrowserKeyRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BrowserKeyRestrictions.ProtoReflect.Descriptor instead.
+func (*BrowserKeyRestrictions) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *BrowserKeyRestrictions) GetAllowedReferrers() []string {
+ if x != nil {
+ return x.AllowedReferrers
+ }
+ return nil
+}
+
+// The IP addresses of callers that are allowed to use the key.
+type ServerKeyRestrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of the caller IP addresses that are allowed to make API calls
+ // with this key.
+ AllowedIps []string `protobuf:"bytes,1,rep,name=allowed_ips,json=allowedIps,proto3" json:"allowed_ips,omitempty"`
+}
+
+func (x *ServerKeyRestrictions) Reset() {
+ *x = ServerKeyRestrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ServerKeyRestrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ServerKeyRestrictions) ProtoMessage() {}
+
+func (x *ServerKeyRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ServerKeyRestrictions.ProtoReflect.Descriptor instead.
+func (*ServerKeyRestrictions) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ServerKeyRestrictions) GetAllowedIps() []string {
+ if x != nil {
+ return x.AllowedIps
+ }
+ return nil
+}
+
+// The Android apps that are allowed to use the key.
+type AndroidKeyRestrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of Android applications that are allowed to make API calls with
+ // this key.
+ AllowedApplications []*AndroidApplication `protobuf:"bytes,1,rep,name=allowed_applications,json=allowedApplications,proto3" json:"allowed_applications,omitempty"`
+}
+
+func (x *AndroidKeyRestrictions) Reset() {
+ *x = AndroidKeyRestrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AndroidKeyRestrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AndroidKeyRestrictions) ProtoMessage() {}
+
+func (x *AndroidKeyRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AndroidKeyRestrictions.ProtoReflect.Descriptor instead.
+func (*AndroidKeyRestrictions) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *AndroidKeyRestrictions) GetAllowedApplications() []*AndroidApplication {
+ if x != nil {
+ return x.AllowedApplications
+ }
+ return nil
+}
+
+// Identifier of an Android application for key use.
+type AndroidApplication struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The SHA1 fingerprint of the application. For example, both sha1 formats are
+ // acceptable : DA:39:A3:EE:5E:6B:4B:0D:32:55:BF:EF:95:60:18:90:AF:D8:07:09 or
+ // DA39A3EE5E6B4B0D3255BFEF95601890AFD80709.
+ // Output format is the latter.
+ Sha1Fingerprint string `protobuf:"bytes,1,opt,name=sha1_fingerprint,json=sha1Fingerprint,proto3" json:"sha1_fingerprint,omitempty"`
+ // The package name of the application.
+ PackageName string `protobuf:"bytes,2,opt,name=package_name,json=packageName,proto3" json:"package_name,omitempty"`
+}
+
+func (x *AndroidApplication) Reset() {
+ *x = AndroidApplication{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AndroidApplication) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AndroidApplication) ProtoMessage() {}
+
+func (x *AndroidApplication) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AndroidApplication.ProtoReflect.Descriptor instead.
+func (*AndroidApplication) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *AndroidApplication) GetSha1Fingerprint() string {
+ if x != nil {
+ return x.Sha1Fingerprint
+ }
+ return ""
+}
+
+func (x *AndroidApplication) GetPackageName() string {
+ if x != nil {
+ return x.PackageName
+ }
+ return ""
+}
+
+// The iOS apps that are allowed to use the key.
+type IosKeyRestrictions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of bundle IDs that are allowed when making API calls with this key.
+ AllowedBundleIds []string `protobuf:"bytes,1,rep,name=allowed_bundle_ids,json=allowedBundleIds,proto3" json:"allowed_bundle_ids,omitempty"`
+}
+
+func (x *IosKeyRestrictions) Reset() {
+ *x = IosKeyRestrictions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IosKeyRestrictions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IosKeyRestrictions) ProtoMessage() {}
+
+func (x *IosKeyRestrictions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use IosKeyRestrictions.ProtoReflect.Descriptor instead.
+func (*IosKeyRestrictions) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *IosKeyRestrictions) GetAllowedBundleIds() []string {
+ if x != nil {
+ return x.AllowedBundleIds
+ }
+ return nil
+}
+
+// A restriction for a specific service and optionally one or multiple
+// specific methods. Both fields are case insensitive.
+type ApiTarget struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The service for this restriction. It should be the canonical
+ // service name, for example: `translate.googleapis.com`.
+ // You can use [`gcloud services list`](/sdk/gcloud/reference/services/list)
+ // to get a list of services that are enabled in the project.
+ Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
+ // Optional. List of one or more methods that can be called.
+ // If empty, all methods for the service are allowed. A wildcard
+ // (*) can be used as the last symbol.
+ // Valid examples:
+ //
+ // `google.cloud.translate.v2.TranslateService.GetSupportedLanguage`
+ // `TranslateText`
+ // `Get*`
+ // `translate.googleapis.com.Get*`
+ Methods []string `protobuf:"bytes,2,rep,name=methods,proto3" json:"methods,omitempty"`
+}
+
+func (x *ApiTarget) Reset() {
+ *x = ApiTarget{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ApiTarget) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ApiTarget) ProtoMessage() {}
+
+func (x *ApiTarget) ProtoReflect() protoreflect.Message {
+ mi := &file_google_api_apikeys_v2_resources_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ApiTarget.ProtoReflect.Descriptor instead.
+func (*ApiTarget) Descriptor() ([]byte, []int) {
+ return file_google_api_apikeys_v2_resources_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ApiTarget) GetService() string {
+ if x != nil {
+ return x.Service
+ }
+ return ""
+}
+
+func (x *ApiTarget) GetMethods() []string {
+ if x != nil {
+ return x.Methods
+ }
+ return nil
+}
+
+var File_google_api_apikeys_v2_resources_proto protoreflect.FileDescriptor
+
+var file_google_api_apikeys_v2_resources_proto_rawDesc = []byte{
+ 0x0a, 0x25, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x70, 0x69,
+ 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x76, 0x32, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x1a, 0x1f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x96, 0x05, 0x0a, 0x03,
+ 0x4b, 0x65, 0x79, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x03,
+ 0x75, 0x69, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x03,
+ 0x75, 0x69, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c,
+ 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x6b, 0x65, 0x79, 0x5f, 0x73, 0x74,
+ 0x72, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
+ 0x09, 0x6b, 0x65, 0x79, 0x53, 0x74, 0x72, 0x69, 0x6e, 0x67, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
+ 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40,
+ 0x0a, 0x0b, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42,
+ 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65,
+ 0x12, 0x4d, 0x0a, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
+ 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x4b, 0x65,
+ 0x79, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
+ 0x47, 0x0a, 0x0c, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
+ 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x52, 0x65,
+ 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x0c, 0x72, 0x65, 0x73, 0x74,
+ 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x17, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67,
+ 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x04, 0x65, 0x74, 0x61,
+ 0x67, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38,
+ 0x01, 0x3a, 0x61, 0xea, 0x41, 0x5e, 0x0a, 0x1a, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b,
+ 0x65, 0x79, 0x12, 0x32, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6b, 0x65, 0x79, 0x73,
+ 0x2f, 0x7b, 0x6b, 0x65, 0x79, 0x7d, 0x2a, 0x04, 0x6b, 0x65, 0x79, 0x73, 0x32, 0x03, 0x6b, 0x65,
+ 0x79, 0x52, 0x01, 0x01, 0x22, 0x85, 0x04, 0x0a, 0x0c, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x69, 0x0a, 0x18, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72,
+ 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e,
+ 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x16, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65,
+ 0x72, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x12, 0x66, 0x0a, 0x17, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x72,
+ 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61,
+ 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72,
+ 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48,
+ 0x00, 0x52, 0x15, 0x73, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74,
+ 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x69, 0x0a, 0x18, 0x61, 0x6e, 0x64, 0x72,
+ 0x6f, 0x69, 0x64, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e,
+ 0x76, 0x32, 0x2e, 0x41, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73,
+ 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x16, 0x61, 0x6e, 0x64,
+ 0x72, 0x6f, 0x69, 0x64, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x12, 0x5d, 0x0a, 0x14, 0x69, 0x6f, 0x73, 0x5f, 0x6b, 0x65, 0x79, 0x5f, 0x72,
+ 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61,
+ 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x49, 0x6f, 0x73, 0x4b, 0x65, 0x79,
+ 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x12,
+ 0x69, 0x6f, 0x73, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x12, 0x41, 0x0a, 0x0b, 0x61, 0x70, 0x69, 0x5f, 0x74, 0x61, 0x72, 0x67, 0x65, 0x74,
+ 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x20, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e,
+ 0x41, 0x70, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x54, 0x61,
+ 0x72, 0x67, 0x65, 0x74, 0x73, 0x42, 0x15, 0x0a, 0x13, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x5f,
+ 0x72, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x45, 0x0a, 0x16,
+ 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x72, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x2b, 0x0a, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65,
+ 0x64, 0x5f, 0x72, 0x65, 0x66, 0x65, 0x72, 0x72, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x52, 0x65, 0x66, 0x65, 0x72, 0x72,
+ 0x65, 0x72, 0x73, 0x22, 0x38, 0x0a, 0x15, 0x53, 0x65, 0x72, 0x76, 0x65, 0x72, 0x4b, 0x65, 0x79,
+ 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x1f, 0x0a, 0x0b,
+ 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x69, 0x70, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x09, 0x52, 0x0a, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x49, 0x70, 0x73, 0x22, 0x76, 0x0a,
+ 0x16, 0x41, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64, 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72,
+ 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5c, 0x0a, 0x14, 0x61, 0x6c, 0x6c, 0x6f, 0x77,
+ 0x65, 0x64, 0x5f, 0x61, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x61,
+ 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76, 0x32, 0x2e, 0x41, 0x6e,
+ 0x64, 0x72, 0x6f, 0x69, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x13, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x22, 0x62, 0x0a, 0x12, 0x41, 0x6e, 0x64, 0x72, 0x6f, 0x69, 0x64,
+ 0x41, 0x70, 0x70, 0x6c, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10, 0x73,
+ 0x68, 0x61, 0x31, 0x5f, 0x66, 0x69, 0x6e, 0x67, 0x65, 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x73, 0x68, 0x61, 0x31, 0x46, 0x69, 0x6e, 0x67, 0x65,
+ 0x72, 0x70, 0x72, 0x69, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x61, 0x63, 0x6b, 0x61, 0x67,
+ 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x61,
+ 0x63, 0x6b, 0x61, 0x67, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x42, 0x0a, 0x12, 0x49, 0x6f, 0x73,
+ 0x4b, 0x65, 0x79, 0x52, 0x65, 0x73, 0x74, 0x72, 0x69, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12,
+ 0x2c, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x65, 0x64, 0x5f, 0x62, 0x75, 0x6e, 0x64, 0x6c,
+ 0x65, 0x5f, 0x69, 0x64, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x61, 0x6c, 0x6c,
+ 0x6f, 0x77, 0x65, 0x64, 0x42, 0x75, 0x6e, 0x64, 0x6c, 0x65, 0x49, 0x64, 0x73, 0x22, 0x44, 0x0a,
+ 0x09, 0x41, 0x70, 0x69, 0x54, 0x61, 0x72, 0x67, 0x65, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65,
+ 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x72,
+ 0x76, 0x69, 0x63, 0x65, 0x12, 0x1d, 0x0a, 0x07, 0x6d, 0x65, 0x74, 0x68, 0x6f, 0x64, 0x73, 0x18,
+ 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x07, 0x6d, 0x65, 0x74, 0x68,
+ 0x6f, 0x64, 0x73, 0x42, 0xbc, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x61, 0x70, 0x69, 0x2e, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2e, 0x76,
+ 0x32, 0x42, 0x0e, 0x52, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x50, 0x72, 0x6f, 0x74,
+ 0x6f, 0x50, 0x01, 0x5a, 0x3c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61,
+ 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61,
+ 0x70, 0x69, 0x6b, 0x65, 0x79, 0x73, 0x2f, 0x76, 0x32, 0x3b, 0x61, 0x70, 0x69, 0x6b, 0x65, 0x79,
+ 0x73, 0xaa, 0x02, 0x17, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x2e, 0x56, 0x32, 0xca, 0x02, 0x17, 0x47, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x41, 0x70, 0x69, 0x4b, 0x65,
+ 0x79, 0x73, 0x5c, 0x56, 0x32, 0xea, 0x02, 0x1a, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x3a, 0x3a,
+ 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x3a, 0x3a, 0x41, 0x70, 0x69, 0x4b, 0x65, 0x79, 0x73, 0x3a, 0x3a,
+ 0x56, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_api_apikeys_v2_resources_proto_rawDescOnce sync.Once
+ file_google_api_apikeys_v2_resources_proto_rawDescData = file_google_api_apikeys_v2_resources_proto_rawDesc
+)
+
+func file_google_api_apikeys_v2_resources_proto_rawDescGZIP() []byte {
+ file_google_api_apikeys_v2_resources_proto_rawDescOnce.Do(func() {
+ file_google_api_apikeys_v2_resources_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_api_apikeys_v2_resources_proto_rawDescData)
+ })
+ return file_google_api_apikeys_v2_resources_proto_rawDescData
+}
+
+var file_google_api_apikeys_v2_resources_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
+var file_google_api_apikeys_v2_resources_proto_goTypes = []interface{}{
+ (*Key)(nil), // 0: google.api.apikeys.v2.Key
+ (*Restrictions)(nil), // 1: google.api.apikeys.v2.Restrictions
+ (*BrowserKeyRestrictions)(nil), // 2: google.api.apikeys.v2.BrowserKeyRestrictions
+ (*ServerKeyRestrictions)(nil), // 3: google.api.apikeys.v2.ServerKeyRestrictions
+ (*AndroidKeyRestrictions)(nil), // 4: google.api.apikeys.v2.AndroidKeyRestrictions
+ (*AndroidApplication)(nil), // 5: google.api.apikeys.v2.AndroidApplication
+ (*IosKeyRestrictions)(nil), // 6: google.api.apikeys.v2.IosKeyRestrictions
+ (*ApiTarget)(nil), // 7: google.api.apikeys.v2.ApiTarget
+ nil, // 8: google.api.apikeys.v2.Key.AnnotationsEntry
+ (*timestamppb.Timestamp)(nil), // 9: google.protobuf.Timestamp
+}
+var file_google_api_apikeys_v2_resources_proto_depIdxs = []int32{
+ 9, // 0: google.api.apikeys.v2.Key.create_time:type_name -> google.protobuf.Timestamp
+ 9, // 1: google.api.apikeys.v2.Key.update_time:type_name -> google.protobuf.Timestamp
+ 9, // 2: google.api.apikeys.v2.Key.delete_time:type_name -> google.protobuf.Timestamp
+ 8, // 3: google.api.apikeys.v2.Key.annotations:type_name -> google.api.apikeys.v2.Key.AnnotationsEntry
+ 1, // 4: google.api.apikeys.v2.Key.restrictions:type_name -> google.api.apikeys.v2.Restrictions
+ 2, // 5: google.api.apikeys.v2.Restrictions.browser_key_restrictions:type_name -> google.api.apikeys.v2.BrowserKeyRestrictions
+ 3, // 6: google.api.apikeys.v2.Restrictions.server_key_restrictions:type_name -> google.api.apikeys.v2.ServerKeyRestrictions
+ 4, // 7: google.api.apikeys.v2.Restrictions.android_key_restrictions:type_name -> google.api.apikeys.v2.AndroidKeyRestrictions
+ 6, // 8: google.api.apikeys.v2.Restrictions.ios_key_restrictions:type_name -> google.api.apikeys.v2.IosKeyRestrictions
+ 7, // 9: google.api.apikeys.v2.Restrictions.api_targets:type_name -> google.api.apikeys.v2.ApiTarget
+ 5, // 10: google.api.apikeys.v2.AndroidKeyRestrictions.allowed_applications:type_name -> google.api.apikeys.v2.AndroidApplication
+ 11, // [11:11] is the sub-list for method output_type
+ 11, // [11:11] is the sub-list for method input_type
+ 11, // [11:11] is the sub-list for extension type_name
+ 11, // [11:11] is the sub-list for extension extendee
+ 0, // [0:11] is the sub-list for field type_name
+}
+
+func init() { file_google_api_apikeys_v2_resources_proto_init() }
+func file_google_api_apikeys_v2_resources_proto_init() {
+ if File_google_api_apikeys_v2_resources_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_api_apikeys_v2_resources_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Key); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Restrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BrowserKeyRestrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ServerKeyRestrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AndroidKeyRestrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AndroidApplication); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*IosKeyRestrictions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ApiTarget); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_api_apikeys_v2_resources_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*Restrictions_BrowserKeyRestrictions)(nil),
+ (*Restrictions_ServerKeyRestrictions)(nil),
+ (*Restrictions_AndroidKeyRestrictions)(nil),
+ (*Restrictions_IosKeyRestrictions)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_api_apikeys_v2_resources_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 9,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_api_apikeys_v2_resources_proto_goTypes,
+ DependencyIndexes: file_google_api_apikeys_v2_resources_proto_depIdxs,
+ MessageInfos: file_google_api_apikeys_v2_resources_proto_msgTypes,
+ }.Build()
+ File_google_api_apikeys_v2_resources_proto = out.File
+ file_google_api_apikeys_v2_resources_proto_rawDesc = nil
+ file_google_api_apikeys_v2_resources_proto_goTypes = nil
+ file_google_api_apikeys_v2_resources_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/agent.pb.go b/dialogflow/apiv2beta1/dialogflowpb/agent.pb.go
new file mode 100644
index 0000000..70f32d5
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/agent.pb.go
@@ -0,0 +1,2412 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/agent.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Match mode determines how intents are detected from user queries.
+type Agent_MatchMode int32
+
+const (
+ // Not specified.
+ Agent_MATCH_MODE_UNSPECIFIED Agent_MatchMode = 0
+ // Best for agents with a small number of examples in intents and/or wide
+ // use of templates syntax and composite entities.
+ Agent_MATCH_MODE_HYBRID Agent_MatchMode = 1
+ // Can be used for agents with a large number of examples in intents,
+ // especially the ones using @sys.any or very large custom entities.
+ Agent_MATCH_MODE_ML_ONLY Agent_MatchMode = 2
+)
+
+// Enum value maps for Agent_MatchMode.
+var (
+ Agent_MatchMode_name = map[int32]string{
+ 0: "MATCH_MODE_UNSPECIFIED",
+ 1: "MATCH_MODE_HYBRID",
+ 2: "MATCH_MODE_ML_ONLY",
+ }
+ Agent_MatchMode_value = map[string]int32{
+ "MATCH_MODE_UNSPECIFIED": 0,
+ "MATCH_MODE_HYBRID": 1,
+ "MATCH_MODE_ML_ONLY": 2,
+ }
+)
+
+func (x Agent_MatchMode) Enum() *Agent_MatchMode {
+ p := new(Agent_MatchMode)
+ *p = x
+ return p
+}
+
+func (x Agent_MatchMode) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Agent_MatchMode) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[0].Descriptor()
+}
+
+func (Agent_MatchMode) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[0]
+}
+
+func (x Agent_MatchMode) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Agent_MatchMode.Descriptor instead.
+func (Agent_MatchMode) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// API version for the agent.
+type Agent_ApiVersion int32
+
+const (
+ // Not specified.
+ Agent_API_VERSION_UNSPECIFIED Agent_ApiVersion = 0
+ // Legacy V1 API.
+ Agent_API_VERSION_V1 Agent_ApiVersion = 1
+ // V2 API.
+ Agent_API_VERSION_V2 Agent_ApiVersion = 2
+ // V2beta1 API.
+ Agent_API_VERSION_V2_BETA_1 Agent_ApiVersion = 3
+)
+
+// Enum value maps for Agent_ApiVersion.
+var (
+ Agent_ApiVersion_name = map[int32]string{
+ 0: "API_VERSION_UNSPECIFIED",
+ 1: "API_VERSION_V1",
+ 2: "API_VERSION_V2",
+ 3: "API_VERSION_V2_BETA_1",
+ }
+ Agent_ApiVersion_value = map[string]int32{
+ "API_VERSION_UNSPECIFIED": 0,
+ "API_VERSION_V1": 1,
+ "API_VERSION_V2": 2,
+ "API_VERSION_V2_BETA_1": 3,
+ }
+)
+
+func (x Agent_ApiVersion) Enum() *Agent_ApiVersion {
+ p := new(Agent_ApiVersion)
+ *p = x
+ return p
+}
+
+func (x Agent_ApiVersion) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Agent_ApiVersion) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[1].Descriptor()
+}
+
+func (Agent_ApiVersion) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[1]
+}
+
+func (x Agent_ApiVersion) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Agent_ApiVersion.Descriptor instead.
+func (Agent_ApiVersion) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// Represents the agent tier.
+type Agent_Tier int32
+
+const (
+ // Not specified. This value should never be used.
+ Agent_TIER_UNSPECIFIED Agent_Tier = 0
+ // Trial Edition, previously known as Standard Edition.
+ Agent_TIER_STANDARD Agent_Tier = 1
+ // Essentials Edition, previously known as Enterprise Essential Edition.
+ Agent_TIER_ENTERPRISE Agent_Tier = 2
+ // Essentials Edition (same as TIER_ENTERPRISE), previously known as
+ // Enterprise Plus Edition.
+ //
+ // Deprecated: Do not use.
+ Agent_TIER_ENTERPRISE_PLUS Agent_Tier = 3
+)
+
+// Enum value maps for Agent_Tier.
+var (
+ Agent_Tier_name = map[int32]string{
+ 0: "TIER_UNSPECIFIED",
+ 1: "TIER_STANDARD",
+ 2: "TIER_ENTERPRISE",
+ 3: "TIER_ENTERPRISE_PLUS",
+ }
+ Agent_Tier_value = map[string]int32{
+ "TIER_UNSPECIFIED": 0,
+ "TIER_STANDARD": 1,
+ "TIER_ENTERPRISE": 2,
+ "TIER_ENTERPRISE_PLUS": 3,
+ }
+)
+
+func (x Agent_Tier) Enum() *Agent_Tier {
+ p := new(Agent_Tier)
+ *p = x
+ return p
+}
+
+func (x Agent_Tier) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Agent_Tier) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[2].Descriptor()
+}
+
+func (Agent_Tier) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes[2]
+}
+
+func (x Agent_Tier) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Agent_Tier.Descriptor instead.
+func (Agent_Tier) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{0, 2}
+}
+
+// A Dialogflow agent is a virtual agent that handles conversations with your
+// end-users. It is a natural language understanding module that understands the
+// nuances of human language. Dialogflow translates end-user text or audio
+// during a conversation to structured data that your apps and services can
+// understand. You design and build a Dialogflow agent to handle the types of
+// conversations required for your system.
+//
+// For more information about agents, see the
+// [Agent guide](https://cloud.google.com/dialogflow/docs/agents-overview).
+type Agent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project of this agent.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The name of this agent.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. The default language of the agent as a language tag. See
+ // [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes. This field cannot be
+ // set by the `Update` method.
+ DefaultLanguageCode string `protobuf:"bytes,3,opt,name=default_language_code,json=defaultLanguageCode,proto3" json:"default_language_code,omitempty"`
+ // Optional. The list of all languages supported by this agent (except for the
+ // `default_language_code`).
+ SupportedLanguageCodes []string `protobuf:"bytes,4,rep,name=supported_language_codes,json=supportedLanguageCodes,proto3" json:"supported_language_codes,omitempty"`
+ // Required. The time zone of this agent from the
+ // [time zone database](https://www.iana.org/time-zones), e.g.,
+ // America/New_York, Europe/Paris.
+ TimeZone string `protobuf:"bytes,5,opt,name=time_zone,json=timeZone,proto3" json:"time_zone,omitempty"`
+ // Optional. The description of this agent.
+ // The maximum length is 500 characters. If exceeded, the request is rejected.
+ Description string `protobuf:"bytes,6,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. The URI of the agent's avatar.
+ // Avatars are used throughout the Dialogflow console and in the self-hosted
+ // [Web
+ // Demo](https://cloud.google.com/dialogflow/docs/integrations/web-demo)
+ // integration.
+ AvatarUri string `protobuf:"bytes,7,opt,name=avatar_uri,json=avatarUri,proto3" json:"avatar_uri,omitempty"`
+ // Optional. Determines whether this agent should log conversation queries.
+ EnableLogging bool `protobuf:"varint,8,opt,name=enable_logging,json=enableLogging,proto3" json:"enable_logging,omitempty"`
+ // Optional. Determines how intents are detected from user queries.
+ //
+ // Deprecated: Do not use.
+ MatchMode Agent_MatchMode `protobuf:"varint,9,opt,name=match_mode,json=matchMode,proto3,enum=google.cloud.dialogflow.v2beta1.Agent_MatchMode" json:"match_mode,omitempty"`
+ // Optional. To filter out false positive results and still get variety in
+ // matched natural language inputs for your agent, you can tune the machine
+ // learning classification threshold. If the returned score value is less than
+ // the threshold value, then a fallback intent will be triggered or, if there
+ // are no fallback intents defined, no intent will be triggered. The score
+ // values range from 0.0 (completely uncertain) to 1.0 (completely certain).
+ // If set to 0.0, the default of 0.3 is used.
+ ClassificationThreshold float32 `protobuf:"fixed32,10,opt,name=classification_threshold,json=classificationThreshold,proto3" json:"classification_threshold,omitempty"`
+ // Optional. API version displayed in Dialogflow console. If not specified,
+ // V2 API is assumed. Clients are free to query different service endpoints
+ // for different API versions. However, bots connectors and webhook calls will
+ // follow the specified API version.
+ ApiVersion Agent_ApiVersion `protobuf:"varint,14,opt,name=api_version,json=apiVersion,proto3,enum=google.cloud.dialogflow.v2beta1.Agent_ApiVersion" json:"api_version,omitempty"`
+ // Optional. The agent tier. If not specified, TIER_STANDARD is assumed.
+ Tier Agent_Tier `protobuf:"varint,15,opt,name=tier,proto3,enum=google.cloud.dialogflow.v2beta1.Agent_Tier" json:"tier,omitempty"`
+}
+
+func (x *Agent) Reset() {
+ *x = Agent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Agent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Agent) ProtoMessage() {}
+
+func (x *Agent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Agent.ProtoReflect.Descriptor instead.
+func (*Agent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Agent) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *Agent) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Agent) GetDefaultLanguageCode() string {
+ if x != nil {
+ return x.DefaultLanguageCode
+ }
+ return ""
+}
+
+func (x *Agent) GetSupportedLanguageCodes() []string {
+ if x != nil {
+ return x.SupportedLanguageCodes
+ }
+ return nil
+}
+
+func (x *Agent) GetTimeZone() string {
+ if x != nil {
+ return x.TimeZone
+ }
+ return ""
+}
+
+func (x *Agent) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Agent) GetAvatarUri() string {
+ if x != nil {
+ return x.AvatarUri
+ }
+ return ""
+}
+
+func (x *Agent) GetEnableLogging() bool {
+ if x != nil {
+ return x.EnableLogging
+ }
+ return false
+}
+
+// Deprecated: Do not use.
+func (x *Agent) GetMatchMode() Agent_MatchMode {
+ if x != nil {
+ return x.MatchMode
+ }
+ return Agent_MATCH_MODE_UNSPECIFIED
+}
+
+func (x *Agent) GetClassificationThreshold() float32 {
+ if x != nil {
+ return x.ClassificationThreshold
+ }
+ return 0
+}
+
+func (x *Agent) GetApiVersion() Agent_ApiVersion {
+ if x != nil {
+ return x.ApiVersion
+ }
+ return Agent_API_VERSION_UNSPECIFIED
+}
+
+func (x *Agent) GetTier() Agent_Tier {
+ if x != nil {
+ return x.Tier
+ }
+ return Agent_TIER_UNSPECIFIED
+}
+
+// The request message for
+// [Agents.GetAgent][google.cloud.dialogflow.v2beta1.Agents.GetAgent].
+type GetAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to fetch is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+}
+
+func (x *GetAgentRequest) Reset() {
+ *x = GetAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetAgentRequest) ProtoMessage() {}
+
+func (x *GetAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetAgentRequest.ProtoReflect.Descriptor instead.
+func (*GetAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *GetAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+// The request message for
+// [Agents.SetAgent][google.cloud.dialogflow.v2beta1.Agents.SetAgent].
+type SetAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to update.
+ Agent *Agent `protobuf:"bytes,1,opt,name=agent,proto3" json:"agent,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *SetAgentRequest) Reset() {
+ *x = SetAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetAgentRequest) ProtoMessage() {}
+
+func (x *SetAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SetAgentRequest.ProtoReflect.Descriptor instead.
+func (*SetAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *SetAgentRequest) GetAgent() *Agent {
+ if x != nil {
+ return x.Agent
+ }
+ return nil
+}
+
+func (x *SetAgentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [Agents.DeleteAgent][google.cloud.dialogflow.v2beta1.Agents.DeleteAgent].
+type DeleteAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to delete is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+}
+
+func (x *DeleteAgentRequest) Reset() {
+ *x = DeleteAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteAgentRequest) ProtoMessage() {}
+
+func (x *DeleteAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteAgentRequest.ProtoReflect.Descriptor instead.
+func (*DeleteAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *DeleteAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+// Contains basic configuration for a sub-agent.
+type SubAgent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project of this agent.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Project string `protobuf:"bytes,1,opt,name=project,proto3" json:"project,omitempty"`
+ // Optional. The unique identifier (`environment name` in dialogflow console)
+ // of this sub-agent environment. Assumes draft environment if `environment`
+ // is not set.
+ Environment string `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
+}
+
+func (x *SubAgent) Reset() {
+ *x = SubAgent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SubAgent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SubAgent) ProtoMessage() {}
+
+func (x *SubAgent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SubAgent.ProtoReflect.Descriptor instead.
+func (*SubAgent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *SubAgent) GetProject() string {
+ if x != nil {
+ return x.Project
+ }
+ return ""
+}
+
+func (x *SubAgent) GetEnvironment() string {
+ if x != nil {
+ return x.Environment
+ }
+ return ""
+}
+
+// The request message for
+// [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents].
+type SearchAgentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to list agents from.
+ // Format: `projects/<Project ID or '-'>` or
+ //
+ // `projects/<Project ID or '-'>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *SearchAgentsRequest) Reset() {
+ *x = SearchAgentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SearchAgentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SearchAgentsRequest) ProtoMessage() {}
+
+func (x *SearchAgentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SearchAgentsRequest.ProtoReflect.Descriptor instead.
+func (*SearchAgentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *SearchAgentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *SearchAgentsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *SearchAgentsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents].
+type SearchAgentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of agents. There will be a maximum number of items returned based
+ // on the page_size field in the request.
+ Agents []*Agent `protobuf:"bytes,1,rep,name=agents,proto3" json:"agents,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *SearchAgentsResponse) Reset() {
+ *x = SearchAgentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SearchAgentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SearchAgentsResponse) ProtoMessage() {}
+
+func (x *SearchAgentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SearchAgentsResponse.ProtoReflect.Descriptor instead.
+func (*SearchAgentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *SearchAgentsResponse) GetAgents() []*Agent {
+ if x != nil {
+ return x.Agents
+ }
+ return nil
+}
+
+func (x *SearchAgentsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Agents.TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent].
+type TrainAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to train is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+}
+
+func (x *TrainAgentRequest) Reset() {
+ *x = TrainAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TrainAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TrainAgentRequest) ProtoMessage() {}
+
+func (x *TrainAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TrainAgentRequest.ProtoReflect.Descriptor instead.
+func (*TrainAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *TrainAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+// The request message for
+// [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent].
+type ExportAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to export is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The
+ // [Google Cloud Storage](https://cloud.google.com/storage/docs/)
+ // URI to export the agent to.
+ // The format of this URI must be `gs://<bucket-name>/<object-name>`.
+ // If left unspecified, the serialized agent is returned inline.
+ //
+ // Dialogflow performs a write operation for the Cloud Storage object
+ // on the caller's behalf, so your request authentication must
+ // have write permissions for the object. For more information, see
+ // [Dialogflow access
+ // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
+ AgentUri string `protobuf:"bytes,2,opt,name=agent_uri,json=agentUri,proto3" json:"agent_uri,omitempty"`
+}
+
+func (x *ExportAgentRequest) Reset() {
+ *x = ExportAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ExportAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ExportAgentRequest) ProtoMessage() {}
+
+func (x *ExportAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ExportAgentRequest.ProtoReflect.Descriptor instead.
+func (*ExportAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *ExportAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ExportAgentRequest) GetAgentUri() string {
+ if x != nil {
+ return x.AgentUri
+ }
+ return ""
+}
+
+// The response message for
+// [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent].
+type ExportAgentResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The exported agent.
+ //
+ // Types that are assignable to Agent:
+ //
+ // *ExportAgentResponse_AgentUri
+ // *ExportAgentResponse_AgentContent
+ Agent isExportAgentResponse_Agent `protobuf_oneof:"agent"`
+}
+
+func (x *ExportAgentResponse) Reset() {
+ *x = ExportAgentResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ExportAgentResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ExportAgentResponse) ProtoMessage() {}
+
+func (x *ExportAgentResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ExportAgentResponse.ProtoReflect.Descriptor instead.
+func (*ExportAgentResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{9}
+}
+
+func (m *ExportAgentResponse) GetAgent() isExportAgentResponse_Agent {
+ if m != nil {
+ return m.Agent
+ }
+ return nil
+}
+
+func (x *ExportAgentResponse) GetAgentUri() string {
+ if x, ok := x.GetAgent().(*ExportAgentResponse_AgentUri); ok {
+ return x.AgentUri
+ }
+ return ""
+}
+
+func (x *ExportAgentResponse) GetAgentContent() []byte {
+ if x, ok := x.GetAgent().(*ExportAgentResponse_AgentContent); ok {
+ return x.AgentContent
+ }
+ return nil
+}
+
+type isExportAgentResponse_Agent interface {
+ isExportAgentResponse_Agent()
+}
+
+type ExportAgentResponse_AgentUri struct {
+ // The URI to a file containing the exported agent. This field is populated
+ // only if `agent_uri` is specified in `ExportAgentRequest`.
+ AgentUri string `protobuf:"bytes,1,opt,name=agent_uri,json=agentUri,proto3,oneof"`
+}
+
+type ExportAgentResponse_AgentContent struct {
+ // Zip compressed raw byte content for agent.
+ AgentContent []byte `protobuf:"bytes,2,opt,name=agent_content,json=agentContent,proto3,oneof"`
+}
+
+func (*ExportAgentResponse_AgentUri) isExportAgentResponse_Agent() {}
+
+func (*ExportAgentResponse_AgentContent) isExportAgentResponse_Agent() {}
+
+// The request message for
+// [Agents.ImportAgent][google.cloud.dialogflow.v2beta1.Agents.ImportAgent].
+type ImportAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to import is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The agent to import.
+ //
+ // Types that are assignable to Agent:
+ //
+ // *ImportAgentRequest_AgentUri
+ // *ImportAgentRequest_AgentContent
+ Agent isImportAgentRequest_Agent `protobuf_oneof:"agent"`
+}
+
+func (x *ImportAgentRequest) Reset() {
+ *x = ImportAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ImportAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ImportAgentRequest) ProtoMessage() {}
+
+func (x *ImportAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ImportAgentRequest.ProtoReflect.Descriptor instead.
+func (*ImportAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *ImportAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (m *ImportAgentRequest) GetAgent() isImportAgentRequest_Agent {
+ if m != nil {
+ return m.Agent
+ }
+ return nil
+}
+
+func (x *ImportAgentRequest) GetAgentUri() string {
+ if x, ok := x.GetAgent().(*ImportAgentRequest_AgentUri); ok {
+ return x.AgentUri
+ }
+ return ""
+}
+
+func (x *ImportAgentRequest) GetAgentContent() []byte {
+ if x, ok := x.GetAgent().(*ImportAgentRequest_AgentContent); ok {
+ return x.AgentContent
+ }
+ return nil
+}
+
+type isImportAgentRequest_Agent interface {
+ isImportAgentRequest_Agent()
+}
+
+type ImportAgentRequest_AgentUri struct {
+ // The URI to a Google Cloud Storage file containing the agent to import.
+ // Note: The URI must start with "gs://".
+ //
+ // Dialogflow performs a read operation for the Cloud Storage object
+ // on the caller's behalf, so your request authentication must
+ // have read permissions for the object. For more information, see
+ // [Dialogflow access
+ // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
+ AgentUri string `protobuf:"bytes,2,opt,name=agent_uri,json=agentUri,proto3,oneof"`
+}
+
+type ImportAgentRequest_AgentContent struct {
+ // Zip compressed raw byte content for agent.
+ AgentContent []byte `protobuf:"bytes,3,opt,name=agent_content,json=agentContent,proto3,oneof"`
+}
+
+func (*ImportAgentRequest_AgentUri) isImportAgentRequest_Agent() {}
+
+func (*ImportAgentRequest_AgentContent) isImportAgentRequest_Agent() {}
+
+// The request message for
+// [Agents.RestoreAgent][google.cloud.dialogflow.v2beta1.Agents.RestoreAgent].
+type RestoreAgentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent to restore is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The agent to restore.
+ //
+ // Types that are assignable to Agent:
+ //
+ // *RestoreAgentRequest_AgentUri
+ // *RestoreAgentRequest_AgentContent
+ Agent isRestoreAgentRequest_Agent `protobuf_oneof:"agent"`
+}
+
+func (x *RestoreAgentRequest) Reset() {
+ *x = RestoreAgentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *RestoreAgentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*RestoreAgentRequest) ProtoMessage() {}
+
+func (x *RestoreAgentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use RestoreAgentRequest.ProtoReflect.Descriptor instead.
+func (*RestoreAgentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *RestoreAgentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (m *RestoreAgentRequest) GetAgent() isRestoreAgentRequest_Agent {
+ if m != nil {
+ return m.Agent
+ }
+ return nil
+}
+
+func (x *RestoreAgentRequest) GetAgentUri() string {
+ if x, ok := x.GetAgent().(*RestoreAgentRequest_AgentUri); ok {
+ return x.AgentUri
+ }
+ return ""
+}
+
+func (x *RestoreAgentRequest) GetAgentContent() []byte {
+ if x, ok := x.GetAgent().(*RestoreAgentRequest_AgentContent); ok {
+ return x.AgentContent
+ }
+ return nil
+}
+
+type isRestoreAgentRequest_Agent interface {
+ isRestoreAgentRequest_Agent()
+}
+
+type RestoreAgentRequest_AgentUri struct {
+ // The URI to a Google Cloud Storage file containing the agent to restore.
+ // Note: The URI must start with "gs://".
+ //
+ // Dialogflow performs a read operation for the Cloud Storage object
+ // on the caller's behalf, so your request authentication must
+ // have read permissions for the object. For more information, see
+ // [Dialogflow access
+ // control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
+ AgentUri string `protobuf:"bytes,2,opt,name=agent_uri,json=agentUri,proto3,oneof"`
+}
+
+type RestoreAgentRequest_AgentContent struct {
+ // Zip compressed raw byte content for agent.
+ AgentContent []byte `protobuf:"bytes,3,opt,name=agent_content,json=agentContent,proto3,oneof"`
+}
+
+func (*RestoreAgentRequest_AgentUri) isRestoreAgentRequest_Agent() {}
+
+func (*RestoreAgentRequest_AgentContent) isRestoreAgentRequest_Agent() {}
+
+// The request message for
+// [Agents.GetValidationResult][google.cloud.dialogflow.v2beta1.Agents.GetValidationResult].
+type GetValidationResultRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project that the agent is associated with.
+ // Format: `projects/<Project ID>` or
+ //
+ // `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The language for which you want a validation result. If not
+ // specified, the agent's default language is used. [Many
+ // languages](https://cloud.google.com/dialogflow/docs/reference/language)
+ // are supported. Note: languages must be enabled in the agent before they can
+ // be used.
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *GetValidationResultRequest) Reset() {
+ *x = GetValidationResultRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetValidationResultRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetValidationResultRequest) ProtoMessage() {}
+
+func (x *GetValidationResultRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetValidationResultRequest.ProtoReflect.Descriptor instead.
+func (*GetValidationResultRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *GetValidationResultRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *GetValidationResultRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_agent_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_agent_proto_rawDesc = []byte{
+ 0x0a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x37, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65,
+ 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f,
+ 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69,
+ 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa8,
+ 0x08, 0x0a, 0x05, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d,
+ 0x0a, 0x2b, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x6d,
+ 0x61, 0x6e, 0x61, 0x67, 0x65, 0x72, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79,
+ 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73,
+ 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x32, 0x0a, 0x15, 0x64, 0x65, 0x66, 0x61,
+ 0x75, 0x6c, 0x74, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
+ 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x38, 0x0a, 0x18,
+ 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61,
+ 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x16,
+ 0x73, 0x75, 0x70, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x4c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
+ 0x65, 0x43, 0x6f, 0x64, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x7a,
+ 0x6f, 0x6e, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x5a,
+ 0x6f, 0x6e, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69,
+ 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x1d, 0x0a, 0x0a, 0x61, 0x76, 0x61, 0x74, 0x61, 0x72, 0x5f,
+ 0x75, 0x72, 0x69, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x61, 0x76, 0x61, 0x74, 0x61,
+ 0x72, 0x55, 0x72, 0x69, 0x12, 0x25, 0x0a, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6c,
+ 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x65, 0x6e,
+ 0x61, 0x62, 0x6c, 0x65, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x12, 0x53, 0x0a, 0x0a, 0x6d,
+ 0x61, 0x74, 0x63, 0x68, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64,
+ 0x65, 0x42, 0x02, 0x18, 0x01, 0x52, 0x09, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65,
+ 0x12, 0x39, 0x0a, 0x18, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x74, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x0a, 0x20, 0x01,
+ 0x28, 0x02, 0x52, 0x17, 0x63, 0x6c, 0x61, 0x73, 0x73, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x12, 0x52, 0x0a, 0x0b, 0x61,
+ 0x70, 0x69, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x41, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x61, 0x70, 0x69, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
+ 0x3f, 0x0a, 0x04, 0x74, 0x69, 0x65, 0x72, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x69, 0x65, 0x72, 0x52, 0x04, 0x74, 0x69, 0x65, 0x72,
+ 0x22, 0x56, 0x0a, 0x09, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x1a, 0x0a,
+ 0x16, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50,
+ 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x15, 0x0a, 0x11, 0x4d, 0x41, 0x54,
+ 0x43, 0x48, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x48, 0x59, 0x42, 0x52, 0x49, 0x44, 0x10, 0x01,
+ 0x12, 0x16, 0x0a, 0x12, 0x4d, 0x41, 0x54, 0x43, 0x48, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4d,
+ 0x4c, 0x5f, 0x4f, 0x4e, 0x4c, 0x59, 0x10, 0x02, 0x22, 0x6c, 0x0a, 0x0a, 0x41, 0x70, 0x69, 0x56,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x1b, 0x0a, 0x17, 0x41, 0x50, 0x49, 0x5f, 0x56, 0x45,
+ 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x50, 0x49, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49,
+ 0x4f, 0x4e, 0x5f, 0x56, 0x31, 0x10, 0x01, 0x12, 0x12, 0x0a, 0x0e, 0x41, 0x50, 0x49, 0x5f, 0x56,
+ 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x32, 0x10, 0x02, 0x12, 0x19, 0x0a, 0x15, 0x41,
+ 0x50, 0x49, 0x5f, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x56, 0x32, 0x5f, 0x42, 0x45,
+ 0x54, 0x41, 0x5f, 0x31, 0x10, 0x03, 0x22, 0x62, 0x0a, 0x04, 0x54, 0x69, 0x65, 0x72, 0x12, 0x14,
+ 0x0a, 0x10, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x11, 0x0a, 0x0d, 0x54, 0x49, 0x45, 0x52, 0x5f, 0x53, 0x54, 0x41,
+ 0x4e, 0x44, 0x41, 0x52, 0x44, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x54, 0x49, 0x45, 0x52, 0x5f,
+ 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52, 0x49, 0x53, 0x45, 0x10, 0x02, 0x12, 0x1c, 0x0a, 0x14,
+ 0x54, 0x49, 0x45, 0x52, 0x5f, 0x45, 0x4e, 0x54, 0x45, 0x52, 0x50, 0x52, 0x49, 0x53, 0x45, 0x5f,
+ 0x50, 0x4c, 0x55, 0x53, 0x10, 0x03, 0x1a, 0x02, 0x08, 0x01, 0x3a, 0x6d, 0xea, 0x41, 0x6a, 0x0a,
+ 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x12, 0x18, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x2d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x52, 0x0a, 0x0f, 0x47, 0x65, 0x74,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x91, 0x01,
+ 0x0a, 0x0f, 0x53, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x41, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d,
+ 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c,
+ 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73,
+ 0x6b, 0x22, 0x55, 0x0a, 0x12, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x12,
+ 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x46, 0x0a, 0x08, 0x53, 0x75, 0x62, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x20,
+ 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x22, 0x92, 0x01, 0x0a, 0x13, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21,
+ 0x12, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67,
+ 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61,
+ 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x7e, 0x0a, 0x14, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x3e, 0x0a,
+ 0x06, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x26, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a,
+ 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x54, 0x0a, 0x11, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x22, 0x72, 0x0a, 0x12, 0x45,
+ 0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x22,
+ 0x64, 0x0a, 0x13, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f,
+ 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x55, 0x72, 0x69, 0x12, 0x25, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0c,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xa4, 0x01, 0x0a, 0x12, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a,
+ 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x48, 0x00, 0x52, 0x08, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x12, 0x25, 0x0a, 0x0d,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x22, 0xa5, 0x01, 0x0a,
+ 0x13, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x09, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x75,
+ 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x08, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x55, 0x72, 0x69, 0x12, 0x25, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x00, 0x52, 0x0c, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x07, 0x0a, 0x05, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x22, 0x87, 0x01, 0x0a, 0x1a, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69,
+ 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x3f, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x12, 0x1f, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x32, 0xca,
+ 0x12, 0x0a, 0x06, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0xcb, 0x01, 0x0a, 0x08, 0x47, 0x65,
+ 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x22, 0x65, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x56, 0x12, 0x22, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5a, 0x30, 0x12, 0x2e,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0xda, 0x41,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xe4, 0x01, 0x0a, 0x08, 0x53, 0x65, 0x74, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x22, 0x7e,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x70, 0x22, 0x28, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x3a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5a, 0x3d, 0x22, 0x34, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a,
+ 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x12, 0xc1,
+ 0x01, 0x0a, 0x0b, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x33,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x65, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x56, 0x2a, 0x22, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5a, 0x30, 0x2a, 0x2e, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0xf0, 0x01, 0x0a, 0x0c, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x67, 0x65,
+ 0x6e, 0x74, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72, 0x63, 0x68, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x61, 0x72,
+ 0x63, 0x68, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x64, 0x12, 0x29, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x73, 0x65, 0x61,
+ 0x72, 0x63, 0x68, 0x5a, 0x37, 0x12, 0x35, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x73, 0x65, 0x61, 0x72, 0x63, 0x68, 0xda, 0x41, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x8b, 0x02, 0x0a, 0x0a, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa9, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x68,
+ 0x22, 0x28, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x3a, 0x01, 0x2a, 0x5a, 0x39, 0x22,
+ 0x34, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a,
+ 0x74, 0x72, 0x61, 0x69, 0x6e, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
+ 0x75, 0x63, 0x74, 0x12, 0xad, 0x02, 0x0a, 0x0b, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xc9, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6a,
+ 0x22, 0x29, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x3a,
+ 0x22, 0x35, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x3a, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0xca, 0x41, 0x4d, 0x0a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72,
+ 0x75, 0x63, 0x74, 0x12, 0x86, 0x02, 0x0a, 0x0b, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70,
+ 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa2, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6a,
+ 0x22, 0x29, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x3a,
+ 0x22, 0x35, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x3a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
+ 0x6d, 0x70, 0x74, 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x8a, 0x02, 0x0a,
+ 0x0c, 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x52, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e,
+ 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0xa4, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6c, 0x22, 0x2a, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a,
+ 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x3b, 0x22, 0x36, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x3a, 0x72, 0x65, 0x73,
+ 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x01, 0x2a, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74,
+ 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x85, 0x02, 0x0a, 0x13, 0x47, 0x65,
+ 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x31,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x22, 0x7e, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x78, 0x12, 0x33, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x61,
+ 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x5a, 0x41,
+ 0x12, 0x3f, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c,
+ 0x74, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2,
+ 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74,
+ 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa2, 0x01, 0x0a, 0x23,
+ 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x42, 0x0a, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
+ 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02,
+ 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_agent_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_agent_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
+var file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes = make([]protoimpl.MessageInfo, 13)
+var file_google_cloud_dialogflow_v2beta1_agent_proto_goTypes = []interface{}{
+ (Agent_MatchMode)(0), // 0: google.cloud.dialogflow.v2beta1.Agent.MatchMode
+ (Agent_ApiVersion)(0), // 1: google.cloud.dialogflow.v2beta1.Agent.ApiVersion
+ (Agent_Tier)(0), // 2: google.cloud.dialogflow.v2beta1.Agent.Tier
+ (*Agent)(nil), // 3: google.cloud.dialogflow.v2beta1.Agent
+ (*GetAgentRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.GetAgentRequest
+ (*SetAgentRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.SetAgentRequest
+ (*DeleteAgentRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.DeleteAgentRequest
+ (*SubAgent)(nil), // 7: google.cloud.dialogflow.v2beta1.SubAgent
+ (*SearchAgentsRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.SearchAgentsRequest
+ (*SearchAgentsResponse)(nil), // 9: google.cloud.dialogflow.v2beta1.SearchAgentsResponse
+ (*TrainAgentRequest)(nil), // 10: google.cloud.dialogflow.v2beta1.TrainAgentRequest
+ (*ExportAgentRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.ExportAgentRequest
+ (*ExportAgentResponse)(nil), // 12: google.cloud.dialogflow.v2beta1.ExportAgentResponse
+ (*ImportAgentRequest)(nil), // 13: google.cloud.dialogflow.v2beta1.ImportAgentRequest
+ (*RestoreAgentRequest)(nil), // 14: google.cloud.dialogflow.v2beta1.RestoreAgentRequest
+ (*GetValidationResultRequest)(nil), // 15: google.cloud.dialogflow.v2beta1.GetValidationResultRequest
+ (*fieldmaskpb.FieldMask)(nil), // 16: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 17: google.protobuf.Empty
+ (*longrunning.Operation)(nil), // 18: google.longrunning.Operation
+ (*ValidationResult)(nil), // 19: google.cloud.dialogflow.v2beta1.ValidationResult
+}
+var file_google_cloud_dialogflow_v2beta1_agent_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.Agent.match_mode:type_name -> google.cloud.dialogflow.v2beta1.Agent.MatchMode
+ 1, // 1: google.cloud.dialogflow.v2beta1.Agent.api_version:type_name -> google.cloud.dialogflow.v2beta1.Agent.ApiVersion
+ 2, // 2: google.cloud.dialogflow.v2beta1.Agent.tier:type_name -> google.cloud.dialogflow.v2beta1.Agent.Tier
+ 3, // 3: google.cloud.dialogflow.v2beta1.SetAgentRequest.agent:type_name -> google.cloud.dialogflow.v2beta1.Agent
+ 16, // 4: google.cloud.dialogflow.v2beta1.SetAgentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 3, // 5: google.cloud.dialogflow.v2beta1.SearchAgentsResponse.agents:type_name -> google.cloud.dialogflow.v2beta1.Agent
+ 4, // 6: google.cloud.dialogflow.v2beta1.Agents.GetAgent:input_type -> google.cloud.dialogflow.v2beta1.GetAgentRequest
+ 5, // 7: google.cloud.dialogflow.v2beta1.Agents.SetAgent:input_type -> google.cloud.dialogflow.v2beta1.SetAgentRequest
+ 6, // 8: google.cloud.dialogflow.v2beta1.Agents.DeleteAgent:input_type -> google.cloud.dialogflow.v2beta1.DeleteAgentRequest
+ 8, // 9: google.cloud.dialogflow.v2beta1.Agents.SearchAgents:input_type -> google.cloud.dialogflow.v2beta1.SearchAgentsRequest
+ 10, // 10: google.cloud.dialogflow.v2beta1.Agents.TrainAgent:input_type -> google.cloud.dialogflow.v2beta1.TrainAgentRequest
+ 11, // 11: google.cloud.dialogflow.v2beta1.Agents.ExportAgent:input_type -> google.cloud.dialogflow.v2beta1.ExportAgentRequest
+ 13, // 12: google.cloud.dialogflow.v2beta1.Agents.ImportAgent:input_type -> google.cloud.dialogflow.v2beta1.ImportAgentRequest
+ 14, // 13: google.cloud.dialogflow.v2beta1.Agents.RestoreAgent:input_type -> google.cloud.dialogflow.v2beta1.RestoreAgentRequest
+ 15, // 14: google.cloud.dialogflow.v2beta1.Agents.GetValidationResult:input_type -> google.cloud.dialogflow.v2beta1.GetValidationResultRequest
+ 3, // 15: google.cloud.dialogflow.v2beta1.Agents.GetAgent:output_type -> google.cloud.dialogflow.v2beta1.Agent
+ 3, // 16: google.cloud.dialogflow.v2beta1.Agents.SetAgent:output_type -> google.cloud.dialogflow.v2beta1.Agent
+ 17, // 17: google.cloud.dialogflow.v2beta1.Agents.DeleteAgent:output_type -> google.protobuf.Empty
+ 9, // 18: google.cloud.dialogflow.v2beta1.Agents.SearchAgents:output_type -> google.cloud.dialogflow.v2beta1.SearchAgentsResponse
+ 18, // 19: google.cloud.dialogflow.v2beta1.Agents.TrainAgent:output_type -> google.longrunning.Operation
+ 18, // 20: google.cloud.dialogflow.v2beta1.Agents.ExportAgent:output_type -> google.longrunning.Operation
+ 18, // 21: google.cloud.dialogflow.v2beta1.Agents.ImportAgent:output_type -> google.longrunning.Operation
+ 18, // 22: google.cloud.dialogflow.v2beta1.Agents.RestoreAgent:output_type -> google.longrunning.Operation
+ 19, // 23: google.cloud.dialogflow.v2beta1.Agents.GetValidationResult:output_type -> google.cloud.dialogflow.v2beta1.ValidationResult
+ 15, // [15:24] is the sub-list for method output_type
+ 6, // [6:15] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_agent_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_agent_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_agent_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Agent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SubAgent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SearchAgentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SearchAgentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TrainAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ExportAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ExportAgentResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ImportAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*RestoreAgentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetValidationResultRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[9].OneofWrappers = []interface{}{
+ (*ExportAgentResponse_AgentUri)(nil),
+ (*ExportAgentResponse_AgentContent)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[10].OneofWrappers = []interface{}{
+ (*ImportAgentRequest_AgentUri)(nil),
+ (*ImportAgentRequest_AgentContent)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes[11].OneofWrappers = []interface{}{
+ (*RestoreAgentRequest_AgentUri)(nil),
+ (*RestoreAgentRequest_AgentContent)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_agent_proto_rawDesc,
+ NumEnums: 3,
+ NumMessages: 13,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_agent_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_agent_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_agent_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_agent_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_agent_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_agent_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_agent_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_agent_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// AgentsClient is the client API for Agents service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type AgentsClient interface {
+ // Retrieves the specified agent.
+ GetAgent(ctx context.Context, in *GetAgentRequest, opts ...grpc.CallOption) (*Agent, error)
+ // Creates/updates the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ SetAgent(ctx context.Context, in *SetAgentRequest, opts ...grpc.CallOption) (*Agent, error)
+ // Deletes the specified agent.
+ DeleteAgent(ctx context.Context, in *DeleteAgentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Returns the list of agents.
+ // Since there is at most one conversational agent per project, this method is
+ // useful primarily for listing all agents across projects the caller has
+ // access to. One can achieve that with a wildcard project collection id "-".
+ // Refer to [List
+ // Sub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).
+ SearchAgents(ctx context.Context, in *SearchAgentsRequest, opts ...grpc.CallOption) (*SearchAgentsResponse, error)
+ // Trains the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ TrainAgent(ctx context.Context, in *TrainAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Exports the specified agent to a ZIP file.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [ExportAgentResponse][google.cloud.dialogflow.v2beta1.ExportAgentResponse]
+ ExportAgent(ctx context.Context, in *ExportAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Imports the specified agent from a ZIP file.
+ //
+ // Uploads new intents and entity types without deleting the existing ones.
+ // Intents and entity types with the same name are replaced with the new
+ // versions from
+ // [ImportAgentRequest][google.cloud.dialogflow.v2beta1.ImportAgentRequest].
+ // After the import, the imported draft agent will be trained automatically
+ // (unless disabled in agent settings). However, once the import is done,
+ // training may not be completed yet. Please call
+ // [TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent] and wait
+ // for the operation it returns in order to train explicitly.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // The operation only tracks when importing is complete, not when it is done
+ // training.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ ImportAgent(ctx context.Context, in *ImportAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Restores the specified agent from a ZIP file.
+ //
+ // Replaces the current agent version with a new one. All the intents and
+ // entity types in the older version are deleted. After the restore, the
+ // restored draft agent will be trained automatically (unless disabled in
+ // agent settings). However, once the restore is done, training may not be
+ // completed yet. Please call
+ // [TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent] and wait
+ // for the operation it returns in order to train explicitly.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // The operation only tracks when restoring is complete, not when it is done
+ // training.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ RestoreAgent(ctx context.Context, in *RestoreAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Gets agent validation result. Agent validation is performed during
+ // training time and is updated automatically when training is completed.
+ GetValidationResult(ctx context.Context, in *GetValidationResultRequest, opts ...grpc.CallOption) (*ValidationResult, error)
+}
+
+type agentsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewAgentsClient(cc grpc.ClientConnInterface) AgentsClient {
+ return &agentsClient{cc}
+}
+
+func (c *agentsClient) GetAgent(ctx context.Context, in *GetAgentRequest, opts ...grpc.CallOption) (*Agent, error) {
+ out := new(Agent)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/GetAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) SetAgent(ctx context.Context, in *SetAgentRequest, opts ...grpc.CallOption) (*Agent, error) {
+ out := new(Agent)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/SetAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) DeleteAgent(ctx context.Context, in *DeleteAgentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/DeleteAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) SearchAgents(ctx context.Context, in *SearchAgentsRequest, opts ...grpc.CallOption) (*SearchAgentsResponse, error) {
+ out := new(SearchAgentsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/SearchAgents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) TrainAgent(ctx context.Context, in *TrainAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/TrainAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) ExportAgent(ctx context.Context, in *ExportAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/ExportAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) ImportAgent(ctx context.Context, in *ImportAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/ImportAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) RestoreAgent(ctx context.Context, in *RestoreAgentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/RestoreAgent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *agentsClient) GetValidationResult(ctx context.Context, in *GetValidationResultRequest, opts ...grpc.CallOption) (*ValidationResult, error) {
+ out := new(ValidationResult)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Agents/GetValidationResult", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// AgentsServer is the server API for Agents service.
+type AgentsServer interface {
+ // Retrieves the specified agent.
+ GetAgent(context.Context, *GetAgentRequest) (*Agent, error)
+ // Creates/updates the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ SetAgent(context.Context, *SetAgentRequest) (*Agent, error)
+ // Deletes the specified agent.
+ DeleteAgent(context.Context, *DeleteAgentRequest) (*emptypb.Empty, error)
+ // Returns the list of agents.
+ // Since there is at most one conversational agent per project, this method is
+ // useful primarily for listing all agents across projects the caller has
+ // access to. One can achieve that with a wildcard project collection id "-".
+ // Refer to [List
+ // Sub-Collections](https://cloud.google.com/apis/design/design_patterns#list_sub-collections).
+ SearchAgents(context.Context, *SearchAgentsRequest) (*SearchAgentsResponse, error)
+ // Trains the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ TrainAgent(context.Context, *TrainAgentRequest) (*longrunning.Operation, error)
+ // Exports the specified agent to a ZIP file.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [ExportAgentResponse][google.cloud.dialogflow.v2beta1.ExportAgentResponse]
+ ExportAgent(context.Context, *ExportAgentRequest) (*longrunning.Operation, error)
+ // Imports the specified agent from a ZIP file.
+ //
+ // Uploads new intents and entity types without deleting the existing ones.
+ // Intents and entity types with the same name are replaced with the new
+ // versions from
+ // [ImportAgentRequest][google.cloud.dialogflow.v2beta1.ImportAgentRequest].
+ // After the import, the imported draft agent will be trained automatically
+ // (unless disabled in agent settings). However, once the import is done,
+ // training may not be completed yet. Please call
+ // [TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent] and wait
+ // for the operation it returns in order to train explicitly.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // The operation only tracks when importing is complete, not when it is done
+ // training.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ ImportAgent(context.Context, *ImportAgentRequest) (*longrunning.Operation, error)
+ // Restores the specified agent from a ZIP file.
+ //
+ // Replaces the current agent version with a new one. All the intents and
+ // entity types in the older version are deleted. After the restore, the
+ // restored draft agent will be trained automatically (unless disabled in
+ // agent settings). However, once the restore is done, training may not be
+ // completed yet. Please call
+ // [TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent] and wait
+ // for the operation it returns in order to train explicitly.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // The operation only tracks when restoring is complete, not when it is done
+ // training.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ RestoreAgent(context.Context, *RestoreAgentRequest) (*longrunning.Operation, error)
+ // Gets agent validation result. Agent validation is performed during
+ // training time and is updated automatically when training is completed.
+ GetValidationResult(context.Context, *GetValidationResultRequest) (*ValidationResult, error)
+}
+
+// UnimplementedAgentsServer can be embedded to have forward compatible implementations.
+type UnimplementedAgentsServer struct {
+}
+
+func (*UnimplementedAgentsServer) GetAgent(context.Context, *GetAgentRequest) (*Agent, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetAgent not implemented")
+}
+func (*UnimplementedAgentsServer) SetAgent(context.Context, *SetAgentRequest) (*Agent, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SetAgent not implemented")
+}
+func (*UnimplementedAgentsServer) DeleteAgent(context.Context, *DeleteAgentRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteAgent not implemented")
+}
+func (*UnimplementedAgentsServer) SearchAgents(context.Context, *SearchAgentsRequest) (*SearchAgentsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SearchAgents not implemented")
+}
+func (*UnimplementedAgentsServer) TrainAgent(context.Context, *TrainAgentRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method TrainAgent not implemented")
+}
+func (*UnimplementedAgentsServer) ExportAgent(context.Context, *ExportAgentRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ExportAgent not implemented")
+}
+func (*UnimplementedAgentsServer) ImportAgent(context.Context, *ImportAgentRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ImportAgent not implemented")
+}
+func (*UnimplementedAgentsServer) RestoreAgent(context.Context, *RestoreAgentRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method RestoreAgent not implemented")
+}
+func (*UnimplementedAgentsServer) GetValidationResult(context.Context, *GetValidationResultRequest) (*ValidationResult, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetValidationResult not implemented")
+}
+
+func RegisterAgentsServer(s *grpc.Server, srv AgentsServer) {
+ s.RegisterService(&_Agents_serviceDesc, srv)
+}
+
+func _Agents_GetAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).GetAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/GetAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).GetAgent(ctx, req.(*GetAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_SetAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).SetAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/SetAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).SetAgent(ctx, req.(*SetAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_DeleteAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).DeleteAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/DeleteAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).DeleteAgent(ctx, req.(*DeleteAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_SearchAgents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SearchAgentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).SearchAgents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/SearchAgents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).SearchAgents(ctx, req.(*SearchAgentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_TrainAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(TrainAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).TrainAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/TrainAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).TrainAgent(ctx, req.(*TrainAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_ExportAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ExportAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).ExportAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/ExportAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).ExportAgent(ctx, req.(*ExportAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_ImportAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImportAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).ImportAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/ImportAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).ImportAgent(ctx, req.(*ImportAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_RestoreAgent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(RestoreAgentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).RestoreAgent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/RestoreAgent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).RestoreAgent(ctx, req.(*RestoreAgentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Agents_GetValidationResult_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetValidationResultRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AgentsServer).GetValidationResult(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Agents/GetValidationResult",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AgentsServer).GetValidationResult(ctx, req.(*GetValidationResultRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Agents_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Agents",
+ HandlerType: (*AgentsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetAgent",
+ Handler: _Agents_GetAgent_Handler,
+ },
+ {
+ MethodName: "SetAgent",
+ Handler: _Agents_SetAgent_Handler,
+ },
+ {
+ MethodName: "DeleteAgent",
+ Handler: _Agents_DeleteAgent_Handler,
+ },
+ {
+ MethodName: "SearchAgents",
+ Handler: _Agents_SearchAgents_Handler,
+ },
+ {
+ MethodName: "TrainAgent",
+ Handler: _Agents_TrainAgent_Handler,
+ },
+ {
+ MethodName: "ExportAgent",
+ Handler: _Agents_ExportAgent_Handler,
+ },
+ {
+ MethodName: "ImportAgent",
+ Handler: _Agents_ImportAgent_Handler,
+ },
+ {
+ MethodName: "RestoreAgent",
+ Handler: _Agents_RestoreAgent_Handler,
+ },
+ {
+ MethodName: "GetValidationResult",
+ Handler: _Agents_GetValidationResult_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/agent.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/answer_record.pb.go b/dialogflow/apiv2beta1/dialogflowpb/answer_record.pb.go
new file mode 100644
index 0000000..bf5249a
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/answer_record.pb.go
@@ -0,0 +1,1664 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/answer_record.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The correctness level of an answer.
+type AnswerFeedback_CorrectnessLevel int32
+
+const (
+ // Correctness level unspecified.
+ AnswerFeedback_CORRECTNESS_LEVEL_UNSPECIFIED AnswerFeedback_CorrectnessLevel = 0
+ // Answer is totally wrong.
+ AnswerFeedback_NOT_CORRECT AnswerFeedback_CorrectnessLevel = 1
+ // Answer is partially correct.
+ AnswerFeedback_PARTIALLY_CORRECT AnswerFeedback_CorrectnessLevel = 2
+ // Answer is fully correct.
+ AnswerFeedback_FULLY_CORRECT AnswerFeedback_CorrectnessLevel = 3
+)
+
+// Enum value maps for AnswerFeedback_CorrectnessLevel.
+var (
+ AnswerFeedback_CorrectnessLevel_name = map[int32]string{
+ 0: "CORRECTNESS_LEVEL_UNSPECIFIED",
+ 1: "NOT_CORRECT",
+ 2: "PARTIALLY_CORRECT",
+ 3: "FULLY_CORRECT",
+ }
+ AnswerFeedback_CorrectnessLevel_value = map[string]int32{
+ "CORRECTNESS_LEVEL_UNSPECIFIED": 0,
+ "NOT_CORRECT": 1,
+ "PARTIALLY_CORRECT": 2,
+ "FULLY_CORRECT": 3,
+ }
+)
+
+func (x AnswerFeedback_CorrectnessLevel) Enum() *AnswerFeedback_CorrectnessLevel {
+ p := new(AnswerFeedback_CorrectnessLevel)
+ *p = x
+ return p
+}
+
+func (x AnswerFeedback_CorrectnessLevel) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AnswerFeedback_CorrectnessLevel) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[0].Descriptor()
+}
+
+func (AnswerFeedback_CorrectnessLevel) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[0]
+}
+
+func (x AnswerFeedback_CorrectnessLevel) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AnswerFeedback_CorrectnessLevel.Descriptor instead.
+func (AnswerFeedback_CorrectnessLevel) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{2, 0}
+}
+
+// Relevance of an answer.
+type AgentAssistantFeedback_AnswerRelevance int32
+
+const (
+ // Answer relevance unspecified.
+ AgentAssistantFeedback_ANSWER_RELEVANCE_UNSPECIFIED AgentAssistantFeedback_AnswerRelevance = 0
+ // Answer is irrelevant to query.
+ AgentAssistantFeedback_IRRELEVANT AgentAssistantFeedback_AnswerRelevance = 1
+ // Answer is relevant to query.
+ AgentAssistantFeedback_RELEVANT AgentAssistantFeedback_AnswerRelevance = 2
+)
+
+// Enum value maps for AgentAssistantFeedback_AnswerRelevance.
+var (
+ AgentAssistantFeedback_AnswerRelevance_name = map[int32]string{
+ 0: "ANSWER_RELEVANCE_UNSPECIFIED",
+ 1: "IRRELEVANT",
+ 2: "RELEVANT",
+ }
+ AgentAssistantFeedback_AnswerRelevance_value = map[string]int32{
+ "ANSWER_RELEVANCE_UNSPECIFIED": 0,
+ "IRRELEVANT": 1,
+ "RELEVANT": 2,
+ }
+)
+
+func (x AgentAssistantFeedback_AnswerRelevance) Enum() *AgentAssistantFeedback_AnswerRelevance {
+ p := new(AgentAssistantFeedback_AnswerRelevance)
+ *p = x
+ return p
+}
+
+func (x AgentAssistantFeedback_AnswerRelevance) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AgentAssistantFeedback_AnswerRelevance) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[1].Descriptor()
+}
+
+func (AgentAssistantFeedback_AnswerRelevance) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[1]
+}
+
+func (x AgentAssistantFeedback_AnswerRelevance) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AgentAssistantFeedback_AnswerRelevance.Descriptor instead.
+func (AgentAssistantFeedback_AnswerRelevance) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{3, 0}
+}
+
+// Correctness of document.
+type AgentAssistantFeedback_DocumentCorrectness int32
+
+const (
+ // Document correctness unspecified.
+ AgentAssistantFeedback_DOCUMENT_CORRECTNESS_UNSPECIFIED AgentAssistantFeedback_DocumentCorrectness = 0
+ // Information in document is incorrect.
+ AgentAssistantFeedback_INCORRECT AgentAssistantFeedback_DocumentCorrectness = 1
+ // Information in document is correct.
+ AgentAssistantFeedback_CORRECT AgentAssistantFeedback_DocumentCorrectness = 2
+)
+
+// Enum value maps for AgentAssistantFeedback_DocumentCorrectness.
+var (
+ AgentAssistantFeedback_DocumentCorrectness_name = map[int32]string{
+ 0: "DOCUMENT_CORRECTNESS_UNSPECIFIED",
+ 1: "INCORRECT",
+ 2: "CORRECT",
+ }
+ AgentAssistantFeedback_DocumentCorrectness_value = map[string]int32{
+ "DOCUMENT_CORRECTNESS_UNSPECIFIED": 0,
+ "INCORRECT": 1,
+ "CORRECT": 2,
+ }
+)
+
+func (x AgentAssistantFeedback_DocumentCorrectness) Enum() *AgentAssistantFeedback_DocumentCorrectness {
+ p := new(AgentAssistantFeedback_DocumentCorrectness)
+ *p = x
+ return p
+}
+
+func (x AgentAssistantFeedback_DocumentCorrectness) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AgentAssistantFeedback_DocumentCorrectness) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[2].Descriptor()
+}
+
+func (AgentAssistantFeedback_DocumentCorrectness) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[2]
+}
+
+func (x AgentAssistantFeedback_DocumentCorrectness) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AgentAssistantFeedback_DocumentCorrectness.Descriptor instead.
+func (AgentAssistantFeedback_DocumentCorrectness) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{3, 1}
+}
+
+// Efficiency of document.
+type AgentAssistantFeedback_DocumentEfficiency int32
+
+const (
+ // Document efficiency unspecified.
+ AgentAssistantFeedback_DOCUMENT_EFFICIENCY_UNSPECIFIED AgentAssistantFeedback_DocumentEfficiency = 0
+ // Document is inefficient.
+ AgentAssistantFeedback_INEFFICIENT AgentAssistantFeedback_DocumentEfficiency = 1
+ // Document is efficient.
+ AgentAssistantFeedback_EFFICIENT AgentAssistantFeedback_DocumentEfficiency = 2
+)
+
+// Enum value maps for AgentAssistantFeedback_DocumentEfficiency.
+var (
+ AgentAssistantFeedback_DocumentEfficiency_name = map[int32]string{
+ 0: "DOCUMENT_EFFICIENCY_UNSPECIFIED",
+ 1: "INEFFICIENT",
+ 2: "EFFICIENT",
+ }
+ AgentAssistantFeedback_DocumentEfficiency_value = map[string]int32{
+ "DOCUMENT_EFFICIENCY_UNSPECIFIED": 0,
+ "INEFFICIENT": 1,
+ "EFFICIENT": 2,
+ }
+)
+
+func (x AgentAssistantFeedback_DocumentEfficiency) Enum() *AgentAssistantFeedback_DocumentEfficiency {
+ p := new(AgentAssistantFeedback_DocumentEfficiency)
+ *p = x
+ return p
+}
+
+func (x AgentAssistantFeedback_DocumentEfficiency) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AgentAssistantFeedback_DocumentEfficiency) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[3].Descriptor()
+}
+
+func (AgentAssistantFeedback_DocumentEfficiency) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes[3]
+}
+
+func (x AgentAssistantFeedback_DocumentEfficiency) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AgentAssistantFeedback_DocumentEfficiency.Descriptor instead.
+func (AgentAssistantFeedback_DocumentEfficiency) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{3, 2}
+}
+
+// Answer records are records to manage answer history and feedbacks for
+// Dialogflow.
+//
+// Currently, answer record includes:
+//
+// - human agent assistant article suggestion
+// - human agent assistant faq article
+//
+// It doesn't include:
+//
+// - `DetectIntent` intent matching
+// - `DetectIntent` knowledge
+//
+// Answer records are not related to the conversation history in the
+// Dialogflow Console. A Record is generated even when the end-user disables
+// conversation history in the console. Records are created when there's a human
+// agent assistant suggestion generated.
+//
+// A typical workflow for customers provide feedback to an answer is:
+//
+// 1. For human agent assistant, customers get suggestion via ListSuggestions
+// API. Together with the answers,
+// [AnswerRecord.name][google.cloud.dialogflow.v2beta1.AnswerRecord.name] are
+// returned to the customers.
+// 2. The customer uses the
+//
+// [AnswerRecord.name][google.cloud.dialogflow.v2beta1.AnswerRecord.name] to
+// call the
+//
+// [UpdateAnswerRecord][] method to send feedback about a specific answer
+// that they believe is wrong.
+type AnswerRecord struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of this answer record.
+ // Required for
+ // [AnswerRecords.UpdateAnswerRecord][google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord]
+ // method. Format: `projects/<Project ID>/locations/<Location
+ // ID>/answerRecords/<Answer Record ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The AnswerFeedback for this record. You can set this with
+ // [AnswerRecords.UpdateAnswerRecord][google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord]
+ // in order to give us feedback about this answer.
+ AnswerFeedback *AnswerFeedback `protobuf:"bytes,3,opt,name=answer_feedback,json=answerFeedback,proto3" json:"answer_feedback,omitempty"`
+ // Output only. The record for this answer.
+ //
+ // Types that are assignable to Record:
+ //
+ // *AnswerRecord_AgentAssistantRecord
+ Record isAnswerRecord_Record `protobuf_oneof:"record"`
+}
+
+func (x *AnswerRecord) Reset() {
+ *x = AnswerRecord{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AnswerRecord) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AnswerRecord) ProtoMessage() {}
+
+func (x *AnswerRecord) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AnswerRecord.ProtoReflect.Descriptor instead.
+func (*AnswerRecord) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *AnswerRecord) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *AnswerRecord) GetAnswerFeedback() *AnswerFeedback {
+ if x != nil {
+ return x.AnswerFeedback
+ }
+ return nil
+}
+
+func (m *AnswerRecord) GetRecord() isAnswerRecord_Record {
+ if m != nil {
+ return m.Record
+ }
+ return nil
+}
+
+func (x *AnswerRecord) GetAgentAssistantRecord() *AgentAssistantRecord {
+ if x, ok := x.GetRecord().(*AnswerRecord_AgentAssistantRecord); ok {
+ return x.AgentAssistantRecord
+ }
+ return nil
+}
+
+type isAnswerRecord_Record interface {
+ isAnswerRecord_Record()
+}
+
+type AnswerRecord_AgentAssistantRecord struct {
+ // Output only. The record for human agent assistant.
+ AgentAssistantRecord *AgentAssistantRecord `protobuf:"bytes,4,opt,name=agent_assistant_record,json=agentAssistantRecord,proto3,oneof"`
+}
+
+func (*AnswerRecord_AgentAssistantRecord) isAnswerRecord_Record() {}
+
+// Represents a record of a human agent assistant answer.
+type AgentAssistantRecord struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The agent assistant answer.
+ //
+ // Types that are assignable to Answer:
+ //
+ // *AgentAssistantRecord_ArticleSuggestionAnswer
+ // *AgentAssistantRecord_FaqAnswer
+ Answer isAgentAssistantRecord_Answer `protobuf_oneof:"answer"`
+}
+
+func (x *AgentAssistantRecord) Reset() {
+ *x = AgentAssistantRecord{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AgentAssistantRecord) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AgentAssistantRecord) ProtoMessage() {}
+
+func (x *AgentAssistantRecord) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AgentAssistantRecord.ProtoReflect.Descriptor instead.
+func (*AgentAssistantRecord) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *AgentAssistantRecord) GetAnswer() isAgentAssistantRecord_Answer {
+ if m != nil {
+ return m.Answer
+ }
+ return nil
+}
+
+func (x *AgentAssistantRecord) GetArticleSuggestionAnswer() *ArticleAnswer {
+ if x, ok := x.GetAnswer().(*AgentAssistantRecord_ArticleSuggestionAnswer); ok {
+ return x.ArticleSuggestionAnswer
+ }
+ return nil
+}
+
+func (x *AgentAssistantRecord) GetFaqAnswer() *FaqAnswer {
+ if x, ok := x.GetAnswer().(*AgentAssistantRecord_FaqAnswer); ok {
+ return x.FaqAnswer
+ }
+ return nil
+}
+
+type isAgentAssistantRecord_Answer interface {
+ isAgentAssistantRecord_Answer()
+}
+
+type AgentAssistantRecord_ArticleSuggestionAnswer struct {
+ // Output only. The article suggestion answer.
+ ArticleSuggestionAnswer *ArticleAnswer `protobuf:"bytes,5,opt,name=article_suggestion_answer,json=articleSuggestionAnswer,proto3,oneof"`
+}
+
+type AgentAssistantRecord_FaqAnswer struct {
+ // Output only. The FAQ answer.
+ FaqAnswer *FaqAnswer `protobuf:"bytes,6,opt,name=faq_answer,json=faqAnswer,proto3,oneof"`
+}
+
+func (*AgentAssistantRecord_ArticleSuggestionAnswer) isAgentAssistantRecord_Answer() {}
+
+func (*AgentAssistantRecord_FaqAnswer) isAgentAssistantRecord_Answer() {}
+
+// Represents feedback the customer has about the quality & correctness of a
+// certain answer in a conversation.
+type AnswerFeedback struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The correctness level of the specific answer.
+ CorrectnessLevel AnswerFeedback_CorrectnessLevel `protobuf:"varint,1,opt,name=correctness_level,json=correctnessLevel,proto3,enum=google.cloud.dialogflow.v2beta1.AnswerFeedback_CorrectnessLevel" json:"correctness_level,omitempty"`
+ // Normally, detail feedback is provided when answer is not fully correct.
+ //
+ // Types that are assignable to DetailFeedback:
+ //
+ // *AnswerFeedback_AgentAssistantDetailFeedback
+ DetailFeedback isAnswerFeedback_DetailFeedback `protobuf_oneof:"detail_feedback"`
+ // Indicates whether the answer/item was clicked by the human agent
+ // or not. Default to false.
+ Clicked bool `protobuf:"varint,3,opt,name=clicked,proto3" json:"clicked,omitempty"`
+ // Time when the answer/item was clicked.
+ ClickTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=click_time,json=clickTime,proto3" json:"click_time,omitempty"`
+ // Indicates whether the answer/item was displayed to the human
+ // agent in the agent desktop UI. Default to false.
+ Displayed bool `protobuf:"varint,4,opt,name=displayed,proto3" json:"displayed,omitempty"`
+ // Time when the answer/item was displayed.
+ DisplayTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=display_time,json=displayTime,proto3" json:"display_time,omitempty"`
+}
+
+func (x *AnswerFeedback) Reset() {
+ *x = AnswerFeedback{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AnswerFeedback) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AnswerFeedback) ProtoMessage() {}
+
+func (x *AnswerFeedback) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AnswerFeedback.ProtoReflect.Descriptor instead.
+func (*AnswerFeedback) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *AnswerFeedback) GetCorrectnessLevel() AnswerFeedback_CorrectnessLevel {
+ if x != nil {
+ return x.CorrectnessLevel
+ }
+ return AnswerFeedback_CORRECTNESS_LEVEL_UNSPECIFIED
+}
+
+func (m *AnswerFeedback) GetDetailFeedback() isAnswerFeedback_DetailFeedback {
+ if m != nil {
+ return m.DetailFeedback
+ }
+ return nil
+}
+
+func (x *AnswerFeedback) GetAgentAssistantDetailFeedback() *AgentAssistantFeedback {
+ if x, ok := x.GetDetailFeedback().(*AnswerFeedback_AgentAssistantDetailFeedback); ok {
+ return x.AgentAssistantDetailFeedback
+ }
+ return nil
+}
+
+func (x *AnswerFeedback) GetClicked() bool {
+ if x != nil {
+ return x.Clicked
+ }
+ return false
+}
+
+func (x *AnswerFeedback) GetClickTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.ClickTime
+ }
+ return nil
+}
+
+func (x *AnswerFeedback) GetDisplayed() bool {
+ if x != nil {
+ return x.Displayed
+ }
+ return false
+}
+
+func (x *AnswerFeedback) GetDisplayTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.DisplayTime
+ }
+ return nil
+}
+
+type isAnswerFeedback_DetailFeedback interface {
+ isAnswerFeedback_DetailFeedback()
+}
+
+type AnswerFeedback_AgentAssistantDetailFeedback struct {
+ // Optional. Detail feedback of agent assistant suggestions.
+ AgentAssistantDetailFeedback *AgentAssistantFeedback `protobuf:"bytes,2,opt,name=agent_assistant_detail_feedback,json=agentAssistantDetailFeedback,proto3,oneof"`
+}
+
+func (*AnswerFeedback_AgentAssistantDetailFeedback) isAnswerFeedback_DetailFeedback() {}
+
+// Detail feedback of Agent Assistant result.
+type AgentAssistantFeedback struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. Whether or not the suggested answer is relevant.
+ //
+ // For example:
+ //
+ // - Query: "Can I change my mailing address?"
+ // - Suggested document says: "Items must be returned/exchanged within 60
+ // days of the purchase date."
+ // - [answer_relevance][google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.answer_relevance]: [AnswerRelevance.IRRELEVANT][google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.AnswerRelevance.IRRELEVANT]
+ AnswerRelevance AgentAssistantFeedback_AnswerRelevance `protobuf:"varint,1,opt,name=answer_relevance,json=answerRelevance,proto3,enum=google.cloud.dialogflow.v2beta1.AgentAssistantFeedback_AnswerRelevance" json:"answer_relevance,omitempty"`
+ // Optional. Whether or not the information in the document is correct.
+ //
+ // For example:
+ //
+ // - Query: "Can I return the package in 2 days once received?"
+ // - Suggested document says: "Items must be returned/exchanged within 60
+ // days of the purchase date."
+ // - Ground truth: "No return or exchange is allowed."
+ // - [document_correctness]: INCORRECT
+ DocumentCorrectness AgentAssistantFeedback_DocumentCorrectness `protobuf:"varint,2,opt,name=document_correctness,json=documentCorrectness,proto3,enum=google.cloud.dialogflow.v2beta1.AgentAssistantFeedback_DocumentCorrectness" json:"document_correctness,omitempty"`
+ // Optional. Whether or not the suggested document is efficient. For example,
+ // if the document is poorly written, hard to understand, hard to use or
+ // too long to find useful information,
+ // [document_efficiency][google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.document_efficiency]
+ // is
+ // [DocumentEfficiency.INEFFICIENT][google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.DocumentEfficiency.INEFFICIENT].
+ DocumentEfficiency AgentAssistantFeedback_DocumentEfficiency `protobuf:"varint,3,opt,name=document_efficiency,json=documentEfficiency,proto3,enum=google.cloud.dialogflow.v2beta1.AgentAssistantFeedback_DocumentEfficiency" json:"document_efficiency,omitempty"`
+ // Feedback for conversation summarization.
+ SummarizationFeedback *AgentAssistantFeedback_SummarizationFeedback `protobuf:"bytes,4,opt,name=summarization_feedback,json=summarizationFeedback,proto3" json:"summarization_feedback,omitempty"`
+}
+
+func (x *AgentAssistantFeedback) Reset() {
+ *x = AgentAssistantFeedback{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AgentAssistantFeedback) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AgentAssistantFeedback) ProtoMessage() {}
+
+func (x *AgentAssistantFeedback) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AgentAssistantFeedback.ProtoReflect.Descriptor instead.
+func (*AgentAssistantFeedback) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *AgentAssistantFeedback) GetAnswerRelevance() AgentAssistantFeedback_AnswerRelevance {
+ if x != nil {
+ return x.AnswerRelevance
+ }
+ return AgentAssistantFeedback_ANSWER_RELEVANCE_UNSPECIFIED
+}
+
+func (x *AgentAssistantFeedback) GetDocumentCorrectness() AgentAssistantFeedback_DocumentCorrectness {
+ if x != nil {
+ return x.DocumentCorrectness
+ }
+ return AgentAssistantFeedback_DOCUMENT_CORRECTNESS_UNSPECIFIED
+}
+
+func (x *AgentAssistantFeedback) GetDocumentEfficiency() AgentAssistantFeedback_DocumentEfficiency {
+ if x != nil {
+ return x.DocumentEfficiency
+ }
+ return AgentAssistantFeedback_DOCUMENT_EFFICIENCY_UNSPECIFIED
+}
+
+func (x *AgentAssistantFeedback) GetSummarizationFeedback() *AgentAssistantFeedback_SummarizationFeedback {
+ if x != nil {
+ return x.SummarizationFeedback
+ }
+ return nil
+}
+
+// Request message for
+// [AnswerRecords.GetAnswerRecord][google.cloud.dialogflow.v2beta1.AnswerRecords.GetAnswerRecord].
+type GetAnswerRecordRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the answer record to retrieve.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/answerRecords/<Answer Record Id>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetAnswerRecordRequest) Reset() {
+ *x = GetAnswerRecordRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetAnswerRecordRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetAnswerRecordRequest) ProtoMessage() {}
+
+func (x *GetAnswerRecordRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetAnswerRecordRequest.ProtoReflect.Descriptor instead.
+func (*GetAnswerRecordRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *GetAnswerRecordRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for
+// [AnswerRecords.ListAnswerRecords][google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords].
+type ListAnswerRecordsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to list all answer records for in reverse
+ // chronological order. Format: `projects/<Project ID>/locations/<Location
+ // ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. Filters to restrict results to specific answer records.
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ //
+ // Deprecated: Do not use.
+ Filter string `protobuf:"bytes,2,opt,name=filter,proto3" json:"filter,omitempty"`
+ // Optional. The maximum number of records to return in a single page.
+ // The server may return fewer records than this. If unspecified, we use 10.
+ // The maximum is 100.
+ PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The
+ // [ListAnswerRecordsResponse.next_page_token][google.cloud.dialogflow.v2beta1.ListAnswerRecordsResponse.next_page_token]
+ // value returned from a previous list request used to continue listing on
+ // the next page.
+ PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListAnswerRecordsRequest) Reset() {
+ *x = ListAnswerRecordsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListAnswerRecordsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListAnswerRecordsRequest) ProtoMessage() {}
+
+func (x *ListAnswerRecordsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListAnswerRecordsRequest.ProtoReflect.Descriptor instead.
+func (*ListAnswerRecordsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *ListAnswerRecordsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+// Deprecated: Do not use.
+func (x *ListAnswerRecordsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+func (x *ListAnswerRecordsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListAnswerRecordsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// Response message for
+// [AnswerRecords.ListAnswerRecords][google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords].
+type ListAnswerRecordsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of answer records.
+ AnswerRecords []*AnswerRecord `protobuf:"bytes,1,rep,name=answer_records,json=answerRecords,proto3" json:"answer_records,omitempty"`
+ // A token to retrieve next page of results. Or empty if there are no more
+ // results.
+ // Pass this value in the
+ // [ListAnswerRecordsRequest.page_token][google.cloud.dialogflow.v2beta1.ListAnswerRecordsRequest.page_token]
+ // field in the subsequent call to `ListAnswerRecords` method to retrieve the
+ // next page of results.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListAnswerRecordsResponse) Reset() {
+ *x = ListAnswerRecordsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListAnswerRecordsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListAnswerRecordsResponse) ProtoMessage() {}
+
+func (x *ListAnswerRecordsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListAnswerRecordsResponse.ProtoReflect.Descriptor instead.
+func (*ListAnswerRecordsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ListAnswerRecordsResponse) GetAnswerRecords() []*AnswerRecord {
+ if x != nil {
+ return x.AnswerRecords
+ }
+ return nil
+}
+
+func (x *ListAnswerRecordsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [AnswerRecords.UpdateAnswerRecord][google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord].
+type UpdateAnswerRecordRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Answer record to update.
+ AnswerRecord *AnswerRecord `protobuf:"bytes,1,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+ // Required. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateAnswerRecordRequest) Reset() {
+ *x = UpdateAnswerRecordRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateAnswerRecordRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateAnswerRecordRequest) ProtoMessage() {}
+
+func (x *UpdateAnswerRecordRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateAnswerRecordRequest.ProtoReflect.Descriptor instead.
+func (*UpdateAnswerRecordRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *UpdateAnswerRecordRequest) GetAnswerRecord() *AnswerRecord {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return nil
+}
+
+func (x *UpdateAnswerRecordRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// Feedback for conversation summarization.
+type AgentAssistantFeedback_SummarizationFeedback struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Timestamp when composing of the summary starts.
+ StartTimestamp *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=start_timestamp,json=startTimestamp,proto3" json:"start_timestamp,omitempty"`
+ // Timestamp when the summary was submitted.
+ SubmitTimestamp *timestamppb.Timestamp `protobuf:"bytes,2,opt,name=submit_timestamp,json=submitTimestamp,proto3" json:"submit_timestamp,omitempty"`
+ // Text of actual submitted summary.
+ SummaryText string `protobuf:"bytes,3,opt,name=summary_text,json=summaryText,proto3" json:"summary_text,omitempty"`
+}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) Reset() {
+ *x = AgentAssistantFeedback_SummarizationFeedback{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AgentAssistantFeedback_SummarizationFeedback) ProtoMessage() {}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AgentAssistantFeedback_SummarizationFeedback.ProtoReflect.Descriptor instead.
+func (*AgentAssistantFeedback_SummarizationFeedback) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP(), []int{3, 0}
+}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) GetStartTimestamp() *timestamppb.Timestamp {
+ if x != nil {
+ return x.StartTimestamp
+ }
+ return nil
+}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) GetSubmitTimestamp() *timestamppb.Timestamp {
+ if x != nil {
+ return x.SubmitTimestamp
+ }
+ return nil
+}
+
+func (x *AgentAssistantFeedback_SummarizationFeedback) GetSummaryText() string {
+ if x != nil {
+ return x.SummaryText
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_answer_record_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDesc = []byte{
+ 0x0a, 0x33, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f,
+ 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69,
+ 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
+ 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
+ 0x9d, 0x03, 0x0a, 0x0c, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x58, 0x0a, 0x0f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x66,
+ 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x52, 0x0e,
+ 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x6d,
+ 0x0a, 0x16, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e,
+ 0x74, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x52,
+ 0x65, 0x63, 0x6f, 0x72, 0x64, 0x48, 0x00, 0x52, 0x14, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73,
+ 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x3a, 0xa5, 0x01,
+ 0xea, 0x41, 0xa1, 0x01, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x30, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
+ 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x2f, 0x7b,
+ 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x7d, 0x12, 0x45,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x73, 0x2f, 0x7b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x7d, 0x42, 0x08, 0x0a, 0x06, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22,
+ 0xe5, 0x01, 0x0a, 0x14, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61,
+ 0x6e, 0x74, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x71, 0x0a, 0x19, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x61,
+ 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x72,
+ 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03,
+ 0x48, 0x00, 0x52, 0x17, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x50, 0x0a, 0x0a, 0x66,
+ 0x61, 0x71, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x03,
+ 0x48, 0x00, 0x52, 0x09, 0x66, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x42, 0x08, 0x0a,
+ 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x22, 0xb9, 0x04, 0x0a, 0x0e, 0x41, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x6d, 0x0a, 0x11, 0x63, 0x6f,
+ 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x46, 0x65,
+ 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x2e, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65,
+ 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x52, 0x10, 0x63, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74,
+ 0x6e, 0x65, 0x73, 0x73, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x80, 0x01, 0x0a, 0x1f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x64, 0x65,
+ 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73,
+ 0x74, 0x61, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x48, 0x00, 0x52, 0x1c,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x44, 0x65,
+ 0x74, 0x61, 0x69, 0x6c, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x18, 0x0a, 0x07,
+ 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x63,
+ 0x6c, 0x69, 0x63, 0x6b, 0x65, 0x64, 0x12, 0x39, 0x0a, 0x0a, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x5f,
+ 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d,
+ 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x09, 0x63, 0x6c, 0x69, 0x63, 0x6b, 0x54, 0x69, 0x6d,
+ 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x65, 0x64, 0x12,
+ 0x3d, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
+ 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x70,
+ 0x0a, 0x10, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x4c, 0x65, 0x76,
+ 0x65, 0x6c, 0x12, 0x21, 0x0a, 0x1d, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x4e, 0x45, 0x53,
+ 0x53, 0x5f, 0x4c, 0x45, 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
+ 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x4f, 0x54, 0x5f, 0x43, 0x4f, 0x52,
+ 0x52, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x15, 0x0a, 0x11, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41,
+ 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x12, 0x11, 0x0a,
+ 0x0d, 0x46, 0x55, 0x4c, 0x4c, 0x59, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0x03,
+ 0x42, 0x11, 0x0a, 0x0f, 0x64, 0x65, 0x74, 0x61, 0x69, 0x6c, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x62,
+ 0x61, 0x63, 0x6b, 0x22, 0xe0, 0x07, 0x0a, 0x16, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73,
+ 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x72,
+ 0x0a, 0x10, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e,
+ 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63,
+ 0x6b, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e, 0x63,
+ 0x65, 0x52, 0x0f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e,
+ 0x63, 0x65, 0x12, 0x7e, 0x0a, 0x14, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x63,
+ 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e,
+ 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x52, 0x13, 0x64,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65,
+ 0x73, 0x73, 0x12, 0x7b, 0x0a, 0x13, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x65,
+ 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x4a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74,
+ 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x45, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x79, 0x52, 0x12, 0x64, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x63, 0x79, 0x12,
+ 0x84, 0x01, 0x0a, 0x16, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x66, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e,
+ 0x74, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x2e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
+ 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x52,
+ 0x15, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65,
+ 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b, 0x1a, 0xc6, 0x01, 0x0a, 0x15, 0x53, 0x75, 0x6d, 0x6d, 0x61,
+ 0x72, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x65, 0x64, 0x62, 0x61, 0x63, 0x6b,
+ 0x12, 0x43, 0x0a, 0x0f, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74,
+ 0x61, 0x6d, 0x70, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0e, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x45, 0x0a, 0x10, 0x73, 0x75, 0x62, 0x6d, 0x69, 0x74, 0x5f,
+ 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0f, 0x73, 0x75, 0x62,
+ 0x6d, 0x69, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x12, 0x21, 0x0a, 0x0c,
+ 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0b, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x54, 0x65, 0x78, 0x74, 0x22,
+ 0x51, 0x0a, 0x0f, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x6c, 0x65, 0x76, 0x61, 0x6e,
+ 0x63, 0x65, 0x12, 0x20, 0x0a, 0x1c, 0x41, 0x4e, 0x53, 0x57, 0x45, 0x52, 0x5f, 0x52, 0x45, 0x4c,
+ 0x45, 0x56, 0x41, 0x4e, 0x43, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x49, 0x52, 0x52, 0x45, 0x4c, 0x45, 0x56, 0x41,
+ 0x4e, 0x54, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x52, 0x45, 0x4c, 0x45, 0x56, 0x41, 0x4e, 0x54,
+ 0x10, 0x02, 0x22, 0x57, 0x0a, 0x13, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x72, 0x72, 0x65, 0x63, 0x74, 0x6e, 0x65, 0x73, 0x73, 0x12, 0x24, 0x0a, 0x20, 0x44, 0x4f, 0x43,
+ 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x4e, 0x45, 0x53,
+ 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
+ 0x0d, 0x0a, 0x09, 0x49, 0x4e, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0x01, 0x12, 0x0b,
+ 0x0a, 0x07, 0x43, 0x4f, 0x52, 0x52, 0x45, 0x43, 0x54, 0x10, 0x02, 0x22, 0x59, 0x0a, 0x12, 0x44,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x45, 0x66, 0x66, 0x69, 0x63, 0x69, 0x65, 0x6e, 0x63,
+ 0x79, 0x12, 0x23, 0x0a, 0x1f, 0x44, 0x4f, 0x43, 0x55, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x45, 0x46,
+ 0x46, 0x49, 0x43, 0x49, 0x45, 0x4e, 0x43, 0x59, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
+ 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x45, 0x46, 0x46, 0x49,
+ 0x43, 0x49, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x45, 0x46, 0x46, 0x49, 0x43,
+ 0x49, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x22, 0x2c, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xba, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x43, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x2b, 0xfa, 0x41, 0x28, 0x12, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x05, 0x18, 0x01, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x66,
+ 0x69, 0x6c, 0x74, 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69,
+ 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69,
+ 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x22, 0x99, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x54, 0x0a, 0x0e, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61,
+ 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d,
+ 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xb1, 0x01,
+ 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x57, 0x0a, 0x0d, 0x61,
+ 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72,
+ 0x64, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d,
+ 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c,
+ 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73,
+ 0x6b, 0x32, 0xc2, 0x07, 0x0a, 0x0d, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f,
+ 0x72, 0x64, 0x73, 0x12, 0xea, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x73, 0x77, 0x65,
+ 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22,
+ 0x6f, 0x88, 0x02, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f,
+ 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x12, 0x81, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52,
+ 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x73, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x61, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0xc5, 0x02, 0x0a, 0x12, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x41,
+ 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x12, 0x3a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x22, 0xc3, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa0, 0x01,
+ 0x32, 0x38, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x61, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0d, 0x61, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x5a, 0x55, 0x32, 0x44, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65,
+ 0x63, 0x6f, 0x72, 0x64, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x3a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0xda, 0x41, 0x19, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x1a, 0x78, 0xca, 0x41,
+ 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74,
+ 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70,
+ 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xaa, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x12,
+ 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x73, 0x50, 0x72, 0x6f,
+ 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44,
+ 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes = make([]protoimpl.EnumInfo, 4)
+var file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes = make([]protoimpl.MessageInfo, 9)
+var file_google_cloud_dialogflow_v2beta1_answer_record_proto_goTypes = []interface{}{
+ (AnswerFeedback_CorrectnessLevel)(0), // 0: google.cloud.dialogflow.v2beta1.AnswerFeedback.CorrectnessLevel
+ (AgentAssistantFeedback_AnswerRelevance)(0), // 1: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.AnswerRelevance
+ (AgentAssistantFeedback_DocumentCorrectness)(0), // 2: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.DocumentCorrectness
+ (AgentAssistantFeedback_DocumentEfficiency)(0), // 3: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.DocumentEfficiency
+ (*AnswerRecord)(nil), // 4: google.cloud.dialogflow.v2beta1.AnswerRecord
+ (*AgentAssistantRecord)(nil), // 5: google.cloud.dialogflow.v2beta1.AgentAssistantRecord
+ (*AnswerFeedback)(nil), // 6: google.cloud.dialogflow.v2beta1.AnswerFeedback
+ (*AgentAssistantFeedback)(nil), // 7: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback
+ (*GetAnswerRecordRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.GetAnswerRecordRequest
+ (*ListAnswerRecordsRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.ListAnswerRecordsRequest
+ (*ListAnswerRecordsResponse)(nil), // 10: google.cloud.dialogflow.v2beta1.ListAnswerRecordsResponse
+ (*UpdateAnswerRecordRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.UpdateAnswerRecordRequest
+ (*AgentAssistantFeedback_SummarizationFeedback)(nil), // 12: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.SummarizationFeedback
+ (*ArticleAnswer)(nil), // 13: google.cloud.dialogflow.v2beta1.ArticleAnswer
+ (*FaqAnswer)(nil), // 14: google.cloud.dialogflow.v2beta1.FaqAnswer
+ (*timestamppb.Timestamp)(nil), // 15: google.protobuf.Timestamp
+ (*fieldmaskpb.FieldMask)(nil), // 16: google.protobuf.FieldMask
+}
+var file_google_cloud_dialogflow_v2beta1_answer_record_proto_depIdxs = []int32{
+ 6, // 0: google.cloud.dialogflow.v2beta1.AnswerRecord.answer_feedback:type_name -> google.cloud.dialogflow.v2beta1.AnswerFeedback
+ 5, // 1: google.cloud.dialogflow.v2beta1.AnswerRecord.agent_assistant_record:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantRecord
+ 13, // 2: google.cloud.dialogflow.v2beta1.AgentAssistantRecord.article_suggestion_answer:type_name -> google.cloud.dialogflow.v2beta1.ArticleAnswer
+ 14, // 3: google.cloud.dialogflow.v2beta1.AgentAssistantRecord.faq_answer:type_name -> google.cloud.dialogflow.v2beta1.FaqAnswer
+ 0, // 4: google.cloud.dialogflow.v2beta1.AnswerFeedback.correctness_level:type_name -> google.cloud.dialogflow.v2beta1.AnswerFeedback.CorrectnessLevel
+ 7, // 5: google.cloud.dialogflow.v2beta1.AnswerFeedback.agent_assistant_detail_feedback:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantFeedback
+ 15, // 6: google.cloud.dialogflow.v2beta1.AnswerFeedback.click_time:type_name -> google.protobuf.Timestamp
+ 15, // 7: google.cloud.dialogflow.v2beta1.AnswerFeedback.display_time:type_name -> google.protobuf.Timestamp
+ 1, // 8: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.answer_relevance:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.AnswerRelevance
+ 2, // 9: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.document_correctness:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.DocumentCorrectness
+ 3, // 10: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.document_efficiency:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.DocumentEfficiency
+ 12, // 11: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.summarization_feedback:type_name -> google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.SummarizationFeedback
+ 4, // 12: google.cloud.dialogflow.v2beta1.ListAnswerRecordsResponse.answer_records:type_name -> google.cloud.dialogflow.v2beta1.AnswerRecord
+ 4, // 13: google.cloud.dialogflow.v2beta1.UpdateAnswerRecordRequest.answer_record:type_name -> google.cloud.dialogflow.v2beta1.AnswerRecord
+ 16, // 14: google.cloud.dialogflow.v2beta1.UpdateAnswerRecordRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 15, // 15: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.SummarizationFeedback.start_timestamp:type_name -> google.protobuf.Timestamp
+ 15, // 16: google.cloud.dialogflow.v2beta1.AgentAssistantFeedback.SummarizationFeedback.submit_timestamp:type_name -> google.protobuf.Timestamp
+ 8, // 17: google.cloud.dialogflow.v2beta1.AnswerRecords.GetAnswerRecord:input_type -> google.cloud.dialogflow.v2beta1.GetAnswerRecordRequest
+ 9, // 18: google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords:input_type -> google.cloud.dialogflow.v2beta1.ListAnswerRecordsRequest
+ 11, // 19: google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord:input_type -> google.cloud.dialogflow.v2beta1.UpdateAnswerRecordRequest
+ 4, // 20: google.cloud.dialogflow.v2beta1.AnswerRecords.GetAnswerRecord:output_type -> google.cloud.dialogflow.v2beta1.AnswerRecord
+ 10, // 21: google.cloud.dialogflow.v2beta1.AnswerRecords.ListAnswerRecords:output_type -> google.cloud.dialogflow.v2beta1.ListAnswerRecordsResponse
+ 4, // 22: google.cloud.dialogflow.v2beta1.AnswerRecords.UpdateAnswerRecord:output_type -> google.cloud.dialogflow.v2beta1.AnswerRecord
+ 20, // [20:23] is the sub-list for method output_type
+ 17, // [17:20] is the sub-list for method input_type
+ 17, // [17:17] is the sub-list for extension type_name
+ 17, // [17:17] is the sub-list for extension extendee
+ 0, // [0:17] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_answer_record_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_answer_record_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_answer_record_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AnswerRecord); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AgentAssistantRecord); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AnswerFeedback); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AgentAssistantFeedback); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetAnswerRecordRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListAnswerRecordsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListAnswerRecordsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateAnswerRecordRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AgentAssistantFeedback_SummarizationFeedback); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*AnswerRecord_AgentAssistantRecord)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*AgentAssistantRecord_ArticleSuggestionAnswer)(nil),
+ (*AgentAssistantRecord_FaqAnswer)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes[2].OneofWrappers = []interface{}{
+ (*AnswerFeedback_AgentAssistantDetailFeedback)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDesc,
+ NumEnums: 4,
+ NumMessages: 9,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_answer_record_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_answer_record_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_answer_record_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_answer_record_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_answer_record_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_answer_record_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// AnswerRecordsClient is the client API for AnswerRecords service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type AnswerRecordsClient interface {
+ // Deprecated: Do not use.
+ // Deprecated.
+ // Retrieves a specific answer record.
+ GetAnswerRecord(ctx context.Context, in *GetAnswerRecordRequest, opts ...grpc.CallOption) (*AnswerRecord, error)
+ // Returns the list of all answer records in the specified project in reverse
+ // chronological order.
+ ListAnswerRecords(ctx context.Context, in *ListAnswerRecordsRequest, opts ...grpc.CallOption) (*ListAnswerRecordsResponse, error)
+ // Updates the specified answer record.
+ UpdateAnswerRecord(ctx context.Context, in *UpdateAnswerRecordRequest, opts ...grpc.CallOption) (*AnswerRecord, error)
+}
+
+type answerRecordsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewAnswerRecordsClient(cc grpc.ClientConnInterface) AnswerRecordsClient {
+ return &answerRecordsClient{cc}
+}
+
+// Deprecated: Do not use.
+func (c *answerRecordsClient) GetAnswerRecord(ctx context.Context, in *GetAnswerRecordRequest, opts ...grpc.CallOption) (*AnswerRecord, error) {
+ out := new(AnswerRecord)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.AnswerRecords/GetAnswerRecord", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *answerRecordsClient) ListAnswerRecords(ctx context.Context, in *ListAnswerRecordsRequest, opts ...grpc.CallOption) (*ListAnswerRecordsResponse, error) {
+ out := new(ListAnswerRecordsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.AnswerRecords/ListAnswerRecords", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *answerRecordsClient) UpdateAnswerRecord(ctx context.Context, in *UpdateAnswerRecordRequest, opts ...grpc.CallOption) (*AnswerRecord, error) {
+ out := new(AnswerRecord)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.AnswerRecords/UpdateAnswerRecord", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// AnswerRecordsServer is the server API for AnswerRecords service.
+type AnswerRecordsServer interface {
+ // Deprecated: Do not use.
+ // Deprecated.
+ // Retrieves a specific answer record.
+ GetAnswerRecord(context.Context, *GetAnswerRecordRequest) (*AnswerRecord, error)
+ // Returns the list of all answer records in the specified project in reverse
+ // chronological order.
+ ListAnswerRecords(context.Context, *ListAnswerRecordsRequest) (*ListAnswerRecordsResponse, error)
+ // Updates the specified answer record.
+ UpdateAnswerRecord(context.Context, *UpdateAnswerRecordRequest) (*AnswerRecord, error)
+}
+
+// UnimplementedAnswerRecordsServer can be embedded to have forward compatible implementations.
+type UnimplementedAnswerRecordsServer struct {
+}
+
+func (*UnimplementedAnswerRecordsServer) GetAnswerRecord(context.Context, *GetAnswerRecordRequest) (*AnswerRecord, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetAnswerRecord not implemented")
+}
+func (*UnimplementedAnswerRecordsServer) ListAnswerRecords(context.Context, *ListAnswerRecordsRequest) (*ListAnswerRecordsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListAnswerRecords not implemented")
+}
+func (*UnimplementedAnswerRecordsServer) UpdateAnswerRecord(context.Context, *UpdateAnswerRecordRequest) (*AnswerRecord, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateAnswerRecord not implemented")
+}
+
+func RegisterAnswerRecordsServer(s *grpc.Server, srv AnswerRecordsServer) {
+ s.RegisterService(&_AnswerRecords_serviceDesc, srv)
+}
+
+func _AnswerRecords_GetAnswerRecord_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetAnswerRecordRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AnswerRecordsServer).GetAnswerRecord(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.AnswerRecords/GetAnswerRecord",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AnswerRecordsServer).GetAnswerRecord(ctx, req.(*GetAnswerRecordRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _AnswerRecords_ListAnswerRecords_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListAnswerRecordsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AnswerRecordsServer).ListAnswerRecords(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.AnswerRecords/ListAnswerRecords",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AnswerRecordsServer).ListAnswerRecords(ctx, req.(*ListAnswerRecordsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _AnswerRecords_UpdateAnswerRecord_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateAnswerRecordRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(AnswerRecordsServer).UpdateAnswerRecord(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.AnswerRecords/UpdateAnswerRecord",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(AnswerRecordsServer).UpdateAnswerRecord(ctx, req.(*UpdateAnswerRecordRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _AnswerRecords_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.AnswerRecords",
+ HandlerType: (*AnswerRecordsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetAnswerRecord",
+ Handler: _AnswerRecords_GetAnswerRecord_Handler,
+ },
+ {
+ MethodName: "ListAnswerRecords",
+ Handler: _AnswerRecords_ListAnswerRecords_Handler,
+ },
+ {
+ MethodName: "UpdateAnswerRecord",
+ Handler: _AnswerRecords_UpdateAnswerRecord_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/answer_record.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/audio_config.pb.go b/dialogflow/apiv2beta1/dialogflowpb/audio_config.pb.go
new file mode 100644
index 0000000..1caebd6
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/audio_config.pb.go
@@ -0,0 +1,1555 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/audio_config.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ durationpb "google.golang.org/protobuf/types/known/durationpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Audio encoding of the audio content sent in the conversational query request.
+// Refer to the
+// [Cloud Speech API
+// documentation](https://cloud.google.com/speech-to-text/docs/basics) for more
+// details.
+type AudioEncoding int32
+
+const (
+ // Not specified.
+ AudioEncoding_AUDIO_ENCODING_UNSPECIFIED AudioEncoding = 0
+ // Uncompressed 16-bit signed little-endian samples (Linear PCM).
+ AudioEncoding_AUDIO_ENCODING_LINEAR_16 AudioEncoding = 1
+ // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio
+ // Codec) is the recommended encoding because it is lossless (therefore
+ // recognition is not compromised) and requires only about half the
+ // bandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and
+ // 24-bit samples, however, not all fields in `STREAMINFO` are supported.
+ AudioEncoding_AUDIO_ENCODING_FLAC AudioEncoding = 2
+ // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
+ AudioEncoding_AUDIO_ENCODING_MULAW AudioEncoding = 3
+ // Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000.
+ AudioEncoding_AUDIO_ENCODING_AMR AudioEncoding = 4
+ // Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000.
+ AudioEncoding_AUDIO_ENCODING_AMR_WB AudioEncoding = 5
+ // Opus encoded audio frames in Ogg container
+ // ([OggOpus](https://wiki.xiph.org/OggOpus)).
+ // `sample_rate_hertz` must be 16000.
+ AudioEncoding_AUDIO_ENCODING_OGG_OPUS AudioEncoding = 6
+ // Although the use of lossy encodings is not recommended, if a very low
+ // bitrate encoding is required, `OGG_OPUS` is highly preferred over
+ // Speex encoding. The [Speex](https://speex.org/) encoding supported by
+ // Dialogflow API has a header byte in each block, as in MIME type
+ // `audio/x-speex-with-header-byte`.
+ // It is a variant of the RTP Speex encoding defined in
+ // [RFC 5574](https://tools.ietf.org/html/rfc5574).
+ // The stream is a sequence of blocks, one block per RTP packet. Each block
+ // starts with a byte containing the length of the block, in bytes, followed
+ // by one or more frames of Speex data, padded to an integral number of
+ // bytes (octets) as specified in RFC 5574. In other words, each RTP header
+ // is replaced with a single byte containing the block length. Only Speex
+ // wideband is supported. `sample_rate_hertz` must be 16000.
+ AudioEncoding_AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE AudioEncoding = 7
+)
+
+// Enum value maps for AudioEncoding.
+var (
+ AudioEncoding_name = map[int32]string{
+ 0: "AUDIO_ENCODING_UNSPECIFIED",
+ 1: "AUDIO_ENCODING_LINEAR_16",
+ 2: "AUDIO_ENCODING_FLAC",
+ 3: "AUDIO_ENCODING_MULAW",
+ 4: "AUDIO_ENCODING_AMR",
+ 5: "AUDIO_ENCODING_AMR_WB",
+ 6: "AUDIO_ENCODING_OGG_OPUS",
+ 7: "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE",
+ }
+ AudioEncoding_value = map[string]int32{
+ "AUDIO_ENCODING_UNSPECIFIED": 0,
+ "AUDIO_ENCODING_LINEAR_16": 1,
+ "AUDIO_ENCODING_FLAC": 2,
+ "AUDIO_ENCODING_MULAW": 3,
+ "AUDIO_ENCODING_AMR": 4,
+ "AUDIO_ENCODING_AMR_WB": 5,
+ "AUDIO_ENCODING_OGG_OPUS": 6,
+ "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE": 7,
+ }
+)
+
+func (x AudioEncoding) Enum() *AudioEncoding {
+ p := new(AudioEncoding)
+ *p = x
+ return p
+}
+
+func (x AudioEncoding) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AudioEncoding) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[0].Descriptor()
+}
+
+func (AudioEncoding) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[0]
+}
+
+func (x AudioEncoding) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AudioEncoding.Descriptor instead.
+func (AudioEncoding) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{0}
+}
+
+// Variant of the specified [Speech
+// model][google.cloud.dialogflow.v2beta1.InputAudioConfig.model] to use.
+//
+// See the [Cloud Speech
+// documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models)
+// for which models have different variants. For example, the "phone_call" model
+// has both a standard and an enhanced variant. When you use an enhanced model,
+// you will generally receive higher quality results than for a standard model.
+type SpeechModelVariant int32
+
+const (
+ // No model variant specified. In this case Dialogflow defaults to
+ // USE_BEST_AVAILABLE.
+ SpeechModelVariant_SPEECH_MODEL_VARIANT_UNSPECIFIED SpeechModelVariant = 0
+ // Use the best available variant of the [Speech
+ // model][InputAudioConfig.model] that the caller is eligible for.
+ //
+ // Please see the [Dialogflow
+ // docs](https://cloud.google.com/dialogflow/docs/data-logging) for
+ // how to make your project eligible for enhanced models.
+ SpeechModelVariant_USE_BEST_AVAILABLE SpeechModelVariant = 1
+ // Use standard model variant even if an enhanced model is available. See the
+ // [Cloud Speech
+ // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models)
+ // for details about enhanced models.
+ SpeechModelVariant_USE_STANDARD SpeechModelVariant = 2
+ // Use an enhanced model variant:
+ //
+ // - If an enhanced variant does not exist for the given
+ // [model][google.cloud.dialogflow.v2beta1.InputAudioConfig.model] and
+ // request language, Dialogflow falls back to the standard variant.
+ //
+ // The [Cloud Speech
+ // documentation](https://cloud.google.com/speech-to-text/docs/enhanced-models)
+ // describes which models have enhanced variants.
+ //
+ // - If the API caller isn't eligible for enhanced models, Dialogflow returns
+ // an error. Please see the [Dialogflow
+ // docs](https://cloud.google.com/dialogflow/docs/data-logging)
+ // for how to make your project eligible.
+ SpeechModelVariant_USE_ENHANCED SpeechModelVariant = 3
+)
+
+// Enum value maps for SpeechModelVariant.
+var (
+ SpeechModelVariant_name = map[int32]string{
+ 0: "SPEECH_MODEL_VARIANT_UNSPECIFIED",
+ 1: "USE_BEST_AVAILABLE",
+ 2: "USE_STANDARD",
+ 3: "USE_ENHANCED",
+ }
+ SpeechModelVariant_value = map[string]int32{
+ "SPEECH_MODEL_VARIANT_UNSPECIFIED": 0,
+ "USE_BEST_AVAILABLE": 1,
+ "USE_STANDARD": 2,
+ "USE_ENHANCED": 3,
+ }
+)
+
+func (x SpeechModelVariant) Enum() *SpeechModelVariant {
+ p := new(SpeechModelVariant)
+ *p = x
+ return p
+}
+
+func (x SpeechModelVariant) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SpeechModelVariant) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[1].Descriptor()
+}
+
+func (SpeechModelVariant) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[1]
+}
+
+func (x SpeechModelVariant) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SpeechModelVariant.Descriptor instead.
+func (SpeechModelVariant) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{1}
+}
+
+// Gender of the voice as described in
+// [SSML voice element](https://www.w3.org/TR/speech-synthesis11/#edef_voice).
+type SsmlVoiceGender int32
+
+const (
+ // An unspecified gender, which means that the client doesn't care which
+ // gender the selected voice will have.
+ SsmlVoiceGender_SSML_VOICE_GENDER_UNSPECIFIED SsmlVoiceGender = 0
+ // A male voice.
+ SsmlVoiceGender_SSML_VOICE_GENDER_MALE SsmlVoiceGender = 1
+ // A female voice.
+ SsmlVoiceGender_SSML_VOICE_GENDER_FEMALE SsmlVoiceGender = 2
+ // A gender-neutral voice.
+ SsmlVoiceGender_SSML_VOICE_GENDER_NEUTRAL SsmlVoiceGender = 3
+)
+
+// Enum value maps for SsmlVoiceGender.
+var (
+ SsmlVoiceGender_name = map[int32]string{
+ 0: "SSML_VOICE_GENDER_UNSPECIFIED",
+ 1: "SSML_VOICE_GENDER_MALE",
+ 2: "SSML_VOICE_GENDER_FEMALE",
+ 3: "SSML_VOICE_GENDER_NEUTRAL",
+ }
+ SsmlVoiceGender_value = map[string]int32{
+ "SSML_VOICE_GENDER_UNSPECIFIED": 0,
+ "SSML_VOICE_GENDER_MALE": 1,
+ "SSML_VOICE_GENDER_FEMALE": 2,
+ "SSML_VOICE_GENDER_NEUTRAL": 3,
+ }
+)
+
+func (x SsmlVoiceGender) Enum() *SsmlVoiceGender {
+ p := new(SsmlVoiceGender)
+ *p = x
+ return p
+}
+
+func (x SsmlVoiceGender) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SsmlVoiceGender) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[2].Descriptor()
+}
+
+func (SsmlVoiceGender) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[2]
+}
+
+func (x SsmlVoiceGender) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SsmlVoiceGender.Descriptor instead.
+func (SsmlVoiceGender) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{2}
+}
+
+// Audio encoding of the output audio format in Text-To-Speech.
+type OutputAudioEncoding int32
+
+const (
+ // Not specified.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_UNSPECIFIED OutputAudioEncoding = 0
+ // Uncompressed 16-bit signed little-endian samples (Linear PCM).
+ // Audio content returned as LINEAR16 also contains a WAV header.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_LINEAR_16 OutputAudioEncoding = 1
+ // MP3 audio at 32kbps.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_MP3 OutputAudioEncoding = 2
+ // MP3 audio at 64kbps.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_MP3_64_KBPS OutputAudioEncoding = 4
+ // Opus encoded audio wrapped in an ogg container. The result will be a
+ // file which can be played natively on Android, and in browsers (at least
+ // Chrome and Firefox). The quality of the encoding is considerably higher
+ // than MP3 while using approximately the same bitrate.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_OGG_OPUS OutputAudioEncoding = 3
+ // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law.
+ OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_MULAW OutputAudioEncoding = 5
+)
+
+// Enum value maps for OutputAudioEncoding.
+var (
+ OutputAudioEncoding_name = map[int32]string{
+ 0: "OUTPUT_AUDIO_ENCODING_UNSPECIFIED",
+ 1: "OUTPUT_AUDIO_ENCODING_LINEAR_16",
+ 2: "OUTPUT_AUDIO_ENCODING_MP3",
+ 4: "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS",
+ 3: "OUTPUT_AUDIO_ENCODING_OGG_OPUS",
+ 5: "OUTPUT_AUDIO_ENCODING_MULAW",
+ }
+ OutputAudioEncoding_value = map[string]int32{
+ "OUTPUT_AUDIO_ENCODING_UNSPECIFIED": 0,
+ "OUTPUT_AUDIO_ENCODING_LINEAR_16": 1,
+ "OUTPUT_AUDIO_ENCODING_MP3": 2,
+ "OUTPUT_AUDIO_ENCODING_MP3_64_KBPS": 4,
+ "OUTPUT_AUDIO_ENCODING_OGG_OPUS": 3,
+ "OUTPUT_AUDIO_ENCODING_MULAW": 5,
+ }
+)
+
+func (x OutputAudioEncoding) Enum() *OutputAudioEncoding {
+ p := new(OutputAudioEncoding)
+ *p = x
+ return p
+}
+
+func (x OutputAudioEncoding) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (OutputAudioEncoding) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[3].Descriptor()
+}
+
+func (OutputAudioEncoding) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[3]
+}
+
+func (x OutputAudioEncoding) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use OutputAudioEncoding.Descriptor instead.
+func (OutputAudioEncoding) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{3}
+}
+
+// [DTMF](https://en.wikipedia.org/wiki/Dual-tone_multi-frequency_signaling)
+// digit in Telephony Gateway.
+type TelephonyDtmf int32
+
+const (
+ // Not specified. This value may be used to indicate an absent digit.
+ TelephonyDtmf_TELEPHONY_DTMF_UNSPECIFIED TelephonyDtmf = 0
+ // Number: '1'.
+ TelephonyDtmf_DTMF_ONE TelephonyDtmf = 1
+ // Number: '2'.
+ TelephonyDtmf_DTMF_TWO TelephonyDtmf = 2
+ // Number: '3'.
+ TelephonyDtmf_DTMF_THREE TelephonyDtmf = 3
+ // Number: '4'.
+ TelephonyDtmf_DTMF_FOUR TelephonyDtmf = 4
+ // Number: '5'.
+ TelephonyDtmf_DTMF_FIVE TelephonyDtmf = 5
+ // Number: '6'.
+ TelephonyDtmf_DTMF_SIX TelephonyDtmf = 6
+ // Number: '7'.
+ TelephonyDtmf_DTMF_SEVEN TelephonyDtmf = 7
+ // Number: '8'.
+ TelephonyDtmf_DTMF_EIGHT TelephonyDtmf = 8
+ // Number: '9'.
+ TelephonyDtmf_DTMF_NINE TelephonyDtmf = 9
+ // Number: '0'.
+ TelephonyDtmf_DTMF_ZERO TelephonyDtmf = 10
+ // Letter: 'A'.
+ TelephonyDtmf_DTMF_A TelephonyDtmf = 11
+ // Letter: 'B'.
+ TelephonyDtmf_DTMF_B TelephonyDtmf = 12
+ // Letter: 'C'.
+ TelephonyDtmf_DTMF_C TelephonyDtmf = 13
+ // Letter: 'D'.
+ TelephonyDtmf_DTMF_D TelephonyDtmf = 14
+ // Asterisk/star: '*'.
+ TelephonyDtmf_DTMF_STAR TelephonyDtmf = 15
+ // Pound/diamond/hash/square/gate/octothorpe: '#'.
+ TelephonyDtmf_DTMF_POUND TelephonyDtmf = 16
+)
+
+// Enum value maps for TelephonyDtmf.
+var (
+ TelephonyDtmf_name = map[int32]string{
+ 0: "TELEPHONY_DTMF_UNSPECIFIED",
+ 1: "DTMF_ONE",
+ 2: "DTMF_TWO",
+ 3: "DTMF_THREE",
+ 4: "DTMF_FOUR",
+ 5: "DTMF_FIVE",
+ 6: "DTMF_SIX",
+ 7: "DTMF_SEVEN",
+ 8: "DTMF_EIGHT",
+ 9: "DTMF_NINE",
+ 10: "DTMF_ZERO",
+ 11: "DTMF_A",
+ 12: "DTMF_B",
+ 13: "DTMF_C",
+ 14: "DTMF_D",
+ 15: "DTMF_STAR",
+ 16: "DTMF_POUND",
+ }
+ TelephonyDtmf_value = map[string]int32{
+ "TELEPHONY_DTMF_UNSPECIFIED": 0,
+ "DTMF_ONE": 1,
+ "DTMF_TWO": 2,
+ "DTMF_THREE": 3,
+ "DTMF_FOUR": 4,
+ "DTMF_FIVE": 5,
+ "DTMF_SIX": 6,
+ "DTMF_SEVEN": 7,
+ "DTMF_EIGHT": 8,
+ "DTMF_NINE": 9,
+ "DTMF_ZERO": 10,
+ "DTMF_A": 11,
+ "DTMF_B": 12,
+ "DTMF_C": 13,
+ "DTMF_D": 14,
+ "DTMF_STAR": 15,
+ "DTMF_POUND": 16,
+ }
+)
+
+func (x TelephonyDtmf) Enum() *TelephonyDtmf {
+ p := new(TelephonyDtmf)
+ *p = x
+ return p
+}
+
+func (x TelephonyDtmf) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (TelephonyDtmf) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[4].Descriptor()
+}
+
+func (TelephonyDtmf) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes[4]
+}
+
+func (x TelephonyDtmf) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use TelephonyDtmf.Descriptor instead.
+func (TelephonyDtmf) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{4}
+}
+
+// Hints for the speech recognizer to help with recognition in a specific
+// conversation state.
+type SpeechContext struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. A list of strings containing words and phrases that the speech
+ // recognizer should recognize with higher likelihood.
+ //
+ // This list can be used to:
+ //
+ // - improve accuracy for words and phrases you expect the user to say,
+ // e.g. typical commands for your Dialogflow agent
+ // - add additional words to the speech recognizer vocabulary
+ // - ...
+ //
+ // See the [Cloud Speech
+ // documentation](https://cloud.google.com/speech-to-text/quotas) for usage
+ // limits.
+ Phrases []string `protobuf:"bytes,1,rep,name=phrases,proto3" json:"phrases,omitempty"`
+ // Optional. Boost for this context compared to other contexts:
+ //
+ // - If the boost is positive, Dialogflow will increase the probability that
+ // the phrases in this context are recognized over similar sounding phrases.
+ // - If the boost is unspecified or non-positive, Dialogflow will not apply
+ // any boost.
+ //
+ // Dialogflow recommends that you use boosts in the range (0, 20] and that you
+ // find a value that fits your use case with binary search.
+ Boost float32 `protobuf:"fixed32,2,opt,name=boost,proto3" json:"boost,omitempty"`
+}
+
+func (x *SpeechContext) Reset() {
+ *x = SpeechContext{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpeechContext) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpeechContext) ProtoMessage() {}
+
+func (x *SpeechContext) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SpeechContext.ProtoReflect.Descriptor instead.
+func (*SpeechContext) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *SpeechContext) GetPhrases() []string {
+ if x != nil {
+ return x.Phrases
+ }
+ return nil
+}
+
+func (x *SpeechContext) GetBoost() float32 {
+ if x != nil {
+ return x.Boost
+ }
+ return 0
+}
+
+// Information for a word recognized by the speech recognizer.
+type SpeechWordInfo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The word this info is for.
+ Word string `protobuf:"bytes,3,opt,name=word,proto3" json:"word,omitempty"`
+ // Time offset relative to the beginning of the audio that corresponds to the
+ // start of the spoken word. This is an experimental feature and the accuracy
+ // of the time offset can vary.
+ StartOffset *durationpb.Duration `protobuf:"bytes,1,opt,name=start_offset,json=startOffset,proto3" json:"start_offset,omitempty"`
+ // Time offset relative to the beginning of the audio that corresponds to the
+ // end of the spoken word. This is an experimental feature and the accuracy of
+ // the time offset can vary.
+ EndOffset *durationpb.Duration `protobuf:"bytes,2,opt,name=end_offset,json=endOffset,proto3" json:"end_offset,omitempty"`
+ // The Speech confidence between 0.0 and 1.0 for this word. A higher number
+ // indicates an estimated greater likelihood that the recognized word is
+ // correct. The default of 0.0 is a sentinel value indicating that confidence
+ // was not set.
+ //
+ // This field is not guaranteed to be fully stable over time for the same
+ // audio input. Users should also not rely on it to always be provided.
+ Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
+}
+
+func (x *SpeechWordInfo) Reset() {
+ *x = SpeechWordInfo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpeechWordInfo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpeechWordInfo) ProtoMessage() {}
+
+func (x *SpeechWordInfo) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SpeechWordInfo.ProtoReflect.Descriptor instead.
+func (*SpeechWordInfo) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *SpeechWordInfo) GetWord() string {
+ if x != nil {
+ return x.Word
+ }
+ return ""
+}
+
+func (x *SpeechWordInfo) GetStartOffset() *durationpb.Duration {
+ if x != nil {
+ return x.StartOffset
+ }
+ return nil
+}
+
+func (x *SpeechWordInfo) GetEndOffset() *durationpb.Duration {
+ if x != nil {
+ return x.EndOffset
+ }
+ return nil
+}
+
+func (x *SpeechWordInfo) GetConfidence() float32 {
+ if x != nil {
+ return x.Confidence
+ }
+ return 0
+}
+
+// Instructs the speech recognizer on how to process the audio content.
+type InputAudioConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Audio encoding of the audio content to process.
+ AudioEncoding AudioEncoding `protobuf:"varint,1,opt,name=audio_encoding,json=audioEncoding,proto3,enum=google.cloud.dialogflow.v2beta1.AudioEncoding" json:"audio_encoding,omitempty"`
+ // Required. Sample rate (in Hertz) of the audio content sent in the query.
+ // Refer to
+ // [Cloud Speech API
+ // documentation](https://cloud.google.com/speech-to-text/docs/basics) for
+ // more details.
+ SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
+ // Required. The language of the supplied audio. Dialogflow does not do
+ // translations. See [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes. Note that queries in
+ // the same session do not necessarily need to specify the same language.
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // If `true`, Dialogflow returns
+ // [SpeechWordInfo][google.cloud.dialogflow.v2beta1.SpeechWordInfo] in
+ // [StreamingRecognitionResult][google.cloud.dialogflow.v2beta1.StreamingRecognitionResult]
+ // with information about the recognized speech words, e.g. start and end time
+ // offsets. If false or unspecified, Speech doesn't return any word-level
+ // information.
+ EnableWordInfo bool `protobuf:"varint,13,opt,name=enable_word_info,json=enableWordInfo,proto3" json:"enable_word_info,omitempty"`
+ // A list of strings containing words and phrases that the speech
+ // recognizer should recognize with higher likelihood.
+ //
+ // See [the Cloud Speech
+ // documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
+ // for more details.
+ //
+ // This field is deprecated. Please use [speech_contexts]() instead. If you
+ // specify both [phrase_hints]() and [speech_contexts](), Dialogflow will
+ // treat the [phrase_hints]() as a single additional [SpeechContext]().
+ //
+ // Deprecated: Do not use.
+ PhraseHints []string `protobuf:"bytes,4,rep,name=phrase_hints,json=phraseHints,proto3" json:"phrase_hints,omitempty"`
+ // Context information to assist speech recognition.
+ //
+ // See [the Cloud Speech
+ // documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints)
+ // for more details.
+ SpeechContexts []*SpeechContext `protobuf:"bytes,11,rep,name=speech_contexts,json=speechContexts,proto3" json:"speech_contexts,omitempty"`
+ // Which Speech model to select for the given request. Select the
+ // model best suited to your domain to get best results. If a model is not
+ // explicitly specified, then we auto-select a model based on the parameters
+ // in the InputAudioConfig.
+ // If enhanced speech model is enabled for the agent and an enhanced
+ // version of the specified model for the language does not exist, then the
+ // speech is recognized using the standard version of the specified model.
+ // Refer to
+ // [Cloud Speech API
+ // documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model)
+ // for more details.
+ Model string `protobuf:"bytes,7,opt,name=model,proto3" json:"model,omitempty"`
+ // Which variant of the [Speech
+ // model][google.cloud.dialogflow.v2beta1.InputAudioConfig.model] to use.
+ ModelVariant SpeechModelVariant `protobuf:"varint,10,opt,name=model_variant,json=modelVariant,proto3,enum=google.cloud.dialogflow.v2beta1.SpeechModelVariant" json:"model_variant,omitempty"`
+ // If `false` (default), recognition does not cease until the
+ // client closes the stream.
+ // If `true`, the recognizer will detect a single spoken utterance in input
+ // audio. Recognition ceases when it detects the audio's voice has
+ // stopped or paused. In this case, once a detected intent is received, the
+ // client should close the stream and start a new request with a new stream as
+ // needed.
+ // Note: This setting is relevant only for streaming methods.
+ // Note: When specified, InputAudioConfig.single_utterance takes precedence
+ // over StreamingDetectIntentRequest.single_utterance.
+ SingleUtterance bool `protobuf:"varint,8,opt,name=single_utterance,json=singleUtterance,proto3" json:"single_utterance,omitempty"`
+ // Only used in
+ // [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+ // and
+ // [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent].
+ // If `false` and recognition doesn't return any result, trigger
+ // `NO_SPEECH_RECOGNIZED` event to Dialogflow agent.
+ DisableNoSpeechRecognizedEvent bool `protobuf:"varint,14,opt,name=disable_no_speech_recognized_event,json=disableNoSpeechRecognizedEvent,proto3" json:"disable_no_speech_recognized_event,omitempty"`
+}
+
+func (x *InputAudioConfig) Reset() {
+ *x = InputAudioConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InputAudioConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InputAudioConfig) ProtoMessage() {}
+
+func (x *InputAudioConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use InputAudioConfig.ProtoReflect.Descriptor instead.
+func (*InputAudioConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *InputAudioConfig) GetAudioEncoding() AudioEncoding {
+ if x != nil {
+ return x.AudioEncoding
+ }
+ return AudioEncoding_AUDIO_ENCODING_UNSPECIFIED
+}
+
+func (x *InputAudioConfig) GetSampleRateHertz() int32 {
+ if x != nil {
+ return x.SampleRateHertz
+ }
+ return 0
+}
+
+func (x *InputAudioConfig) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *InputAudioConfig) GetEnableWordInfo() bool {
+ if x != nil {
+ return x.EnableWordInfo
+ }
+ return false
+}
+
+// Deprecated: Do not use.
+func (x *InputAudioConfig) GetPhraseHints() []string {
+ if x != nil {
+ return x.PhraseHints
+ }
+ return nil
+}
+
+func (x *InputAudioConfig) GetSpeechContexts() []*SpeechContext {
+ if x != nil {
+ return x.SpeechContexts
+ }
+ return nil
+}
+
+func (x *InputAudioConfig) GetModel() string {
+ if x != nil {
+ return x.Model
+ }
+ return ""
+}
+
+func (x *InputAudioConfig) GetModelVariant() SpeechModelVariant {
+ if x != nil {
+ return x.ModelVariant
+ }
+ return SpeechModelVariant_SPEECH_MODEL_VARIANT_UNSPECIFIED
+}
+
+func (x *InputAudioConfig) GetSingleUtterance() bool {
+ if x != nil {
+ return x.SingleUtterance
+ }
+ return false
+}
+
+func (x *InputAudioConfig) GetDisableNoSpeechRecognizedEvent() bool {
+ if x != nil {
+ return x.DisableNoSpeechRecognizedEvent
+ }
+ return false
+}
+
+// Description of which voice to use for speech synthesis.
+type VoiceSelectionParams struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The name of the voice. If not set, the service will choose a
+ // voice based on the other parameters such as language_code and
+ // [ssml_gender][google.cloud.dialogflow.v2beta1.VoiceSelectionParams.ssml_gender].
+ //
+ // For the list of available voices, please refer to [Supported voices and
+ // languages](https://cloud.google.com/text-to-speech/docs/voices).
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The preferred gender of the voice. If not set, the service will
+ // choose a voice based on the other parameters such as language_code and
+ // [name][google.cloud.dialogflow.v2beta1.VoiceSelectionParams.name]. Note
+ // that this is only a preference, not requirement. If a voice of the
+ // appropriate gender is not available, the synthesizer should substitute a
+ // voice with a different gender rather than failing the request.
+ SsmlGender SsmlVoiceGender `protobuf:"varint,2,opt,name=ssml_gender,json=ssmlGender,proto3,enum=google.cloud.dialogflow.v2beta1.SsmlVoiceGender" json:"ssml_gender,omitempty"`
+}
+
+func (x *VoiceSelectionParams) Reset() {
+ *x = VoiceSelectionParams{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *VoiceSelectionParams) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*VoiceSelectionParams) ProtoMessage() {}
+
+func (x *VoiceSelectionParams) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use VoiceSelectionParams.ProtoReflect.Descriptor instead.
+func (*VoiceSelectionParams) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *VoiceSelectionParams) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *VoiceSelectionParams) GetSsmlGender() SsmlVoiceGender {
+ if x != nil {
+ return x.SsmlGender
+ }
+ return SsmlVoiceGender_SSML_VOICE_GENDER_UNSPECIFIED
+}
+
+// Configuration of how speech should be synthesized.
+type SynthesizeSpeechConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. Speaking rate/speed, in the range [0.25, 4.0]. 1.0 is the normal
+ // native speed supported by the specific voice. 2.0 is twice as fast, and
+ // 0.5 is half as fast. If unset(0.0), defaults to the native 1.0 speed. Any
+ // other values < 0.25 or > 4.0 will return an error.
+ SpeakingRate float64 `protobuf:"fixed64,1,opt,name=speaking_rate,json=speakingRate,proto3" json:"speaking_rate,omitempty"`
+ // Optional. Speaking pitch, in the range [-20.0, 20.0]. 20 means increase 20
+ // semitones from the original pitch. -20 means decrease 20 semitones from the
+ // original pitch.
+ Pitch float64 `protobuf:"fixed64,2,opt,name=pitch,proto3" json:"pitch,omitempty"`
+ // Optional. Volume gain (in dB) of the normal native volume supported by the
+ // specific voice, in the range [-96.0, 16.0]. If unset, or set to a value of
+ // 0.0 (dB), will play at normal native signal amplitude. A value of -6.0 (dB)
+ // will play at approximately half the amplitude of the normal native signal
+ // amplitude. A value of +6.0 (dB) will play at approximately twice the
+ // amplitude of the normal native signal amplitude. We strongly recommend not
+ // to exceed +10 (dB) as there's usually no effective increase in loudness for
+ // any value greater than that.
+ VolumeGainDb float64 `protobuf:"fixed64,3,opt,name=volume_gain_db,json=volumeGainDb,proto3" json:"volume_gain_db,omitempty"`
+ // Optional. An identifier which selects 'audio effects' profiles that are
+ // applied on (post synthesized) text to speech. Effects are applied on top of
+ // each other in the order they are given.
+ EffectsProfileId []string `protobuf:"bytes,5,rep,name=effects_profile_id,json=effectsProfileId,proto3" json:"effects_profile_id,omitempty"`
+ // Optional. The desired voice of the synthesized audio.
+ Voice *VoiceSelectionParams `protobuf:"bytes,4,opt,name=voice,proto3" json:"voice,omitempty"`
+}
+
+func (x *SynthesizeSpeechConfig) Reset() {
+ *x = SynthesizeSpeechConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SynthesizeSpeechConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SynthesizeSpeechConfig) ProtoMessage() {}
+
+func (x *SynthesizeSpeechConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SynthesizeSpeechConfig.ProtoReflect.Descriptor instead.
+func (*SynthesizeSpeechConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *SynthesizeSpeechConfig) GetSpeakingRate() float64 {
+ if x != nil {
+ return x.SpeakingRate
+ }
+ return 0
+}
+
+func (x *SynthesizeSpeechConfig) GetPitch() float64 {
+ if x != nil {
+ return x.Pitch
+ }
+ return 0
+}
+
+func (x *SynthesizeSpeechConfig) GetVolumeGainDb() float64 {
+ if x != nil {
+ return x.VolumeGainDb
+ }
+ return 0
+}
+
+func (x *SynthesizeSpeechConfig) GetEffectsProfileId() []string {
+ if x != nil {
+ return x.EffectsProfileId
+ }
+ return nil
+}
+
+func (x *SynthesizeSpeechConfig) GetVoice() *VoiceSelectionParams {
+ if x != nil {
+ return x.Voice
+ }
+ return nil
+}
+
+// Instructs the speech synthesizer how to generate the output audio content.
+// If this audio config is supplied in a request, it overrides all existing
+// text-to-speech settings applied to the agent.
+type OutputAudioConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Audio encoding of the synthesized audio content.
+ AudioEncoding OutputAudioEncoding `protobuf:"varint,1,opt,name=audio_encoding,json=audioEncoding,proto3,enum=google.cloud.dialogflow.v2beta1.OutputAudioEncoding" json:"audio_encoding,omitempty"`
+ // The synthesis sample rate (in hertz) for this audio. If not
+ // provided, then the synthesizer will use the default sample rate based on
+ // the audio encoding. If this is different from the voice's natural sample
+ // rate, then the synthesizer will honor this request by converting to the
+ // desired sample rate (which might result in worse audio quality).
+ SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
+ // Configuration of how speech should be synthesized.
+ SynthesizeSpeechConfig *SynthesizeSpeechConfig `protobuf:"bytes,3,opt,name=synthesize_speech_config,json=synthesizeSpeechConfig,proto3" json:"synthesize_speech_config,omitempty"`
+}
+
+func (x *OutputAudioConfig) Reset() {
+ *x = OutputAudioConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OutputAudioConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OutputAudioConfig) ProtoMessage() {}
+
+func (x *OutputAudioConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OutputAudioConfig.ProtoReflect.Descriptor instead.
+func (*OutputAudioConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *OutputAudioConfig) GetAudioEncoding() OutputAudioEncoding {
+ if x != nil {
+ return x.AudioEncoding
+ }
+ return OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_UNSPECIFIED
+}
+
+func (x *OutputAudioConfig) GetSampleRateHertz() int32 {
+ if x != nil {
+ return x.SampleRateHertz
+ }
+ return 0
+}
+
+func (x *OutputAudioConfig) GetSynthesizeSpeechConfig() *SynthesizeSpeechConfig {
+ if x != nil {
+ return x.SynthesizeSpeechConfig
+ }
+ return nil
+}
+
+// A wrapper of repeated TelephonyDtmf digits.
+type TelephonyDtmfEvents struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A sequence of TelephonyDtmf digits.
+ DtmfEvents []TelephonyDtmf `protobuf:"varint,1,rep,packed,name=dtmf_events,json=dtmfEvents,proto3,enum=google.cloud.dialogflow.v2beta1.TelephonyDtmf" json:"dtmf_events,omitempty"`
+}
+
+func (x *TelephonyDtmfEvents) Reset() {
+ *x = TelephonyDtmfEvents{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TelephonyDtmfEvents) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TelephonyDtmfEvents) ProtoMessage() {}
+
+func (x *TelephonyDtmfEvents) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TelephonyDtmfEvents.ProtoReflect.Descriptor instead.
+func (*TelephonyDtmfEvents) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *TelephonyDtmfEvents) GetDtmfEvents() []TelephonyDtmf {
+ if x != nil {
+ return x.DtmfEvents
+ }
+ return nil
+}
+
+// Configures speech transcription for
+// [ConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfile].
+type SpeechToTextConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The speech model used in speech to text.
+ // `SPEECH_MODEL_VARIANT_UNSPECIFIED`, `USE_BEST_AVAILABLE` will be treated as
+ // `USE_ENHANCED`. It can be overridden in
+ // [AnalyzeContentRequest][google.cloud.dialogflow.v2beta1.AnalyzeContentRequest]
+ // and
+ // [StreamingAnalyzeContentRequest][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest]
+ // request. If enhanced model variant is specified and an enhanced version of
+ // the specified model for the language does not exist, then it would emit an
+ // error.
+ SpeechModelVariant SpeechModelVariant `protobuf:"varint,1,opt,name=speech_model_variant,json=speechModelVariant,proto3,enum=google.cloud.dialogflow.v2beta1.SpeechModelVariant" json:"speech_model_variant,omitempty"`
+ // Which Speech model to select. Select the model best suited to your domain
+ // to get best results. If a model is not explicitly specified, then a default
+ // model is used.
+ // Refer to
+ // [Cloud Speech API
+ // documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model)
+ // for more details.
+ Model string `protobuf:"bytes,2,opt,name=model,proto3" json:"model,omitempty"`
+}
+
+func (x *SpeechToTextConfig) Reset() {
+ *x = SpeechToTextConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SpeechToTextConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SpeechToTextConfig) ProtoMessage() {}
+
+func (x *SpeechToTextConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SpeechToTextConfig.ProtoReflect.Descriptor instead.
+func (*SpeechToTextConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *SpeechToTextConfig) GetSpeechModelVariant() SpeechModelVariant {
+ if x != nil {
+ return x.SpeechModelVariant
+ }
+ return SpeechModelVariant_SPEECH_MODEL_VARIANT_UNSPECIFIED
+}
+
+func (x *SpeechToTextConfig) GetModel() string {
+ if x != nil {
+ return x.Model
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_audio_config_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDesc = []byte{
+ 0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x1e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x22, 0x3f, 0x0a, 0x0d, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x09, 0x52, 0x07, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05,
+ 0x62, 0x6f, 0x6f, 0x73, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x62, 0x6f, 0x6f,
+ 0x73, 0x74, 0x22, 0xbc, 0x01, 0x0a, 0x0e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x57, 0x6f, 0x72,
+ 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x12, 0x0a, 0x04, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x04, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x3c, 0x0a, 0x0c, 0x73, 0x74, 0x61,
+ 0x72, 0x74, 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x19, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x73, 0x74, 0x61, 0x72,
+ 0x74, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x38, 0x0a, 0x0a, 0x65, 0x6e, 0x64, 0x5f, 0x6f,
+ 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x44, 0x75,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x09, 0x65, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65,
+ 0x74, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
+ 0x65, 0x22, 0xcb, 0x04, 0x0a, 0x10, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x55, 0x0a, 0x0e, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f,
+ 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2e,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x52, 0x0d,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a,
+ 0x11, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x72,
+ 0x74, 0x7a, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
+ 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74, 0x7a, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x28,
+ 0x0a, 0x10, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x69, 0x6e,
+ 0x66, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x57, 0x6f, 0x72, 0x64, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x25, 0x0a, 0x0c, 0x70, 0x68, 0x72, 0x61,
+ 0x73, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x42, 0x02,
+ 0x18, 0x01, 0x52, 0x0b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x73, 0x12,
+ 0x57, 0x0a, 0x0f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x18, 0x0b, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63,
+ 0x68, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x58,
+ 0x0a, 0x0d, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x76, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x18,
+ 0x0a, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x6f,
+ 0x64, 0x65, 0x6c, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x52, 0x0c, 0x6d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67,
+ 0x6c, 0x65, 0x5f, 0x75, 0x74, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x0f, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x74, 0x74, 0x65, 0x72, 0x61,
+ 0x6e, 0x63, 0x65, 0x12, 0x4a, 0x0a, 0x22, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x6e,
+ 0x6f, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69,
+ 0x7a, 0x65, 0x64, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x1e, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x4e, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68,
+ 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x7a, 0x65, 0x64, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x22,
+ 0x7d, 0x0a, 0x14, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x51, 0x0a, 0x0b, 0x73,
+ 0x73, 0x6d, 0x6c, 0x5f, 0x67, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x53, 0x73, 0x6d, 0x6c, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x47, 0x65, 0x6e, 0x64,
+ 0x65, 0x72, 0x52, 0x0a, 0x73, 0x73, 0x6d, 0x6c, 0x47, 0x65, 0x6e, 0x64, 0x65, 0x72, 0x22, 0xf4,
+ 0x01, 0x0a, 0x16, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x70, 0x65,
+ 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x73, 0x70, 0x65,
+ 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x01,
+ 0x52, 0x0c, 0x73, 0x70, 0x65, 0x61, 0x6b, 0x69, 0x6e, 0x67, 0x52, 0x61, 0x74, 0x65, 0x12, 0x14,
+ 0x0a, 0x05, 0x70, 0x69, 0x74, 0x63, 0x68, 0x18, 0x02, 0x20, 0x01, 0x28, 0x01, 0x52, 0x05, 0x70,
+ 0x69, 0x74, 0x63, 0x68, 0x12, 0x24, 0x0a, 0x0e, 0x76, 0x6f, 0x6c, 0x75, 0x6d, 0x65, 0x5f, 0x67,
+ 0x61, 0x69, 0x6e, 0x5f, 0x64, 0x62, 0x18, 0x03, 0x20, 0x01, 0x28, 0x01, 0x52, 0x0c, 0x76, 0x6f,
+ 0x6c, 0x75, 0x6d, 0x65, 0x47, 0x61, 0x69, 0x6e, 0x44, 0x62, 0x12, 0x2c, 0x0a, 0x12, 0x65, 0x66,
+ 0x66, 0x65, 0x63, 0x74, 0x73, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5f, 0x69, 0x64,
+ 0x18, 0x05, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x65, 0x66, 0x66, 0x65, 0x63, 0x74, 0x73, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x49, 0x64, 0x12, 0x4b, 0x0a, 0x05, 0x76, 0x6f, 0x69, 0x63,
+ 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x53,
+ 0x65, 0x6c, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x52, 0x05,
+ 0x76, 0x6f, 0x69, 0x63, 0x65, 0x22, 0x94, 0x02, 0x0a, 0x11, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
+ 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x60, 0x0a, 0x0e, 0x61,
+ 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x65, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2a, 0x0a,
+ 0x11, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x72,
+ 0x74, 0x7a, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0f, 0x73, 0x61, 0x6d, 0x70, 0x6c, 0x65,
+ 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74, 0x7a, 0x12, 0x71, 0x0a, 0x18, 0x73, 0x79, 0x6e,
+ 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x79,
+ 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x52, 0x16, 0x73, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a, 0x65,
+ 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0x66, 0x0a, 0x13,
+ 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x44, 0x74, 0x6d, 0x66, 0x45, 0x76, 0x65,
+ 0x6e, 0x74, 0x73, 0x12, 0x4f, 0x0a, 0x0b, 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x70,
+ 0x68, 0x6f, 0x6e, 0x79, 0x44, 0x74, 0x6d, 0x66, 0x52, 0x0a, 0x64, 0x74, 0x6d, 0x66, 0x45, 0x76,
+ 0x65, 0x6e, 0x74, 0x73, 0x22, 0x91, 0x01, 0x0a, 0x12, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x54,
+ 0x6f, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x65, 0x0a, 0x14, 0x73,
+ 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x76, 0x61, 0x72, 0x69,
+ 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65,
+ 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x52, 0x12,
+ 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x61, 0x72, 0x69, 0x61,
+ 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x2a, 0xfb, 0x01, 0x0a, 0x0d, 0x41, 0x75, 0x64,
+ 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x1e, 0x0a, 0x1a, 0x41, 0x55,
+ 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x55, 0x4e, 0x53,
+ 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x55,
+ 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x49, 0x4e,
+ 0x45, 0x41, 0x52, 0x5f, 0x31, 0x36, 0x10, 0x01, 0x12, 0x17, 0x0a, 0x13, 0x41, 0x55, 0x44, 0x49,
+ 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x46, 0x4c, 0x41, 0x43, 0x10,
+ 0x02, 0x12, 0x18, 0x0a, 0x14, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44,
+ 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x55, 0x4c, 0x41, 0x57, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x41,
+ 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x41, 0x4d,
+ 0x52, 0x10, 0x04, 0x12, 0x19, 0x0a, 0x15, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43,
+ 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x41, 0x4d, 0x52, 0x5f, 0x57, 0x42, 0x10, 0x05, 0x12, 0x1b,
+ 0x0a, 0x17, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47,
+ 0x5f, 0x4f, 0x47, 0x47, 0x5f, 0x4f, 0x50, 0x55, 0x53, 0x10, 0x06, 0x12, 0x29, 0x0a, 0x25, 0x41,
+ 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x50,
+ 0x45, 0x45, 0x58, 0x5f, 0x57, 0x49, 0x54, 0x48, 0x5f, 0x48, 0x45, 0x41, 0x44, 0x45, 0x52, 0x5f,
+ 0x42, 0x59, 0x54, 0x45, 0x10, 0x07, 0x2a, 0x76, 0x0a, 0x12, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68,
+ 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x56, 0x61, 0x72, 0x69, 0x61, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x20,
+ 0x53, 0x50, 0x45, 0x45, 0x43, 0x48, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x4c, 0x5f, 0x56, 0x41, 0x52,
+ 0x49, 0x41, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x16, 0x0a, 0x12, 0x55, 0x53, 0x45, 0x5f, 0x42, 0x45, 0x53, 0x54, 0x5f, 0x41,
+ 0x56, 0x41, 0x49, 0x4c, 0x41, 0x42, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x10, 0x0a, 0x0c, 0x55, 0x53,
+ 0x45, 0x5f, 0x53, 0x54, 0x41, 0x4e, 0x44, 0x41, 0x52, 0x44, 0x10, 0x02, 0x12, 0x10, 0x0a, 0x0c,
+ 0x55, 0x53, 0x45, 0x5f, 0x45, 0x4e, 0x48, 0x41, 0x4e, 0x43, 0x45, 0x44, 0x10, 0x03, 0x2a, 0x8d,
+ 0x01, 0x0a, 0x0f, 0x53, 0x73, 0x6d, 0x6c, 0x56, 0x6f, 0x69, 0x63, 0x65, 0x47, 0x65, 0x6e, 0x64,
+ 0x65, 0x72, 0x12, 0x21, 0x0a, 0x1d, 0x53, 0x53, 0x4d, 0x4c, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45,
+ 0x5f, 0x47, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
+ 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1a, 0x0a, 0x16, 0x53, 0x53, 0x4d, 0x4c, 0x5f, 0x56, 0x4f,
+ 0x49, 0x43, 0x45, 0x5f, 0x47, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x4d, 0x41, 0x4c, 0x45, 0x10,
+ 0x01, 0x12, 0x1c, 0x0a, 0x18, 0x53, 0x53, 0x4d, 0x4c, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f,
+ 0x47, 0x45, 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x46, 0x45, 0x4d, 0x41, 0x4c, 0x45, 0x10, 0x02, 0x12,
+ 0x1d, 0x0a, 0x19, 0x53, 0x53, 0x4d, 0x4c, 0x5f, 0x56, 0x4f, 0x49, 0x43, 0x45, 0x5f, 0x47, 0x45,
+ 0x4e, 0x44, 0x45, 0x52, 0x5f, 0x4e, 0x45, 0x55, 0x54, 0x52, 0x41, 0x4c, 0x10, 0x03, 0x2a, 0xec,
+ 0x01, 0x0a, 0x13, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x45, 0x6e,
+ 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x25, 0x0a, 0x21, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54,
+ 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f,
+ 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x23, 0x0a,
+ 0x1f, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e,
+ 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4c, 0x49, 0x4e, 0x45, 0x41, 0x52, 0x5f, 0x31, 0x36,
+ 0x10, 0x01, 0x12, 0x1d, 0x0a, 0x19, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x5f, 0x41, 0x55, 0x44,
+ 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x50, 0x33, 0x10,
+ 0x02, 0x12, 0x25, 0x0a, 0x21, 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x5f, 0x41, 0x55, 0x44, 0x49,
+ 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x50, 0x33, 0x5f, 0x36,
+ 0x34, 0x5f, 0x4b, 0x42, 0x50, 0x53, 0x10, 0x04, 0x12, 0x22, 0x0a, 0x1e, 0x4f, 0x55, 0x54, 0x50,
+ 0x55, 0x54, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43, 0x4f, 0x44, 0x49, 0x4e,
+ 0x47, 0x5f, 0x4f, 0x47, 0x47, 0x5f, 0x4f, 0x50, 0x55, 0x53, 0x10, 0x03, 0x12, 0x1f, 0x0a, 0x1b,
+ 0x4f, 0x55, 0x54, 0x50, 0x55, 0x54, 0x5f, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x5f, 0x45, 0x4e, 0x43,
+ 0x4f, 0x44, 0x49, 0x4e, 0x47, 0x5f, 0x4d, 0x55, 0x4c, 0x41, 0x57, 0x10, 0x05, 0x2a, 0x94, 0x02,
+ 0x0a, 0x0d, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x44, 0x74, 0x6d, 0x66, 0x12,
+ 0x1e, 0x0a, 0x1a, 0x54, 0x45, 0x4c, 0x45, 0x50, 0x48, 0x4f, 0x4e, 0x59, 0x5f, 0x44, 0x54, 0x4d,
+ 0x46, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12,
+ 0x0c, 0x0a, 0x08, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x4f, 0x4e, 0x45, 0x10, 0x01, 0x12, 0x0c, 0x0a,
+ 0x08, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x54, 0x57, 0x4f, 0x10, 0x02, 0x12, 0x0e, 0x0a, 0x0a, 0x44,
+ 0x54, 0x4d, 0x46, 0x5f, 0x54, 0x48, 0x52, 0x45, 0x45, 0x10, 0x03, 0x12, 0x0d, 0x0a, 0x09, 0x44,
+ 0x54, 0x4d, 0x46, 0x5f, 0x46, 0x4f, 0x55, 0x52, 0x10, 0x04, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x54,
+ 0x4d, 0x46, 0x5f, 0x46, 0x49, 0x56, 0x45, 0x10, 0x05, 0x12, 0x0c, 0x0a, 0x08, 0x44, 0x54, 0x4d,
+ 0x46, 0x5f, 0x53, 0x49, 0x58, 0x10, 0x06, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x4d, 0x46, 0x5f,
+ 0x53, 0x45, 0x56, 0x45, 0x4e, 0x10, 0x07, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x4d, 0x46, 0x5f,
+ 0x45, 0x49, 0x47, 0x48, 0x54, 0x10, 0x08, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x54, 0x4d, 0x46, 0x5f,
+ 0x4e, 0x49, 0x4e, 0x45, 0x10, 0x09, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x5a,
+ 0x45, 0x52, 0x4f, 0x10, 0x0a, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x41, 0x10,
+ 0x0b, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x42, 0x10, 0x0c, 0x12, 0x0a, 0x0a,
+ 0x06, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x43, 0x10, 0x0d, 0x12, 0x0a, 0x0a, 0x06, 0x44, 0x54, 0x4d,
+ 0x46, 0x5f, 0x44, 0x10, 0x0e, 0x12, 0x0d, 0x0a, 0x09, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x53, 0x54,
+ 0x41, 0x52, 0x10, 0x0f, 0x12, 0x0e, 0x0a, 0x0a, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x50, 0x4f, 0x55,
+ 0x4e, 0x44, 0x10, 0x10, 0x42, 0xe5, 0x02, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x10, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01,
+ 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f,
+ 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea,
+ 0x41, 0x55, 0x0a, 0x1b, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x6c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12,
+ 0x36, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x73, 0x2f,
+ 0x7b, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x7d, 0xea, 0x41, 0x62, 0x0a, 0x1f, 0x73, 0x70, 0x65, 0x65,
+ 0x63, 0x68, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x12, 0x3f, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x53, 0x65, 0x74, 0x73, 0x2f,
+ 0x7b, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x5f, 0x73, 0x65, 0x74, 0x7d, 0x62, 0x06, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
+var file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
+var file_google_cloud_dialogflow_v2beta1_audio_config_proto_goTypes = []interface{}{
+ (AudioEncoding)(0), // 0: google.cloud.dialogflow.v2beta1.AudioEncoding
+ (SpeechModelVariant)(0), // 1: google.cloud.dialogflow.v2beta1.SpeechModelVariant
+ (SsmlVoiceGender)(0), // 2: google.cloud.dialogflow.v2beta1.SsmlVoiceGender
+ (OutputAudioEncoding)(0), // 3: google.cloud.dialogflow.v2beta1.OutputAudioEncoding
+ (TelephonyDtmf)(0), // 4: google.cloud.dialogflow.v2beta1.TelephonyDtmf
+ (*SpeechContext)(nil), // 5: google.cloud.dialogflow.v2beta1.SpeechContext
+ (*SpeechWordInfo)(nil), // 6: google.cloud.dialogflow.v2beta1.SpeechWordInfo
+ (*InputAudioConfig)(nil), // 7: google.cloud.dialogflow.v2beta1.InputAudioConfig
+ (*VoiceSelectionParams)(nil), // 8: google.cloud.dialogflow.v2beta1.VoiceSelectionParams
+ (*SynthesizeSpeechConfig)(nil), // 9: google.cloud.dialogflow.v2beta1.SynthesizeSpeechConfig
+ (*OutputAudioConfig)(nil), // 10: google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ (*TelephonyDtmfEvents)(nil), // 11: google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ (*SpeechToTextConfig)(nil), // 12: google.cloud.dialogflow.v2beta1.SpeechToTextConfig
+ (*durationpb.Duration)(nil), // 13: google.protobuf.Duration
+}
+var file_google_cloud_dialogflow_v2beta1_audio_config_proto_depIdxs = []int32{
+ 13, // 0: google.cloud.dialogflow.v2beta1.SpeechWordInfo.start_offset:type_name -> google.protobuf.Duration
+ 13, // 1: google.cloud.dialogflow.v2beta1.SpeechWordInfo.end_offset:type_name -> google.protobuf.Duration
+ 0, // 2: google.cloud.dialogflow.v2beta1.InputAudioConfig.audio_encoding:type_name -> google.cloud.dialogflow.v2beta1.AudioEncoding
+ 5, // 3: google.cloud.dialogflow.v2beta1.InputAudioConfig.speech_contexts:type_name -> google.cloud.dialogflow.v2beta1.SpeechContext
+ 1, // 4: google.cloud.dialogflow.v2beta1.InputAudioConfig.model_variant:type_name -> google.cloud.dialogflow.v2beta1.SpeechModelVariant
+ 2, // 5: google.cloud.dialogflow.v2beta1.VoiceSelectionParams.ssml_gender:type_name -> google.cloud.dialogflow.v2beta1.SsmlVoiceGender
+ 8, // 6: google.cloud.dialogflow.v2beta1.SynthesizeSpeechConfig.voice:type_name -> google.cloud.dialogflow.v2beta1.VoiceSelectionParams
+ 3, // 7: google.cloud.dialogflow.v2beta1.OutputAudioConfig.audio_encoding:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioEncoding
+ 9, // 8: google.cloud.dialogflow.v2beta1.OutputAudioConfig.synthesize_speech_config:type_name -> google.cloud.dialogflow.v2beta1.SynthesizeSpeechConfig
+ 4, // 9: google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents.dtmf_events:type_name -> google.cloud.dialogflow.v2beta1.TelephonyDtmf
+ 1, // 10: google.cloud.dialogflow.v2beta1.SpeechToTextConfig.speech_model_variant:type_name -> google.cloud.dialogflow.v2beta1.SpeechModelVariant
+ 11, // [11:11] is the sub-list for method output_type
+ 11, // [11:11] is the sub-list for method input_type
+ 11, // [11:11] is the sub-list for extension type_name
+ 11, // [11:11] is the sub-list for extension extendee
+ 0, // [0:11] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_audio_config_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_audio_config_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_audio_config_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpeechContext); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpeechWordInfo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InputAudioConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*VoiceSelectionParams); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SynthesizeSpeechConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OutputAudioConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TelephonyDtmfEvents); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SpeechToTextConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDesc,
+ NumEnums: 5,
+ NumMessages: 8,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_audio_config_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_audio_config_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_audio_config_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_audio_config_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_audio_config_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/context.pb.go b/dialogflow/apiv2beta1/dialogflowpb/context.pb.go
new file mode 100644
index 0000000..1e98d7a
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/context.pb.go
@@ -0,0 +1,1379 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/context.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ structpb "google.golang.org/protobuf/types/known/structpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Dialogflow contexts are similar to natural language context. If a person says
+// to you "they are orange", you need context in order to understand what "they"
+// is referring to. Similarly, for Dialogflow to handle an end-user expression
+// like that, it needs to be provided with context in order to correctly match
+// an intent.
+//
+// Using contexts, you can control the flow of a conversation. You can configure
+// contexts for an intent by setting input and output contexts, which are
+// identified by string names. When an intent is matched, any configured output
+// contexts for that intent become active. While any contexts are active,
+// Dialogflow is more likely to match intents that are configured with input
+// contexts that correspond to the currently active contexts.
+//
+// For more information about context, see the
+// [Contexts guide](https://cloud.google.com/dialogflow/docs/contexts-overview).
+type Context struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The unique identifier of the context. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context
+ // ID>`,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ //
+ // The `Context ID` is always converted to lowercase, may only contain
+ // characters in a-zA-Z0-9_-% and may be at most 250 bytes long.
+ //
+ // If `Environment ID` is not specified, we assume default 'draft'
+ // environment. If `User ID` is not specified, we assume default '-' user.
+ //
+ // The following context names are reserved for internal use by Dialogflow.
+ // You should not use these contexts or create contexts with these names:
+ //
+ // * `__system_counters__`
+ // * `*_id_dialog_context`
+ // * `*_dialog_params_size`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The number of conversational query requests after which the
+ // context expires. The default is `0`. If set to `0`, the context expires
+ // immediately. Contexts expire automatically after 20 minutes if there
+ // are no matching queries.
+ LifespanCount int32 `protobuf:"varint,2,opt,name=lifespan_count,json=lifespanCount,proto3" json:"lifespan_count,omitempty"`
+ // Optional. The collection of parameters associated with this context.
+ //
+ // Depending on your protocol or client library language, this is a
+ // map, associative array, symbol table, dictionary, or JSON object
+ // composed of a collection of (MapKey, MapValue) pairs:
+ //
+ // - MapKey type: string
+ // - MapKey value: parameter name
+ // - MapValue type:
+ // - If parameter's entity type is a composite entity: map
+ // - Else: depending on parameter value type, could be one of string,
+ // number, boolean, null, list or map
+ //
+ // - MapValue value:
+ // - If parameter's entity type is a composite entity:
+ // map from composite entity property names to property values
+ // - Else: parameter value
+ Parameters *structpb.Struct `protobuf:"bytes,3,opt,name=parameters,proto3" json:"parameters,omitempty"`
+}
+
+func (x *Context) Reset() {
+ *x = Context{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Context) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Context) ProtoMessage() {}
+
+func (x *Context) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Context.ProtoReflect.Descriptor instead.
+func (*Context) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Context) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Context) GetLifespanCount() int32 {
+ if x != nil {
+ return x.LifespanCount
+ }
+ return 0
+}
+
+func (x *Context) GetParameters() *structpb.Struct {
+ if x != nil {
+ return x.Parameters
+ }
+ return nil
+}
+
+// The request message for
+// [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts].
+type ListContextsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The session to list all contexts from. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListContextsRequest) Reset() {
+ *x = ListContextsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListContextsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListContextsRequest) ProtoMessage() {}
+
+func (x *ListContextsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListContextsRequest.ProtoReflect.Descriptor instead.
+func (*ListContextsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListContextsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListContextsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListContextsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts].
+type ListContextsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of contexts. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ Contexts []*Context `protobuf:"bytes,1,rep,name=contexts,proto3" json:"contexts,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListContextsResponse) Reset() {
+ *x = ListContextsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListContextsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListContextsResponse) ProtoMessage() {}
+
+func (x *ListContextsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListContextsResponse.ProtoReflect.Descriptor instead.
+func (*ListContextsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListContextsResponse) GetContexts() []*Context {
+ if x != nil {
+ return x.Contexts
+ }
+ return nil
+}
+
+func (x *ListContextsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Contexts.GetContext][google.cloud.dialogflow.v2beta1.Contexts.GetContext].
+type GetContextRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the context. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context
+ // ID>`,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetContextRequest) Reset() {
+ *x = GetContextRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetContextRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetContextRequest) ProtoMessage() {}
+
+func (x *GetContextRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetContextRequest.ProtoReflect.Descriptor instead.
+func (*GetContextRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetContextRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Contexts.CreateContext][google.cloud.dialogflow.v2beta1.Contexts.CreateContext].
+type CreateContextRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The session to create a context for. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The context to create.
+ Context *Context `protobuf:"bytes,2,opt,name=context,proto3" json:"context,omitempty"`
+}
+
+func (x *CreateContextRequest) Reset() {
+ *x = CreateContextRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateContextRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateContextRequest) ProtoMessage() {}
+
+func (x *CreateContextRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateContextRequest.ProtoReflect.Descriptor instead.
+func (*CreateContextRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateContextRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateContextRequest) GetContext() *Context {
+ if x != nil {
+ return x.Context
+ }
+ return nil
+}
+
+// The request message for
+// [Contexts.UpdateContext][google.cloud.dialogflow.v2beta1.Contexts.UpdateContext].
+type UpdateContextRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The context to update.
+ Context *Context `protobuf:"bytes,1,opt,name=context,proto3" json:"context,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateContextRequest) Reset() {
+ *x = UpdateContextRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateContextRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateContextRequest) ProtoMessage() {}
+
+func (x *UpdateContextRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateContextRequest.ProtoReflect.Descriptor instead.
+func (*UpdateContextRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *UpdateContextRequest) GetContext() *Context {
+ if x != nil {
+ return x.Context
+ }
+ return nil
+}
+
+func (x *UpdateContextRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [Contexts.DeleteContext][google.cloud.dialogflow.v2beta1.Contexts.DeleteContext].
+type DeleteContextRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the context to delete. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context
+ // ID>`,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/contexts/<Context ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/contexts/<Context ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteContextRequest) Reset() {
+ *x = DeleteContextRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteContextRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteContextRequest) ProtoMessage() {}
+
+func (x *DeleteContextRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteContextRequest.ProtoReflect.Descriptor instead.
+func (*DeleteContextRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *DeleteContextRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Contexts.DeleteAllContexts][google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts].
+type DeleteAllContextsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the session to delete all contexts from. Supported
+ // formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified we assume default 'draft' environment. If
+ // `User ID` is not specified, we assume default '-' user.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+}
+
+func (x *DeleteAllContextsRequest) Reset() {
+ *x = DeleteAllContextsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteAllContextsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteAllContextsRequest) ProtoMessage() {}
+
+func (x *DeleteAllContextsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteAllContextsRequest.ProtoReflect.Descriptor instead.
+func (*DeleteAllContextsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *DeleteAllContextsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_context_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_context_proto_rawDesc = []byte{
+ 0x0a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e,
+ 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69,
+ 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x22, 0xa1, 0x04, 0x0a, 0x07, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x69, 0x66, 0x65, 0x73, 0x70, 0x61, 0x6e, 0x5f, 0x63, 0x6f, 0x75,
+ 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0d, 0x6c, 0x69, 0x66, 0x65, 0x73, 0x70,
+ 0x61, 0x6e, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d,
+ 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
+ 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
+ 0x3a, 0xa1, 0x03, 0xea, 0x41, 0x9d, 0x03, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73,
+ 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x7d, 0x12, 0x66, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x2f,
+ 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x2f, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x7d, 0x12, 0x53, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x7b, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x7d, 0x12, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x2f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x7d, 0x22, 0x94, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a,
+ 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x14,
+ 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65,
+ 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x22, 0x52, 0x0a, 0x11, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa2, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0xa1, 0x01, 0x0a, 0x14,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x40, 0x0a,
+ 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22,
+ 0x55, 0x0a, 0x14, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x5d, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x32, 0x9c, 0x16, 0x0a, 0x08, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x12, 0xba, 0x03, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0xbc, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xac, 0x02, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x5a, 0x4f, 0x12, 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x73, 0x5a, 0x44, 0x12, 0x42, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x5a, 0x5b, 0x12, 0x59, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0xa7, 0x03, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x32,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0xba, 0x02, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0xac, 0x02, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x4f,
+ 0x12, 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a,
+ 0x44, 0x12, 0x42, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x5b, 0x12, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xdb, 0x03, 0x0a, 0x0d, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0xe8, 0x02, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0xd0, 0x02, 0x22, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x3a, 0x07,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5a, 0x58, 0x22, 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x3a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x5a, 0x4d, 0x22, 0x42, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x3a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x5a, 0x64, 0x22, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x3a, 0x07, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0xda, 0x41, 0x0e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x8a, 0x04, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x22, 0x97, 0x03, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xf0, 0x02, 0x32, 0x3e, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5a, 0x60, 0x32,
+ 0x55, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5a,
+ 0x55, 0x32, 0x4a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5a, 0x6c, 0x32, 0x61, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65,
+ 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0xda, 0x41, 0x13, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2c, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0xda, 0x41, 0x07, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x12, 0x9b, 0x03, 0x0a, 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xba, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xac, 0x02, 0x2a,
+ 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x4f, 0x2a, 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x44, 0x2a, 0x42, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x5b,
+ 0x2a, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65,
+ 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0xa5, 0x03, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x41, 0x6c, 0x6c,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x41, 0x6c, 0x6c, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0xbc, 0x02, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0xac, 0x02, 0x2a, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x5a, 0x4f, 0x2a,
+ 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x5a, 0x44,
+ 0x2a, 0x42, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x73, 0x5a, 0x5b, 0x2a, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73,
+ 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
+ 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa4, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0c, 0x43, 0x6f,
+ 0x6e, 0x74, 0x65, 0x78, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
+ 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70,
+ 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_context_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_context_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_context_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_context_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_context_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_context_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_context_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_context_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes = make([]protoimpl.MessageInfo, 8)
+var file_google_cloud_dialogflow_v2beta1_context_proto_goTypes = []interface{}{
+ (*Context)(nil), // 0: google.cloud.dialogflow.v2beta1.Context
+ (*ListContextsRequest)(nil), // 1: google.cloud.dialogflow.v2beta1.ListContextsRequest
+ (*ListContextsResponse)(nil), // 2: google.cloud.dialogflow.v2beta1.ListContextsResponse
+ (*GetContextRequest)(nil), // 3: google.cloud.dialogflow.v2beta1.GetContextRequest
+ (*CreateContextRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.CreateContextRequest
+ (*UpdateContextRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.UpdateContextRequest
+ (*DeleteContextRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.DeleteContextRequest
+ (*DeleteAllContextsRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.DeleteAllContextsRequest
+ (*structpb.Struct)(nil), // 8: google.protobuf.Struct
+ (*fieldmaskpb.FieldMask)(nil), // 9: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 10: google.protobuf.Empty
+}
+var file_google_cloud_dialogflow_v2beta1_context_proto_depIdxs = []int32{
+ 8, // 0: google.cloud.dialogflow.v2beta1.Context.parameters:type_name -> google.protobuf.Struct
+ 0, // 1: google.cloud.dialogflow.v2beta1.ListContextsResponse.contexts:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 0, // 2: google.cloud.dialogflow.v2beta1.CreateContextRequest.context:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 0, // 3: google.cloud.dialogflow.v2beta1.UpdateContextRequest.context:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 9, // 4: google.cloud.dialogflow.v2beta1.UpdateContextRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 1, // 5: google.cloud.dialogflow.v2beta1.Contexts.ListContexts:input_type -> google.cloud.dialogflow.v2beta1.ListContextsRequest
+ 3, // 6: google.cloud.dialogflow.v2beta1.Contexts.GetContext:input_type -> google.cloud.dialogflow.v2beta1.GetContextRequest
+ 4, // 7: google.cloud.dialogflow.v2beta1.Contexts.CreateContext:input_type -> google.cloud.dialogflow.v2beta1.CreateContextRequest
+ 5, // 8: google.cloud.dialogflow.v2beta1.Contexts.UpdateContext:input_type -> google.cloud.dialogflow.v2beta1.UpdateContextRequest
+ 6, // 9: google.cloud.dialogflow.v2beta1.Contexts.DeleteContext:input_type -> google.cloud.dialogflow.v2beta1.DeleteContextRequest
+ 7, // 10: google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts:input_type -> google.cloud.dialogflow.v2beta1.DeleteAllContextsRequest
+ 2, // 11: google.cloud.dialogflow.v2beta1.Contexts.ListContexts:output_type -> google.cloud.dialogflow.v2beta1.ListContextsResponse
+ 0, // 12: google.cloud.dialogflow.v2beta1.Contexts.GetContext:output_type -> google.cloud.dialogflow.v2beta1.Context
+ 0, // 13: google.cloud.dialogflow.v2beta1.Contexts.CreateContext:output_type -> google.cloud.dialogflow.v2beta1.Context
+ 0, // 14: google.cloud.dialogflow.v2beta1.Contexts.UpdateContext:output_type -> google.cloud.dialogflow.v2beta1.Context
+ 10, // 15: google.cloud.dialogflow.v2beta1.Contexts.DeleteContext:output_type -> google.protobuf.Empty
+ 10, // 16: google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts:output_type -> google.protobuf.Empty
+ 11, // [11:17] is the sub-list for method output_type
+ 5, // [5:11] is the sub-list for method input_type
+ 5, // [5:5] is the sub-list for extension type_name
+ 5, // [5:5] is the sub-list for extension extendee
+ 0, // [0:5] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_context_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_context_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_context_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Context); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListContextsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListContextsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetContextRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateContextRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateContextRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteContextRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteAllContextsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_context_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 8,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_context_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_context_proto_depIdxs,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_context_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_context_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_context_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_context_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_context_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ContextsClient is the client API for Contexts service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ContextsClient interface {
+ // Returns the list of all contexts in the specified session.
+ ListContexts(ctx context.Context, in *ListContextsRequest, opts ...grpc.CallOption) (*ListContextsResponse, error)
+ // Retrieves the specified context.
+ GetContext(ctx context.Context, in *GetContextRequest, opts ...grpc.CallOption) (*Context, error)
+ // Creates a context.
+ //
+ // If the specified context already exists, overrides the context.
+ CreateContext(ctx context.Context, in *CreateContextRequest, opts ...grpc.CallOption) (*Context, error)
+ // Updates the specified context.
+ UpdateContext(ctx context.Context, in *UpdateContextRequest, opts ...grpc.CallOption) (*Context, error)
+ // Deletes the specified context.
+ DeleteContext(ctx context.Context, in *DeleteContextRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Deletes all active contexts in the specified session.
+ DeleteAllContexts(ctx context.Context, in *DeleteAllContextsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+}
+
+type contextsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewContextsClient(cc grpc.ClientConnInterface) ContextsClient {
+ return &contextsClient{cc}
+}
+
+func (c *contextsClient) ListContexts(ctx context.Context, in *ListContextsRequest, opts ...grpc.CallOption) (*ListContextsResponse, error) {
+ out := new(ListContextsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/ListContexts", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *contextsClient) GetContext(ctx context.Context, in *GetContextRequest, opts ...grpc.CallOption) (*Context, error) {
+ out := new(Context)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/GetContext", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *contextsClient) CreateContext(ctx context.Context, in *CreateContextRequest, opts ...grpc.CallOption) (*Context, error) {
+ out := new(Context)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/CreateContext", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *contextsClient) UpdateContext(ctx context.Context, in *UpdateContextRequest, opts ...grpc.CallOption) (*Context, error) {
+ out := new(Context)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/UpdateContext", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *contextsClient) DeleteContext(ctx context.Context, in *DeleteContextRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/DeleteContext", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *contextsClient) DeleteAllContexts(ctx context.Context, in *DeleteAllContextsRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Contexts/DeleteAllContexts", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ContextsServer is the server API for Contexts service.
+type ContextsServer interface {
+ // Returns the list of all contexts in the specified session.
+ ListContexts(context.Context, *ListContextsRequest) (*ListContextsResponse, error)
+ // Retrieves the specified context.
+ GetContext(context.Context, *GetContextRequest) (*Context, error)
+ // Creates a context.
+ //
+ // If the specified context already exists, overrides the context.
+ CreateContext(context.Context, *CreateContextRequest) (*Context, error)
+ // Updates the specified context.
+ UpdateContext(context.Context, *UpdateContextRequest) (*Context, error)
+ // Deletes the specified context.
+ DeleteContext(context.Context, *DeleteContextRequest) (*emptypb.Empty, error)
+ // Deletes all active contexts in the specified session.
+ DeleteAllContexts(context.Context, *DeleteAllContextsRequest) (*emptypb.Empty, error)
+}
+
+// UnimplementedContextsServer can be embedded to have forward compatible implementations.
+type UnimplementedContextsServer struct {
+}
+
+func (*UnimplementedContextsServer) ListContexts(context.Context, *ListContextsRequest) (*ListContextsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListContexts not implemented")
+}
+func (*UnimplementedContextsServer) GetContext(context.Context, *GetContextRequest) (*Context, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetContext not implemented")
+}
+func (*UnimplementedContextsServer) CreateContext(context.Context, *CreateContextRequest) (*Context, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateContext not implemented")
+}
+func (*UnimplementedContextsServer) UpdateContext(context.Context, *UpdateContextRequest) (*Context, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateContext not implemented")
+}
+func (*UnimplementedContextsServer) DeleteContext(context.Context, *DeleteContextRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteContext not implemented")
+}
+func (*UnimplementedContextsServer) DeleteAllContexts(context.Context, *DeleteAllContextsRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteAllContexts not implemented")
+}
+
+func RegisterContextsServer(s *grpc.Server, srv ContextsServer) {
+ s.RegisterService(&_Contexts_serviceDesc, srv)
+}
+
+func _Contexts_ListContexts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListContextsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).ListContexts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/ListContexts",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).ListContexts(ctx, req.(*ListContextsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Contexts_GetContext_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetContextRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).GetContext(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/GetContext",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).GetContext(ctx, req.(*GetContextRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Contexts_CreateContext_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateContextRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).CreateContext(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/CreateContext",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).CreateContext(ctx, req.(*CreateContextRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Contexts_UpdateContext_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateContextRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).UpdateContext(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/UpdateContext",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).UpdateContext(ctx, req.(*UpdateContextRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Contexts_DeleteContext_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteContextRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).DeleteContext(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/DeleteContext",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).DeleteContext(ctx, req.(*DeleteContextRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Contexts_DeleteAllContexts_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteAllContextsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ContextsServer).DeleteAllContexts(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Contexts/DeleteAllContexts",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ContextsServer).DeleteAllContexts(ctx, req.(*DeleteAllContextsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Contexts_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Contexts",
+ HandlerType: (*ContextsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListContexts",
+ Handler: _Contexts_ListContexts_Handler,
+ },
+ {
+ MethodName: "GetContext",
+ Handler: _Contexts_GetContext_Handler,
+ },
+ {
+ MethodName: "CreateContext",
+ Handler: _Contexts_CreateContext_Handler,
+ },
+ {
+ MethodName: "UpdateContext",
+ Handler: _Contexts_UpdateContext_Handler,
+ },
+ {
+ MethodName: "DeleteContext",
+ Handler: _Contexts_DeleteContext_Handler,
+ },
+ {
+ MethodName: "DeleteAllContexts",
+ Handler: _Contexts_DeleteAllContexts_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/context.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/conversation.pb.go b/dialogflow/apiv2beta1/dialogflowpb/conversation.pb.go
new file mode 100644
index 0000000..b0fc931
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/conversation.pb.go
@@ -0,0 +1,2243 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/conversation.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Enumeration of the completion status of the conversation.
+type Conversation_LifecycleState int32
+
+const (
+ // Unknown.
+ Conversation_LIFECYCLE_STATE_UNSPECIFIED Conversation_LifecycleState = 0
+ // Conversation is currently open for media analysis.
+ Conversation_IN_PROGRESS Conversation_LifecycleState = 1
+ // Conversation has been completed.
+ Conversation_COMPLETED Conversation_LifecycleState = 2
+)
+
+// Enum value maps for Conversation_LifecycleState.
+var (
+ Conversation_LifecycleState_name = map[int32]string{
+ 0: "LIFECYCLE_STATE_UNSPECIFIED",
+ 1: "IN_PROGRESS",
+ 2: "COMPLETED",
+ }
+ Conversation_LifecycleState_value = map[string]int32{
+ "LIFECYCLE_STATE_UNSPECIFIED": 0,
+ "IN_PROGRESS": 1,
+ "COMPLETED": 2,
+ }
+)
+
+func (x Conversation_LifecycleState) Enum() *Conversation_LifecycleState {
+ p := new(Conversation_LifecycleState)
+ *p = x
+ return p
+}
+
+func (x Conversation_LifecycleState) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Conversation_LifecycleState) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[0].Descriptor()
+}
+
+func (Conversation_LifecycleState) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[0]
+}
+
+func (x Conversation_LifecycleState) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Conversation_LifecycleState.Descriptor instead.
+func (Conversation_LifecycleState) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Enumeration of the different conversation stages a conversation can be in.
+// Reference:
+// https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages
+type Conversation_ConversationStage int32
+
+const (
+ // Unknown. Should never be used after a conversation is successfully
+ // created.
+ Conversation_CONVERSATION_STAGE_UNSPECIFIED Conversation_ConversationStage = 0
+ // The conversation should return virtual agent responses into the
+ // conversation.
+ Conversation_VIRTUAL_AGENT_STAGE Conversation_ConversationStage = 1
+ // The conversation should not provide responses, just listen and provide
+ // suggestions.
+ Conversation_HUMAN_ASSIST_STAGE Conversation_ConversationStage = 2
+)
+
+// Enum value maps for Conversation_ConversationStage.
+var (
+ Conversation_ConversationStage_name = map[int32]string{
+ 0: "CONVERSATION_STAGE_UNSPECIFIED",
+ 1: "VIRTUAL_AGENT_STAGE",
+ 2: "HUMAN_ASSIST_STAGE",
+ }
+ Conversation_ConversationStage_value = map[string]int32{
+ "CONVERSATION_STAGE_UNSPECIFIED": 0,
+ "VIRTUAL_AGENT_STAGE": 1,
+ "HUMAN_ASSIST_STAGE": 2,
+ }
+)
+
+func (x Conversation_ConversationStage) Enum() *Conversation_ConversationStage {
+ p := new(Conversation_ConversationStage)
+ *p = x
+ return p
+}
+
+func (x Conversation_ConversationStage) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Conversation_ConversationStage) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[1].Descriptor()
+}
+
+func (Conversation_ConversationStage) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes[1]
+}
+
+func (x Conversation_ConversationStage) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Conversation_ConversationStage.Descriptor instead.
+func (Conversation_ConversationStage) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// Represents a conversation.
+// A conversation is an interaction between an agent, including live agents
+// and Dialogflow agents, and a support customer. Conversations can
+// include phone calls and text-based chat sessions.
+type Conversation struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The unique identifier of this conversation.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Output only. The current state of the Conversation.
+ LifecycleState Conversation_LifecycleState `protobuf:"varint,2,opt,name=lifecycle_state,json=lifecycleState,proto3,enum=google.cloud.dialogflow.v2beta1.Conversation_LifecycleState" json:"lifecycle_state,omitempty"`
+ // Required. The Conversation Profile to be used to configure this
+ // Conversation. This field cannot be updated.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ ConversationProfile string `protobuf:"bytes,3,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Output only. Required if the conversation is to be connected over
+ // telephony.
+ PhoneNumber *ConversationPhoneNumber `protobuf:"bytes,4,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
+ // The stage of a conversation. It indicates whether the virtual agent or a
+ // human agent is handling the conversation.
+ //
+ // If the conversation is created with the conversation profile that has
+ // Dialogflow config set, defaults to
+ // [ConversationStage.VIRTUAL_AGENT_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.VIRTUAL_AGENT_STAGE];
+ // Otherwise, defaults to
+ // [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE].
+ //
+ // If the conversation is created with the conversation profile that has
+ // Dialogflow config set but explicitly sets conversation_stage to
+ // [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE],
+ // it skips
+ // [ConversationStage.VIRTUAL_AGENT_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.VIRTUAL_AGENT_STAGE]
+ // stage and directly goes to
+ // [ConversationStage.HUMAN_ASSIST_STAGE][google.cloud.dialogflow.v2beta1.Conversation.ConversationStage.HUMAN_ASSIST_STAGE].
+ ConversationStage Conversation_ConversationStage `protobuf:"varint,7,opt,name=conversation_stage,json=conversationStage,proto3,enum=google.cloud.dialogflow.v2beta1.Conversation_ConversationStage" json:"conversation_stage,omitempty"`
+ // Output only. The time the conversation was started.
+ StartTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
+ // Output only. The time the conversation was finished.
+ EndTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=end_time,json=endTime,proto3" json:"end_time,omitempty"`
+}
+
+func (x *Conversation) Reset() {
+ *x = Conversation{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Conversation) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Conversation) ProtoMessage() {}
+
+func (x *Conversation) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Conversation.ProtoReflect.Descriptor instead.
+func (*Conversation) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Conversation) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Conversation) GetLifecycleState() Conversation_LifecycleState {
+ if x != nil {
+ return x.LifecycleState
+ }
+ return Conversation_LIFECYCLE_STATE_UNSPECIFIED
+}
+
+func (x *Conversation) GetConversationProfile() string {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return ""
+}
+
+func (x *Conversation) GetPhoneNumber() *ConversationPhoneNumber {
+ if x != nil {
+ return x.PhoneNumber
+ }
+ return nil
+}
+
+func (x *Conversation) GetConversationStage() Conversation_ConversationStage {
+ if x != nil {
+ return x.ConversationStage
+ }
+ return Conversation_CONVERSATION_STAGE_UNSPECIFIED
+}
+
+func (x *Conversation) GetStartTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.StartTime
+ }
+ return nil
+}
+
+func (x *Conversation) GetEndTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.EndTime
+ }
+ return nil
+}
+
+// Represents a phone number for telephony integration. It allows for connecting
+// a particular conversation over telephony.
+type ConversationPhoneNumber struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The phone number to connect to this conversation.
+ PhoneNumber string `protobuf:"bytes,3,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
+}
+
+func (x *ConversationPhoneNumber) Reset() {
+ *x = ConversationPhoneNumber{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ConversationPhoneNumber) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ConversationPhoneNumber) ProtoMessage() {}
+
+func (x *ConversationPhoneNumber) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ConversationPhoneNumber.ProtoReflect.Descriptor instead.
+func (*ConversationPhoneNumber) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ConversationPhoneNumber) GetPhoneNumber() string {
+ if x != nil {
+ return x.PhoneNumber
+ }
+ return ""
+}
+
+// The request message for
+// [Conversations.CreateConversation][google.cloud.dialogflow.v2beta1.Conversations.CreateConversation].
+type CreateConversationRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Resource identifier of the project creating the conversation.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The conversation to create.
+ Conversation *Conversation `protobuf:"bytes,2,opt,name=conversation,proto3" json:"conversation,omitempty"`
+ // Optional. Identifier of the conversation. Generally it's auto generated by
+ // Google. Only set it if you cannot wait for the response to return a
+ // auto-generated one to you.
+ //
+ // The conversation ID must be compliant with the regression fomula
+ // "[a-zA-Z][a-zA-Z0-9_-]*" with the characters length in range of [3,64].
+ // If the field is provided, the caller is resposible for
+ // 1. the uniqueness of the ID, otherwise the request will be rejected.
+ // 2. the consistency for whether to use custom ID or not under a project to
+ // better ensure uniqueness.
+ ConversationId string `protobuf:"bytes,3,opt,name=conversation_id,json=conversationId,proto3" json:"conversation_id,omitempty"`
+}
+
+func (x *CreateConversationRequest) Reset() {
+ *x = CreateConversationRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateConversationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateConversationRequest) ProtoMessage() {}
+
+func (x *CreateConversationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateConversationRequest.ProtoReflect.Descriptor instead.
+func (*CreateConversationRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *CreateConversationRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateConversationRequest) GetConversation() *Conversation {
+ if x != nil {
+ return x.Conversation
+ }
+ return nil
+}
+
+func (x *CreateConversationRequest) GetConversationId() string {
+ if x != nil {
+ return x.ConversationId
+ }
+ return ""
+}
+
+// The request message for
+// [Conversations.ListConversations][google.cloud.dialogflow.v2beta1.Conversations.ListConversations].
+type ListConversationsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project from which to list all conversation.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // A filter expression that filters conversations listed in the response. In
+ // general, the expression must specify the field name, a comparison operator,
+ // and the value to use for filtering:
+ // <ul>
+ //
+ // <li>The value must be a string, a number, or a boolean.</li>
+ // <li>The comparison operator must be either `=`,`!=`, `>`, or `<`.</li>
+ // <li>To filter on multiple expressions, separate the
+ // expressions with `AND` or `OR` (omitting both implies `AND`).</li>
+ // <li>For clarity, expressions can be enclosed in parentheses.</li>
+ //
+ // </ul>
+ // Only `lifecycle_state` can be filtered on in this way. For example,
+ // the following expression only returns `COMPLETED` conversations:
+ //
+ // `lifecycle_state = "COMPLETED"`
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListConversationsRequest) Reset() {
+ *x = ListConversationsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListConversationsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListConversationsRequest) ProtoMessage() {}
+
+func (x *ListConversationsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListConversationsRequest.ProtoReflect.Descriptor instead.
+func (*ListConversationsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ListConversationsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListConversationsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListConversationsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListConversationsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// The response message for
+// [Conversations.ListConversations][google.cloud.dialogflow.v2beta1.Conversations.ListConversations].
+type ListConversationsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of conversations. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ Conversations []*Conversation `protobuf:"bytes,1,rep,name=conversations,proto3" json:"conversations,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListConversationsResponse) Reset() {
+ *x = ListConversationsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListConversationsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListConversationsResponse) ProtoMessage() {}
+
+func (x *ListConversationsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListConversationsResponse.ProtoReflect.Descriptor instead.
+func (*ListConversationsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *ListConversationsResponse) GetConversations() []*Conversation {
+ if x != nil {
+ return x.Conversations
+ }
+ return nil
+}
+
+func (x *ListConversationsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Conversations.GetConversation][google.cloud.dialogflow.v2beta1.Conversations.GetConversation].
+type GetConversationRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the conversation. Format:
+ // `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
+ // ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetConversationRequest) Reset() {
+ *x = GetConversationRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetConversationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetConversationRequest) ProtoMessage() {}
+
+func (x *GetConversationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetConversationRequest.ProtoReflect.Descriptor instead.
+func (*GetConversationRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *GetConversationRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Conversations.CompleteConversation][google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation].
+type CompleteConversationRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Resource identifier of the conversation to close.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *CompleteConversationRequest) Reset() {
+ *x = CompleteConversationRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CompleteConversationRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CompleteConversationRequest) ProtoMessage() {}
+
+func (x *CompleteConversationRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CompleteConversationRequest.ProtoReflect.Descriptor instead.
+func (*CompleteConversationRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *CompleteConversationRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message to create one Message. Currently it is only used in
+// BatchCreateMessagesRequest.
+type CreateMessageRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Resource identifier of the conversation to create message.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The message to create.
+ // [Message.participant][google.cloud.dialogflow.v2beta1.Message.participant]
+ // is required.
+ Message *Message `protobuf:"bytes,2,opt,name=message,proto3" json:"message,omitempty"`
+}
+
+func (x *CreateMessageRequest) Reset() {
+ *x = CreateMessageRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateMessageRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateMessageRequest) ProtoMessage() {}
+
+func (x *CreateMessageRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateMessageRequest.ProtoReflect.Descriptor instead.
+func (*CreateMessageRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *CreateMessageRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateMessageRequest) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+// The request message for [Conversations.BatchCreateMessagesRequest][].
+type BatchCreateMessagesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Resource identifier of the conversation to create message.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. A maximum of 1000 Messages can be created in a batch.
+ // [CreateMessageRequest.message.send_time][] is required. All created
+ // messages will have identical
+ // [Message.create_time][google.cloud.dialogflow.v2beta1.Message.create_time].
+ Requests []*CreateMessageRequest `protobuf:"bytes,2,rep,name=requests,proto3" json:"requests,omitempty"`
+}
+
+func (x *BatchCreateMessagesRequest) Reset() {
+ *x = BatchCreateMessagesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchCreateMessagesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchCreateMessagesRequest) ProtoMessage() {}
+
+func (x *BatchCreateMessagesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchCreateMessagesRequest.ProtoReflect.Descriptor instead.
+func (*BatchCreateMessagesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *BatchCreateMessagesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchCreateMessagesRequest) GetRequests() []*CreateMessageRequest {
+ if x != nil {
+ return x.Requests
+ }
+ return nil
+}
+
+// The request message for [Conversations.BatchCreateMessagesResponse][].
+type BatchCreateMessagesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Messages created.
+ Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
+}
+
+func (x *BatchCreateMessagesResponse) Reset() {
+ *x = BatchCreateMessagesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchCreateMessagesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchCreateMessagesResponse) ProtoMessage() {}
+
+func (x *BatchCreateMessagesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchCreateMessagesResponse.ProtoReflect.Descriptor instead.
+func (*BatchCreateMessagesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *BatchCreateMessagesResponse) GetMessages() []*Message {
+ if x != nil {
+ return x.Messages
+ }
+ return nil
+}
+
+// The request message for
+// [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages].
+type ListMessagesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the conversation to list messages for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. Filter on message fields. Currently predicates on `create_time`
+ // and `create_time_epoch_microseconds` are supported. `create_time` only
+ // support milliseconds accuracy. E.g.,
+ // `create_time_epoch_microseconds > 1551790877964485` or
+ // `create_time > "2017-01-15T01:30:15.01Z"`.
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListMessagesRequest) Reset() {
+ *x = ListMessagesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListMessagesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListMessagesRequest) ProtoMessage() {}
+
+func (x *ListMessagesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListMessagesRequest.ProtoReflect.Descriptor instead.
+func (*ListMessagesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *ListMessagesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListMessagesRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+func (x *ListMessagesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListMessagesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages].
+type ListMessagesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The list of messages. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ // `messages` is sorted by `create_time` in descending order.
+ Messages []*Message `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
+ // Optional. Token to retrieve the next page of results, or empty if there are
+ // no more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListMessagesResponse) Reset() {
+ *x = ListMessagesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListMessagesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListMessagesResponse) ProtoMessage() {}
+
+func (x *ListMessagesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListMessagesResponse.ProtoReflect.Descriptor instead.
+func (*ListMessagesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *ListMessagesResponse) GetMessages() []*Message {
+ if x != nil {
+ return x.Messages
+ }
+ return nil
+}
+
+func (x *ListMessagesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Conversations.SuggestConversationSummary][google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary].
+type SuggestConversationSummaryRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The conversation to fetch suggestion for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Conversation string `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"`
+ // The name of the latest conversation message used as context for
+ // compiling suggestion. If empty, the latest message of the conversation will
+ // be used.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,3,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Max number of messages prior to and including
+ // [latest_message] to use as context when compiling the
+ // suggestion. By default 500 and at most 1000.
+ ContextSize int32 `protobuf:"varint,4,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestConversationSummaryRequest) Reset() {
+ *x = SuggestConversationSummaryRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestConversationSummaryRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestConversationSummaryRequest) ProtoMessage() {}
+
+func (x *SuggestConversationSummaryRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestConversationSummaryRequest.ProtoReflect.Descriptor instead.
+func (*SuggestConversationSummaryRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *SuggestConversationSummaryRequest) GetConversation() string {
+ if x != nil {
+ return x.Conversation
+ }
+ return ""
+}
+
+func (x *SuggestConversationSummaryRequest) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestConversationSummaryRequest) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// The response message for
+// [Conversations.SuggestConversationSummary][google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary].
+type SuggestConversationSummaryResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Generated summary.
+ Summary *SuggestConversationSummaryResponse_Summary `protobuf:"bytes,1,opt,name=summary,proto3" json:"summary,omitempty"`
+ // The name of the latest conversation message used as context for
+ // compiling suggestion.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Number of messages prior to and including
+ // [last_conversation_message][] used to compile the suggestion. It may be
+ // smaller than the [SuggestSummaryRequest.context_size][] field in the
+ // request if there weren't that many messages in the conversation.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestConversationSummaryResponse) Reset() {
+ *x = SuggestConversationSummaryResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestConversationSummaryResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestConversationSummaryResponse) ProtoMessage() {}
+
+func (x *SuggestConversationSummaryResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestConversationSummaryResponse.ProtoReflect.Descriptor instead.
+func (*SuggestConversationSummaryResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *SuggestConversationSummaryResponse) GetSummary() *SuggestConversationSummaryResponse_Summary {
+ if x != nil {
+ return x.Summary
+ }
+ return nil
+}
+
+func (x *SuggestConversationSummaryResponse) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestConversationSummaryResponse) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// Generated summary for a conversation.
+type SuggestConversationSummaryResponse_Summary struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The summary content that is concatenated into one string.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // The summary content that is divided into sections. The key is the
+ // section's name and the value is the section's content. There is no
+ // specific format for the key or value.
+ TextSections map[string]string `protobuf:"bytes,4,rep,name=text_sections,json=textSections,proto3" json:"text_sections,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // The name of the answer record. Format:
+ // "projects/<Project ID>/answerRecords/<Answer Record ID>"
+ AnswerRecord string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *SuggestConversationSummaryResponse_Summary) Reset() {
+ *x = SuggestConversationSummaryResponse_Summary{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestConversationSummaryResponse_Summary) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestConversationSummaryResponse_Summary) ProtoMessage() {}
+
+func (x *SuggestConversationSummaryResponse_Summary) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestConversationSummaryResponse_Summary.ProtoReflect.Descriptor instead.
+func (*SuggestConversationSummaryResponse_Summary) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP(), []int{13, 0}
+}
+
+func (x *SuggestConversationSummaryResponse_Summary) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *SuggestConversationSummaryResponse_Summary) GetTextSections() map[string]string {
+ if x != nil {
+ return x.TextSections
+ }
+ return nil
+}
+
+func (x *SuggestConversationSummaryResponse_Summary) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_conversation_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc = []byte{
+ 0x0a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+ 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62,
+ 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
+ 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
+ 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xae, 0x07, 0x0a,
+ 0x0c, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x17, 0x0a,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x6a, 0x0a, 0x0f, 0x6c, 0x69, 0x66, 0x65, 0x63, 0x79,
+ 0x63, 0x6c, 0x65, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x4c,
+ 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x0e, 0x6c, 0x69, 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61,
+ 0x74, 0x65, 0x12, 0x68, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x60, 0x0a, 0x0c,
+ 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x50, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x6e,
+ 0x0a, 0x12, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x73,
+ 0x74, 0x61, 0x67, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x52, 0x11, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61, 0x67, 0x65, 0x12, 0x3e,
+ 0x0a, 0x0a, 0x73, 0x74, 0x61, 0x72, 0x74, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x09, 0x73, 0x74, 0x61, 0x72, 0x74, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x3a,
+ 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x07, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x22, 0x51, 0x0a, 0x0e, 0x4c, 0x69,
+ 0x66, 0x65, 0x63, 0x79, 0x63, 0x6c, 0x65, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1f, 0x0a, 0x1b,
+ 0x4c, 0x49, 0x46, 0x45, 0x43, 0x59, 0x43, 0x4c, 0x45, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f,
+ 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a,
+ 0x0b, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x45, 0x53, 0x53, 0x10, 0x01, 0x12, 0x0d,
+ 0x0a, 0x09, 0x43, 0x4f, 0x4d, 0x50, 0x4c, 0x45, 0x54, 0x45, 0x44, 0x10, 0x02, 0x22, 0x68, 0x0a,
+ 0x11, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61,
+ 0x67, 0x65, 0x12, 0x22, 0x0a, 0x1e, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x41, 0x54, 0x49,
+ 0x4f, 0x4e, 0x5f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
+ 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x17, 0x0a, 0x13, 0x56, 0x49, 0x52, 0x54, 0x55, 0x41,
+ 0x4c, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x53, 0x54, 0x41, 0x47, 0x45, 0x10, 0x01, 0x12,
+ 0x16, 0x0a, 0x12, 0x48, 0x55, 0x4d, 0x41, 0x4e, 0x5f, 0x41, 0x53, 0x53, 0x49, 0x53, 0x54, 0x5f,
+ 0x53, 0x54, 0x41, 0x47, 0x45, 0x10, 0x02, 0x3a, 0xa3, 0x01, 0xea, 0x41, 0x9f, 0x01, 0x0a, 0x26,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x12, 0x44, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x22, 0x41, 0x0a,
+ 0x17, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x68, 0x6f,
+ 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x26, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e,
+ 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72,
+ 0x22, 0xe9, 0x01, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46,
+ 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e,
+ 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x12, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x2c,
+ 0x0a, 0x0f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x69,
+ 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x63, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x22, 0xb6, 0x01, 0x0a,
+ 0x18, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x28, 0x12, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a,
+ 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66,
+ 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22, 0x98, 0x01, 0x0a, 0x19, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x53, 0x0a, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x63, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74,
+ 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x22, 0x5c, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28,
+ 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x61,
+ 0x0a, 0x1b, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02,
+ 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x22, 0xa7, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x22, 0xbc, 0x01, 0x0a, 0x1a,
+ 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x46, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x08, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x73, 0x22, 0x63, 0x0a, 0x1b, 0x42, 0x61,
+ 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x22,
+ 0xac, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x12,
+ 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69,
+ 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74,
+ 0x65, 0x72, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12,
+ 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x84,
+ 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x26, 0x0a,
+ 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe9, 0x01, 0x0a, 0x21, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d,
+ 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x52, 0x0a, 0x0c, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x2e, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+ 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21,
+ 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a,
+ 0x65, 0x22, 0xb5, 0x04, 0x0a, 0x22, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x65, 0x0a, 0x07, 0x73, 0x75, 0x6d, 0x6d,
+ 0x61, 0x72, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67,
+ 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53,
+ 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53,
+ 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x07, 0x73, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12,
+ 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52,
+ 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21,
+ 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a,
+ 0x65, 0x1a, 0xb5, 0x02, 0x0a, 0x07, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x12, 0x12, 0x0a,
+ 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78,
+ 0x74, 0x12, 0x82, 0x01, 0x0a, 0x0d, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x65, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x5d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67,
+ 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53,
+ 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x2e, 0x53,
+ 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x53, 0x65,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x50, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xfa,
+ 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3f, 0x0a, 0x11, 0x54, 0x65, 0x78, 0x74,
+ 0x53, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a,
+ 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12,
+ 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x32, 0x8d, 0x11, 0x0a, 0x0d, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xa1, 0x02, 0x0a, 0x12,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x9f, 0x01,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x82, 0x01, 0x22, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5a, 0x46, 0x22, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x0c, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xda, 0x41, 0x13, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x2c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+ 0x81, 0x02, 0x0a, 0x11, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x75, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x66, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x12, 0xee, 0x01, 0x0a, 0x0f, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x2d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
+ 0x73, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x91, 0x02, 0x0a, 0x14, 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74,
+ 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x43, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8b, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x7e, 0x22, 0x33, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
+ 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x44, 0x22, 0x3f, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63, 0x6f, 0x6d, 0x70, 0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01,
+ 0x2a, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xbd, 0x02, 0x0a, 0x13, 0x42, 0x61, 0x74,
+ 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xaa, 0x01, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x9a, 0x01, 0x22, 0x41, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74,
+ 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x52, 0x22, 0x4d, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda,
+ 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x89, 0x02, 0x0a, 0x0c, 0x4c, 0x69, 0x73,
+ 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x8b, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x7c, 0x12,
+ 0x35, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x5a, 0x43, 0x12, 0x41, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0x88, 0x03, 0x0a, 0x1a, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d,
+ 0x61, 0x72, 0x79, 0x12, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d,
+ 0x6d, 0x61, 0x72, 0x79, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe0, 0x01, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0xca, 0x01, 0x22, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72,
+ 0x79, 0x3a, 0x01, 0x2a, 0x5a, 0x6a, 0x22, 0x65, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x75, 0x6d, 0x6d, 0x61, 0x72, 0x79, 0x3a, 0x01, 0x2a,
+ 0xda, 0x41, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x1a,
+ 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59,
+ 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68,
+ 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa9, 0x01, 0x0a, 0x23, 0x63, 0x6f,
+ 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x42, 0x11, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02,
+ 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
+var file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes = []interface{}{
+ (Conversation_LifecycleState)(0), // 0: google.cloud.dialogflow.v2beta1.Conversation.LifecycleState
+ (Conversation_ConversationStage)(0), // 1: google.cloud.dialogflow.v2beta1.Conversation.ConversationStage
+ (*Conversation)(nil), // 2: google.cloud.dialogflow.v2beta1.Conversation
+ (*ConversationPhoneNumber)(nil), // 3: google.cloud.dialogflow.v2beta1.ConversationPhoneNumber
+ (*CreateConversationRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.CreateConversationRequest
+ (*ListConversationsRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.ListConversationsRequest
+ (*ListConversationsResponse)(nil), // 6: google.cloud.dialogflow.v2beta1.ListConversationsResponse
+ (*GetConversationRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.GetConversationRequest
+ (*CompleteConversationRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.CompleteConversationRequest
+ (*CreateMessageRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.CreateMessageRequest
+ (*BatchCreateMessagesRequest)(nil), // 10: google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest
+ (*BatchCreateMessagesResponse)(nil), // 11: google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse
+ (*ListMessagesRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.ListMessagesRequest
+ (*ListMessagesResponse)(nil), // 13: google.cloud.dialogflow.v2beta1.ListMessagesResponse
+ (*SuggestConversationSummaryRequest)(nil), // 14: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryRequest
+ (*SuggestConversationSummaryResponse)(nil), // 15: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse
+ (*SuggestConversationSummaryResponse_Summary)(nil), // 16: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary
+ nil, // 17: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.TextSectionsEntry
+ (*timestamppb.Timestamp)(nil), // 18: google.protobuf.Timestamp
+ (*Message)(nil), // 19: google.cloud.dialogflow.v2beta1.Message
+}
+var file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.Conversation.lifecycle_state:type_name -> google.cloud.dialogflow.v2beta1.Conversation.LifecycleState
+ 3, // 1: google.cloud.dialogflow.v2beta1.Conversation.phone_number:type_name -> google.cloud.dialogflow.v2beta1.ConversationPhoneNumber
+ 1, // 2: google.cloud.dialogflow.v2beta1.Conversation.conversation_stage:type_name -> google.cloud.dialogflow.v2beta1.Conversation.ConversationStage
+ 18, // 3: google.cloud.dialogflow.v2beta1.Conversation.start_time:type_name -> google.protobuf.Timestamp
+ 18, // 4: google.cloud.dialogflow.v2beta1.Conversation.end_time:type_name -> google.protobuf.Timestamp
+ 2, // 5: google.cloud.dialogflow.v2beta1.CreateConversationRequest.conversation:type_name -> google.cloud.dialogflow.v2beta1.Conversation
+ 2, // 6: google.cloud.dialogflow.v2beta1.ListConversationsResponse.conversations:type_name -> google.cloud.dialogflow.v2beta1.Conversation
+ 19, // 7: google.cloud.dialogflow.v2beta1.CreateMessageRequest.message:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 9, // 8: google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest.requests:type_name -> google.cloud.dialogflow.v2beta1.CreateMessageRequest
+ 19, // 9: google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse.messages:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 19, // 10: google.cloud.dialogflow.v2beta1.ListMessagesResponse.messages:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 16, // 11: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.summary:type_name -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary
+ 17, // 12: google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.text_sections:type_name -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse.Summary.TextSectionsEntry
+ 4, // 13: google.cloud.dialogflow.v2beta1.Conversations.CreateConversation:input_type -> google.cloud.dialogflow.v2beta1.CreateConversationRequest
+ 5, // 14: google.cloud.dialogflow.v2beta1.Conversations.ListConversations:input_type -> google.cloud.dialogflow.v2beta1.ListConversationsRequest
+ 7, // 15: google.cloud.dialogflow.v2beta1.Conversations.GetConversation:input_type -> google.cloud.dialogflow.v2beta1.GetConversationRequest
+ 8, // 16: google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation:input_type -> google.cloud.dialogflow.v2beta1.CompleteConversationRequest
+ 10, // 17: google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages:input_type -> google.cloud.dialogflow.v2beta1.BatchCreateMessagesRequest
+ 12, // 18: google.cloud.dialogflow.v2beta1.Conversations.ListMessages:input_type -> google.cloud.dialogflow.v2beta1.ListMessagesRequest
+ 14, // 19: google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary:input_type -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryRequest
+ 2, // 20: google.cloud.dialogflow.v2beta1.Conversations.CreateConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
+ 6, // 21: google.cloud.dialogflow.v2beta1.Conversations.ListConversations:output_type -> google.cloud.dialogflow.v2beta1.ListConversationsResponse
+ 2, // 22: google.cloud.dialogflow.v2beta1.Conversations.GetConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
+ 2, // 23: google.cloud.dialogflow.v2beta1.Conversations.CompleteConversation:output_type -> google.cloud.dialogflow.v2beta1.Conversation
+ 11, // 24: google.cloud.dialogflow.v2beta1.Conversations.BatchCreateMessages:output_type -> google.cloud.dialogflow.v2beta1.BatchCreateMessagesResponse
+ 13, // 25: google.cloud.dialogflow.v2beta1.Conversations.ListMessages:output_type -> google.cloud.dialogflow.v2beta1.ListMessagesResponse
+ 15, // 26: google.cloud.dialogflow.v2beta1.Conversations.SuggestConversationSummary:output_type -> google.cloud.dialogflow.v2beta1.SuggestConversationSummaryResponse
+ 20, // [20:27] is the sub-list for method output_type
+ 13, // [13:20] is the sub-list for method input_type
+ 13, // [13:13] is the sub-list for extension type_name
+ 13, // [13:13] is the sub-list for extension extendee
+ 0, // [0:13] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_conversation_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_conversation_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_conversation_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Conversation); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConversationPhoneNumber); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateConversationRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListConversationsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListConversationsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetConversationRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CompleteConversationRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateMessageRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchCreateMessagesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchCreateMessagesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListMessagesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListMessagesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestConversationSummaryRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestConversationSummaryResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestConversationSummaryResponse_Summary); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc,
+ NumEnums: 2,
+ NumMessages: 16,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_conversation_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_conversation_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_conversation_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ConversationsClient is the client API for Conversations service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ConversationsClient interface {
+ // Creates a new conversation. Conversations are auto-completed after 24
+ // hours.
+ //
+ // Conversation Lifecycle:
+ // There are two stages during a conversation: Automated Agent Stage and
+ // Assist Stage.
+ //
+ // For Automated Agent Stage, there will be a dialogflow agent responding to
+ // user queries.
+ //
+ // For Assist Stage, there's no dialogflow agent responding to user queries.
+ // But we will provide suggestions which are generated from conversation.
+ //
+ // If
+ // [Conversation.conversation_profile][google.cloud.dialogflow.v2beta1.Conversation.conversation_profile]
+ // is configured for a dialogflow agent, conversation will start from
+ // `Automated Agent Stage`, otherwise, it will start from `Assist Stage`. And
+ // during `Automated Agent Stage`, once an
+ // [Intent][google.cloud.dialogflow.v2beta1.Intent] with
+ // [Intent.live_agent_handoff][google.cloud.dialogflow.v2beta1.Intent.live_agent_handoff]
+ // is triggered, conversation will transfer to Assist Stage.
+ CreateConversation(ctx context.Context, in *CreateConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
+ // Returns the list of all conversations in the specified project.
+ ListConversations(ctx context.Context, in *ListConversationsRequest, opts ...grpc.CallOption) (*ListConversationsResponse, error)
+ // Retrieves the specific conversation.
+ GetConversation(ctx context.Context, in *GetConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
+ // Completes the specified conversation. Finished conversations are purged
+ // from the database after 30 days.
+ CompleteConversation(ctx context.Context, in *CompleteConversationRequest, opts ...grpc.CallOption) (*Conversation, error)
+ // Batch ingests messages to conversation. Customers can use this RPC to
+ // ingest historical messages to conversation.
+ BatchCreateMessages(ctx context.Context, in *BatchCreateMessagesRequest, opts ...grpc.CallOption) (*BatchCreateMessagesResponse, error)
+ // Lists messages that belong to a given conversation.
+ // `messages` are ordered by `create_time` in descending order. To fetch
+ // updates without duplication, send request with filter
+ // `create_time_epoch_microseconds >
+ // [first item's create_time of previous request]` and empty page_token.
+ ListMessages(ctx context.Context, in *ListMessagesRequest, opts ...grpc.CallOption) (*ListMessagesResponse, error)
+ // Suggest summary for a conversation based on specific historical messages.
+ // The range of the messages to be used for summary can be specified in the
+ // request.
+ SuggestConversationSummary(ctx context.Context, in *SuggestConversationSummaryRequest, opts ...grpc.CallOption) (*SuggestConversationSummaryResponse, error)
+}
+
+type conversationsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewConversationsClient(cc grpc.ClientConnInterface) ConversationsClient {
+ return &conversationsClient{cc}
+}
+
+func (c *conversationsClient) CreateConversation(ctx context.Context, in *CreateConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
+ out := new(Conversation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/CreateConversation", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) ListConversations(ctx context.Context, in *ListConversationsRequest, opts ...grpc.CallOption) (*ListConversationsResponse, error) {
+ out := new(ListConversationsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/ListConversations", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) GetConversation(ctx context.Context, in *GetConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
+ out := new(Conversation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/GetConversation", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) CompleteConversation(ctx context.Context, in *CompleteConversationRequest, opts ...grpc.CallOption) (*Conversation, error) {
+ out := new(Conversation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/CompleteConversation", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) BatchCreateMessages(ctx context.Context, in *BatchCreateMessagesRequest, opts ...grpc.CallOption) (*BatchCreateMessagesResponse, error) {
+ out := new(BatchCreateMessagesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/BatchCreateMessages", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) ListMessages(ctx context.Context, in *ListMessagesRequest, opts ...grpc.CallOption) (*ListMessagesResponse, error) {
+ out := new(ListMessagesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/ListMessages", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationsClient) SuggestConversationSummary(ctx context.Context, in *SuggestConversationSummaryRequest, opts ...grpc.CallOption) (*SuggestConversationSummaryResponse, error) {
+ out := new(SuggestConversationSummaryResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Conversations/SuggestConversationSummary", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ConversationsServer is the server API for Conversations service.
+type ConversationsServer interface {
+ // Creates a new conversation. Conversations are auto-completed after 24
+ // hours.
+ //
+ // Conversation Lifecycle:
+ // There are two stages during a conversation: Automated Agent Stage and
+ // Assist Stage.
+ //
+ // For Automated Agent Stage, there will be a dialogflow agent responding to
+ // user queries.
+ //
+ // For Assist Stage, there's no dialogflow agent responding to user queries.
+ // But we will provide suggestions which are generated from conversation.
+ //
+ // If
+ // [Conversation.conversation_profile][google.cloud.dialogflow.v2beta1.Conversation.conversation_profile]
+ // is configured for a dialogflow agent, conversation will start from
+ // `Automated Agent Stage`, otherwise, it will start from `Assist Stage`. And
+ // during `Automated Agent Stage`, once an
+ // [Intent][google.cloud.dialogflow.v2beta1.Intent] with
+ // [Intent.live_agent_handoff][google.cloud.dialogflow.v2beta1.Intent.live_agent_handoff]
+ // is triggered, conversation will transfer to Assist Stage.
+ CreateConversation(context.Context, *CreateConversationRequest) (*Conversation, error)
+ // Returns the list of all conversations in the specified project.
+ ListConversations(context.Context, *ListConversationsRequest) (*ListConversationsResponse, error)
+ // Retrieves the specific conversation.
+ GetConversation(context.Context, *GetConversationRequest) (*Conversation, error)
+ // Completes the specified conversation. Finished conversations are purged
+ // from the database after 30 days.
+ CompleteConversation(context.Context, *CompleteConversationRequest) (*Conversation, error)
+ // Batch ingests messages to conversation. Customers can use this RPC to
+ // ingest historical messages to conversation.
+ BatchCreateMessages(context.Context, *BatchCreateMessagesRequest) (*BatchCreateMessagesResponse, error)
+ // Lists messages that belong to a given conversation.
+ // `messages` are ordered by `create_time` in descending order. To fetch
+ // updates without duplication, send request with filter
+ // `create_time_epoch_microseconds >
+ // [first item's create_time of previous request]` and empty page_token.
+ ListMessages(context.Context, *ListMessagesRequest) (*ListMessagesResponse, error)
+ // Suggest summary for a conversation based on specific historical messages.
+ // The range of the messages to be used for summary can be specified in the
+ // request.
+ SuggestConversationSummary(context.Context, *SuggestConversationSummaryRequest) (*SuggestConversationSummaryResponse, error)
+}
+
+// UnimplementedConversationsServer can be embedded to have forward compatible implementations.
+type UnimplementedConversationsServer struct {
+}
+
+func (*UnimplementedConversationsServer) CreateConversation(context.Context, *CreateConversationRequest) (*Conversation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateConversation not implemented")
+}
+func (*UnimplementedConversationsServer) ListConversations(context.Context, *ListConversationsRequest) (*ListConversationsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListConversations not implemented")
+}
+func (*UnimplementedConversationsServer) GetConversation(context.Context, *GetConversationRequest) (*Conversation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetConversation not implemented")
+}
+func (*UnimplementedConversationsServer) CompleteConversation(context.Context, *CompleteConversationRequest) (*Conversation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CompleteConversation not implemented")
+}
+func (*UnimplementedConversationsServer) BatchCreateMessages(context.Context, *BatchCreateMessagesRequest) (*BatchCreateMessagesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchCreateMessages not implemented")
+}
+func (*UnimplementedConversationsServer) ListMessages(context.Context, *ListMessagesRequest) (*ListMessagesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListMessages not implemented")
+}
+func (*UnimplementedConversationsServer) SuggestConversationSummary(context.Context, *SuggestConversationSummaryRequest) (*SuggestConversationSummaryResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SuggestConversationSummary not implemented")
+}
+
+func RegisterConversationsServer(s *grpc.Server, srv ConversationsServer) {
+ s.RegisterService(&_Conversations_serviceDesc, srv)
+}
+
+func _Conversations_CreateConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateConversationRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).CreateConversation(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/CreateConversation",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).CreateConversation(ctx, req.(*CreateConversationRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_ListConversations_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListConversationsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).ListConversations(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/ListConversations",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).ListConversations(ctx, req.(*ListConversationsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_GetConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetConversationRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).GetConversation(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/GetConversation",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).GetConversation(ctx, req.(*GetConversationRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_CompleteConversation_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CompleteConversationRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).CompleteConversation(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/CompleteConversation",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).CompleteConversation(ctx, req.(*CompleteConversationRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_BatchCreateMessages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchCreateMessagesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).BatchCreateMessages(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/BatchCreateMessages",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).BatchCreateMessages(ctx, req.(*BatchCreateMessagesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_ListMessages_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListMessagesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).ListMessages(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/ListMessages",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).ListMessages(ctx, req.(*ListMessagesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Conversations_SuggestConversationSummary_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SuggestConversationSummaryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationsServer).SuggestConversationSummary(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Conversations/SuggestConversationSummary",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationsServer).SuggestConversationSummary(ctx, req.(*SuggestConversationSummaryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Conversations_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Conversations",
+ HandlerType: (*ConversationsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CreateConversation",
+ Handler: _Conversations_CreateConversation_Handler,
+ },
+ {
+ MethodName: "ListConversations",
+ Handler: _Conversations_ListConversations_Handler,
+ },
+ {
+ MethodName: "GetConversation",
+ Handler: _Conversations_GetConversation_Handler,
+ },
+ {
+ MethodName: "CompleteConversation",
+ Handler: _Conversations_CompleteConversation_Handler,
+ },
+ {
+ MethodName: "BatchCreateMessages",
+ Handler: _Conversations_BatchCreateMessages_Handler,
+ },
+ {
+ MethodName: "ListMessages",
+ Handler: _Conversations_ListMessages_Handler,
+ },
+ {
+ MethodName: "SuggestConversationSummary",
+ Handler: _Conversations_SuggestConversationSummary_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/conversation.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/conversation_event.pb.go b/dialogflow/apiv2beta1/dialogflowpb/conversation_event.pb.go
new file mode 100644
index 0000000..441bbe8
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/conversation_event.pb.go
@@ -0,0 +1,349 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/conversation_event.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ status "google.golang.org/genproto/googleapis/rpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Enumeration of the types of events available.
+type ConversationEvent_Type int32
+
+const (
+ // Type not set.
+ ConversationEvent_TYPE_UNSPECIFIED ConversationEvent_Type = 0
+ // A new conversation has been opened. This is fired when a telephone call
+ // is answered, or a conversation is created via the API.
+ ConversationEvent_CONVERSATION_STARTED ConversationEvent_Type = 1
+ // An existing conversation has closed. This is fired when a telephone call
+ // is terminated, or a conversation is closed via the API.
+ ConversationEvent_CONVERSATION_FINISHED ConversationEvent_Type = 2
+ // An existing conversation has received notification from Dialogflow that
+ // human intervention is required.
+ ConversationEvent_HUMAN_INTERVENTION_NEEDED ConversationEvent_Type = 3
+ // An existing conversation has received a new message, either from API or
+ // telephony. It is configured in
+ // [ConversationProfile.new_message_event_notification_config][google.cloud.dialogflow.v2beta1.ConversationProfile.new_message_event_notification_config]
+ ConversationEvent_NEW_MESSAGE ConversationEvent_Type = 5
+ // Unrecoverable error during a telephone call.
+ //
+ // In general non-recoverable errors only occur if something was
+ // misconfigured in the ConversationProfile corresponding to the call. After
+ // a non-recoverable error, Dialogflow may stop responding.
+ //
+ // We don't fire this event:
+ //
+ // * in an API call because we can directly return the error, or,
+ // * when we can recover from an error.
+ ConversationEvent_UNRECOVERABLE_ERROR ConversationEvent_Type = 4
+)
+
+// Enum value maps for ConversationEvent_Type.
+var (
+ ConversationEvent_Type_name = map[int32]string{
+ 0: "TYPE_UNSPECIFIED",
+ 1: "CONVERSATION_STARTED",
+ 2: "CONVERSATION_FINISHED",
+ 3: "HUMAN_INTERVENTION_NEEDED",
+ 5: "NEW_MESSAGE",
+ 4: "UNRECOVERABLE_ERROR",
+ }
+ ConversationEvent_Type_value = map[string]int32{
+ "TYPE_UNSPECIFIED": 0,
+ "CONVERSATION_STARTED": 1,
+ "CONVERSATION_FINISHED": 2,
+ "HUMAN_INTERVENTION_NEEDED": 3,
+ "NEW_MESSAGE": 5,
+ "UNRECOVERABLE_ERROR": 4,
+ }
+)
+
+func (x ConversationEvent_Type) Enum() *ConversationEvent_Type {
+ p := new(ConversationEvent_Type)
+ *p = x
+ return p
+}
+
+func (x ConversationEvent_Type) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ConversationEvent_Type) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_conversation_event_proto_enumTypes[0].Descriptor()
+}
+
+func (ConversationEvent_Type) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_conversation_event_proto_enumTypes[0]
+}
+
+func (x ConversationEvent_Type) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ConversationEvent_Type.Descriptor instead.
+func (ConversationEvent_Type) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Represents a notification sent to Pub/Sub subscribers for conversation
+// lifecycle events.
+type ConversationEvent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The unique identifier of the conversation this notification
+ // refers to.
+ // Format: `projects/<Project ID>/conversations/<Conversation ID>`.
+ Conversation string `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"`
+ // Required. The type of the event that this notification refers to.
+ Type ConversationEvent_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.dialogflow.v2beta1.ConversationEvent_Type" json:"type,omitempty"`
+ // Optional. More detailed information about an error. Only set for type
+ // UNRECOVERABLE_ERROR_IN_PHONE_CALL.
+ ErrorStatus *status.Status `protobuf:"bytes,3,opt,name=error_status,json=errorStatus,proto3" json:"error_status,omitempty"`
+ // Payload of conversation event.
+ //
+ // Types that are assignable to Payload:
+ //
+ // *ConversationEvent_NewMessagePayload
+ Payload isConversationEvent_Payload `protobuf_oneof:"payload"`
+}
+
+func (x *ConversationEvent) Reset() {
+ *x = ConversationEvent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ConversationEvent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ConversationEvent) ProtoMessage() {}
+
+func (x *ConversationEvent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ConversationEvent.ProtoReflect.Descriptor instead.
+func (*ConversationEvent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ConversationEvent) GetConversation() string {
+ if x != nil {
+ return x.Conversation
+ }
+ return ""
+}
+
+func (x *ConversationEvent) GetType() ConversationEvent_Type {
+ if x != nil {
+ return x.Type
+ }
+ return ConversationEvent_TYPE_UNSPECIFIED
+}
+
+func (x *ConversationEvent) GetErrorStatus() *status.Status {
+ if x != nil {
+ return x.ErrorStatus
+ }
+ return nil
+}
+
+func (m *ConversationEvent) GetPayload() isConversationEvent_Payload {
+ if m != nil {
+ return m.Payload
+ }
+ return nil
+}
+
+func (x *ConversationEvent) GetNewMessagePayload() *Message {
+ if x, ok := x.GetPayload().(*ConversationEvent_NewMessagePayload); ok {
+ return x.NewMessagePayload
+ }
+ return nil
+}
+
+type isConversationEvent_Payload interface {
+ isConversationEvent_Payload()
+}
+
+type ConversationEvent_NewMessagePayload struct {
+ // Payload of NEW_MESSAGE event.
+ NewMessagePayload *Message `protobuf:"bytes,4,opt,name=new_message_payload,json=newMessagePayload,proto3,oneof"`
+}
+
+func (*ConversationEvent_NewMessagePayload) isConversationEvent_Payload() {}
+
+var File_google_cloud_dialogflow_v2beta1_conversation_event_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDesc = []byte{
+ 0x0a, 0x38, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65,
+ 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x31, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbf, 0x03, 0x0a, 0x11, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a,
+ 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x4b, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x76,
+ 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x12, 0x35,
+ 0x0a, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70,
+ 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0b, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x53,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x5a, 0x0a, 0x13, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x5f, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x11,
+ 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x61, 0x79, 0x6c, 0x6f, 0x61,
+ 0x64, 0x22, 0x9a, 0x01, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54, 0x59,
+ 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x18, 0x0a, 0x14, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x41, 0x54, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x53, 0x54, 0x41, 0x52, 0x54, 0x45, 0x44, 0x10, 0x01, 0x12, 0x19, 0x0a, 0x15, 0x43, 0x4f,
+ 0x4e, 0x56, 0x45, 0x52, 0x53, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x46, 0x49, 0x4e, 0x49, 0x53,
+ 0x48, 0x45, 0x44, 0x10, 0x02, 0x12, 0x1d, 0x0a, 0x19, 0x48, 0x55, 0x4d, 0x41, 0x4e, 0x5f, 0x49,
+ 0x4e, 0x54, 0x45, 0x52, 0x56, 0x45, 0x4e, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x4e, 0x45, 0x45, 0x44,
+ 0x45, 0x44, 0x10, 0x03, 0x12, 0x0f, 0x0a, 0x0b, 0x4e, 0x45, 0x57, 0x5f, 0x4d, 0x45, 0x53, 0x53,
+ 0x41, 0x47, 0x45, 0x10, 0x05, 0x12, 0x17, 0x0a, 0x13, 0x55, 0x4e, 0x52, 0x45, 0x43, 0x4f, 0x56,
+ 0x45, 0x52, 0x41, 0x42, 0x4c, 0x45, 0x5f, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x04, 0x42, 0x09,
+ 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x42, 0xae, 0x01, 0x0a, 0x23, 0x63, 0x6f,
+ 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x42, 0x16, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62,
+ 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_conversation_event_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_conversation_event_proto_goTypes = []interface{}{
+ (ConversationEvent_Type)(0), // 0: google.cloud.dialogflow.v2beta1.ConversationEvent.Type
+ (*ConversationEvent)(nil), // 1: google.cloud.dialogflow.v2beta1.ConversationEvent
+ (*status.Status)(nil), // 2: google.rpc.Status
+ (*Message)(nil), // 3: google.cloud.dialogflow.v2beta1.Message
+}
+var file_google_cloud_dialogflow_v2beta1_conversation_event_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.ConversationEvent.type:type_name -> google.cloud.dialogflow.v2beta1.ConversationEvent.Type
+ 2, // 1: google.cloud.dialogflow.v2beta1.ConversationEvent.error_status:type_name -> google.rpc.Status
+ 3, // 2: google.cloud.dialogflow.v2beta1.ConversationEvent.new_message_payload:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 3, // [3:3] is the sub-list for method output_type
+ 3, // [3:3] is the sub-list for method input_type
+ 3, // [3:3] is the sub-list for extension type_name
+ 3, // [3:3] is the sub-list for extension extendee
+ 0, // [0:3] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_conversation_event_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_conversation_event_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_conversation_event_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConversationEvent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*ConversationEvent_NewMessagePayload)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_conversation_event_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_conversation_event_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_conversation_event_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_conversation_event_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_conversation_event_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_event_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/conversation_profile.pb.go b/dialogflow/apiv2beta1/dialogflowpb/conversation_profile.pb.go
new file mode 100644
index 0000000..b99d375
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/conversation_profile.pb.go
@@ -0,0 +1,3831 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/conversation_profile.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Format of cloud pub/sub message.
+type NotificationConfig_MessageFormat int32
+
+const (
+ // If it is unspecified, PROTO will be used.
+ NotificationConfig_MESSAGE_FORMAT_UNSPECIFIED NotificationConfig_MessageFormat = 0
+ // Pubsub message will be serialized proto.
+ NotificationConfig_PROTO NotificationConfig_MessageFormat = 1
+ // Pubsub message will be json.
+ NotificationConfig_JSON NotificationConfig_MessageFormat = 2
+)
+
+// Enum value maps for NotificationConfig_MessageFormat.
+var (
+ NotificationConfig_MessageFormat_name = map[int32]string{
+ 0: "MESSAGE_FORMAT_UNSPECIFIED",
+ 1: "PROTO",
+ 2: "JSON",
+ }
+ NotificationConfig_MessageFormat_value = map[string]int32{
+ "MESSAGE_FORMAT_UNSPECIFIED": 0,
+ "PROTO": 1,
+ "JSON": 2,
+ }
+)
+
+func (x NotificationConfig_MessageFormat) Enum() *NotificationConfig_MessageFormat {
+ p := new(NotificationConfig_MessageFormat)
+ *p = x
+ return p
+}
+
+func (x NotificationConfig_MessageFormat) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (NotificationConfig_MessageFormat) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes[0].Descriptor()
+}
+
+func (NotificationConfig_MessageFormat) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes[0]
+}
+
+func (x NotificationConfig_MessageFormat) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use NotificationConfig_MessageFormat.Descriptor instead.
+func (NotificationConfig_MessageFormat) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{4, 0}
+}
+
+// Defines the services to connect to incoming Dialogflow conversations.
+type ConversationProfile struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of this conversation profile.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. Human readable name for this profile. Max length 1024 bytes.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Output only. Create time of the conversation profile.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,11,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Update time of the conversation profile.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,12,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Configuration for an automated agent to use with this profile.
+ AutomatedAgentConfig *AutomatedAgentConfig `protobuf:"bytes,3,opt,name=automated_agent_config,json=automatedAgentConfig,proto3" json:"automated_agent_config,omitempty"`
+ // Configuration for agent assistance to use with this profile.
+ HumanAgentAssistantConfig *HumanAgentAssistantConfig `protobuf:"bytes,4,opt,name=human_agent_assistant_config,json=humanAgentAssistantConfig,proto3" json:"human_agent_assistant_config,omitempty"`
+ // Configuration for connecting to a live agent.
+ //
+ // Currently, this feature is not general available, please contact Google
+ // to get access.
+ HumanAgentHandoffConfig *HumanAgentHandoffConfig `protobuf:"bytes,5,opt,name=human_agent_handoff_config,json=humanAgentHandoffConfig,proto3" json:"human_agent_handoff_config,omitempty"`
+ // Configuration for publishing conversation lifecycle events.
+ NotificationConfig *NotificationConfig `protobuf:"bytes,6,opt,name=notification_config,json=notificationConfig,proto3" json:"notification_config,omitempty"`
+ // Configuration for logging conversation lifecycle events.
+ LoggingConfig *LoggingConfig `protobuf:"bytes,7,opt,name=logging_config,json=loggingConfig,proto3" json:"logging_config,omitempty"`
+ // Configuration for publishing new message events. Event will be sent in
+ // format of
+ // [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent]
+ NewMessageEventNotificationConfig *NotificationConfig `protobuf:"bytes,8,opt,name=new_message_event_notification_config,json=newMessageEventNotificationConfig,proto3" json:"new_message_event_notification_config,omitempty"`
+ // Settings for speech transcription.
+ SttConfig *SpeechToTextConfig `protobuf:"bytes,9,opt,name=stt_config,json=sttConfig,proto3" json:"stt_config,omitempty"`
+ // Language code for the conversation profile. If not specified, the language
+ // is en-US. Language at ConversationProfile should be set for all non en-us
+ // languages.
+ // This should be a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt)
+ // language tag. Example: "en-US".
+ LanguageCode string `protobuf:"bytes,10,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // The time zone of this conversational profile from the
+ // [time zone database](https://www.iana.org/time-zones), e.g.,
+ // America/New_York, Europe/Paris. Defaults to America/New_York.
+ TimeZone string `protobuf:"bytes,14,opt,name=time_zone,json=timeZone,proto3" json:"time_zone,omitempty"`
+ // Name of the CX SecuritySettings reference for the agent.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/securitySettings/<Security Settings ID>`.
+ SecuritySettings string `protobuf:"bytes,13,opt,name=security_settings,json=securitySettings,proto3" json:"security_settings,omitempty"`
+}
+
+func (x *ConversationProfile) Reset() {
+ *x = ConversationProfile{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ConversationProfile) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ConversationProfile) ProtoMessage() {}
+
+func (x *ConversationProfile) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ConversationProfile.ProtoReflect.Descriptor instead.
+func (*ConversationProfile) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ConversationProfile) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *ConversationProfile) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *ConversationProfile) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetAutomatedAgentConfig() *AutomatedAgentConfig {
+ if x != nil {
+ return x.AutomatedAgentConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetHumanAgentAssistantConfig() *HumanAgentAssistantConfig {
+ if x != nil {
+ return x.HumanAgentAssistantConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetHumanAgentHandoffConfig() *HumanAgentHandoffConfig {
+ if x != nil {
+ return x.HumanAgentHandoffConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetNotificationConfig() *NotificationConfig {
+ if x != nil {
+ return x.NotificationConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetLoggingConfig() *LoggingConfig {
+ if x != nil {
+ return x.LoggingConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetNewMessageEventNotificationConfig() *NotificationConfig {
+ if x != nil {
+ return x.NewMessageEventNotificationConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetSttConfig() *SpeechToTextConfig {
+ if x != nil {
+ return x.SttConfig
+ }
+ return nil
+}
+
+func (x *ConversationProfile) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *ConversationProfile) GetTimeZone() string {
+ if x != nil {
+ return x.TimeZone
+ }
+ return ""
+}
+
+func (x *ConversationProfile) GetSecuritySettings() string {
+ if x != nil {
+ return x.SecuritySettings
+ }
+ return ""
+}
+
+// Defines the Automated Agent to connect to a conversation.
+type AutomatedAgentConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. ID of the Dialogflow agent environment to use.
+ //
+ // This project needs to either be the same project as the conversation or you
+ // need to grant `service-<Conversation Project
+ // Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` the `Dialogflow API
+ // Service Agent` role in this project.
+ //
+ // - For ES agents, use format: `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID or '-'>`. If environment is not
+ // specified, the default `draft` environment is used. Refer to
+ // [DetectIntentRequest](/dialogflow/docs/reference/rpc/google.cloud.dialogflow.v2beta1#google.cloud.dialogflow.v2beta1.DetectIntentRequest)
+ // for more details.
+ //
+ // - For CX agents, use format `projects/<Project ID>/locations/<Location
+ // ID>/agents/<Agent ID>/environments/<Environment ID
+ // or '-'>`. If environment is not specified, the default `draft` environment
+ // is used.
+ Agent string `protobuf:"bytes,1,opt,name=agent,proto3" json:"agent,omitempty"`
+}
+
+func (x *AutomatedAgentConfig) Reset() {
+ *x = AutomatedAgentConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AutomatedAgentConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AutomatedAgentConfig) ProtoMessage() {}
+
+func (x *AutomatedAgentConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AutomatedAgentConfig.ProtoReflect.Descriptor instead.
+func (*AutomatedAgentConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *AutomatedAgentConfig) GetAgent() string {
+ if x != nil {
+ return x.Agent
+ }
+ return ""
+}
+
+// Defines the Human Agent Assistant to connect to a conversation.
+type HumanAgentAssistantConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Pub/Sub topic on which to publish new agent assistant events.
+ NotificationConfig *NotificationConfig `protobuf:"bytes,2,opt,name=notification_config,json=notificationConfig,proto3" json:"notification_config,omitempty"`
+ // Configuration for agent assistance of human agent participant.
+ HumanAgentSuggestionConfig *HumanAgentAssistantConfig_SuggestionConfig `protobuf:"bytes,3,opt,name=human_agent_suggestion_config,json=humanAgentSuggestionConfig,proto3" json:"human_agent_suggestion_config,omitempty"`
+ // Configuration for agent assistance of end user participant.
+ //
+ // Currently, this feature is not general available, please contact Google
+ // to get access.
+ EndUserSuggestionConfig *HumanAgentAssistantConfig_SuggestionConfig `protobuf:"bytes,4,opt,name=end_user_suggestion_config,json=endUserSuggestionConfig,proto3" json:"end_user_suggestion_config,omitempty"`
+ // Configuration for message analysis.
+ MessageAnalysisConfig *HumanAgentAssistantConfig_MessageAnalysisConfig `protobuf:"bytes,5,opt,name=message_analysis_config,json=messageAnalysisConfig,proto3" json:"message_analysis_config,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig) Reset() {
+ *x = HumanAgentAssistantConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *HumanAgentAssistantConfig) GetNotificationConfig() *NotificationConfig {
+ if x != nil {
+ return x.NotificationConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig) GetHumanAgentSuggestionConfig() *HumanAgentAssistantConfig_SuggestionConfig {
+ if x != nil {
+ return x.HumanAgentSuggestionConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig) GetEndUserSuggestionConfig() *HumanAgentAssistantConfig_SuggestionConfig {
+ if x != nil {
+ return x.EndUserSuggestionConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig) GetMessageAnalysisConfig() *HumanAgentAssistantConfig_MessageAnalysisConfig {
+ if x != nil {
+ return x.MessageAnalysisConfig
+ }
+ return nil
+}
+
+// Defines the hand off to a live agent, typically on which external agent
+// service provider to connect to a conversation.
+//
+// Currently, this feature is not general available, please contact Google
+// to get access.
+type HumanAgentHandoffConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Specifies which agent service to connect for human agent handoff.
+ //
+ // Types that are assignable to AgentService:
+ //
+ // *HumanAgentHandoffConfig_LivePersonConfig_
+ // *HumanAgentHandoffConfig_SalesforceLiveAgentConfig_
+ AgentService isHumanAgentHandoffConfig_AgentService `protobuf_oneof:"agent_service"`
+}
+
+func (x *HumanAgentHandoffConfig) Reset() {
+ *x = HumanAgentHandoffConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentHandoffConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentHandoffConfig) ProtoMessage() {}
+
+func (x *HumanAgentHandoffConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentHandoffConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentHandoffConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3}
+}
+
+func (m *HumanAgentHandoffConfig) GetAgentService() isHumanAgentHandoffConfig_AgentService {
+ if m != nil {
+ return m.AgentService
+ }
+ return nil
+}
+
+func (x *HumanAgentHandoffConfig) GetLivePersonConfig() *HumanAgentHandoffConfig_LivePersonConfig {
+ if x, ok := x.GetAgentService().(*HumanAgentHandoffConfig_LivePersonConfig_); ok {
+ return x.LivePersonConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentHandoffConfig) GetSalesforceLiveAgentConfig() *HumanAgentHandoffConfig_SalesforceLiveAgentConfig {
+ if x, ok := x.GetAgentService().(*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_); ok {
+ return x.SalesforceLiveAgentConfig
+ }
+ return nil
+}
+
+type isHumanAgentHandoffConfig_AgentService interface {
+ isHumanAgentHandoffConfig_AgentService()
+}
+
+type HumanAgentHandoffConfig_LivePersonConfig_ struct {
+ // Uses LivePerson (https://www.liveperson.com).
+ LivePersonConfig *HumanAgentHandoffConfig_LivePersonConfig `protobuf:"bytes,1,opt,name=live_person_config,json=livePersonConfig,proto3,oneof"`
+}
+
+type HumanAgentHandoffConfig_SalesforceLiveAgentConfig_ struct {
+ // Uses Salesforce Live Agent.
+ SalesforceLiveAgentConfig *HumanAgentHandoffConfig_SalesforceLiveAgentConfig `protobuf:"bytes,2,opt,name=salesforce_live_agent_config,json=salesforceLiveAgentConfig,proto3,oneof"`
+}
+
+func (*HumanAgentHandoffConfig_LivePersonConfig_) isHumanAgentHandoffConfig_AgentService() {}
+
+func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_) isHumanAgentHandoffConfig_AgentService() {}
+
+// Defines notification behavior.
+type NotificationConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Name of the Pub/Sub topic to publish conversation
+ // events like
+ // [CONVERSATION_STARTED][google.cloud.dialogflow.v2beta1.ConversationEvent.Type.CONVERSATION_STARTED]
+ // as serialized
+ // [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent]
+ // protos.
+ //
+ // For telephony integration to receive notification, make sure either this
+ // topic is in the same project as the conversation or you grant
+ // `service-<Conversation Project
+ // Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` the `Dialogflow Service
+ // Agent` role in the topic project.
+ //
+ // For chat integration to receive notification, make sure API caller has been
+ // granted the `Dialogflow Service Agent` role for the topic.
+ //
+ // Format: `projects/<Project ID>/locations/<Location ID>/topics/<Topic ID>`.
+ Topic string `protobuf:"bytes,1,opt,name=topic,proto3" json:"topic,omitempty"`
+ // Format of message.
+ MessageFormat NotificationConfig_MessageFormat `protobuf:"varint,2,opt,name=message_format,json=messageFormat,proto3,enum=google.cloud.dialogflow.v2beta1.NotificationConfig_MessageFormat" json:"message_format,omitempty"`
+}
+
+func (x *NotificationConfig) Reset() {
+ *x = NotificationConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *NotificationConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*NotificationConfig) ProtoMessage() {}
+
+func (x *NotificationConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use NotificationConfig.ProtoReflect.Descriptor instead.
+func (*NotificationConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *NotificationConfig) GetTopic() string {
+ if x != nil {
+ return x.Topic
+ }
+ return ""
+}
+
+func (x *NotificationConfig) GetMessageFormat() NotificationConfig_MessageFormat {
+ if x != nil {
+ return x.MessageFormat
+ }
+ return NotificationConfig_MESSAGE_FORMAT_UNSPECIFIED
+}
+
+// Defines logging behavior for conversation lifecycle events.
+type LoggingConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Whether to log conversation events like
+ // [CONVERSATION_STARTED][google.cloud.dialogflow.v2beta1.ConversationEvent.Type.CONVERSATION_STARTED]
+ // to Stackdriver in the conversation project as JSON format
+ // [ConversationEvent][google.cloud.dialogflow.v2beta1.ConversationEvent]
+ // protos.
+ EnableStackdriverLogging bool `protobuf:"varint,3,opt,name=enable_stackdriver_logging,json=enableStackdriverLogging,proto3" json:"enable_stackdriver_logging,omitempty"`
+}
+
+func (x *LoggingConfig) Reset() {
+ *x = LoggingConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *LoggingConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*LoggingConfig) ProtoMessage() {}
+
+func (x *LoggingConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use LoggingConfig.ProtoReflect.Descriptor instead.
+func (*LoggingConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *LoggingConfig) GetEnableStackdriverLogging() bool {
+ if x != nil {
+ return x.EnableStackdriverLogging
+ }
+ return false
+}
+
+// The request message for
+// [ConversationProfiles.ListConversationProfiles][google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles].
+type ListConversationProfilesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to list all conversation profiles from.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListConversationProfilesRequest) Reset() {
+ *x = ListConversationProfilesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListConversationProfilesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListConversationProfilesRequest) ProtoMessage() {}
+
+func (x *ListConversationProfilesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListConversationProfilesRequest.ProtoReflect.Descriptor instead.
+func (*ListConversationProfilesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ListConversationProfilesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListConversationProfilesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListConversationProfilesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [ConversationProfiles.ListConversationProfiles][google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles].
+type ListConversationProfilesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of project conversation profiles. There is a maximum number
+ // of items returned based on the page_size field in the request.
+ ConversationProfiles []*ConversationProfile `protobuf:"bytes,1,rep,name=conversation_profiles,json=conversationProfiles,proto3" json:"conversation_profiles,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListConversationProfilesResponse) Reset() {
+ *x = ListConversationProfilesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListConversationProfilesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListConversationProfilesResponse) ProtoMessage() {}
+
+func (x *ListConversationProfilesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListConversationProfilesResponse.ProtoReflect.Descriptor instead.
+func (*ListConversationProfilesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ListConversationProfilesResponse) GetConversationProfiles() []*ConversationProfile {
+ if x != nil {
+ return x.ConversationProfiles
+ }
+ return nil
+}
+
+func (x *ListConversationProfilesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [ConversationProfiles.GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile].
+type GetConversationProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the conversation profile.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetConversationProfileRequest) Reset() {
+ *x = GetConversationProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetConversationProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetConversationProfileRequest) ProtoMessage() {}
+
+func (x *GetConversationProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetConversationProfileRequest.ProtoReflect.Descriptor instead.
+func (*GetConversationProfileRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *GetConversationProfileRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [ConversationProfiles.CreateConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile].
+type CreateConversationProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to create a conversation profile for.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The conversation profile to create.
+ ConversationProfile *ConversationProfile `protobuf:"bytes,2,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+}
+
+func (x *CreateConversationProfileRequest) Reset() {
+ *x = CreateConversationProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateConversationProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateConversationProfileRequest) ProtoMessage() {}
+
+func (x *CreateConversationProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateConversationProfileRequest.ProtoReflect.Descriptor instead.
+func (*CreateConversationProfileRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *CreateConversationProfileRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateConversationProfileRequest) GetConversationProfile() *ConversationProfile {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return nil
+}
+
+// The request message for
+// [ConversationProfiles.UpdateConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile].
+type UpdateConversationProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The conversation profile to update.
+ ConversationProfile *ConversationProfile `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Required. The mask to control which fields to update.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateConversationProfileRequest) Reset() {
+ *x = UpdateConversationProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateConversationProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateConversationProfileRequest) ProtoMessage() {}
+
+func (x *UpdateConversationProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateConversationProfileRequest.ProtoReflect.Descriptor instead.
+func (*UpdateConversationProfileRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *UpdateConversationProfileRequest) GetConversationProfile() *ConversationProfile {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return nil
+}
+
+func (x *UpdateConversationProfileRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [ConversationProfiles.DeleteConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile].
+//
+// This operation fails if the conversation profile is still referenced from
+// a phone number.
+type DeleteConversationProfileRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the conversation profile to delete.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteConversationProfileRequest) Reset() {
+ *x = DeleteConversationProfileRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteConversationProfileRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteConversationProfileRequest) ProtoMessage() {}
+
+func (x *DeleteConversationProfileRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteConversationProfileRequest.ProtoReflect.Descriptor instead.
+func (*DeleteConversationProfileRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *DeleteConversationProfileRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [ConversationProfiles.SetSuggestionFeature][].
+type SetSuggestionFeatureConfigRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The Conversation Profile to add or update the suggestion feature
+ // config. Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ ConversationProfile string `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Required. The participant role to add or update the suggestion feature
+ // config. Only HUMAN_AGENT or END_USER can be used.
+ ParticipantRole Participant_Role `protobuf:"varint,2,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"participant_role,omitempty"`
+ // Required. The suggestion feature config to add or update.
+ SuggestionFeatureConfig *HumanAgentAssistantConfig_SuggestionFeatureConfig `protobuf:"bytes,3,opt,name=suggestion_feature_config,json=suggestionFeatureConfig,proto3" json:"suggestion_feature_config,omitempty"`
+}
+
+func (x *SetSuggestionFeatureConfigRequest) Reset() {
+ *x = SetSuggestionFeatureConfigRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetSuggestionFeatureConfigRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetSuggestionFeatureConfigRequest) ProtoMessage() {}
+
+func (x *SetSuggestionFeatureConfigRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SetSuggestionFeatureConfigRequest.ProtoReflect.Descriptor instead.
+func (*SetSuggestionFeatureConfigRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *SetSuggestionFeatureConfigRequest) GetConversationProfile() string {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return ""
+}
+
+func (x *SetSuggestionFeatureConfigRequest) GetParticipantRole() Participant_Role {
+ if x != nil {
+ return x.ParticipantRole
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *SetSuggestionFeatureConfigRequest) GetSuggestionFeatureConfig() *HumanAgentAssistantConfig_SuggestionFeatureConfig {
+ if x != nil {
+ return x.SuggestionFeatureConfig
+ }
+ return nil
+}
+
+// The request message for [ConversationProfiles.ClearFeature][].
+type ClearSuggestionFeatureConfigRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The Conversation Profile to add or update the suggestion feature
+ // config. Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`.
+ ConversationProfile string `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Required. The participant role to remove the suggestion feature
+ // config. Only HUMAN_AGENT or END_USER can be used.
+ ParticipantRole Participant_Role `protobuf:"varint,2,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"participant_role,omitempty"`
+ // Required. The type of the suggestion feature to remove.
+ SuggestionFeatureType SuggestionFeature_Type `protobuf:"varint,3,opt,name=suggestion_feature_type,json=suggestionFeatureType,proto3,enum=google.cloud.dialogflow.v2beta1.SuggestionFeature_Type" json:"suggestion_feature_type,omitempty"`
+}
+
+func (x *ClearSuggestionFeatureConfigRequest) Reset() {
+ *x = ClearSuggestionFeatureConfigRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ClearSuggestionFeatureConfigRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ClearSuggestionFeatureConfigRequest) ProtoMessage() {}
+
+func (x *ClearSuggestionFeatureConfigRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ClearSuggestionFeatureConfigRequest.ProtoReflect.Descriptor instead.
+func (*ClearSuggestionFeatureConfigRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *ClearSuggestionFeatureConfigRequest) GetConversationProfile() string {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return ""
+}
+
+func (x *ClearSuggestionFeatureConfigRequest) GetParticipantRole() Participant_Role {
+ if x != nil {
+ return x.ParticipantRole
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *ClearSuggestionFeatureConfigRequest) GetSuggestionFeatureType() SuggestionFeature_Type {
+ if x != nil {
+ return x.SuggestionFeatureType
+ }
+ return SuggestionFeature_TYPE_UNSPECIFIED
+}
+
+// Metadata for a [ConversationProfile.SetSuggestionFeatureConfig][]
+// operation.
+type SetSuggestionFeatureConfigOperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The resource name of the conversation profile. Format:
+ // `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`
+ ConversationProfile string `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Required. The participant role to add or update the suggestion feature
+ // config. Only HUMAN_AGENT or END_USER can be used.
+ ParticipantRole Participant_Role `protobuf:"varint,2,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"participant_role,omitempty"`
+ // Required. The type of the suggestion feature to add or update.
+ SuggestionFeatureType SuggestionFeature_Type `protobuf:"varint,3,opt,name=suggestion_feature_type,json=suggestionFeatureType,proto3,enum=google.cloud.dialogflow.v2beta1.SuggestionFeature_Type" json:"suggestion_feature_type,omitempty"`
+ // Timestamp whe the request was created. The time is measured on server side.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) Reset() {
+ *x = SetSuggestionFeatureConfigOperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SetSuggestionFeatureConfigOperationMetadata) ProtoMessage() {}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SetSuggestionFeatureConfigOperationMetadata.ProtoReflect.Descriptor instead.
+func (*SetSuggestionFeatureConfigOperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) GetConversationProfile() string {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return ""
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) GetParticipantRole() Participant_Role {
+ if x != nil {
+ return x.ParticipantRole
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) GetSuggestionFeatureType() SuggestionFeature_Type {
+ if x != nil {
+ return x.SuggestionFeatureType
+ }
+ return SuggestionFeature_TYPE_UNSPECIFIED
+}
+
+func (x *SetSuggestionFeatureConfigOperationMetadata) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+// Metadata for a [ConversationProfile.ClearSuggestionFeatureConfig][]
+// operation.
+type ClearSuggestionFeatureConfigOperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The resource name of the conversation profile. Format:
+ // `projects/<Project ID>/locations/<Location
+ // ID>/conversationProfiles/<Conversation Profile ID>`
+ ConversationProfile string `protobuf:"bytes,1,opt,name=conversation_profile,json=conversationProfile,proto3" json:"conversation_profile,omitempty"`
+ // Required. The participant role to remove the suggestion feature
+ // config. Only HUMAN_AGENT or END_USER can be used.
+ ParticipantRole Participant_Role `protobuf:"varint,2,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"participant_role,omitempty"`
+ // Required. The type of the suggestion feature to remove.
+ SuggestionFeatureType SuggestionFeature_Type `protobuf:"varint,3,opt,name=suggestion_feature_type,json=suggestionFeatureType,proto3,enum=google.cloud.dialogflow.v2beta1.SuggestionFeature_Type" json:"suggestion_feature_type,omitempty"`
+ // Timestamp whe the request was created. The time is measured on server side.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) Reset() {
+ *x = ClearSuggestionFeatureConfigOperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ClearSuggestionFeatureConfigOperationMetadata) ProtoMessage() {}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ClearSuggestionFeatureConfigOperationMetadata.ProtoReflect.Descriptor instead.
+func (*ClearSuggestionFeatureConfigOperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) GetConversationProfile() string {
+ if x != nil {
+ return x.ConversationProfile
+ }
+ return ""
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) GetParticipantRole() Participant_Role {
+ if x != nil {
+ return x.ParticipantRole
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) GetSuggestionFeatureType() SuggestionFeature_Type {
+ if x != nil {
+ return x.SuggestionFeatureType
+ }
+ return SuggestionFeature_TYPE_UNSPECIFIED
+}
+
+func (x *ClearSuggestionFeatureConfigOperationMetadata) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+// Settings of suggestion trigger.
+type HumanAgentAssistantConfig_SuggestionTriggerSettings struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Do not trigger if last utterance is small talk.
+ NoSmallTalk bool `protobuf:"varint,1,opt,name=no_small_talk,json=noSmallTalk,proto3" json:"no_small_talk,omitempty"`
+ // Only trigger suggestion if participant role of last utterance is
+ // END_USER.
+ OnlyEndUser bool `protobuf:"varint,2,opt,name=only_end_user,json=onlyEndUser,proto3" json:"only_end_user,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionTriggerSettings{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionTriggerSettings) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionTriggerSettings.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionTriggerSettings) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 0}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) GetNoSmallTalk() bool {
+ if x != nil {
+ return x.NoSmallTalk
+ }
+ return false
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionTriggerSettings) GetOnlyEndUser() bool {
+ if x != nil {
+ return x.OnlyEndUser
+ }
+ return false
+}
+
+// Config for suggestion features.
+type HumanAgentAssistantConfig_SuggestionFeatureConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The suggestion feature.
+ SuggestionFeature *SuggestionFeature `protobuf:"bytes,5,opt,name=suggestion_feature,json=suggestionFeature,proto3" json:"suggestion_feature,omitempty"`
+ // Automatically iterates all participants and tries to compile
+ // suggestions.
+ //
+ // Supported features: ARTICLE_SUGGESTION, FAQ, DIALOGFLOW_ASSIST.
+ EnableEventBasedSuggestion bool `protobuf:"varint,3,opt,name=enable_event_based_suggestion,json=enableEventBasedSuggestion,proto3" json:"enable_event_based_suggestion,omitempty"`
+ // Settings of suggestion trigger.
+ //
+ // Currently, only ARTICLE_SUGGESTION, FAQ, and DIALOGFLOW_ASSIST will use
+ // this field.
+ SuggestionTriggerSettings *HumanAgentAssistantConfig_SuggestionTriggerSettings `protobuf:"bytes,10,opt,name=suggestion_trigger_settings,json=suggestionTriggerSettings,proto3" json:"suggestion_trigger_settings,omitempty"`
+ // Configs of query.
+ QueryConfig *HumanAgentAssistantConfig_SuggestionQueryConfig `protobuf:"bytes,6,opt,name=query_config,json=queryConfig,proto3" json:"query_config,omitempty"`
+ // Configs of custom conversation model.
+ ConversationModelConfig *HumanAgentAssistantConfig_ConversationModelConfig `protobuf:"bytes,7,opt,name=conversation_model_config,json=conversationModelConfig,proto3" json:"conversation_model_config,omitempty"`
+ // Configs for processing conversation.
+ ConversationProcessConfig *HumanAgentAssistantConfig_ConversationProcessConfig `protobuf:"bytes,8,opt,name=conversation_process_config,json=conversationProcessConfig,proto3" json:"conversation_process_config,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionFeatureConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionFeatureConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionFeatureConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionFeatureConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 1}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetSuggestionFeature() *SuggestionFeature {
+ if x != nil {
+ return x.SuggestionFeature
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetEnableEventBasedSuggestion() bool {
+ if x != nil {
+ return x.EnableEventBasedSuggestion
+ }
+ return false
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetSuggestionTriggerSettings() *HumanAgentAssistantConfig_SuggestionTriggerSettings {
+ if x != nil {
+ return x.SuggestionTriggerSettings
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetQueryConfig() *HumanAgentAssistantConfig_SuggestionQueryConfig {
+ if x != nil {
+ return x.QueryConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetConversationModelConfig() *HumanAgentAssistantConfig_ConversationModelConfig {
+ if x != nil {
+ return x.ConversationModelConfig
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionFeatureConfig) GetConversationProcessConfig() *HumanAgentAssistantConfig_ConversationProcessConfig {
+ if x != nil {
+ return x.ConversationProcessConfig
+ }
+ return nil
+}
+
+// Detail human agent assistant config.
+type HumanAgentAssistantConfig_SuggestionConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Configuration of different suggestion features. One feature can have only
+ // one config.
+ FeatureConfigs []*HumanAgentAssistantConfig_SuggestionFeatureConfig `protobuf:"bytes,2,rep,name=feature_configs,json=featureConfigs,proto3" json:"feature_configs,omitempty"`
+ // If `group_suggestion_responses` is false, and there are multiple
+ // `feature_configs` in `event based suggestion` or
+ // StreamingAnalyzeContent, we will try to deliver suggestions to customers
+ // as soon as we get new suggestion. Different type of suggestions based on
+ // the same context will be in separate Pub/Sub event or
+ // `StreamingAnalyzeContentResponse`.
+ //
+ // If `group_suggestion_responses` set to true. All the suggestions to the
+ // same participant based on the same context will be grouped into a single
+ // Pub/Sub event or StreamingAnalyzeContentResponse.
+ GroupSuggestionResponses bool `protobuf:"varint,3,opt,name=group_suggestion_responses,json=groupSuggestionResponses,proto3" json:"group_suggestion_responses,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionConfig) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 2}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionConfig) GetFeatureConfigs() []*HumanAgentAssistantConfig_SuggestionFeatureConfig {
+ if x != nil {
+ return x.FeatureConfigs
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionConfig) GetGroupSuggestionResponses() bool {
+ if x != nil {
+ return x.GroupSuggestionResponses
+ }
+ return false
+}
+
+// Config for suggestion query.
+type HumanAgentAssistantConfig_SuggestionQueryConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Source of query.
+ //
+ // Types that are assignable to QuerySource:
+ //
+ // *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_
+ // *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_
+ // *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_
+ QuerySource isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource `protobuf_oneof:"query_source"`
+ // Maximum number of results to return. Currently, if unset, defaults to 10.
+ // And the max number is 20.
+ MaxResults int32 `protobuf:"varint,4,opt,name=max_results,json=maxResults,proto3" json:"max_results,omitempty"`
+ // Confidence threshold of query result.
+ //
+ // Agent Assist gives each suggestion a score in the range [0.0, 1.0], based
+ // on the relevance between the suggestion and the current conversation
+ // context. A score of 0.0 has no relevance, while a score of 1.0 has high
+ // relevance. Only suggestions with a score greater than or equal to the
+ // value of this field are included in the results.
+ //
+ // For a baseline model (the default), the recommended value is in the range
+ // [0.05, 0.1].
+ //
+ // For a custom model, there is no recommended value. Tune this value by
+ // starting from a very low value and slowly increasing until you have
+ // desired results.
+ //
+ // If this field is not set, it is default to 0.0, which means that all
+ // suggestions are returned.
+ //
+ // Supported features: ARTICLE_SUGGESTION, FAQ, SMART_REPLY, SMART_COMPOSE.
+ ConfidenceThreshold float32 `protobuf:"fixed32,5,opt,name=confidence_threshold,json=confidenceThreshold,proto3" json:"confidence_threshold,omitempty"`
+ // Determines how recent conversation context is filtered when generating
+ // suggestions. If unspecified, no messages will be dropped.
+ ContextFilterSettings *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings `protobuf:"bytes,7,opt,name=context_filter_settings,json=contextFilterSettings,proto3" json:"context_filter_settings,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionQueryConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3}
+}
+
+func (m *HumanAgentAssistantConfig_SuggestionQueryConfig) GetQuerySource() isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource {
+ if m != nil {
+ return m.QuerySource
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetKnowledgeBaseQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource {
+ if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_); ok {
+ return x.KnowledgeBaseQuerySource
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetDocumentQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource {
+ if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_); ok {
+ return x.DocumentQuerySource
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetDialogflowQuerySource() *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource {
+ if x, ok := x.GetQuerySource().(*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_); ok {
+ return x.DialogflowQuerySource
+ }
+ return nil
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetMaxResults() int32 {
+ if x != nil {
+ return x.MaxResults
+ }
+ return 0
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetConfidenceThreshold() float32 {
+ if x != nil {
+ return x.ConfidenceThreshold
+ }
+ return 0
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig) GetContextFilterSettings() *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings {
+ if x != nil {
+ return x.ContextFilterSettings
+ }
+ return nil
+}
+
+type isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource interface {
+ isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource()
+}
+
+type HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_ struct {
+ // Query from knowledgebase. It is used by:
+ // ARTICLE_SUGGESTION, FAQ.
+ KnowledgeBaseQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource `protobuf:"bytes,1,opt,name=knowledge_base_query_source,json=knowledgeBaseQuerySource,proto3,oneof"`
+}
+
+type HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_ struct {
+ // Query from knowledge base document. It is used by:
+ // SMART_REPLY, SMART_COMPOSE.
+ DocumentQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource `protobuf:"bytes,2,opt,name=document_query_source,json=documentQuerySource,proto3,oneof"`
+}
+
+type HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_ struct {
+ // Query from Dialogflow agent. It is used by DIALOGFLOW_ASSIST.
+ DialogflowQuerySource *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource `protobuf:"bytes,3,opt,name=dialogflow_query_source,json=dialogflowQuerySource,proto3,oneof"`
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() {
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() {
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_) isHumanAgentAssistantConfig_SuggestionQueryConfig_QuerySource() {
+}
+
+// Custom conversation models used in agent assist feature.
+//
+// Supported feature: ARTICLE_SUGGESTION, SMART_COMPOSE, SMART_REPLY,
+// CONVERSATION_SUMMARIZATION.
+type HumanAgentAssistantConfig_ConversationModelConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Conversation model resource name. Format: `projects/<Project
+ // ID>/conversationModels/<Model ID>`.
+ Model string `protobuf:"bytes,1,opt,name=model,proto3" json:"model,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_ConversationModelConfig) Reset() {
+ *x = HumanAgentAssistantConfig_ConversationModelConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_ConversationModelConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_ConversationModelConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_ConversationModelConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_ConversationModelConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_ConversationModelConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 4}
+}
+
+func (x *HumanAgentAssistantConfig_ConversationModelConfig) GetModel() string {
+ if x != nil {
+ return x.Model
+ }
+ return ""
+}
+
+// Config to process conversation.
+type HumanAgentAssistantConfig_ConversationProcessConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Number of recent non-small-talk sentences to use as context for article
+ // and FAQ suggestion
+ RecentSentencesCount int32 `protobuf:"varint,2,opt,name=recent_sentences_count,json=recentSentencesCount,proto3" json:"recent_sentences_count,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_ConversationProcessConfig) Reset() {
+ *x = HumanAgentAssistantConfig_ConversationProcessConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_ConversationProcessConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_ConversationProcessConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_ConversationProcessConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_ConversationProcessConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_ConversationProcessConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 5}
+}
+
+func (x *HumanAgentAssistantConfig_ConversationProcessConfig) GetRecentSentencesCount() int32 {
+ if x != nil {
+ return x.RecentSentencesCount
+ }
+ return 0
+}
+
+// Configuration for analyses to run on each conversation message.
+type HumanAgentAssistantConfig_MessageAnalysisConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Enable entity extraction in conversation messages on [agent assist
+ // stage](https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages).
+ // If unspecified, defaults to false.
+ //
+ // Currently, this feature is not general available, please contact Google
+ // to get access.
+ EnableEntityExtraction bool `protobuf:"varint,2,opt,name=enable_entity_extraction,json=enableEntityExtraction,proto3" json:"enable_entity_extraction,omitempty"`
+ // Enable sentiment analysis in conversation messages on [agent assist
+ // stage](https://cloud.google.com/dialogflow/priv/docs/contact-center/basics#stages).
+ // If unspecified, defaults to false. Sentiment analysis inspects user input
+ // and identifies the prevailing subjective opinion, especially to determine
+ // a user's attitude as positive, negative, or neutral:
+ // https://cloud.google.com/natural-language/docs/basics#sentiment_analysis
+ // For
+ // [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent]
+ // method, result will be in
+ // [StreamingAnalyzeContentResponse.message.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.message].
+ // For
+ // [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+ // method, result will be in
+ // [AnalyzeContentResponse.message.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.message]
+ // For
+ // [Conversations.ListMessages][google.cloud.dialogflow.v2beta1.Conversations.ListMessages]
+ // method, result will be in
+ // [ListMessagesResponse.messages.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.ListMessagesResponse.messages]
+ // If Pub/Sub notification is configured, result will be in
+ // [ConversationEvent.new_message_payload.SentimentAnalysisResult][google.cloud.dialogflow.v2beta1.ConversationEvent.new_message_payload].
+ EnableSentimentAnalysis bool `protobuf:"varint,3,opt,name=enable_sentiment_analysis,json=enableSentimentAnalysis,proto3" json:"enable_sentiment_analysis,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) Reset() {
+ *x = HumanAgentAssistantConfig_MessageAnalysisConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_MessageAnalysisConfig) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_MessageAnalysisConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_MessageAnalysisConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 6}
+}
+
+func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) GetEnableEntityExtraction() bool {
+ if x != nil {
+ return x.EnableEntityExtraction
+ }
+ return false
+}
+
+func (x *HumanAgentAssistantConfig_MessageAnalysisConfig) GetEnableSentimentAnalysis() bool {
+ if x != nil {
+ return x.EnableSentimentAnalysis
+ }
+ return false
+}
+
+// Knowledge base source settings.
+//
+// Supported features: ARTICLE_SUGGESTION, FAQ.
+type HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Knowledge bases to query. Format:
+ // `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`. Currently, only one knowledge
+ // base is supported.
+ KnowledgeBases []string `protobuf:"bytes,1,rep,name=knowledge_bases,json=knowledgeBases,proto3" json:"knowledge_bases,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 0}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource) GetKnowledgeBases() []string {
+ if x != nil {
+ return x.KnowledgeBases
+ }
+ return nil
+}
+
+// Document source settings.
+//
+// Supported features: SMART_REPLY, SMART_COMPOSE.
+type HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Knowledge documents to query from. Format:
+ // `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<KnowledgeBase ID>/documents/<Document ID>`.
+ // Currently, only one document is supported.
+ Documents []string `protobuf:"bytes,1,rep,name=documents,proto3" json:"documents,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[24]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 1}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource) GetDocuments() []string {
+ if x != nil {
+ return x.Documents
+ }
+ return nil
+}
+
+// Dialogflow source setting.
+//
+// Supported feature: DIALOGFLOW_ASSIST.
+type HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of a dialogflow virtual agent used for end user side
+ // intent detection and suggestion. Format: `projects/<Project Number /
+ // ID>/locations/<Location ID>/agent`. When multiple agents are allowed in
+ // the same Dialogflow project.
+ Agent string `protobuf:"bytes,1,opt,name=agent,proto3" json:"agent,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[25]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 2}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource) GetAgent() string {
+ if x != nil {
+ return x.Agent
+ }
+ return ""
+}
+
+// Settings that determine how to filter recent conversation context when
+// generating suggestions.
+type HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // If set to true, the last message from virtual agent (hand off message)
+ // and the message before it (trigger message of hand off) are dropped.
+ DropHandoffMessages bool `protobuf:"varint,1,opt,name=drop_handoff_messages,json=dropHandoffMessages,proto3" json:"drop_handoff_messages,omitempty"`
+ // If set to true, all messages from virtual agent are dropped.
+ DropVirtualAgentMessages bool `protobuf:"varint,2,opt,name=drop_virtual_agent_messages,json=dropVirtualAgentMessages,proto3" json:"drop_virtual_agent_messages,omitempty"`
+ // If set to true, all messages from ivr stage are dropped.
+ DropIvrMessages bool `protobuf:"varint,3,opt,name=drop_ivr_messages,json=dropIvrMessages,proto3" json:"drop_ivr_messages,omitempty"`
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) Reset() {
+ *x = HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) ProtoMessage() {}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[26]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{2, 3, 3}
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropHandoffMessages() bool {
+ if x != nil {
+ return x.DropHandoffMessages
+ }
+ return false
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropVirtualAgentMessages() bool {
+ if x != nil {
+ return x.DropVirtualAgentMessages
+ }
+ return false
+}
+
+func (x *HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings) GetDropIvrMessages() bool {
+ if x != nil {
+ return x.DropIvrMessages
+ }
+ return false
+}
+
+// Configuration specific to LivePerson (https://www.liveperson.com).
+type HumanAgentHandoffConfig_LivePersonConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Account number of the LivePerson account to connect. This is
+ // the account number you input at the login page.
+ AccountNumber string `protobuf:"bytes,1,opt,name=account_number,json=accountNumber,proto3" json:"account_number,omitempty"`
+}
+
+func (x *HumanAgentHandoffConfig_LivePersonConfig) Reset() {
+ *x = HumanAgentHandoffConfig_LivePersonConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentHandoffConfig_LivePersonConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentHandoffConfig_LivePersonConfig) ProtoMessage() {}
+
+func (x *HumanAgentHandoffConfig_LivePersonConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[27]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentHandoffConfig_LivePersonConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentHandoffConfig_LivePersonConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3, 0}
+}
+
+func (x *HumanAgentHandoffConfig_LivePersonConfig) GetAccountNumber() string {
+ if x != nil {
+ return x.AccountNumber
+ }
+ return ""
+}
+
+// Configuration specific to Salesforce Live Agent.
+type HumanAgentHandoffConfig_SalesforceLiveAgentConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The organization ID of the Salesforce account.
+ OrganizationId string `protobuf:"bytes,1,opt,name=organization_id,json=organizationId,proto3" json:"organization_id,omitempty"`
+ // Required. Live Agent deployment ID.
+ DeploymentId string `protobuf:"bytes,2,opt,name=deployment_id,json=deploymentId,proto3" json:"deployment_id,omitempty"`
+ // Required. Live Agent chat button ID.
+ ButtonId string `protobuf:"bytes,3,opt,name=button_id,json=buttonId,proto3" json:"button_id,omitempty"`
+ // Required. Domain of the Live Agent endpoint for this agent. You can find
+ // the endpoint URL in the `Live Agent settings` page. For example if URL
+ // has the form https://d.la4-c2-phx.salesforceliveagent.com/...,
+ // you should fill in d.la4-c2-phx.salesforceliveagent.com.
+ EndpointDomain string `protobuf:"bytes,4,opt,name=endpoint_domain,json=endpointDomain,proto3" json:"endpoint_domain,omitempty"`
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) Reset() {
+ *x = HumanAgentHandoffConfig_SalesforceLiveAgentConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig) ProtoMessage() {}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[28]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentHandoffConfig_SalesforceLiveAgentConfig.ProtoReflect.Descriptor instead.
+func (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP(), []int{3, 1}
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetOrganizationId() string {
+ if x != nil {
+ return x.OrganizationId
+ }
+ return ""
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetDeploymentId() string {
+ if x != nil {
+ return x.DeploymentId
+ }
+ return ""
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetButtonId() string {
+ if x != nil {
+ return x.ButtonId
+ }
+ return ""
+}
+
+func (x *HumanAgentHandoffConfig_SalesforceLiveAgentConfig) GetEndpointDomain() string {
+ if x != nil {
+ return x.EndpointDomain
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_conversation_profile_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc = []byte{
+ 0x0a, 0x3a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d,
+ 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d,
+ 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xbc, 0x0a, 0x0a,
+ 0x13, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70,
+ 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65,
+ 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18,
+ 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69,
+ 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
+ 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x54, 0x69, 0x6d, 0x65, 0x12, 0x6b, 0x0a, 0x16, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65,
+ 0x64, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x14, 0x61, 0x75, 0x74,
+ 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x12, 0x7b, 0x0a, 0x1c, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x5f, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x19, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41,
+ 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x75,
+ 0x0a, 0x1a, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61,
+ 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48,
+ 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x68, 0x75,
+ 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x64, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x55, 0x0a, 0x0e, 0x6c,
+ 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x0d, 0x6c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0x85, 0x01, 0x0a, 0x25, 0x6e, 0x65, 0x77, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x21, 0x6e, 0x65, 0x77, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x52, 0x0a, 0x0a, 0x73, 0x74,
+ 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x54, 0x6f, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x09, 0x73, 0x74, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23,
+ 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18,
+ 0x0a, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43,
+ 0x6f, 0x64, 0x65, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d, 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65,
+ 0x18, 0x0e, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69, 0x6d, 0x65, 0x5a, 0x6f, 0x6e, 0x65,
+ 0x12, 0x5e, 0x0a, 0x11, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x65, 0x74,
+ 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x09, 0x42, 0x31, 0xfa, 0x41, 0x2e,
+ 0x0a, 0x2c, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x58, 0x53, 0x65,
+ 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x10,
+ 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
+ 0x3a, 0xc8, 0x01, 0xea, 0x41, 0xc4, 0x01, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f,
+ 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x7d, 0x12, 0x53, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x7d, 0x22, 0x55, 0x0a, 0x14, 0x41,
+ 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x12, 0x3d, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x22, 0x8d, 0x19, 0x0a, 0x19, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x64, 0x0a, 0x13, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x33, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x52, 0x12, 0x6e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x8e, 0x01, 0x0a, 0x1d, 0x68, 0x75, 0x6d, 0x61, 0x6e,
+ 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4b,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73,
+ 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x1a, 0x68, 0x75, 0x6d,
+ 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x88, 0x01, 0x0a, 0x1a, 0x65, 0x6e, 0x64, 0x5f,
+ 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48,
+ 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61,
+ 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x65, 0x6e, 0x64, 0x55, 0x73,
+ 0x65, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0x88, 0x01, 0x0a, 0x17, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61,
+ 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x15, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41,
+ 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0x63, 0x0a,
+ 0x19, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x69, 0x67, 0x67,
+ 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x22, 0x0a, 0x0d, 0x6e, 0x6f,
+ 0x5f, 0x73, 0x6d, 0x61, 0x6c, 0x6c, 0x5f, 0x74, 0x61, 0x6c, 0x6b, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x0b, 0x6e, 0x6f, 0x53, 0x6d, 0x61, 0x6c, 0x6c, 0x54, 0x61, 0x6c, 0x6b, 0x12, 0x22,
+ 0x0a, 0x0d, 0x6f, 0x6e, 0x6c, 0x79, 0x5f, 0x65, 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x6f, 0x6e, 0x6c, 0x79, 0x45, 0x6e, 0x64, 0x55, 0x73,
+ 0x65, 0x72, 0x1a, 0xf3, 0x05, 0x0a, 0x17, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x61,
+ 0x0a, 0x12, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x11,
+ 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x12, 0x41, 0x0a, 0x1d, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x64, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x45, 0x76, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x73, 0x65, 0x64, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x94, 0x01, 0x0a, 0x1b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x74, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x74,
+ 0x69, 0x6e, 0x67, 0x73, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x54, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d,
+ 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x54, 0x72, 0x69, 0x67, 0x67, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
+ 0x52, 0x19, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x54, 0x72, 0x69, 0x67,
+ 0x67, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x73, 0x0a, 0x0c, 0x71,
+ 0x75, 0x65, 0x72, 0x79, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73,
+ 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x8e, 0x01, 0x0a, 0x19, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x07,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x17, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x12, 0x94, 0x01, 0x0a, 0x1b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x54, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41,
+ 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x19, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x63, 0x65,
+ 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x1a, 0xcd, 0x01, 0x0a, 0x10, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x7b, 0x0a,
+ 0x0f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73,
+ 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x0e, 0x66, 0x65, 0x61, 0x74,
+ 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x12, 0x3c, 0x0a, 0x1a, 0x67, 0x72,
+ 0x6f, 0x75, 0x70, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18,
+ 0x67, 0x72, 0x6f, 0x75, 0x70, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x1a, 0xf1, 0x09, 0x0a, 0x15, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0xaa, 0x01, 0x0a, 0x1b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x69, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75,
+ 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x18, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
+ 0x9a, 0x01, 0x0a, 0x15, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69,
+ 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67,
+ 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x13, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0xa0, 0x01, 0x0a,
+ 0x17, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x5f, 0x71, 0x75, 0x65, 0x72,
+ 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x66,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73,
+ 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x15, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12,
+ 0x1f, 0x0a, 0x0b, 0x6d, 0x61, 0x78, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0a, 0x6d, 0x61, 0x78, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
+ 0x12, 0x31, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x74,
+ 0x68, 0x72, 0x65, 0x73, 0x68, 0x6f, 0x6c, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02, 0x52, 0x13,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x54, 0x68, 0x72, 0x65, 0x73, 0x68,
+ 0x6f, 0x6c, 0x64, 0x12, 0x9e, 0x01, 0x0a, 0x17, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f,
+ 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18,
+ 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x66, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65,
+ 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x51, 0x75, 0x65, 0x72,
+ 0x79, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46,
+ 0x69, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x52, 0x15, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74,
+ 0x69, 0x6e, 0x67, 0x73, 0x1a, 0x74, 0x0a, 0x18, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x12, 0x58, 0x0a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61,
+ 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x29, 0x0a, 0x27, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x1a, 0x5f, 0x0a, 0x13, 0x44, 0x6f,
+ 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x12, 0x48, 0x0a, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x56, 0x0a, 0x15, 0x44,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x51, 0x75, 0x65, 0x72, 0x79, 0x53, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x12, 0x3d, 0x0a, 0x05, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x27, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x21, 0x0a, 0x1f, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x05, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x1a, 0xb6, 0x01, 0x0a, 0x15, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x46,
+ 0x69, 0x6c, 0x74, 0x65, 0x72, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x32, 0x0a,
+ 0x15, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x5f, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x13, 0x64, 0x72,
+ 0x6f, 0x70, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x76, 0x69, 0x72, 0x74, 0x75, 0x61,
+ 0x6c, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x64, 0x72, 0x6f, 0x70, 0x56, 0x69, 0x72, 0x74,
+ 0x75, 0x61, 0x6c, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73,
+ 0x12, 0x2a, 0x0a, 0x11, 0x64, 0x72, 0x6f, 0x70, 0x5f, 0x69, 0x76, 0x72, 0x5f, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0f, 0x64, 0x72, 0x6f,
+ 0x70, 0x49, 0x76, 0x72, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x61, 0x0a, 0x17,
+ 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65,
+ 0x6c, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x46, 0x0a, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x30, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x52, 0x05, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x1a,
+ 0x51, 0x0a, 0x19, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x63, 0x65, 0x73, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x34, 0x0a, 0x16,
+ 0x72, 0x65, 0x63, 0x65, 0x6e, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x73,
+ 0x5f, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x14, 0x72, 0x65,
+ 0x63, 0x65, 0x6e, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x65, 0x6e, 0x63, 0x65, 0x73, 0x43, 0x6f, 0x75,
+ 0x6e, 0x74, 0x1a, 0x8d, 0x01, 0x0a, 0x15, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x38, 0x0a, 0x18,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x65, 0x78,
+ 0x74, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x16,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x45, 0x78, 0x74, 0x72,
+ 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x3a, 0x0a, 0x19, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79,
+ 0x73, 0x69, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x65, 0x6e, 0x61, 0x62, 0x6c,
+ 0x65, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73,
+ 0x69, 0x73, 0x22, 0xc3, 0x04, 0x0a, 0x17, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x79,
+ 0x0a, 0x12, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x70, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d,
+ 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72,
+ 0x73, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x95, 0x01, 0x0a, 0x1c, 0x73, 0x61,
+ 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x5f, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e,
+ 0x64, 0x6f, 0x66, 0x66, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53, 0x61, 0x6c, 0x65, 0x73,
+ 0x66, 0x6f, 0x72, 0x63, 0x65, 0x4c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x19, 0x73, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72,
+ 0x63, 0x65, 0x4c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x1a, 0x3e, 0x0a, 0x10, 0x4c, 0x69, 0x76, 0x65, 0x50, 0x65, 0x72, 0x73, 0x6f, 0x6e, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x2a, 0x0a, 0x0e, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74,
+ 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0d, 0x61, 0x63, 0x63, 0x6f, 0x75, 0x6e, 0x74, 0x4e, 0x75, 0x6d, 0x62, 0x65,
+ 0x72, 0x1a, 0xc3, 0x01, 0x0a, 0x19, 0x53, 0x61, 0x6c, 0x65, 0x73, 0x66, 0x6f, 0x72, 0x63, 0x65,
+ 0x4c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
+ 0x2c, 0x0a, 0x0f, 0x6f, 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6f,
+ 0x72, 0x67, 0x61, 0x6e, 0x69, 0x7a, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x28, 0x0a,
+ 0x0d, 0x64, 0x65, 0x70, 0x6c, 0x6f, 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x64, 0x65, 0x70, 0x6c, 0x6f,
+ 0x79, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x12, 0x20, 0x0a, 0x09, 0x62, 0x75, 0x74, 0x74, 0x6f,
+ 0x6e, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
+ 0x08, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x49, 0x64, 0x12, 0x2c, 0x0a, 0x0f, 0x65, 0x6e, 0x64,
+ 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x5f, 0x64, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e,
+ 0x74, 0x44, 0x6f, 0x6d, 0x61, 0x69, 0x6e, 0x42, 0x0f, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x22, 0xda, 0x01, 0x0a, 0x12, 0x4e, 0x6f, 0x74,
+ 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
+ 0x14, 0x0a, 0x05, 0x74, 0x6f, 0x70, 0x69, 0x63, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05,
+ 0x74, 0x6f, 0x70, 0x69, 0x63, 0x12, 0x68, 0x0a, 0x0e, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x5f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x4e, 0x6f, 0x74, 0x69, 0x66, 0x69, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+ 0x52, 0x0d, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x22,
+ 0x44, 0x0a, 0x0d, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x46, 0x6f, 0x72, 0x6d, 0x61, 0x74,
+ 0x12, 0x1e, 0x0a, 0x1a, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45, 0x5f, 0x46, 0x4f, 0x52, 0x4d,
+ 0x41, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x09, 0x0a, 0x05, 0x50, 0x52, 0x4f, 0x54, 0x4f, 0x10, 0x01, 0x12, 0x08, 0x0a, 0x04, 0x4a,
+ 0x53, 0x4f, 0x4e, 0x10, 0x02, 0x22, 0x4d, 0x0a, 0x0d, 0x4c, 0x6f, 0x67, 0x67, 0x69, 0x6e, 0x67,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x3c, 0x0a, 0x1a, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x5f, 0x73, 0x74, 0x61, 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x5f, 0x6c, 0x6f, 0x67,
+ 0x67, 0x69, 0x6e, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x18, 0x65, 0x6e, 0x61, 0x62,
+ 0x6c, 0x65, 0x53, 0x74, 0x61, 0x63, 0x6b, 0x64, 0x72, 0x69, 0x76, 0x65, 0x72, 0x4c, 0x6f, 0x67,
+ 0x67, 0x69, 0x6e, 0x67, 0x22, 0xac, 0x01, 0x0a, 0x1f, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f,
+ 0x12, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
+ 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
+ 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f,
+ 0x6b, 0x65, 0x6e, 0x22, 0xb5, 0x01, 0x0a, 0x20, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x69, 0x0a, 0x15, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x14, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65,
+ 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65,
+ 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x6a, 0x0a, 0x1d, 0x47,
+ 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x49, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x2f, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xdf, 0x01, 0x0a, 0x20, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4d, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x35, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x2f, 0x12, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6c, 0x0a, 0x14, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xd2, 0x01, 0x0a, 0x20, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x6c,
+ 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x40, 0x0a, 0x0b,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x6d,
+ 0x0a, 0x20, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x49, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x35, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2f, 0x0a, 0x2d, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd4, 0x02,
+ 0x0a, 0x21, 0x53, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46,
+ 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x61, 0x0a, 0x10, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x93,
+ 0x01, 0x0a, 0x19, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65,
+ 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41,
+ 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x53,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x17, 0x73, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x22, 0xb6, 0x02, 0x0a, 0x23, 0x43, 0x6c, 0x65, 0x61, 0x72, 0x53, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x36, 0x0a, 0x14,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
+ 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x12, 0x61, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c,
+ 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x74, 0x0a, 0x17, 0x73, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70,
+ 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x22, 0xf6, 0x02,
+ 0x0a, 0x2b, 0x53, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46,
+ 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x70, 0x65, 0x72,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a,
+ 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x12, 0x61, 0x0a, 0x10, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f,
+ 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52,
+ 0x6f, 0x6c, 0x65, 0x12, 0x74, 0x0a, 0x17, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x15, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65,
+ 0x61, 0x74, 0x75, 0x72, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x22, 0xf8, 0x02, 0x0a, 0x2d, 0x43, 0x6c, 0x65, 0x61, 0x72,
+ 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72,
+ 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x31, 0x0a, 0x14, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x13, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x61, 0x0a, 0x10, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0f, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12, 0x74,
+ 0x0a, 0x17, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x66, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74,
+ 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x15, 0x73,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65,
+ 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74,
+ 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
+ 0x65, 0x32, 0xb1, 0x14, 0x0a, 0x14, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0xa5, 0x02, 0x0a, 0x18, 0x4c,
+ 0x69, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x12, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x83, 0x01, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x12, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x5a, 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x92, 0x02, 0x0a, 0x16, 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x3e, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x47, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66,
+ 0x69, 0x6c, 0x65, 0x22, 0x81, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x12, 0x31, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a,
+ 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
+ 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xdc, 0x02, 0x0a, 0x19, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x43, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xc5,
+ 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa0, 0x01, 0x22, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x3a, 0x14, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x5a, 0x55, 0x22, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x63, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0x73, 0x3a, 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x2c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x8b, 0x03, 0x0a, 0x19, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0x12, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x43, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x22, 0xf4, 0x01,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xca, 0x01, 0x32, 0x46, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
+ 0x14, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x5a, 0x6a, 0x32, 0x52, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x14, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c,
+ 0x65, 0xda, 0x41, 0x20, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
+ 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xfa, 0x01, 0x0a, 0x19, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x12, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x43, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x81, 0x01,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x74, 0x2a, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72,
+ 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3f, 0x2a, 0x3d, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x12, 0xb5, 0x03, 0x0a, 0x1a, 0x53, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x53, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f,
+ 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x22, 0xb3, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xd0, 0x01, 0x22, 0x5c, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x3a, 0x73, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65,
+ 0x61, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x01, 0x2a, 0x5a, 0x6d,
+ 0x22, 0x68, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a,
+ 0x73, 0x65, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x14,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0xca, 0x41, 0x42, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2b, 0x53, 0x65,
+ 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75,
+ 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xbf, 0x03, 0x0a, 0x1c, 0x43, 0x6c,
+ 0x65, 0x61, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x44, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6c, 0x65,
+ 0x61, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74,
+ 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
+ 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
+ 0xb9, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xd4, 0x01, 0x22, 0x5e, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63, 0x6c, 0x65,
+ 0x61, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61, 0x74,
+ 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x01, 0x2a, 0x5a, 0x6f, 0x22, 0x6a,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72,
+ 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x63, 0x6c,
+ 0x65, 0x61, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x14,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x6f,
+ 0x66, 0x69, 0x6c, 0x65, 0xca, 0x41, 0x44, 0x0a, 0x13, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69, 0x6c, 0x65, 0x12, 0x2d, 0x43, 0x6c,
+ 0x65, 0x61, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46, 0x65, 0x61,
+ 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x78, 0xca, 0x41, 0x19,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70,
+ 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73,
+ 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xb0, 0x03, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x18, 0x43,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x6f, 0x66, 0x69,
+ 0x6c, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70,
+ 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01,
+ 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0xea, 0x41, 0x7c, 0x0a, 0x2c, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x58, 0x53, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74,
+ 0x79, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x12, 0x4c, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x7d, 0x2f, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x53, 0x65, 0x74, 0x74, 0x69,
+ 0x6e, 0x67, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x63, 0x75, 0x72, 0x69, 0x74, 0x79, 0x5f, 0x73, 0x65,
+ 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x7d, 0xea, 0x41, 0x7e, 0x0a, 0x2b, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x43, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x6c, 0x12, 0x4f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64,
+ 0x65, 0x6c, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x6c, 0x7d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
+var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes = []interface{}{
+ (NotificationConfig_MessageFormat)(0), // 0: google.cloud.dialogflow.v2beta1.NotificationConfig.MessageFormat
+ (*ConversationProfile)(nil), // 1: google.cloud.dialogflow.v2beta1.ConversationProfile
+ (*AutomatedAgentConfig)(nil), // 2: google.cloud.dialogflow.v2beta1.AutomatedAgentConfig
+ (*HumanAgentAssistantConfig)(nil), // 3: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig
+ (*HumanAgentHandoffConfig)(nil), // 4: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig
+ (*NotificationConfig)(nil), // 5: google.cloud.dialogflow.v2beta1.NotificationConfig
+ (*LoggingConfig)(nil), // 6: google.cloud.dialogflow.v2beta1.LoggingConfig
+ (*ListConversationProfilesRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.ListConversationProfilesRequest
+ (*ListConversationProfilesResponse)(nil), // 8: google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse
+ (*GetConversationProfileRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.GetConversationProfileRequest
+ (*CreateConversationProfileRequest)(nil), // 10: google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest
+ (*UpdateConversationProfileRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest
+ (*DeleteConversationProfileRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.DeleteConversationProfileRequest
+ (*SetSuggestionFeatureConfigRequest)(nil), // 13: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigRequest
+ (*ClearSuggestionFeatureConfigRequest)(nil), // 14: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigRequest
+ (*SetSuggestionFeatureConfigOperationMetadata)(nil), // 15: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata
+ (*ClearSuggestionFeatureConfigOperationMetadata)(nil), // 16: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata
+ (*HumanAgentAssistantConfig_SuggestionTriggerSettings)(nil), // 17: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionTriggerSettings
+ (*HumanAgentAssistantConfig_SuggestionFeatureConfig)(nil), // 18: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig
+ (*HumanAgentAssistantConfig_SuggestionConfig)(nil), // 19: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig)(nil), // 20: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig
+ (*HumanAgentAssistantConfig_ConversationModelConfig)(nil), // 21: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationModelConfig
+ (*HumanAgentAssistantConfig_ConversationProcessConfig)(nil), // 22: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationProcessConfig
+ (*HumanAgentAssistantConfig_MessageAnalysisConfig)(nil), // 23: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.MessageAnalysisConfig
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource)(nil), // 24: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.KnowledgeBaseQuerySource
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource)(nil), // 25: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DocumentQuerySource
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource)(nil), // 26: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DialogflowQuerySource
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings)(nil), // 27: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.ContextFilterSettings
+ (*HumanAgentHandoffConfig_LivePersonConfig)(nil), // 28: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.LivePersonConfig
+ (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig)(nil), // 29: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.SalesforceLiveAgentConfig
+ (*timestamppb.Timestamp)(nil), // 30: google.protobuf.Timestamp
+ (*SpeechToTextConfig)(nil), // 31: google.cloud.dialogflow.v2beta1.SpeechToTextConfig
+ (*fieldmaskpb.FieldMask)(nil), // 32: google.protobuf.FieldMask
+ (Participant_Role)(0), // 33: google.cloud.dialogflow.v2beta1.Participant.Role
+ (SuggestionFeature_Type)(0), // 34: google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ (*SuggestionFeature)(nil), // 35: google.cloud.dialogflow.v2beta1.SuggestionFeature
+ (*emptypb.Empty)(nil), // 36: google.protobuf.Empty
+ (*longrunning.Operation)(nil), // 37: google.longrunning.Operation
+}
+var file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs = []int32{
+ 30, // 0: google.cloud.dialogflow.v2beta1.ConversationProfile.create_time:type_name -> google.protobuf.Timestamp
+ 30, // 1: google.cloud.dialogflow.v2beta1.ConversationProfile.update_time:type_name -> google.protobuf.Timestamp
+ 2, // 2: google.cloud.dialogflow.v2beta1.ConversationProfile.automated_agent_config:type_name -> google.cloud.dialogflow.v2beta1.AutomatedAgentConfig
+ 3, // 3: google.cloud.dialogflow.v2beta1.ConversationProfile.human_agent_assistant_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig
+ 4, // 4: google.cloud.dialogflow.v2beta1.ConversationProfile.human_agent_handoff_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig
+ 5, // 5: google.cloud.dialogflow.v2beta1.ConversationProfile.notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig
+ 6, // 6: google.cloud.dialogflow.v2beta1.ConversationProfile.logging_config:type_name -> google.cloud.dialogflow.v2beta1.LoggingConfig
+ 5, // 7: google.cloud.dialogflow.v2beta1.ConversationProfile.new_message_event_notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig
+ 31, // 8: google.cloud.dialogflow.v2beta1.ConversationProfile.stt_config:type_name -> google.cloud.dialogflow.v2beta1.SpeechToTextConfig
+ 5, // 9: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.notification_config:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig
+ 19, // 10: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.human_agent_suggestion_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig
+ 19, // 11: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.end_user_suggestion_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig
+ 23, // 12: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.message_analysis_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.MessageAnalysisConfig
+ 28, // 13: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.live_person_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.LivePersonConfig
+ 29, // 14: google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.salesforce_live_agent_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentHandoffConfig.SalesforceLiveAgentConfig
+ 0, // 15: google.cloud.dialogflow.v2beta1.NotificationConfig.message_format:type_name -> google.cloud.dialogflow.v2beta1.NotificationConfig.MessageFormat
+ 1, // 16: google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse.conversation_profiles:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 1, // 17: google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest.conversation_profile:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 1, // 18: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest.conversation_profile:type_name -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 32, // 19: google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 33, // 20: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigRequest.participant_role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 18, // 21: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigRequest.suggestion_feature_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig
+ 33, // 22: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigRequest.participant_role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 34, // 23: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigRequest.suggestion_feature_type:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ 33, // 24: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata.participant_role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 34, // 25: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata.suggestion_feature_type:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ 30, // 26: google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata.create_time:type_name -> google.protobuf.Timestamp
+ 33, // 27: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata.participant_role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 34, // 28: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata.suggestion_feature_type:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ 30, // 29: google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata.create_time:type_name -> google.protobuf.Timestamp
+ 35, // 30: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.suggestion_feature:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature
+ 17, // 31: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.suggestion_trigger_settings:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionTriggerSettings
+ 20, // 32: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.query_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig
+ 21, // 33: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.conversation_model_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationModelConfig
+ 22, // 34: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig.conversation_process_config:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.ConversationProcessConfig
+ 18, // 35: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionFeatureConfig
+ 24, // 36: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.knowledge_base_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.KnowledgeBaseQuerySource
+ 25, // 37: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.document_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DocumentQuerySource
+ 26, // 38: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.dialogflow_query_source:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.DialogflowQuerySource
+ 27, // 39: google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.context_filter_settings:type_name -> google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionQueryConfig.ContextFilterSettings
+ 7, // 40: google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles:input_type -> google.cloud.dialogflow.v2beta1.ListConversationProfilesRequest
+ 9, // 41: google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.GetConversationProfileRequest
+ 10, // 42: google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.CreateConversationProfileRequest
+ 11, // 43: google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.UpdateConversationProfileRequest
+ 12, // 44: google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile:input_type -> google.cloud.dialogflow.v2beta1.DeleteConversationProfileRequest
+ 13, // 45: google.cloud.dialogflow.v2beta1.ConversationProfiles.SetSuggestionFeatureConfig:input_type -> google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigRequest
+ 14, // 46: google.cloud.dialogflow.v2beta1.ConversationProfiles.ClearSuggestionFeatureConfig:input_type -> google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigRequest
+ 8, // 47: google.cloud.dialogflow.v2beta1.ConversationProfiles.ListConversationProfiles:output_type -> google.cloud.dialogflow.v2beta1.ListConversationProfilesResponse
+ 1, // 48: google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 1, // 49: google.cloud.dialogflow.v2beta1.ConversationProfiles.CreateConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 1, // 50: google.cloud.dialogflow.v2beta1.ConversationProfiles.UpdateConversationProfile:output_type -> google.cloud.dialogflow.v2beta1.ConversationProfile
+ 36, // 51: google.cloud.dialogflow.v2beta1.ConversationProfiles.DeleteConversationProfile:output_type -> google.protobuf.Empty
+ 37, // 52: google.cloud.dialogflow.v2beta1.ConversationProfiles.SetSuggestionFeatureConfig:output_type -> google.longrunning.Operation
+ 37, // 53: google.cloud.dialogflow.v2beta1.ConversationProfiles.ClearSuggestionFeatureConfig:output_type -> google.longrunning.Operation
+ 47, // [47:54] is the sub-list for method output_type
+ 40, // [40:47] is the sub-list for method input_type
+ 40, // [40:40] is the sub-list for extension type_name
+ 40, // [40:40] is the sub-list for extension extendee
+ 0, // [0:40] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_conversation_profile_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_init()
+ file_google_cloud_dialogflow_v2beta1_participant_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ConversationProfile); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutomatedAgentConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentHandoffConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*NotificationConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*LoggingConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListConversationProfilesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListConversationProfilesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetConversationProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateConversationProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateConversationProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteConversationProfileRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetSuggestionFeatureConfigRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ClearSuggestionFeatureConfigRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SetSuggestionFeatureConfigOperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ClearSuggestionFeatureConfigOperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionTriggerSettings); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionFeatureConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_ConversationModelConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_ConversationProcessConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_MessageAnalysisConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantConfig_SuggestionQueryConfig_ContextFilterSettings); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentHandoffConfig_LivePersonConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentHandoffConfig_SalesforceLiveAgentConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[3].OneofWrappers = []interface{}{
+ (*HumanAgentHandoffConfig_LivePersonConfig_)(nil),
+ (*HumanAgentHandoffConfig_SalesforceLiveAgentConfig_)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes[19].OneofWrappers = []interface{}{
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_KnowledgeBaseQuerySource_)(nil),
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_DocumentQuerySource_)(nil),
+ (*HumanAgentAssistantConfig_SuggestionQueryConfig_DialogflowQuerySource_)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 29,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_conversation_profile_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_conversation_profile_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ConversationProfilesClient is the client API for ConversationProfiles service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ConversationProfilesClient interface {
+ // Returns the list of all conversation profiles in the specified project.
+ ListConversationProfiles(ctx context.Context, in *ListConversationProfilesRequest, opts ...grpc.CallOption) (*ListConversationProfilesResponse, error)
+ // Retrieves the specified conversation profile.
+ GetConversationProfile(ctx context.Context, in *GetConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error)
+ // Creates a conversation profile in the specified project.
+ //
+ // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][]
+ // aren't populated in the response. You can retrieve them via
+ // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile]
+ // API.
+ CreateConversationProfile(ctx context.Context, in *CreateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error)
+ // Updates the specified conversation profile.
+ //
+ // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][]
+ // aren't populated in the response. You can retrieve them via
+ // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile]
+ // API.
+ UpdateConversationProfile(ctx context.Context, in *UpdateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error)
+ // Deletes the specified conversation profile.
+ DeleteConversationProfile(ctx context.Context, in *DeleteConversationProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Adds or updates a suggestion feature in a conversation profile.
+ // If the conversation profile contains the type of suggestion feature for
+ // the participant role, it will update it. Otherwise it will insert the
+ // suggestion feature.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [SetSuggestionFeatureConfigOperationMetadata][google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata]
+ // - `response`:
+ // [ConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfile]
+ //
+ // If a long running operation to add or update suggestion feature
+ // config for the same conversation profile, participant role and suggestion
+ // feature type exists, please cancel the existing long running operation
+ // before sending such request, otherwise the request will be rejected.
+ SetSuggestionFeatureConfig(ctx context.Context, in *SetSuggestionFeatureConfigRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Clears a suggestion feature from a conversation profile for the given
+ // participant role.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [ClearSuggestionFeatureConfigOperationMetadata][google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata]
+ // - `response`:
+ // [ConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfile]
+ ClearSuggestionFeatureConfig(ctx context.Context, in *ClearSuggestionFeatureConfigRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+}
+
+type conversationProfilesClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewConversationProfilesClient(cc grpc.ClientConnInterface) ConversationProfilesClient {
+ return &conversationProfilesClient{cc}
+}
+
+func (c *conversationProfilesClient) ListConversationProfiles(ctx context.Context, in *ListConversationProfilesRequest, opts ...grpc.CallOption) (*ListConversationProfilesResponse, error) {
+ out := new(ListConversationProfilesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ListConversationProfiles", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) GetConversationProfile(ctx context.Context, in *GetConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) {
+ out := new(ConversationProfile)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/GetConversationProfile", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) CreateConversationProfile(ctx context.Context, in *CreateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) {
+ out := new(ConversationProfile)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/CreateConversationProfile", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) UpdateConversationProfile(ctx context.Context, in *UpdateConversationProfileRequest, opts ...grpc.CallOption) (*ConversationProfile, error) {
+ out := new(ConversationProfile)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/UpdateConversationProfile", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) DeleteConversationProfile(ctx context.Context, in *DeleteConversationProfileRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/DeleteConversationProfile", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) SetSuggestionFeatureConfig(ctx context.Context, in *SetSuggestionFeatureConfigRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/SetSuggestionFeatureConfig", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *conversationProfilesClient) ClearSuggestionFeatureConfig(ctx context.Context, in *ClearSuggestionFeatureConfigRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ClearSuggestionFeatureConfig", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ConversationProfilesServer is the server API for ConversationProfiles service.
+type ConversationProfilesServer interface {
+ // Returns the list of all conversation profiles in the specified project.
+ ListConversationProfiles(context.Context, *ListConversationProfilesRequest) (*ListConversationProfilesResponse, error)
+ // Retrieves the specified conversation profile.
+ GetConversationProfile(context.Context, *GetConversationProfileRequest) (*ConversationProfile, error)
+ // Creates a conversation profile in the specified project.
+ //
+ // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][]
+ // aren't populated in the response. You can retrieve them via
+ // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile]
+ // API.
+ CreateConversationProfile(context.Context, *CreateConversationProfileRequest) (*ConversationProfile, error)
+ // Updates the specified conversation profile.
+ //
+ // [ConversationProfile.CreateTime][] and [ConversationProfile.UpdateTime][]
+ // aren't populated in the response. You can retrieve them via
+ // [GetConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfiles.GetConversationProfile]
+ // API.
+ UpdateConversationProfile(context.Context, *UpdateConversationProfileRequest) (*ConversationProfile, error)
+ // Deletes the specified conversation profile.
+ DeleteConversationProfile(context.Context, *DeleteConversationProfileRequest) (*emptypb.Empty, error)
+ // Adds or updates a suggestion feature in a conversation profile.
+ // If the conversation profile contains the type of suggestion feature for
+ // the participant role, it will update it. Otherwise it will insert the
+ // suggestion feature.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [SetSuggestionFeatureConfigOperationMetadata][google.cloud.dialogflow.v2beta1.SetSuggestionFeatureConfigOperationMetadata]
+ // - `response`:
+ // [ConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfile]
+ //
+ // If a long running operation to add or update suggestion feature
+ // config for the same conversation profile, participant role and suggestion
+ // feature type exists, please cancel the existing long running operation
+ // before sending such request, otherwise the request will be rejected.
+ SetSuggestionFeatureConfig(context.Context, *SetSuggestionFeatureConfigRequest) (*longrunning.Operation, error)
+ // Clears a suggestion feature from a conversation profile for the given
+ // participant role.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [ClearSuggestionFeatureConfigOperationMetadata][google.cloud.dialogflow.v2beta1.ClearSuggestionFeatureConfigOperationMetadata]
+ // - `response`:
+ // [ConversationProfile][google.cloud.dialogflow.v2beta1.ConversationProfile]
+ ClearSuggestionFeatureConfig(context.Context, *ClearSuggestionFeatureConfigRequest) (*longrunning.Operation, error)
+}
+
+// UnimplementedConversationProfilesServer can be embedded to have forward compatible implementations.
+type UnimplementedConversationProfilesServer struct {
+}
+
+func (*UnimplementedConversationProfilesServer) ListConversationProfiles(context.Context, *ListConversationProfilesRequest) (*ListConversationProfilesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListConversationProfiles not implemented")
+}
+func (*UnimplementedConversationProfilesServer) GetConversationProfile(context.Context, *GetConversationProfileRequest) (*ConversationProfile, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetConversationProfile not implemented")
+}
+func (*UnimplementedConversationProfilesServer) CreateConversationProfile(context.Context, *CreateConversationProfileRequest) (*ConversationProfile, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateConversationProfile not implemented")
+}
+func (*UnimplementedConversationProfilesServer) UpdateConversationProfile(context.Context, *UpdateConversationProfileRequest) (*ConversationProfile, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateConversationProfile not implemented")
+}
+func (*UnimplementedConversationProfilesServer) DeleteConversationProfile(context.Context, *DeleteConversationProfileRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteConversationProfile not implemented")
+}
+func (*UnimplementedConversationProfilesServer) SetSuggestionFeatureConfig(context.Context, *SetSuggestionFeatureConfigRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method SetSuggestionFeatureConfig not implemented")
+}
+func (*UnimplementedConversationProfilesServer) ClearSuggestionFeatureConfig(context.Context, *ClearSuggestionFeatureConfigRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ClearSuggestionFeatureConfig not implemented")
+}
+
+func RegisterConversationProfilesServer(s *grpc.Server, srv ConversationProfilesServer) {
+ s.RegisterService(&_ConversationProfiles_serviceDesc, srv)
+}
+
+func _ConversationProfiles_ListConversationProfiles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListConversationProfilesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).ListConversationProfiles(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ListConversationProfiles",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).ListConversationProfiles(ctx, req.(*ListConversationProfilesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_GetConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetConversationProfileRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).GetConversationProfile(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/GetConversationProfile",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).GetConversationProfile(ctx, req.(*GetConversationProfileRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_CreateConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateConversationProfileRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).CreateConversationProfile(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/CreateConversationProfile",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).CreateConversationProfile(ctx, req.(*CreateConversationProfileRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_UpdateConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateConversationProfileRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).UpdateConversationProfile(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/UpdateConversationProfile",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).UpdateConversationProfile(ctx, req.(*UpdateConversationProfileRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_DeleteConversationProfile_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteConversationProfileRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).DeleteConversationProfile(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/DeleteConversationProfile",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).DeleteConversationProfile(ctx, req.(*DeleteConversationProfileRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_SetSuggestionFeatureConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SetSuggestionFeatureConfigRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).SetSuggestionFeatureConfig(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/SetSuggestionFeatureConfig",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).SetSuggestionFeatureConfig(ctx, req.(*SetSuggestionFeatureConfigRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _ConversationProfiles_ClearSuggestionFeatureConfig_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ClearSuggestionFeatureConfigRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ConversationProfilesServer).ClearSuggestionFeatureConfig(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.ConversationProfiles/ClearSuggestionFeatureConfig",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ConversationProfilesServer).ClearSuggestionFeatureConfig(ctx, req.(*ClearSuggestionFeatureConfigRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _ConversationProfiles_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.ConversationProfiles",
+ HandlerType: (*ConversationProfilesServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListConversationProfiles",
+ Handler: _ConversationProfiles_ListConversationProfiles_Handler,
+ },
+ {
+ MethodName: "GetConversationProfile",
+ Handler: _ConversationProfiles_GetConversationProfile_Handler,
+ },
+ {
+ MethodName: "CreateConversationProfile",
+ Handler: _ConversationProfiles_CreateConversationProfile_Handler,
+ },
+ {
+ MethodName: "UpdateConversationProfile",
+ Handler: _ConversationProfiles_UpdateConversationProfile_Handler,
+ },
+ {
+ MethodName: "DeleteConversationProfile",
+ Handler: _ConversationProfiles_DeleteConversationProfile_Handler,
+ },
+ {
+ MethodName: "SetSuggestionFeatureConfig",
+ Handler: _ConversationProfiles_SetSuggestionFeatureConfig_Handler,
+ },
+ {
+ MethodName: "ClearSuggestionFeatureConfig",
+ Handler: _ConversationProfiles_ClearSuggestionFeatureConfig_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/conversation_profile.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/document.pb.go b/dialogflow/apiv2beta1/dialogflowpb/document.pb.go
new file mode 100644
index 0000000..1ff5918
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/document.pb.go
@@ -0,0 +1,2564 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/document.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ status "google.golang.org/genproto/googleapis/rpc/status"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status1 "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The knowledge type of document content.
+type Document_KnowledgeType int32
+
+const (
+ // The type is unspecified or arbitrary.
+ Document_KNOWLEDGE_TYPE_UNSPECIFIED Document_KnowledgeType = 0
+ // The document content contains question and answer pairs as either HTML or
+ // CSV. Typical FAQ HTML formats are parsed accurately, but unusual formats
+ // may fail to be parsed.
+ //
+ // CSV must have questions in the first column and answers in the second,
+ // with no header. Because of this explicit format, they are always parsed
+ // accurately.
+ Document_FAQ Document_KnowledgeType = 1
+ // Documents for which unstructured text is extracted and used for
+ // question answering.
+ Document_EXTRACTIVE_QA Document_KnowledgeType = 2
+ // The entire document content as a whole can be used for query results.
+ // Only for Contact Center Solutions on Dialogflow.
+ Document_ARTICLE_SUGGESTION Document_KnowledgeType = 3
+ // The document contains agent-facing Smart Reply entries.
+ Document_AGENT_FACING_SMART_REPLY Document_KnowledgeType = 4
+ // The legacy enum for agent-facing smart reply feature.
+ Document_SMART_REPLY Document_KnowledgeType = 4
+)
+
+// Enum value maps for Document_KnowledgeType.
+var (
+ Document_KnowledgeType_name = map[int32]string{
+ 0: "KNOWLEDGE_TYPE_UNSPECIFIED",
+ 1: "FAQ",
+ 2: "EXTRACTIVE_QA",
+ 3: "ARTICLE_SUGGESTION",
+ 4: "AGENT_FACING_SMART_REPLY",
+ // Duplicate value: 4: "SMART_REPLY",
+ }
+ Document_KnowledgeType_value = map[string]int32{
+ "KNOWLEDGE_TYPE_UNSPECIFIED": 0,
+ "FAQ": 1,
+ "EXTRACTIVE_QA": 2,
+ "ARTICLE_SUGGESTION": 3,
+ "AGENT_FACING_SMART_REPLY": 4,
+ "SMART_REPLY": 4,
+ }
+)
+
+func (x Document_KnowledgeType) Enum() *Document_KnowledgeType {
+ p := new(Document_KnowledgeType)
+ *p = x
+ return p
+}
+
+func (x Document_KnowledgeType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Document_KnowledgeType) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[0].Descriptor()
+}
+
+func (Document_KnowledgeType) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[0]
+}
+
+func (x Document_KnowledgeType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Document_KnowledgeType.Descriptor instead.
+func (Document_KnowledgeType) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Possible states of the document
+type Document_State int32
+
+const (
+ // The document state is unspecified.
+ Document_STATE_UNSPECIFIED Document_State = 0
+ // The document creation is in progress.
+ Document_CREATING Document_State = 1
+ // The document is active and ready to use.
+ Document_ACTIVE Document_State = 2
+ // The document updation is in progress.
+ Document_UPDATING Document_State = 3
+ // The document is reloading.
+ Document_RELOADING Document_State = 4
+ // The document deletion is in progress.
+ Document_DELETING Document_State = 5
+)
+
+// Enum value maps for Document_State.
+var (
+ Document_State_name = map[int32]string{
+ 0: "STATE_UNSPECIFIED",
+ 1: "CREATING",
+ 2: "ACTIVE",
+ 3: "UPDATING",
+ 4: "RELOADING",
+ 5: "DELETING",
+ }
+ Document_State_value = map[string]int32{
+ "STATE_UNSPECIFIED": 0,
+ "CREATING": 1,
+ "ACTIVE": 2,
+ "UPDATING": 3,
+ "RELOADING": 4,
+ "DELETING": 5,
+ }
+)
+
+func (x Document_State) Enum() *Document_State {
+ p := new(Document_State)
+ *p = x
+ return p
+}
+
+func (x Document_State) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Document_State) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[1].Descriptor()
+}
+
+func (Document_State) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[1]
+}
+
+func (x Document_State) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Document_State.Descriptor instead.
+func (Document_State) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// States of the operation.
+type KnowledgeOperationMetadata_State int32
+
+const (
+ // State unspecified.
+ KnowledgeOperationMetadata_STATE_UNSPECIFIED KnowledgeOperationMetadata_State = 0
+ // The operation has been created.
+ KnowledgeOperationMetadata_PENDING KnowledgeOperationMetadata_State = 1
+ // The operation is currently running.
+ KnowledgeOperationMetadata_RUNNING KnowledgeOperationMetadata_State = 2
+ // The operation is done, either cancelled or completed.
+ KnowledgeOperationMetadata_DONE KnowledgeOperationMetadata_State = 3
+)
+
+// Enum value maps for KnowledgeOperationMetadata_State.
+var (
+ KnowledgeOperationMetadata_State_name = map[int32]string{
+ 0: "STATE_UNSPECIFIED",
+ 1: "PENDING",
+ 2: "RUNNING",
+ 3: "DONE",
+ }
+ KnowledgeOperationMetadata_State_value = map[string]int32{
+ "STATE_UNSPECIFIED": 0,
+ "PENDING": 1,
+ "RUNNING": 2,
+ "DONE": 3,
+ }
+)
+
+func (x KnowledgeOperationMetadata_State) Enum() *KnowledgeOperationMetadata_State {
+ p := new(KnowledgeOperationMetadata_State)
+ *p = x
+ return p
+}
+
+func (x KnowledgeOperationMetadata_State) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (KnowledgeOperationMetadata_State) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[2].Descriptor()
+}
+
+func (KnowledgeOperationMetadata_State) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes[2]
+}
+
+func (x KnowledgeOperationMetadata_State) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use KnowledgeOperationMetadata_State.Descriptor instead.
+func (KnowledgeOperationMetadata_State) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{11, 0}
+}
+
+// A knowledge document to be used by a
+// [KnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBase].
+//
+// For more information, see the [knowledge base
+// guide](https://cloud.google.com/dialogflow/docs/how/knowledge-bases).
+//
+// Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+// only use `projects.knowledgeBases.documents`.
+type Document struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The document resource name.
+ // The name must be empty when creating a document.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The display name of the document. The name must be 1024 bytes or
+ // less; otherwise, the creation request fails.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. The MIME type of this document.
+ MimeType string `protobuf:"bytes,3,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
+ // Required. The knowledge type of document content.
+ KnowledgeTypes []Document_KnowledgeType `protobuf:"varint,4,rep,packed,name=knowledge_types,json=knowledgeTypes,proto3,enum=google.cloud.dialogflow.v2beta1.Document_KnowledgeType" json:"knowledge_types,omitempty"`
+ // The source of this document.
+ //
+ // Types that are assignable to Source:
+ //
+ // *Document_ContentUri
+ // *Document_Content
+ // *Document_RawContent
+ Source isDocument_Source `protobuf_oneof:"source"`
+ // Optional. If true, we try to automatically reload the document every day
+ // (at a time picked by the system). If false or unspecified, we don't try
+ // to automatically reload the document.
+ //
+ // Currently you can only enable automatic reload for documents sourced from
+ // a public url, see `source` field for the source types.
+ //
+ // Reload status can be tracked in `latest_reload_status`. If a reload
+ // fails, we will keep the document unchanged.
+ //
+ // If a reload fails with internal errors, the system will try to reload the
+ // document on the next day.
+ // If a reload fails with non-retriable errors (e.g. PERMISSION_DENIED), the
+ // system will not try to reload the document anymore. You need to manually
+ // reload the document successfully by calling `ReloadDocument` and clear the
+ // errors.
+ EnableAutoReload bool `protobuf:"varint,11,opt,name=enable_auto_reload,json=enableAutoReload,proto3" json:"enable_auto_reload,omitempty"`
+ // Output only. The time and status of the latest reload.
+ // This reload may have been triggered automatically or manually
+ // and may not have succeeded.
+ LatestReloadStatus *Document_ReloadStatus `protobuf:"bytes,12,opt,name=latest_reload_status,json=latestReloadStatus,proto3" json:"latest_reload_status,omitempty"`
+ // Optional. Metadata for the document. The metadata supports arbitrary
+ // key-value pairs. Suggested use cases include storing a document's title,
+ // an external URL distinct from the document's content_uri, etc.
+ // The max size of a `key` or a `value` of the metadata is 1024 bytes.
+ Metadata map[string]string `protobuf:"bytes,7,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Output only. The current state of the document.
+ State Document_State `protobuf:"varint,13,opt,name=state,proto3,enum=google.cloud.dialogflow.v2beta1.Document_State" json:"state,omitempty"`
+}
+
+func (x *Document) Reset() {
+ *x = Document{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Document) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Document) ProtoMessage() {}
+
+func (x *Document) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Document.ProtoReflect.Descriptor instead.
+func (*Document) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Document) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Document) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Document) GetMimeType() string {
+ if x != nil {
+ return x.MimeType
+ }
+ return ""
+}
+
+func (x *Document) GetKnowledgeTypes() []Document_KnowledgeType {
+ if x != nil {
+ return x.KnowledgeTypes
+ }
+ return nil
+}
+
+func (m *Document) GetSource() isDocument_Source {
+ if m != nil {
+ return m.Source
+ }
+ return nil
+}
+
+func (x *Document) GetContentUri() string {
+ if x, ok := x.GetSource().(*Document_ContentUri); ok {
+ return x.ContentUri
+ }
+ return ""
+}
+
+// Deprecated: Do not use.
+func (x *Document) GetContent() string {
+ if x, ok := x.GetSource().(*Document_Content); ok {
+ return x.Content
+ }
+ return ""
+}
+
+func (x *Document) GetRawContent() []byte {
+ if x, ok := x.GetSource().(*Document_RawContent); ok {
+ return x.RawContent
+ }
+ return nil
+}
+
+func (x *Document) GetEnableAutoReload() bool {
+ if x != nil {
+ return x.EnableAutoReload
+ }
+ return false
+}
+
+func (x *Document) GetLatestReloadStatus() *Document_ReloadStatus {
+ if x != nil {
+ return x.LatestReloadStatus
+ }
+ return nil
+}
+
+func (x *Document) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *Document) GetState() Document_State {
+ if x != nil {
+ return x.State
+ }
+ return Document_STATE_UNSPECIFIED
+}
+
+type isDocument_Source interface {
+ isDocument_Source()
+}
+
+type Document_ContentUri struct {
+ // The URI where the file content is located.
+ //
+ // For documents stored in Google Cloud Storage, these URIs must have
+ // the form `gs://<bucket-name>/<object-name>`.
+ //
+ // NOTE: External URLs must correspond to public webpages, i.e., they must
+ // be indexed by Google Search. In particular, URLs for showing documents in
+ // Google Cloud Storage (i.e. the URL in your browser) are not supported.
+ // Instead use the `gs://` format URI described above.
+ ContentUri string `protobuf:"bytes,5,opt,name=content_uri,json=contentUri,proto3,oneof"`
+}
+
+type Document_Content struct {
+ // The raw content of the document. This field is only permitted for
+ // EXTRACTIVE_QA and FAQ knowledge types.
+ // Note: This field is in the process of being deprecated, please use
+ // raw_content instead.
+ //
+ // Deprecated: Do not use.
+ Content string `protobuf:"bytes,6,opt,name=content,proto3,oneof"`
+}
+
+type Document_RawContent struct {
+ // The raw content of the document. This field is only permitted for
+ // EXTRACTIVE_QA and FAQ knowledge types.
+ RawContent []byte `protobuf:"bytes,9,opt,name=raw_content,json=rawContent,proto3,oneof"`
+}
+
+func (*Document_ContentUri) isDocument_Source() {}
+
+func (*Document_Content) isDocument_Source() {}
+
+func (*Document_RawContent) isDocument_Source() {}
+
+// Request message for
+// [Documents.GetDocument][google.cloud.dialogflow.v2beta1.Documents.GetDocument].
+type GetDocumentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the document to retrieve.
+ // Format `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetDocumentRequest) Reset() {
+ *x = GetDocumentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetDocumentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetDocumentRequest) ProtoMessage() {}
+
+func (x *GetDocumentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetDocumentRequest.ProtoReflect.Descriptor instead.
+func (*GetDocumentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *GetDocumentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for
+// [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments].
+type ListDocumentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The knowledge base to list all documents for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of items to return in a single page. By
+ // default 10 and at most 100.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // The filter expression used to filter documents returned by the list method.
+ // The expression has the following syntax:
+ //
+ // <field> <operator> <value> [AND <field> <operator> <value>] ...
+ //
+ // The following fields and operators are supported:
+ //
+ // * knowledge_types with has(:) operator
+ // * display_name with has(:) operator
+ // * state with equals(=) operator
+ //
+ // Examples:
+ //
+ // - "knowledge_types:FAQ" matches documents with FAQ knowledge type.
+ // - "display_name:customer" matches documents whose display name contains
+ // "customer".
+ // - "state=ACTIVE" matches documents with ACTIVE state.
+ // - "knowledge_types:FAQ AND state=ACTIVE" matches all active FAQ documents.
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListDocumentsRequest) Reset() {
+ *x = ListDocumentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListDocumentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListDocumentsRequest) ProtoMessage() {}
+
+func (x *ListDocumentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListDocumentsRequest.ProtoReflect.Descriptor instead.
+func (*ListDocumentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListDocumentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListDocumentsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListDocumentsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListDocumentsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for
+// [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments].
+type ListDocumentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of documents.
+ Documents []*Document `protobuf:"bytes,1,rep,name=documents,proto3" json:"documents,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListDocumentsResponse) Reset() {
+ *x = ListDocumentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListDocumentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListDocumentsResponse) ProtoMessage() {}
+
+func (x *ListDocumentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListDocumentsResponse.ProtoReflect.Descriptor instead.
+func (*ListDocumentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ListDocumentsResponse) GetDocuments() []*Document {
+ if x != nil {
+ return x.Documents
+ }
+ return nil
+}
+
+func (x *ListDocumentsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [Documents.CreateDocument][google.cloud.dialogflow.v2beta1.Documents.CreateDocument].
+type CreateDocumentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The knowledge base to create a document for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The document to create.
+ Document *Document `protobuf:"bytes,2,opt,name=document,proto3" json:"document,omitempty"`
+ // Whether to import custom metadata from Google Cloud Storage.
+ // Only valid when the document source is Google Cloud Storage URI.
+ ImportGcsCustomMetadata bool `protobuf:"varint,3,opt,name=import_gcs_custom_metadata,json=importGcsCustomMetadata,proto3" json:"import_gcs_custom_metadata,omitempty"`
+}
+
+func (x *CreateDocumentRequest) Reset() {
+ *x = CreateDocumentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateDocumentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateDocumentRequest) ProtoMessage() {}
+
+func (x *CreateDocumentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateDocumentRequest.ProtoReflect.Descriptor instead.
+func (*CreateDocumentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateDocumentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateDocumentRequest) GetDocument() *Document {
+ if x != nil {
+ return x.Document
+ }
+ return nil
+}
+
+func (x *CreateDocumentRequest) GetImportGcsCustomMetadata() bool {
+ if x != nil {
+ return x.ImportGcsCustomMetadata
+ }
+ return false
+}
+
+// Request message for
+// [Documents.ImportDocuments][google.cloud.dialogflow.v2beta1.Documents.ImportDocuments].
+type ImportDocumentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The knowledge base to import documents into.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The source to use for importing documents.
+ //
+ // If the source captures multiple objects, then multiple documents will be
+ // created, one corresponding to each object, and all of these documents will
+ // be created using the same document template.
+ //
+ // Dialogflow supports up to 350 documents in each request. If you try to
+ // import more, Dialogflow will return an error.
+ //
+ // Types that are assignable to Source:
+ //
+ // *ImportDocumentsRequest_GcsSource
+ Source isImportDocumentsRequest_Source `protobuf_oneof:"source"`
+ // Required. Document template used for importing all the documents.
+ DocumentTemplate *ImportDocumentTemplate `protobuf:"bytes,3,opt,name=document_template,json=documentTemplate,proto3" json:"document_template,omitempty"`
+ // Whether to import custom metadata from Google Cloud Storage.
+ // Only valid when the document source is Google Cloud Storage URI.
+ ImportGcsCustomMetadata bool `protobuf:"varint,4,opt,name=import_gcs_custom_metadata,json=importGcsCustomMetadata,proto3" json:"import_gcs_custom_metadata,omitempty"`
+}
+
+func (x *ImportDocumentsRequest) Reset() {
+ *x = ImportDocumentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ImportDocumentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ImportDocumentsRequest) ProtoMessage() {}
+
+func (x *ImportDocumentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ImportDocumentsRequest.ProtoReflect.Descriptor instead.
+func (*ImportDocumentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *ImportDocumentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (m *ImportDocumentsRequest) GetSource() isImportDocumentsRequest_Source {
+ if m != nil {
+ return m.Source
+ }
+ return nil
+}
+
+func (x *ImportDocumentsRequest) GetGcsSource() *GcsSources {
+ if x, ok := x.GetSource().(*ImportDocumentsRequest_GcsSource); ok {
+ return x.GcsSource
+ }
+ return nil
+}
+
+func (x *ImportDocumentsRequest) GetDocumentTemplate() *ImportDocumentTemplate {
+ if x != nil {
+ return x.DocumentTemplate
+ }
+ return nil
+}
+
+func (x *ImportDocumentsRequest) GetImportGcsCustomMetadata() bool {
+ if x != nil {
+ return x.ImportGcsCustomMetadata
+ }
+ return false
+}
+
+type isImportDocumentsRequest_Source interface {
+ isImportDocumentsRequest_Source()
+}
+
+type ImportDocumentsRequest_GcsSource struct {
+ // The Google Cloud Storage location for the documents.
+ // The path can include a wildcard.
+ //
+ // These URIs may have the forms
+ // `gs://<bucket-name>/<object-name>`.
+ // `gs://<bucket-name>/<object-path>/*.<extension>`.
+ GcsSource *GcsSources `protobuf:"bytes,2,opt,name=gcs_source,json=gcsSource,proto3,oneof"`
+}
+
+func (*ImportDocumentsRequest_GcsSource) isImportDocumentsRequest_Source() {}
+
+// The template used for importing documents.
+type ImportDocumentTemplate struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The MIME type of the document.
+ MimeType string `protobuf:"bytes,1,opt,name=mime_type,json=mimeType,proto3" json:"mime_type,omitempty"`
+ // Required. The knowledge type of document content.
+ KnowledgeTypes []Document_KnowledgeType `protobuf:"varint,2,rep,packed,name=knowledge_types,json=knowledgeTypes,proto3,enum=google.cloud.dialogflow.v2beta1.Document_KnowledgeType" json:"knowledge_types,omitempty"`
+ // Metadata for the document. The metadata supports arbitrary
+ // key-value pairs. Suggested use cases include storing a document's title,
+ // an external URL distinct from the document's content_uri, etc.
+ // The max size of a `key` or a `value` of the metadata is 1024 bytes.
+ Metadata map[string]string `protobuf:"bytes,3,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *ImportDocumentTemplate) Reset() {
+ *x = ImportDocumentTemplate{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ImportDocumentTemplate) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ImportDocumentTemplate) ProtoMessage() {}
+
+func (x *ImportDocumentTemplate) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ImportDocumentTemplate.ProtoReflect.Descriptor instead.
+func (*ImportDocumentTemplate) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *ImportDocumentTemplate) GetMimeType() string {
+ if x != nil {
+ return x.MimeType
+ }
+ return ""
+}
+
+func (x *ImportDocumentTemplate) GetKnowledgeTypes() []Document_KnowledgeType {
+ if x != nil {
+ return x.KnowledgeTypes
+ }
+ return nil
+}
+
+func (x *ImportDocumentTemplate) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Response message for
+// [Documents.ImportDocuments][google.cloud.dialogflow.v2beta1.Documents.ImportDocuments].
+type ImportDocumentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Includes details about skipped documents or any other warnings.
+ Warnings []*status.Status `protobuf:"bytes,1,rep,name=warnings,proto3" json:"warnings,omitempty"`
+}
+
+func (x *ImportDocumentsResponse) Reset() {
+ *x = ImportDocumentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ImportDocumentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ImportDocumentsResponse) ProtoMessage() {}
+
+func (x *ImportDocumentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ImportDocumentsResponse.ProtoReflect.Descriptor instead.
+func (*ImportDocumentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *ImportDocumentsResponse) GetWarnings() []*status.Status {
+ if x != nil {
+ return x.Warnings
+ }
+ return nil
+}
+
+// Request message for
+// [Documents.DeleteDocument][google.cloud.dialogflow.v2beta1.Documents.DeleteDocument].
+type DeleteDocumentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the document to delete.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteDocumentRequest) Reset() {
+ *x = DeleteDocumentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteDocumentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteDocumentRequest) ProtoMessage() {}
+
+func (x *DeleteDocumentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteDocumentRequest.ProtoReflect.Descriptor instead.
+func (*DeleteDocumentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *DeleteDocumentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for
+// [Documents.UpdateDocument][google.cloud.dialogflow.v2beta1.Documents.UpdateDocument].
+type UpdateDocumentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The document to update.
+ Document *Document `protobuf:"bytes,1,opt,name=document,proto3" json:"document,omitempty"`
+ // Optional. Not specified means `update all`.
+ // Currently, only `display_name` can be updated, an InvalidArgument will be
+ // returned for attempting to update other fields.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateDocumentRequest) Reset() {
+ *x = UpdateDocumentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateDocumentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateDocumentRequest) ProtoMessage() {}
+
+func (x *UpdateDocumentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateDocumentRequest.ProtoReflect.Descriptor instead.
+func (*UpdateDocumentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *UpdateDocumentRequest) GetDocument() *Document {
+ if x != nil {
+ return x.Document
+ }
+ return nil
+}
+
+func (x *UpdateDocumentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// Metadata related to the Export Data Operations (e.g. ExportDocument).
+type ExportOperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Cloud Storage file path of the exported data.
+ ExportedGcsDestination *GcsDestination `protobuf:"bytes,1,opt,name=exported_gcs_destination,json=exportedGcsDestination,proto3" json:"exported_gcs_destination,omitempty"`
+}
+
+func (x *ExportOperationMetadata) Reset() {
+ *x = ExportOperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ExportOperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ExportOperationMetadata) ProtoMessage() {}
+
+func (x *ExportOperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ExportOperationMetadata.ProtoReflect.Descriptor instead.
+func (*ExportOperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *ExportOperationMetadata) GetExportedGcsDestination() *GcsDestination {
+ if x != nil {
+ return x.ExportedGcsDestination
+ }
+ return nil
+}
+
+// Metadata in google::longrunning::Operation for Knowledge operations.
+type KnowledgeOperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Output only. The current state of this operation.
+ State KnowledgeOperationMetadata_State `protobuf:"varint,1,opt,name=state,proto3,enum=google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata_State" json:"state,omitempty"`
+ // The name of the knowledge base interacted with during the operation.
+ KnowledgeBase string `protobuf:"bytes,3,opt,name=knowledge_base,json=knowledgeBase,proto3" json:"knowledge_base,omitempty"`
+ // Additional metadata for the Knowledge operation.
+ //
+ // Types that are assignable to OperationMetadata:
+ //
+ // *KnowledgeOperationMetadata_ExportOperationMetadata
+ OperationMetadata isKnowledgeOperationMetadata_OperationMetadata `protobuf_oneof:"operation_metadata"`
+}
+
+func (x *KnowledgeOperationMetadata) Reset() {
+ *x = KnowledgeOperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KnowledgeOperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KnowledgeOperationMetadata) ProtoMessage() {}
+
+func (x *KnowledgeOperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KnowledgeOperationMetadata.ProtoReflect.Descriptor instead.
+func (*KnowledgeOperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *KnowledgeOperationMetadata) GetState() KnowledgeOperationMetadata_State {
+ if x != nil {
+ return x.State
+ }
+ return KnowledgeOperationMetadata_STATE_UNSPECIFIED
+}
+
+func (x *KnowledgeOperationMetadata) GetKnowledgeBase() string {
+ if x != nil {
+ return x.KnowledgeBase
+ }
+ return ""
+}
+
+func (m *KnowledgeOperationMetadata) GetOperationMetadata() isKnowledgeOperationMetadata_OperationMetadata {
+ if m != nil {
+ return m.OperationMetadata
+ }
+ return nil
+}
+
+func (x *KnowledgeOperationMetadata) GetExportOperationMetadata() *ExportOperationMetadata {
+ if x, ok := x.GetOperationMetadata().(*KnowledgeOperationMetadata_ExportOperationMetadata); ok {
+ return x.ExportOperationMetadata
+ }
+ return nil
+}
+
+type isKnowledgeOperationMetadata_OperationMetadata interface {
+ isKnowledgeOperationMetadata_OperationMetadata()
+}
+
+type KnowledgeOperationMetadata_ExportOperationMetadata struct {
+ // Metadata for the Export Data Operation such as the destination of export.
+ ExportOperationMetadata *ExportOperationMetadata `protobuf:"bytes,4,opt,name=export_operation_metadata,json=exportOperationMetadata,proto3,oneof"`
+}
+
+func (*KnowledgeOperationMetadata_ExportOperationMetadata) isKnowledgeOperationMetadata_OperationMetadata() {
+}
+
+// Request message for
+// [Documents.ReloadDocument][google.cloud.dialogflow.v2beta1.Documents.ReloadDocument].
+type ReloadDocumentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the document to reload.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The source for document reloading.
+ // Optional. If provided, the service will load the contents from the source
+ // and update document in the knowledge base.
+ //
+ // Types that are assignable to Source:
+ //
+ // *ReloadDocumentRequest_GcsSource
+ Source isReloadDocumentRequest_Source `protobuf_oneof:"source"`
+ // Whether to import custom metadata from Google Cloud Storage.
+ // Only valid when the document source is Google Cloud Storage URI.
+ ImportGcsCustomMetadata bool `protobuf:"varint,4,opt,name=import_gcs_custom_metadata,json=importGcsCustomMetadata,proto3" json:"import_gcs_custom_metadata,omitempty"`
+}
+
+func (x *ReloadDocumentRequest) Reset() {
+ *x = ReloadDocumentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ReloadDocumentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ReloadDocumentRequest) ProtoMessage() {}
+
+func (x *ReloadDocumentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ReloadDocumentRequest.ProtoReflect.Descriptor instead.
+func (*ReloadDocumentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *ReloadDocumentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (m *ReloadDocumentRequest) GetSource() isReloadDocumentRequest_Source {
+ if m != nil {
+ return m.Source
+ }
+ return nil
+}
+
+func (x *ReloadDocumentRequest) GetGcsSource() *GcsSource {
+ if x, ok := x.GetSource().(*ReloadDocumentRequest_GcsSource); ok {
+ return x.GcsSource
+ }
+ return nil
+}
+
+func (x *ReloadDocumentRequest) GetImportGcsCustomMetadata() bool {
+ if x != nil {
+ return x.ImportGcsCustomMetadata
+ }
+ return false
+}
+
+type isReloadDocumentRequest_Source interface {
+ isReloadDocumentRequest_Source()
+}
+
+type ReloadDocumentRequest_GcsSource struct {
+ // The path for a Cloud Storage source file for reloading document content.
+ // If not provided, the Document's existing source will be reloaded.
+ GcsSource *GcsSource `protobuf:"bytes,3,opt,name=gcs_source,json=gcsSource,proto3,oneof"`
+}
+
+func (*ReloadDocumentRequest_GcsSource) isReloadDocumentRequest_Source() {}
+
+// The status of a reload attempt.
+type Document_ReloadStatus struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The time of a reload attempt.
+ // This reload may have been triggered automatically or manually and may
+ // not have succeeded.
+ Time *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=time,proto3" json:"time,omitempty"`
+ // Output only. The status of a reload attempt or the initial load.
+ Status *status.Status `protobuf:"bytes,2,opt,name=status,proto3" json:"status,omitempty"`
+}
+
+func (x *Document_ReloadStatus) Reset() {
+ *x = Document_ReloadStatus{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Document_ReloadStatus) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Document_ReloadStatus) ProtoMessage() {}
+
+func (x *Document_ReloadStatus) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Document_ReloadStatus.ProtoReflect.Descriptor instead.
+func (*Document_ReloadStatus) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *Document_ReloadStatus) GetTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.Time
+ }
+ return nil
+}
+
+func (x *Document_ReloadStatus) GetStatus() *status.Status {
+ if x != nil {
+ return x.Status
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_document_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_document_proto_rawDesc = []byte{
+ 0x0a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65,
+ 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76,
+ 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x67, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e,
+ 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d,
+ 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x22, 0x85, 0x0a, 0x0a, 0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
+ 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x20,
+ 0x0a, 0x09, 0x6d, 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65,
+ 0x12, 0x65, 0x0a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x54, 0x79,
+ 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x21, 0x0a, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0a,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x69, 0x12, 0x1e, 0x0a, 0x07, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x42, 0x02, 0x18, 0x01, 0x48,
+ 0x00, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x21, 0x0a, 0x0b, 0x72, 0x61,
+ 0x77, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x00, 0x52, 0x0a, 0x72, 0x61, 0x77, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x31, 0x0a,
+ 0x12, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x72, 0x65, 0x6c,
+ 0x6f, 0x61, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x10,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x41, 0x75, 0x74, 0x6f, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64,
+ 0x12, 0x6d, 0x0a, 0x14, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x72, 0x65, 0x6c, 0x6f, 0x61,
+ 0x64, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64,
+ 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x12, 0x6c, 0x61, 0x74,
+ 0x65, 0x73, 0x74, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12,
+ 0x58, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x07, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x4a, 0x0a, 0x05, 0x73, 0x74, 0x61,
+ 0x74, 0x65, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05,
+ 0x73, 0x74, 0x61, 0x74, 0x65, 0x1a, 0x6a, 0x0a, 0x0c, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x53,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x2e, 0x0a, 0x04, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52,
+ 0x04, 0x74, 0x69, 0x6d, 0x65, 0x12, 0x2a, 0x0a, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72,
+ 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74, 0x75,
+ 0x73, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74,
+ 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x96,
+ 0x01, 0x0a, 0x0d, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65,
+ 0x12, 0x1e, 0x0a, 0x1a, 0x4b, 0x4e, 0x4f, 0x57, 0x4c, 0x45, 0x44, 0x47, 0x45, 0x5f, 0x54, 0x59,
+ 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00,
+ 0x12, 0x07, 0x0a, 0x03, 0x46, 0x41, 0x51, 0x10, 0x01, 0x12, 0x11, 0x0a, 0x0d, 0x45, 0x58, 0x54,
+ 0x52, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x5f, 0x51, 0x41, 0x10, 0x02, 0x12, 0x16, 0x0a, 0x12,
+ 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x53, 0x55, 0x47, 0x47, 0x45, 0x53, 0x54, 0x49,
+ 0x4f, 0x4e, 0x10, 0x03, 0x12, 0x1c, 0x0a, 0x18, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x46, 0x41,
+ 0x43, 0x49, 0x4e, 0x47, 0x5f, 0x53, 0x4d, 0x41, 0x52, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x59,
+ 0x10, 0x04, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x4d, 0x41, 0x52, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c,
+ 0x59, 0x10, 0x04, 0x1a, 0x02, 0x10, 0x01, 0x22, 0x63, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65,
+ 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
+ 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x43, 0x52, 0x45, 0x41, 0x54,
+ 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x41, 0x43, 0x54, 0x49, 0x56, 0x45, 0x10,
+ 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x55, 0x50, 0x44, 0x41, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x12,
+ 0x0d, 0x0a, 0x09, 0x52, 0x45, 0x4c, 0x4f, 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x04, 0x12, 0x0c,
+ 0x0a, 0x08, 0x44, 0x45, 0x4c, 0x45, 0x54, 0x49, 0x4e, 0x47, 0x10, 0x05, 0x3a, 0xcf, 0x01, 0xea,
+ 0x41, 0xcb, 0x01, 0x0a, 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x7d,
+ 0x12, 0x5c, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x42, 0x08,
+ 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x22, 0x54, 0x0a, 0x12, 0x47, 0x65, 0x74, 0x44,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xae,
+ 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x12,
+ 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70,
+ 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08,
+ 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65,
+ 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61,
+ 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65,
+ 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x22,
+ 0x88, 0x01, 0x0a, 0x15, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x47, 0x0a, 0x09, 0x64, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x09, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f,
+ 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78,
+ 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0xe4, 0x01, 0x0a, 0x15, 0x43,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x12, 0x22, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x4a, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67,
+ 0x63, 0x73, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74,
+ 0x47, 0x63, 0x73, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x22, 0xdc, 0x02, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x42, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x24, 0x12, 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x12, 0x4c, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x73, 0x48, 0x00, 0x52, 0x09, 0x67, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x69,
+ 0x0a, 0x11, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x6d, 0x70, 0x6c,
+ 0x61, 0x74, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f,
+ 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61,
+ 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x10, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6d, 0x70,
+ 0x6f, 0x72, 0x74, 0x5f, 0x67, 0x63, 0x73, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69,
+ 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x47, 0x63, 0x73, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x22, 0xc1, 0x02, 0x0a, 0x16, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x6d,
+ 0x69, 0x6d, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x02, 0x52, 0x08, 0x6d, 0x69, 0x6d, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x65, 0x0a,
+ 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73,
+ 0x18, 0x02, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x54,
+ 0x79, 0x70, 0x65, 0x73, 0x12, 0x61, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x6d, 0x70, 0x6c, 0x61, 0x74, 0x65, 0x2e,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x3a, 0x02, 0x38, 0x01, 0x22, 0x49, 0x0a, 0x17, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x6f,
+ 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x2e, 0x0a, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x08, 0x77, 0x61, 0x72, 0x6e, 0x69, 0x6e, 0x67, 0x73, 0x22,
+ 0x57, 0x0a, 0x15, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xa5, 0x01, 0x0a, 0x15, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x4a, 0x0a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x40,
+ 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42,
+ 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b,
+ 0x22, 0x84, 0x01, 0x0a, 0x17, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x69, 0x0a, 0x18,
+ 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x5f, 0x67, 0x63, 0x73, 0x5f, 0x64, 0x65, 0x73,
+ 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x16, 0x65, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x65, 0x64, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73, 0x74,
+ 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xf3, 0x02, 0x0a, 0x1a, 0x4b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x5c, 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73,
+ 0x74, 0x61, 0x74, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x76, 0x0a, 0x19, 0x65,
+ 0x78, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x45, 0x78, 0x70, 0x6f, 0x72, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x48, 0x00, 0x52, 0x17, 0x65, 0x78, 0x70, 0x6f,
+ 0x72, 0x74, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x22, 0x42, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x15, 0x0a, 0x11,
+ 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x45, 0x4e, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01,
+ 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x12, 0x08, 0x0a,
+ 0x04, 0x44, 0x4f, 0x4e, 0x45, 0x10, 0x03, 0x42, 0x14, 0x0a, 0x12, 0x6f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x22, 0xeb, 0x01,
+ 0x0a, 0x15, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3e, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2a, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4b, 0x0a, 0x0a, 0x67, 0x63, 0x73, 0x5f, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x63,
+ 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x48, 0x00, 0x52, 0x09, 0x67, 0x63, 0x73, 0x53, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x12, 0x3b, 0x0a, 0x1a, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x5f, 0x67,
+ 0x63, 0x73, 0x5f, 0x63, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x5f, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x17, 0x69, 0x6d, 0x70, 0x6f, 0x72, 0x74,
+ 0x47, 0x63, 0x73, 0x43, 0x75, 0x73, 0x74, 0x6f, 0x6d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x32, 0xa5, 0x15, 0x0a, 0x09,
+ 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0xd2, 0x02, 0x0a, 0x0d, 0x4c, 0x69,
+ 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x35, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd1, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xc1, 0x01, 0x12, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x45, 0x12,
+ 0x43, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xbf,
+ 0x02, 0x0a, 0x0b, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x33,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x47, 0x65, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xcf,
+ 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xc1, 0x01, 0x12, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73,
+ 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x5a, 0x45, 0x12, 0x43, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3f, 0x12, 0x3d, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0x8b, 0x03, 0x0a, 0x0e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
+ 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x02, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xdf, 0x01, 0x22, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x08, 0x64,
+ 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5a, 0x4f, 0x22, 0x43, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x08,
+ 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5a, 0x49, 0x22, 0x3d, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0xda, 0x41, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x64, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0xca, 0x41, 0x26, 0x0a, 0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x12, 0x1a, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x4f, 0x70, 0x65,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0xbf,
+ 0x02, 0x0a, 0x0f, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
+ 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xd3, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x94, 0x01, 0x22, 0x3e, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x69, 0x6d,
+ 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x4f, 0x22, 0x4a, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x69,
+ 0x6d, 0x70, 0x6f, 0x72, 0x74, 0x3a, 0x01, 0x2a, 0xca, 0x41, 0x35, 0x0a, 0x17, 0x49, 0x6d, 0x70,
+ 0x6f, 0x72, 0x74, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1a, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x4f,
+ 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x12, 0xef, 0x02, 0x0a, 0x0e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x44, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
+ 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x85, 0x02, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xc1, 0x01, 0x2a, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x45, 0x2a,
+ 0x43, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3f, 0x2a, 0x3d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xca, 0x41, 0x33, 0x0a,
+ 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x1a, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x12, 0xb6, 0x03, 0x0a, 0x0e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x44, 0x6f,
+ 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69,
+ 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xcc, 0x02, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0xfa, 0x01, 0x32, 0x40, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x5a, 0x58, 0x32, 0x4c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61,
+ 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x5a, 0x52, 0x32, 0x46,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0xda, 0x41, 0x14, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0xda, 0x41, 0x08, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0xca, 0x41, 0x26, 0x0a, 0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12,
+ 0x1a, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x8b, 0x03, 0x0a, 0x0e,
+ 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x36,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x52, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xdf, 0x01, 0x22,
+ 0x3e, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x3a,
+ 0x01, 0x2a, 0x5a, 0x4f, 0x22, 0x4a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64,
+ 0x3a, 0x01, 0x2a, 0x5a, 0x49, 0x22, 0x44, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x72, 0x65, 0x6c, 0x6f, 0x61, 0x64, 0x3a, 0x01, 0x2a, 0xda, 0x41,
+ 0x0f, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x67, 0x63, 0x73, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0xca, 0x41, 0x26, 0x0a, 0x08, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x1a, 0x4b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
+ 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
+ 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x42, 0xa5, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0d, 0x44, 0x6f, 0x63,
+ 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
+ 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70,
+ 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_document_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_document_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_document_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_document_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_document_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_document_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_document_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_document_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
+var file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
+var file_google_cloud_dialogflow_v2beta1_document_proto_goTypes = []interface{}{
+ (Document_KnowledgeType)(0), // 0: google.cloud.dialogflow.v2beta1.Document.KnowledgeType
+ (Document_State)(0), // 1: google.cloud.dialogflow.v2beta1.Document.State
+ (KnowledgeOperationMetadata_State)(0), // 2: google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata.State
+ (*Document)(nil), // 3: google.cloud.dialogflow.v2beta1.Document
+ (*GetDocumentRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.GetDocumentRequest
+ (*ListDocumentsRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.ListDocumentsRequest
+ (*ListDocumentsResponse)(nil), // 6: google.cloud.dialogflow.v2beta1.ListDocumentsResponse
+ (*CreateDocumentRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.CreateDocumentRequest
+ (*ImportDocumentsRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.ImportDocumentsRequest
+ (*ImportDocumentTemplate)(nil), // 9: google.cloud.dialogflow.v2beta1.ImportDocumentTemplate
+ (*ImportDocumentsResponse)(nil), // 10: google.cloud.dialogflow.v2beta1.ImportDocumentsResponse
+ (*DeleteDocumentRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.DeleteDocumentRequest
+ (*UpdateDocumentRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.UpdateDocumentRequest
+ (*ExportOperationMetadata)(nil), // 13: google.cloud.dialogflow.v2beta1.ExportOperationMetadata
+ (*KnowledgeOperationMetadata)(nil), // 14: google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata
+ (*ReloadDocumentRequest)(nil), // 15: google.cloud.dialogflow.v2beta1.ReloadDocumentRequest
+ (*Document_ReloadStatus)(nil), // 16: google.cloud.dialogflow.v2beta1.Document.ReloadStatus
+ nil, // 17: google.cloud.dialogflow.v2beta1.Document.MetadataEntry
+ nil, // 18: google.cloud.dialogflow.v2beta1.ImportDocumentTemplate.MetadataEntry
+ (*GcsSources)(nil), // 19: google.cloud.dialogflow.v2beta1.GcsSources
+ (*status.Status)(nil), // 20: google.rpc.Status
+ (*fieldmaskpb.FieldMask)(nil), // 21: google.protobuf.FieldMask
+ (*GcsDestination)(nil), // 22: google.cloud.dialogflow.v2beta1.GcsDestination
+ (*GcsSource)(nil), // 23: google.cloud.dialogflow.v2beta1.GcsSource
+ (*timestamppb.Timestamp)(nil), // 24: google.protobuf.Timestamp
+ (*longrunning.Operation)(nil), // 25: google.longrunning.Operation
+}
+var file_google_cloud_dialogflow_v2beta1_document_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.Document.knowledge_types:type_name -> google.cloud.dialogflow.v2beta1.Document.KnowledgeType
+ 16, // 1: google.cloud.dialogflow.v2beta1.Document.latest_reload_status:type_name -> google.cloud.dialogflow.v2beta1.Document.ReloadStatus
+ 17, // 2: google.cloud.dialogflow.v2beta1.Document.metadata:type_name -> google.cloud.dialogflow.v2beta1.Document.MetadataEntry
+ 1, // 3: google.cloud.dialogflow.v2beta1.Document.state:type_name -> google.cloud.dialogflow.v2beta1.Document.State
+ 3, // 4: google.cloud.dialogflow.v2beta1.ListDocumentsResponse.documents:type_name -> google.cloud.dialogflow.v2beta1.Document
+ 3, // 5: google.cloud.dialogflow.v2beta1.CreateDocumentRequest.document:type_name -> google.cloud.dialogflow.v2beta1.Document
+ 19, // 6: google.cloud.dialogflow.v2beta1.ImportDocumentsRequest.gcs_source:type_name -> google.cloud.dialogflow.v2beta1.GcsSources
+ 9, // 7: google.cloud.dialogflow.v2beta1.ImportDocumentsRequest.document_template:type_name -> google.cloud.dialogflow.v2beta1.ImportDocumentTemplate
+ 0, // 8: google.cloud.dialogflow.v2beta1.ImportDocumentTemplate.knowledge_types:type_name -> google.cloud.dialogflow.v2beta1.Document.KnowledgeType
+ 18, // 9: google.cloud.dialogflow.v2beta1.ImportDocumentTemplate.metadata:type_name -> google.cloud.dialogflow.v2beta1.ImportDocumentTemplate.MetadataEntry
+ 20, // 10: google.cloud.dialogflow.v2beta1.ImportDocumentsResponse.warnings:type_name -> google.rpc.Status
+ 3, // 11: google.cloud.dialogflow.v2beta1.UpdateDocumentRequest.document:type_name -> google.cloud.dialogflow.v2beta1.Document
+ 21, // 12: google.cloud.dialogflow.v2beta1.UpdateDocumentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 22, // 13: google.cloud.dialogflow.v2beta1.ExportOperationMetadata.exported_gcs_destination:type_name -> google.cloud.dialogflow.v2beta1.GcsDestination
+ 2, // 14: google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata.state:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata.State
+ 13, // 15: google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata.export_operation_metadata:type_name -> google.cloud.dialogflow.v2beta1.ExportOperationMetadata
+ 23, // 16: google.cloud.dialogflow.v2beta1.ReloadDocumentRequest.gcs_source:type_name -> google.cloud.dialogflow.v2beta1.GcsSource
+ 24, // 17: google.cloud.dialogflow.v2beta1.Document.ReloadStatus.time:type_name -> google.protobuf.Timestamp
+ 20, // 18: google.cloud.dialogflow.v2beta1.Document.ReloadStatus.status:type_name -> google.rpc.Status
+ 5, // 19: google.cloud.dialogflow.v2beta1.Documents.ListDocuments:input_type -> google.cloud.dialogflow.v2beta1.ListDocumentsRequest
+ 4, // 20: google.cloud.dialogflow.v2beta1.Documents.GetDocument:input_type -> google.cloud.dialogflow.v2beta1.GetDocumentRequest
+ 7, // 21: google.cloud.dialogflow.v2beta1.Documents.CreateDocument:input_type -> google.cloud.dialogflow.v2beta1.CreateDocumentRequest
+ 8, // 22: google.cloud.dialogflow.v2beta1.Documents.ImportDocuments:input_type -> google.cloud.dialogflow.v2beta1.ImportDocumentsRequest
+ 11, // 23: google.cloud.dialogflow.v2beta1.Documents.DeleteDocument:input_type -> google.cloud.dialogflow.v2beta1.DeleteDocumentRequest
+ 12, // 24: google.cloud.dialogflow.v2beta1.Documents.UpdateDocument:input_type -> google.cloud.dialogflow.v2beta1.UpdateDocumentRequest
+ 15, // 25: google.cloud.dialogflow.v2beta1.Documents.ReloadDocument:input_type -> google.cloud.dialogflow.v2beta1.ReloadDocumentRequest
+ 6, // 26: google.cloud.dialogflow.v2beta1.Documents.ListDocuments:output_type -> google.cloud.dialogflow.v2beta1.ListDocumentsResponse
+ 3, // 27: google.cloud.dialogflow.v2beta1.Documents.GetDocument:output_type -> google.cloud.dialogflow.v2beta1.Document
+ 25, // 28: google.cloud.dialogflow.v2beta1.Documents.CreateDocument:output_type -> google.longrunning.Operation
+ 25, // 29: google.cloud.dialogflow.v2beta1.Documents.ImportDocuments:output_type -> google.longrunning.Operation
+ 25, // 30: google.cloud.dialogflow.v2beta1.Documents.DeleteDocument:output_type -> google.longrunning.Operation
+ 25, // 31: google.cloud.dialogflow.v2beta1.Documents.UpdateDocument:output_type -> google.longrunning.Operation
+ 25, // 32: google.cloud.dialogflow.v2beta1.Documents.ReloadDocument:output_type -> google.longrunning.Operation
+ 26, // [26:33] is the sub-list for method output_type
+ 19, // [19:26] is the sub-list for method input_type
+ 19, // [19:19] is the sub-list for extension type_name
+ 19, // [19:19] is the sub-list for extension extendee
+ 0, // [0:19] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_document_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_document_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_document_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Document); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetDocumentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListDocumentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListDocumentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateDocumentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ImportDocumentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ImportDocumentTemplate); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ImportDocumentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteDocumentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateDocumentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ExportOperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KnowledgeOperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ReloadDocumentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Document_ReloadStatus); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*Document_ContentUri)(nil),
+ (*Document_Content)(nil),
+ (*Document_RawContent)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[5].OneofWrappers = []interface{}{
+ (*ImportDocumentsRequest_GcsSource)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[11].OneofWrappers = []interface{}{
+ (*KnowledgeOperationMetadata_ExportOperationMetadata)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes[12].OneofWrappers = []interface{}{
+ (*ReloadDocumentRequest_GcsSource)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_document_proto_rawDesc,
+ NumEnums: 3,
+ NumMessages: 16,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_document_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_document_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_document_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_document_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_document_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_document_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_document_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_document_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// DocumentsClient is the client API for Documents service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type DocumentsClient interface {
+ // Returns the list of all documents of the knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ ListDocuments(ctx context.Context, in *ListDocumentsRequest, opts ...grpc.CallOption) (*ListDocumentsResponse, error)
+ // Retrieves the specified document.
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ GetDocument(ctx context.Context, in *GetDocumentRequest, opts ...grpc.CallOption) (*Document, error)
+ // Creates a new document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ CreateDocument(ctx context.Context, in *CreateDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Create documents by importing data from external sources.
+ // Dialogflow supports up to 350 documents in each request. If you try to
+ // import more, Dialogflow will return an error.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`:
+ // [ImportDocumentsResponse][google.cloud.dialogflow.v2beta1.ImportDocumentsResponse]
+ ImportDocuments(ctx context.Context, in *ImportDocumentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes the specified document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ DeleteDocument(ctx context.Context, in *DeleteDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Updates the specified document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ UpdateDocument(ctx context.Context, in *UpdateDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Reloads the specified document from its specified source, content_uri or
+ // content. The previously loaded content of the document will be deleted.
+ // Note: Even when the content of the document has not changed, there still
+ // may be side effects because of internal implementation changes.
+ // Note: If the document source is Google Cloud Storage URI, its metadata will
+ // be replaced with the custom metadata from Google Cloud Storage if the
+ // `import_gcs_custom_metadata` field is set to true in the request.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ ReloadDocument(ctx context.Context, in *ReloadDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+}
+
+type documentsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewDocumentsClient(cc grpc.ClientConnInterface) DocumentsClient {
+ return &documentsClient{cc}
+}
+
+func (c *documentsClient) ListDocuments(ctx context.Context, in *ListDocumentsRequest, opts ...grpc.CallOption) (*ListDocumentsResponse, error) {
+ out := new(ListDocumentsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/ListDocuments", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) GetDocument(ctx context.Context, in *GetDocumentRequest, opts ...grpc.CallOption) (*Document, error) {
+ out := new(Document)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/GetDocument", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) CreateDocument(ctx context.Context, in *CreateDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/CreateDocument", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) ImportDocuments(ctx context.Context, in *ImportDocumentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/ImportDocuments", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) DeleteDocument(ctx context.Context, in *DeleteDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/DeleteDocument", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) UpdateDocument(ctx context.Context, in *UpdateDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/UpdateDocument", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *documentsClient) ReloadDocument(ctx context.Context, in *ReloadDocumentRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Documents/ReloadDocument", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// DocumentsServer is the server API for Documents service.
+type DocumentsServer interface {
+ // Returns the list of all documents of the knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ ListDocuments(context.Context, *ListDocumentsRequest) (*ListDocumentsResponse, error)
+ // Retrieves the specified document.
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ GetDocument(context.Context, *GetDocumentRequest) (*Document, error)
+ // Creates a new document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ CreateDocument(context.Context, *CreateDocumentRequest) (*longrunning.Operation, error)
+ // Create documents by importing data from external sources.
+ // Dialogflow supports up to 350 documents in each request. If you try to
+ // import more, Dialogflow will return an error.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`:
+ // [ImportDocumentsResponse][google.cloud.dialogflow.v2beta1.ImportDocumentsResponse]
+ ImportDocuments(context.Context, *ImportDocumentsRequest) (*longrunning.Operation, error)
+ // Deletes the specified document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ DeleteDocument(context.Context, *DeleteDocumentRequest) (*longrunning.Operation, error)
+ // Updates the specified document.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ UpdateDocument(context.Context, *UpdateDocumentRequest) (*longrunning.Operation, error)
+ // Reloads the specified document from its specified source, content_uri or
+ // content. The previously loaded content of the document will be deleted.
+ // Note: Even when the content of the document has not changed, there still
+ // may be side effects because of internal implementation changes.
+ // Note: If the document source is Google Cloud Storage URI, its metadata will
+ // be replaced with the custom metadata from Google Cloud Storage if the
+ // `import_gcs_custom_metadata` field is set to true in the request.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/cx/docs/how/long-running-operation).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`:
+ // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]
+ // - `response`: [Document][google.cloud.dialogflow.v2beta1.Document]
+ //
+ // Note: The `projects.agent.knowledgeBases.documents` resource is deprecated;
+ // only use `projects.knowledgeBases.documents`.
+ ReloadDocument(context.Context, *ReloadDocumentRequest) (*longrunning.Operation, error)
+}
+
+// UnimplementedDocumentsServer can be embedded to have forward compatible implementations.
+type UnimplementedDocumentsServer struct {
+}
+
+func (*UnimplementedDocumentsServer) ListDocuments(context.Context, *ListDocumentsRequest) (*ListDocumentsResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method ListDocuments not implemented")
+}
+func (*UnimplementedDocumentsServer) GetDocument(context.Context, *GetDocumentRequest) (*Document, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method GetDocument not implemented")
+}
+func (*UnimplementedDocumentsServer) CreateDocument(context.Context, *CreateDocumentRequest) (*longrunning.Operation, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method CreateDocument not implemented")
+}
+func (*UnimplementedDocumentsServer) ImportDocuments(context.Context, *ImportDocumentsRequest) (*longrunning.Operation, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method ImportDocuments not implemented")
+}
+func (*UnimplementedDocumentsServer) DeleteDocument(context.Context, *DeleteDocumentRequest) (*longrunning.Operation, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method DeleteDocument not implemented")
+}
+func (*UnimplementedDocumentsServer) UpdateDocument(context.Context, *UpdateDocumentRequest) (*longrunning.Operation, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method UpdateDocument not implemented")
+}
+func (*UnimplementedDocumentsServer) ReloadDocument(context.Context, *ReloadDocumentRequest) (*longrunning.Operation, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method ReloadDocument not implemented")
+}
+
+func RegisterDocumentsServer(s *grpc.Server, srv DocumentsServer) {
+ s.RegisterService(&_Documents_serviceDesc, srv)
+}
+
+func _Documents_ListDocuments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListDocumentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).ListDocuments(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/ListDocuments",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).ListDocuments(ctx, req.(*ListDocumentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_GetDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetDocumentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).GetDocument(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/GetDocument",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).GetDocument(ctx, req.(*GetDocumentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_CreateDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateDocumentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).CreateDocument(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/CreateDocument",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).CreateDocument(ctx, req.(*CreateDocumentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_ImportDocuments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ImportDocumentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).ImportDocuments(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/ImportDocuments",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).ImportDocuments(ctx, req.(*ImportDocumentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_DeleteDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteDocumentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).DeleteDocument(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/DeleteDocument",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).DeleteDocument(ctx, req.(*DeleteDocumentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_UpdateDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateDocumentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).UpdateDocument(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/UpdateDocument",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).UpdateDocument(ctx, req.(*UpdateDocumentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Documents_ReloadDocument_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ReloadDocumentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(DocumentsServer).ReloadDocument(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Documents/ReloadDocument",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(DocumentsServer).ReloadDocument(ctx, req.(*ReloadDocumentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Documents_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Documents",
+ HandlerType: (*DocumentsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListDocuments",
+ Handler: _Documents_ListDocuments_Handler,
+ },
+ {
+ MethodName: "GetDocument",
+ Handler: _Documents_GetDocument_Handler,
+ },
+ {
+ MethodName: "CreateDocument",
+ Handler: _Documents_CreateDocument_Handler,
+ },
+ {
+ MethodName: "ImportDocuments",
+ Handler: _Documents_ImportDocuments_Handler,
+ },
+ {
+ MethodName: "DeleteDocument",
+ Handler: _Documents_DeleteDocument_Handler,
+ },
+ {
+ MethodName: "UpdateDocument",
+ Handler: _Documents_UpdateDocument_Handler,
+ },
+ {
+ MethodName: "ReloadDocument",
+ Handler: _Documents_ReloadDocument_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/document.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/entity_type.pb.go b/dialogflow/apiv2beta1/dialogflowpb/entity_type.pb.go
new file mode 100644
index 0000000..5cb3d2c
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/entity_type.pb.go
@@ -0,0 +1,2627 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/entity_type.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Represents kinds of entities.
+type EntityType_Kind int32
+
+const (
+ // Not specified. This value should be never used.
+ EntityType_KIND_UNSPECIFIED EntityType_Kind = 0
+ // Map entity types allow mapping of a group of synonyms to a reference
+ // value.
+ EntityType_KIND_MAP EntityType_Kind = 1
+ // List entity types contain a set of entries that do not map to reference
+ // values. However, list entity types can contain references to other entity
+ // types (with or without aliases).
+ EntityType_KIND_LIST EntityType_Kind = 2
+ // Regexp entity types allow to specify regular expressions in entries
+ // values.
+ EntityType_KIND_REGEXP EntityType_Kind = 3
+)
+
+// Enum value maps for EntityType_Kind.
+var (
+ EntityType_Kind_name = map[int32]string{
+ 0: "KIND_UNSPECIFIED",
+ 1: "KIND_MAP",
+ 2: "KIND_LIST",
+ 3: "KIND_REGEXP",
+ }
+ EntityType_Kind_value = map[string]int32{
+ "KIND_UNSPECIFIED": 0,
+ "KIND_MAP": 1,
+ "KIND_LIST": 2,
+ "KIND_REGEXP": 3,
+ }
+)
+
+func (x EntityType_Kind) Enum() *EntityType_Kind {
+ p := new(EntityType_Kind)
+ *p = x
+ return p
+}
+
+func (x EntityType_Kind) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (EntityType_Kind) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes[0].Descriptor()
+}
+
+func (EntityType_Kind) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes[0]
+}
+
+func (x EntityType_Kind) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use EntityType_Kind.Descriptor instead.
+func (EntityType_Kind) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Represents different entity type expansion modes. Automated expansion
+// allows an agent to recognize values that have not been explicitly listed in
+// the entity (for example, new kinds of shopping list items).
+type EntityType_AutoExpansionMode int32
+
+const (
+ // Auto expansion disabled for the entity.
+ EntityType_AUTO_EXPANSION_MODE_UNSPECIFIED EntityType_AutoExpansionMode = 0
+ // Allows an agent to recognize values that have not been explicitly
+ // listed in the entity.
+ EntityType_AUTO_EXPANSION_MODE_DEFAULT EntityType_AutoExpansionMode = 1
+)
+
+// Enum value maps for EntityType_AutoExpansionMode.
+var (
+ EntityType_AutoExpansionMode_name = map[int32]string{
+ 0: "AUTO_EXPANSION_MODE_UNSPECIFIED",
+ 1: "AUTO_EXPANSION_MODE_DEFAULT",
+ }
+ EntityType_AutoExpansionMode_value = map[string]int32{
+ "AUTO_EXPANSION_MODE_UNSPECIFIED": 0,
+ "AUTO_EXPANSION_MODE_DEFAULT": 1,
+ }
+)
+
+func (x EntityType_AutoExpansionMode) Enum() *EntityType_AutoExpansionMode {
+ p := new(EntityType_AutoExpansionMode)
+ *p = x
+ return p
+}
+
+func (x EntityType_AutoExpansionMode) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (EntityType_AutoExpansionMode) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes[1].Descriptor()
+}
+
+func (EntityType_AutoExpansionMode) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes[1]
+}
+
+func (x EntityType_AutoExpansionMode) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use EntityType_AutoExpansionMode.Descriptor instead.
+func (EntityType_AutoExpansionMode) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{0, 1}
+}
+
+// Each intent parameter has a type, called the entity type, which dictates
+// exactly how data from an end-user expression is extracted.
+//
+// Dialogflow provides predefined system entities that can match many common
+// types of data. For example, there are system entities for matching dates,
+// times, colors, email addresses, and so on. You can also create your own
+// custom entities for matching custom data. For example, you could define a
+// vegetable entity that can match the types of vegetables available for
+// purchase with a grocery store agent.
+//
+// For more information, see the
+// [Entity guide](https://cloud.google.com/dialogflow/docs/entities-overview).
+type EntityType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of the entity type.
+ // Required for
+ // [EntityTypes.UpdateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType]
+ // and
+ // [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes]
+ // methods. Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The name of the entity type.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. Indicates the kind of entity type.
+ Kind EntityType_Kind `protobuf:"varint,3,opt,name=kind,proto3,enum=google.cloud.dialogflow.v2beta1.EntityType_Kind" json:"kind,omitempty"`
+ // Optional. Indicates whether the entity type can be automatically
+ // expanded.
+ AutoExpansionMode EntityType_AutoExpansionMode `protobuf:"varint,4,opt,name=auto_expansion_mode,json=autoExpansionMode,proto3,enum=google.cloud.dialogflow.v2beta1.EntityType_AutoExpansionMode" json:"auto_expansion_mode,omitempty"`
+ // Optional. The collection of entity entries associated with the entity type.
+ Entities []*EntityType_Entity `protobuf:"bytes,6,rep,name=entities,proto3" json:"entities,omitempty"`
+ // Optional. Enables fuzzy entity extraction during classification.
+ EnableFuzzyExtraction bool `protobuf:"varint,7,opt,name=enable_fuzzy_extraction,json=enableFuzzyExtraction,proto3" json:"enable_fuzzy_extraction,omitempty"`
+}
+
+func (x *EntityType) Reset() {
+ *x = EntityType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EntityType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EntityType) ProtoMessage() {}
+
+func (x *EntityType) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EntityType.ProtoReflect.Descriptor instead.
+func (*EntityType) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *EntityType) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *EntityType) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *EntityType) GetKind() EntityType_Kind {
+ if x != nil {
+ return x.Kind
+ }
+ return EntityType_KIND_UNSPECIFIED
+}
+
+func (x *EntityType) GetAutoExpansionMode() EntityType_AutoExpansionMode {
+ if x != nil {
+ return x.AutoExpansionMode
+ }
+ return EntityType_AUTO_EXPANSION_MODE_UNSPECIFIED
+}
+
+func (x *EntityType) GetEntities() []*EntityType_Entity {
+ if x != nil {
+ return x.Entities
+ }
+ return nil
+}
+
+func (x *EntityType) GetEnableFuzzyExtraction() bool {
+ if x != nil {
+ return x.EnableFuzzyExtraction
+ }
+ return false
+}
+
+// The request message for
+// [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes].
+type ListEntityTypesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to list all entity types from.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,3,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,4,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListEntityTypesRequest) Reset() {
+ *x = ListEntityTypesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListEntityTypesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListEntityTypesRequest) ProtoMessage() {}
+
+func (x *ListEntityTypesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListEntityTypesRequest.ProtoReflect.Descriptor instead.
+func (*ListEntityTypesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListEntityTypesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListEntityTypesRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *ListEntityTypesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListEntityTypesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes].
+type ListEntityTypesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of agent entity types. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ EntityTypes []*EntityType `protobuf:"bytes,1,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListEntityTypesResponse) Reset() {
+ *x = ListEntityTypesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListEntityTypesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListEntityTypesResponse) ProtoMessage() {}
+
+func (x *ListEntityTypesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListEntityTypesResponse.ProtoReflect.Descriptor instead.
+func (*ListEntityTypesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListEntityTypesResponse) GetEntityTypes() []*EntityType {
+ if x != nil {
+ return x.EntityTypes
+ }
+ return nil
+}
+
+func (x *ListEntityTypesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [EntityTypes.GetEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType].
+type GetEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *GetEntityTypeRequest) Reset() {
+ *x = GetEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEntityTypeRequest) ProtoMessage() {}
+
+func (x *GetEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*GetEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetEntityTypeRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *GetEntityTypeRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// The request message for
+// [EntityTypes.CreateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType].
+type CreateEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to create a entity type for.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The entity type to create.
+ EntityType *EntityType `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *CreateEntityTypeRequest) Reset() {
+ *x = CreateEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateEntityTypeRequest) ProtoMessage() {}
+
+func (x *CreateEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*CreateEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateEntityTypeRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateEntityTypeRequest) GetEntityType() *EntityType {
+ if x != nil {
+ return x.EntityType
+ }
+ return nil
+}
+
+func (x *CreateEntityTypeRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// The request message for
+// [EntityTypes.UpdateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType].
+type UpdateEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The entity type to update.
+ EntityType *EntityType `protobuf:"bytes,1,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateEntityTypeRequest) Reset() {
+ *x = UpdateEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateEntityTypeRequest) ProtoMessage() {}
+
+func (x *UpdateEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*UpdateEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *UpdateEntityTypeRequest) GetEntityType() *EntityType {
+ if x != nil {
+ return x.EntityType
+ }
+ return nil
+}
+
+func (x *UpdateEntityTypeRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *UpdateEntityTypeRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [EntityTypes.DeleteEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType].
+type DeleteEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type to delete.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteEntityTypeRequest) Reset() {
+ *x = DeleteEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEntityTypeRequest) ProtoMessage() {}
+
+func (x *DeleteEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*DeleteEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *DeleteEntityTypeRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes].
+type BatchUpdateEntityTypesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the agent to update or create entity types in.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The source of the entity type batch.
+ //
+ // For each entity type in the batch:
+ //
+ // * If `name` is specified, we update an existing entity type.
+ // * If `name` is not specified, we create a new entity type.
+ //
+ // Types that are assignable to EntityTypeBatch:
+ //
+ // *BatchUpdateEntityTypesRequest_EntityTypeBatchUri
+ // *BatchUpdateEntityTypesRequest_EntityTypeBatchInline
+ EntityTypeBatch isBatchUpdateEntityTypesRequest_EntityTypeBatch `protobuf_oneof:"entity_type_batch"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,4,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *BatchUpdateEntityTypesRequest) Reset() {
+ *x = BatchUpdateEntityTypesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchUpdateEntityTypesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchUpdateEntityTypesRequest) ProtoMessage() {}
+
+func (x *BatchUpdateEntityTypesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchUpdateEntityTypesRequest.ProtoReflect.Descriptor instead.
+func (*BatchUpdateEntityTypesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *BatchUpdateEntityTypesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (m *BatchUpdateEntityTypesRequest) GetEntityTypeBatch() isBatchUpdateEntityTypesRequest_EntityTypeBatch {
+ if m != nil {
+ return m.EntityTypeBatch
+ }
+ return nil
+}
+
+func (x *BatchUpdateEntityTypesRequest) GetEntityTypeBatchUri() string {
+ if x, ok := x.GetEntityTypeBatch().(*BatchUpdateEntityTypesRequest_EntityTypeBatchUri); ok {
+ return x.EntityTypeBatchUri
+ }
+ return ""
+}
+
+func (x *BatchUpdateEntityTypesRequest) GetEntityTypeBatchInline() *EntityTypeBatch {
+ if x, ok := x.GetEntityTypeBatch().(*BatchUpdateEntityTypesRequest_EntityTypeBatchInline); ok {
+ return x.EntityTypeBatchInline
+ }
+ return nil
+}
+
+func (x *BatchUpdateEntityTypesRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *BatchUpdateEntityTypesRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+type isBatchUpdateEntityTypesRequest_EntityTypeBatch interface {
+ isBatchUpdateEntityTypesRequest_EntityTypeBatch()
+}
+
+type BatchUpdateEntityTypesRequest_EntityTypeBatchUri struct {
+ // The URI to a Google Cloud Storage file containing entity types to update
+ // or create. The file format can either be a serialized proto (of
+ // EntityBatch type) or a JSON object. Note: The URI must start with
+ // "gs://".
+ EntityTypeBatchUri string `protobuf:"bytes,2,opt,name=entity_type_batch_uri,json=entityTypeBatchUri,proto3,oneof"`
+}
+
+type BatchUpdateEntityTypesRequest_EntityTypeBatchInline struct {
+ // The collection of entity types to update or create.
+ EntityTypeBatchInline *EntityTypeBatch `protobuf:"bytes,3,opt,name=entity_type_batch_inline,json=entityTypeBatchInline,proto3,oneof"`
+}
+
+func (*BatchUpdateEntityTypesRequest_EntityTypeBatchUri) isBatchUpdateEntityTypesRequest_EntityTypeBatch() {
+}
+
+func (*BatchUpdateEntityTypesRequest_EntityTypeBatchInline) isBatchUpdateEntityTypesRequest_EntityTypeBatch() {
+}
+
+// The response message for
+// [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes].
+type BatchUpdateEntityTypesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The collection of updated or created entity types.
+ EntityTypes []*EntityType `protobuf:"bytes,1,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`
+}
+
+func (x *BatchUpdateEntityTypesResponse) Reset() {
+ *x = BatchUpdateEntityTypesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchUpdateEntityTypesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchUpdateEntityTypesResponse) ProtoMessage() {}
+
+func (x *BatchUpdateEntityTypesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchUpdateEntityTypesResponse.ProtoReflect.Descriptor instead.
+func (*BatchUpdateEntityTypesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *BatchUpdateEntityTypesResponse) GetEntityTypes() []*EntityType {
+ if x != nil {
+ return x.EntityTypes
+ }
+ return nil
+}
+
+// The request message for
+// [EntityTypes.BatchDeleteEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes].
+type BatchDeleteEntityTypesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the agent to delete all entities types for.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`,
+ // - `projects/<Project ID>/locations/<Location ID>/agent`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The names entity types to delete. All names must point to the
+ // same agent as `parent`.
+ EntityTypeNames []string `protobuf:"bytes,2,rep,name=entity_type_names,json=entityTypeNames,proto3" json:"entity_type_names,omitempty"`
+}
+
+func (x *BatchDeleteEntityTypesRequest) Reset() {
+ *x = BatchDeleteEntityTypesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchDeleteEntityTypesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchDeleteEntityTypesRequest) ProtoMessage() {}
+
+func (x *BatchDeleteEntityTypesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchDeleteEntityTypesRequest.ProtoReflect.Descriptor instead.
+func (*BatchDeleteEntityTypesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *BatchDeleteEntityTypesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchDeleteEntityTypesRequest) GetEntityTypeNames() []string {
+ if x != nil {
+ return x.EntityTypeNames
+ }
+ return nil
+}
+
+// The request message for
+// [EntityTypes.BatchCreateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities].
+type BatchCreateEntitiesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type to create entities in.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The entities to create.
+ Entities []*EntityType_Entity `protobuf:"bytes,2,rep,name=entities,proto3" json:"entities,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *BatchCreateEntitiesRequest) Reset() {
+ *x = BatchCreateEntitiesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchCreateEntitiesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchCreateEntitiesRequest) ProtoMessage() {}
+
+func (x *BatchCreateEntitiesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchCreateEntitiesRequest.ProtoReflect.Descriptor instead.
+func (*BatchCreateEntitiesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *BatchCreateEntitiesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchCreateEntitiesRequest) GetEntities() []*EntityType_Entity {
+ if x != nil {
+ return x.Entities
+ }
+ return nil
+}
+
+func (x *BatchCreateEntitiesRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// The request message for
+// [EntityTypes.BatchUpdateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities].
+type BatchUpdateEntitiesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type to update or create entities in.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The entities to update or create.
+ Entities []*EntityType_Entity `protobuf:"bytes,2,rep,name=entities,proto3" json:"entities,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,4,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *BatchUpdateEntitiesRequest) Reset() {
+ *x = BatchUpdateEntitiesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchUpdateEntitiesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchUpdateEntitiesRequest) ProtoMessage() {}
+
+func (x *BatchUpdateEntitiesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchUpdateEntitiesRequest.ProtoReflect.Descriptor instead.
+func (*BatchUpdateEntitiesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *BatchUpdateEntitiesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchUpdateEntitiesRequest) GetEntities() []*EntityType_Entity {
+ if x != nil {
+ return x.Entities
+ }
+ return nil
+}
+
+func (x *BatchUpdateEntitiesRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *BatchUpdateEntitiesRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [EntityTypes.BatchDeleteEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities].
+type BatchDeleteEntitiesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type to delete entries for.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/entityTypes/<Entity
+ // Type ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The reference `values` of the entities to delete. Note that
+ // these are not fully-qualified names, i.e. they don't start with
+ // `projects/<Project ID>`.
+ EntityValues []string `protobuf:"bytes,2,rep,name=entity_values,json=entityValues,proto3" json:"entity_values,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *BatchDeleteEntitiesRequest) Reset() {
+ *x = BatchDeleteEntitiesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchDeleteEntitiesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchDeleteEntitiesRequest) ProtoMessage() {}
+
+func (x *BatchDeleteEntitiesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchDeleteEntitiesRequest.ProtoReflect.Descriptor instead.
+func (*BatchDeleteEntitiesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *BatchDeleteEntitiesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchDeleteEntitiesRequest) GetEntityValues() []string {
+ if x != nil {
+ return x.EntityValues
+ }
+ return nil
+}
+
+func (x *BatchDeleteEntitiesRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// This message is a wrapper around a collection of entity types.
+type EntityTypeBatch struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A collection of entity types.
+ EntityTypes []*EntityType `protobuf:"bytes,1,rep,name=entity_types,json=entityTypes,proto3" json:"entity_types,omitempty"`
+}
+
+func (x *EntityTypeBatch) Reset() {
+ *x = EntityTypeBatch{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EntityTypeBatch) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EntityTypeBatch) ProtoMessage() {}
+
+func (x *EntityTypeBatch) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EntityTypeBatch.ProtoReflect.Descriptor instead.
+func (*EntityTypeBatch) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *EntityTypeBatch) GetEntityTypes() []*EntityType {
+ if x != nil {
+ return x.EntityTypes
+ }
+ return nil
+}
+
+// An **entity entry** for an associated entity type.
+type EntityType_Entity struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The primary value associated with this entity entry.
+ // For example, if the entity type is *vegetable*, the value could be
+ // *scallions*.
+ //
+ // For `KIND_MAP` entity types:
+ //
+ // * A reference value to be used in place of synonyms.
+ //
+ // For `KIND_LIST` entity types:
+ //
+ // - A string that can contain references to other entity types (with or
+ // without aliases).
+ Value string `protobuf:"bytes,1,opt,name=value,proto3" json:"value,omitempty"`
+ // Required. A collection of value synonyms. For example, if the entity type
+ // is *vegetable*, and `value` is *scallions*, a synonym could be *green
+ // onions*.
+ //
+ // For `KIND_LIST` entity types:
+ //
+ // * This collection must contain exactly one synonym equal to `value`.
+ Synonyms []string `protobuf:"bytes,2,rep,name=synonyms,proto3" json:"synonyms,omitempty"`
+}
+
+func (x *EntityType_Entity) Reset() {
+ *x = EntityType_Entity{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EntityType_Entity) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EntityType_Entity) ProtoMessage() {}
+
+func (x *EntityType_Entity) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EntityType_Entity.ProtoReflect.Descriptor instead.
+func (*EntityType_Entity) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *EntityType_Entity) GetValue() string {
+ if x != nil {
+ return x.Value
+ }
+ return ""
+}
+
+func (x *EntityType_Entity) GetSynonyms() []string {
+ if x != nil {
+ return x.Synonyms
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_entity_type_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDesc = []byte{
+ 0x0a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
+ 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
+ 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d,
+ 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xab, 0x06, 0x0a, 0x0a,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26,
+ 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c,
+ 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x49, 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x2e, 0x4b, 0x69, 0x6e, 0x64, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6b, 0x69, 0x6e,
+ 0x64, 0x12, 0x72, 0x0a, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x5f, 0x65, 0x78, 0x70, 0x61, 0x6e, 0x73,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x6d, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3d,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x41, 0x75, 0x74, 0x6f,
+ 0x45, 0x78, 0x70, 0x61, 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x01, 0x52, 0x11, 0x61, 0x75, 0x74, 0x6f, 0x45, 0x78, 0x70, 0x61, 0x6e, 0x73, 0x69, 0x6f,
+ 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x53, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65,
+ 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3b, 0x0a, 0x17, 0x65, 0x6e,
+ 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x66, 0x75, 0x7a, 0x7a, 0x79, 0x5f, 0x65, 0x78, 0x74, 0x72, 0x61,
+ 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x46, 0x75, 0x7a, 0x7a, 0x79, 0x45, 0x78, 0x74,
+ 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3f, 0x0a, 0x06, 0x45, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x12, 0x19, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x1a, 0x0a, 0x08,
+ 0x73, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
+ 0x73, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, 0x22, 0x4a, 0x0a, 0x04, 0x4b, 0x69, 0x6e, 0x64,
+ 0x12, 0x14, 0x0a, 0x10, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49,
+ 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4d,
+ 0x41, 0x50, 0x10, 0x01, 0x12, 0x0d, 0x0a, 0x09, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x4c, 0x49, 0x53,
+ 0x54, 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x4b, 0x49, 0x4e, 0x44, 0x5f, 0x52, 0x45, 0x47, 0x45,
+ 0x58, 0x50, 0x10, 0x03, 0x22, 0x59, 0x0a, 0x11, 0x41, 0x75, 0x74, 0x6f, 0x45, 0x78, 0x70, 0x61,
+ 0x6e, 0x73, 0x69, 0x6f, 0x6e, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x41, 0x55, 0x54,
+ 0x4f, 0x5f, 0x45, 0x58, 0x50, 0x41, 0x4e, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x4d, 0x4f, 0x44, 0x45,
+ 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x1f,
+ 0x0a, 0x1b, 0x41, 0x55, 0x54, 0x4f, 0x5f, 0x45, 0x58, 0x50, 0x41, 0x4e, 0x53, 0x49, 0x4f, 0x4e,
+ 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x44, 0x45, 0x46, 0x41, 0x55, 0x4c, 0x54, 0x10, 0x01, 0x3a,
+ 0xa7, 0x01, 0xea, 0x41, 0xa3, 0x01, 0x0a, 0x24, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x32, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x7d,
+ 0x12, 0x47, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x7d, 0x22, 0xce, 0x01, 0x0a, 0x16, 0x4c, 0x69,
+ 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x12, 0x24, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61,
+ 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x43, 0x6f, 0x64, 0x65, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61,
+ 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x91, 0x01, 0x0a, 0x17, 0x4c,
+ 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70,
+ 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x82,
+ 0x01, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43,
+ 0x6f, 0x64, 0x65, 0x22, 0xdc, 0x01, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x12, 0x24, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x51, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f,
+ 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67,
+ 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f,
+ 0x64, 0x65, 0x22, 0xd8, 0x01, 0x0a, 0x17, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x51,
+ 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f,
+ 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41,
+ 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x5b, 0x0a,
+ 0x17, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0x88, 0x03, 0x0a, 0x1d, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x26, 0x12, 0x24, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x33, 0x0a, 0x15, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70,
+ 0x65, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x48, 0x00, 0x52, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x72, 0x69, 0x12, 0x6b, 0x0a, 0x18, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x6c,
+ 0x69, 0x6e, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x48, 0x00, 0x52, 0x15, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x61, 0x74, 0x63, 0x68, 0x49, 0x6e,
+ 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x40,
+ 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42,
+ 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b,
+ 0x42, 0x13, 0x0a, 0x11, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
+ 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x70, 0x0a, 0x1e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4e, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22, 0x96, 0x01, 0x0a, 0x1d, 0x42, 0x61, 0x74, 0x63,
+ 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x26, 0x12, 0x24, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0x2f, 0x0a, 0x11, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e,
+ 0x61, 0x6d, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
+ 0x0f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73,
+ 0x22, 0xe1, 0x01, 0x0a, 0x1a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x53, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65,
+ 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61,
+ 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x43, 0x6f, 0x64, 0x65, 0x22, 0x9e, 0x02, 0x0a, 0x1a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x53, 0x0a, 0x08, 0x65, 0x6e, 0x74,
+ 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x28,
+ 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67,
+ 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0xb6, 0x01, 0x0a, 0x1a, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2c, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x26, 0x0a, 0x24, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x56, 0x61,
+ 0x6c, 0x75, 0x65, 0x73, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01,
+ 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22, 0x61,
+ 0x0a, 0x0f, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x61, 0x74, 0x63,
+ 0x68, 0x12, 0x4e, 0x0a, 0x0c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x52, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x32, 0xae, 0x1b, 0x0a, 0x0b, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x12, 0x9b, 0x02, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x94, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0x6e, 0x12, 0x2e, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x5a, 0x3c, 0x12, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0xda,
+ 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x14, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12,
+ 0x86, 0x02, 0x0a, 0x0d, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0x90, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x6e, 0x12, 0x2e,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3c,
+ 0x12, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0xda, 0x41, 0x12, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75,
+ 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0xc3, 0x02, 0x0a, 0x10, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x22, 0xc7, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x88, 0x01, 0x22, 0x2e,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x0b,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x49, 0x22, 0x3a, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x20, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0xf5,
+ 0x02, 0x0a, 0x10, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2b, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xf9, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xa0, 0x01, 0x32, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x3a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x55, 0x32,
+ 0x46, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f,
+ 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0xda, 0x41, 0x19, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0xda, 0x41,
+ 0x25, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2c, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xe1, 0x01, 0x0a, 0x10, 0x44, 0x65, 0x6c, 0x65, 0x74,
+ 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x38, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x7b, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x6e, 0x2a, 0x2e, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3c, 0x2a, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xe8, 0x02, 0x0a, 0x16, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c,
+ 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x22, 0xee, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8c, 0x01, 0x22, 0x3a,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x62,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x4b, 0x22,
+ 0x46, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63,
+ 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xca, 0x41, 0x58, 0x0a, 0x3e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53,
+ 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0xda, 0x02, 0x0a, 0x16, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
+ 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22,
+ 0xe0, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8c, 0x01, 0x22, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x44,
+ 0x65, 0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x4b, 0x22, 0x46, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x18, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73,
+ 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75,
+ 0x63, 0x74, 0x12, 0x81, 0x03, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74,
+ 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8d, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa2, 0x01,
+ 0x22, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63,
+ 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x56, 0x22, 0x51, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x69, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x3a,
+ 0x01, 0x2a, 0xda, 0x41, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x69, 0x65, 0x73, 0xda, 0x41, 0x1d, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f,
+ 0x63, 0x6f, 0x64, 0x65, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x16,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x81, 0x03, 0x0a, 0x13, 0x42, 0x61, 0x74, 0x63, 0x68,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x12, 0x3b,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67,
+ 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x8d, 0x02, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0xa2, 0x01, 0x22, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79,
+ 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a,
+ 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x56,
+ 0x22, 0x51, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x0f, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0xda, 0x41, 0x1d, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x2c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75,
+ 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70,
+ 0x74, 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12, 0x8b, 0x03, 0x0a, 0x13, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69,
+ 0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e,
+ 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x97,
+ 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xa2, 0x01, 0x22, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x69, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x3a,
+ 0x01, 0x2a, 0x5a, 0x56, 0x22, 0x51, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63,
+ 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x14, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x73, 0xda, 0x41, 0x22, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
+ 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
+ 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
+ 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70,
+ 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f,
+ 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x42, 0xa7, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0f, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70,
+ 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes = make([]protoimpl.MessageInfo, 15)
+var file_google_cloud_dialogflow_v2beta1_entity_type_proto_goTypes = []interface{}{
+ (EntityType_Kind)(0), // 0: google.cloud.dialogflow.v2beta1.EntityType.Kind
+ (EntityType_AutoExpansionMode)(0), // 1: google.cloud.dialogflow.v2beta1.EntityType.AutoExpansionMode
+ (*EntityType)(nil), // 2: google.cloud.dialogflow.v2beta1.EntityType
+ (*ListEntityTypesRequest)(nil), // 3: google.cloud.dialogflow.v2beta1.ListEntityTypesRequest
+ (*ListEntityTypesResponse)(nil), // 4: google.cloud.dialogflow.v2beta1.ListEntityTypesResponse
+ (*GetEntityTypeRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.GetEntityTypeRequest
+ (*CreateEntityTypeRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.CreateEntityTypeRequest
+ (*UpdateEntityTypeRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.UpdateEntityTypeRequest
+ (*DeleteEntityTypeRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.DeleteEntityTypeRequest
+ (*BatchUpdateEntityTypesRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesRequest
+ (*BatchUpdateEntityTypesResponse)(nil), // 10: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse
+ (*BatchDeleteEntityTypesRequest)(nil), // 11: google.cloud.dialogflow.v2beta1.BatchDeleteEntityTypesRequest
+ (*BatchCreateEntitiesRequest)(nil), // 12: google.cloud.dialogflow.v2beta1.BatchCreateEntitiesRequest
+ (*BatchUpdateEntitiesRequest)(nil), // 13: google.cloud.dialogflow.v2beta1.BatchUpdateEntitiesRequest
+ (*BatchDeleteEntitiesRequest)(nil), // 14: google.cloud.dialogflow.v2beta1.BatchDeleteEntitiesRequest
+ (*EntityTypeBatch)(nil), // 15: google.cloud.dialogflow.v2beta1.EntityTypeBatch
+ (*EntityType_Entity)(nil), // 16: google.cloud.dialogflow.v2beta1.EntityType.Entity
+ (*fieldmaskpb.FieldMask)(nil), // 17: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 18: google.protobuf.Empty
+ (*longrunning.Operation)(nil), // 19: google.longrunning.Operation
+}
+var file_google_cloud_dialogflow_v2beta1_entity_type_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.EntityType.kind:type_name -> google.cloud.dialogflow.v2beta1.EntityType.Kind
+ 1, // 1: google.cloud.dialogflow.v2beta1.EntityType.auto_expansion_mode:type_name -> google.cloud.dialogflow.v2beta1.EntityType.AutoExpansionMode
+ 16, // 2: google.cloud.dialogflow.v2beta1.EntityType.entities:type_name -> google.cloud.dialogflow.v2beta1.EntityType.Entity
+ 2, // 3: google.cloud.dialogflow.v2beta1.ListEntityTypesResponse.entity_types:type_name -> google.cloud.dialogflow.v2beta1.EntityType
+ 2, // 4: google.cloud.dialogflow.v2beta1.CreateEntityTypeRequest.entity_type:type_name -> google.cloud.dialogflow.v2beta1.EntityType
+ 2, // 5: google.cloud.dialogflow.v2beta1.UpdateEntityTypeRequest.entity_type:type_name -> google.cloud.dialogflow.v2beta1.EntityType
+ 17, // 6: google.cloud.dialogflow.v2beta1.UpdateEntityTypeRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 15, // 7: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesRequest.entity_type_batch_inline:type_name -> google.cloud.dialogflow.v2beta1.EntityTypeBatch
+ 17, // 8: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 2, // 9: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse.entity_types:type_name -> google.cloud.dialogflow.v2beta1.EntityType
+ 16, // 10: google.cloud.dialogflow.v2beta1.BatchCreateEntitiesRequest.entities:type_name -> google.cloud.dialogflow.v2beta1.EntityType.Entity
+ 16, // 11: google.cloud.dialogflow.v2beta1.BatchUpdateEntitiesRequest.entities:type_name -> google.cloud.dialogflow.v2beta1.EntityType.Entity
+ 17, // 12: google.cloud.dialogflow.v2beta1.BatchUpdateEntitiesRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 2, // 13: google.cloud.dialogflow.v2beta1.EntityTypeBatch.entity_types:type_name -> google.cloud.dialogflow.v2beta1.EntityType
+ 3, // 14: google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes:input_type -> google.cloud.dialogflow.v2beta1.ListEntityTypesRequest
+ 5, // 15: google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType:input_type -> google.cloud.dialogflow.v2beta1.GetEntityTypeRequest
+ 6, // 16: google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType:input_type -> google.cloud.dialogflow.v2beta1.CreateEntityTypeRequest
+ 7, // 17: google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType:input_type -> google.cloud.dialogflow.v2beta1.UpdateEntityTypeRequest
+ 8, // 18: google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType:input_type -> google.cloud.dialogflow.v2beta1.DeleteEntityTypeRequest
+ 9, // 19: google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes:input_type -> google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesRequest
+ 11, // 20: google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes:input_type -> google.cloud.dialogflow.v2beta1.BatchDeleteEntityTypesRequest
+ 12, // 21: google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities:input_type -> google.cloud.dialogflow.v2beta1.BatchCreateEntitiesRequest
+ 13, // 22: google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities:input_type -> google.cloud.dialogflow.v2beta1.BatchUpdateEntitiesRequest
+ 14, // 23: google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities:input_type -> google.cloud.dialogflow.v2beta1.BatchDeleteEntitiesRequest
+ 4, // 24: google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes:output_type -> google.cloud.dialogflow.v2beta1.ListEntityTypesResponse
+ 2, // 25: google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType:output_type -> google.cloud.dialogflow.v2beta1.EntityType
+ 2, // 26: google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType:output_type -> google.cloud.dialogflow.v2beta1.EntityType
+ 2, // 27: google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType:output_type -> google.cloud.dialogflow.v2beta1.EntityType
+ 18, // 28: google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType:output_type -> google.protobuf.Empty
+ 19, // 29: google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes:output_type -> google.longrunning.Operation
+ 19, // 30: google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes:output_type -> google.longrunning.Operation
+ 19, // 31: google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities:output_type -> google.longrunning.Operation
+ 19, // 32: google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities:output_type -> google.longrunning.Operation
+ 19, // 33: google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities:output_type -> google.longrunning.Operation
+ 24, // [24:34] is the sub-list for method output_type
+ 14, // [14:24] is the sub-list for method input_type
+ 14, // [14:14] is the sub-list for extension type_name
+ 14, // [14:14] is the sub-list for extension extendee
+ 0, // [0:14] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_entity_type_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_entity_type_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_entity_type_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EntityType); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListEntityTypesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListEntityTypesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchUpdateEntityTypesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchUpdateEntityTypesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchDeleteEntityTypesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchCreateEntitiesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchUpdateEntitiesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchDeleteEntitiesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EntityTypeBatch); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EntityType_Entity); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes[7].OneofWrappers = []interface{}{
+ (*BatchUpdateEntityTypesRequest_EntityTypeBatchUri)(nil),
+ (*BatchUpdateEntityTypesRequest_EntityTypeBatchInline)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDesc,
+ NumEnums: 2,
+ NumMessages: 15,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_entity_type_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_entity_type_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_entity_type_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_entity_type_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_entity_type_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// EntityTypesClient is the client API for EntityTypes service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type EntityTypesClient interface {
+ // Returns the list of all entity types in the specified agent.
+ ListEntityTypes(ctx context.Context, in *ListEntityTypesRequest, opts ...grpc.CallOption) (*ListEntityTypesResponse, error)
+ // Retrieves the specified entity type.
+ GetEntityType(ctx context.Context, in *GetEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error)
+ // Creates an entity type in the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ CreateEntityType(ctx context.Context, in *CreateEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error)
+ // Updates the specified entity type.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ UpdateEntityType(ctx context.Context, in *UpdateEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error)
+ // Deletes the specified entity type.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ DeleteEntityType(ctx context.Context, in *DeleteEntityTypeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Updates/Creates multiple entity types in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [BatchUpdateEntityTypesResponse][google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse]
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchUpdateEntityTypes(ctx context.Context, in *BatchUpdateEntityTypesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes entity types in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteEntityTypes(ctx context.Context, in *BatchDeleteEntityTypesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Creates multiple new entities in the specified entity type.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchCreateEntities(ctx context.Context, in *BatchCreateEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Updates or creates multiple entities in the specified entity type. This
+ // method does not affect entities in the entity type that aren't explicitly
+ // specified in the request.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ BatchUpdateEntities(ctx context.Context, in *BatchUpdateEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes entities in the specified entity type.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteEntities(ctx context.Context, in *BatchDeleteEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+}
+
+type entityTypesClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewEntityTypesClient(cc grpc.ClientConnInterface) EntityTypesClient {
+ return &entityTypesClient{cc}
+}
+
+func (c *entityTypesClient) ListEntityTypes(ctx context.Context, in *ListEntityTypesRequest, opts ...grpc.CallOption) (*ListEntityTypesResponse, error) {
+ out := new(ListEntityTypesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/ListEntityTypes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) GetEntityType(ctx context.Context, in *GetEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error) {
+ out := new(EntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/GetEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) CreateEntityType(ctx context.Context, in *CreateEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error) {
+ out := new(EntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/CreateEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) UpdateEntityType(ctx context.Context, in *UpdateEntityTypeRequest, opts ...grpc.CallOption) (*EntityType, error) {
+ out := new(EntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/UpdateEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) DeleteEntityType(ctx context.Context, in *DeleteEntityTypeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/DeleteEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) BatchUpdateEntityTypes(ctx context.Context, in *BatchUpdateEntityTypesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchUpdateEntityTypes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) BatchDeleteEntityTypes(ctx context.Context, in *BatchDeleteEntityTypesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchDeleteEntityTypes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) BatchCreateEntities(ctx context.Context, in *BatchCreateEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchCreateEntities", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) BatchUpdateEntities(ctx context.Context, in *BatchUpdateEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchUpdateEntities", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *entityTypesClient) BatchDeleteEntities(ctx context.Context, in *BatchDeleteEntitiesRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchDeleteEntities", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// EntityTypesServer is the server API for EntityTypes service.
+type EntityTypesServer interface {
+ // Returns the list of all entity types in the specified agent.
+ ListEntityTypes(context.Context, *ListEntityTypesRequest) (*ListEntityTypesResponse, error)
+ // Retrieves the specified entity type.
+ GetEntityType(context.Context, *GetEntityTypeRequest) (*EntityType, error)
+ // Creates an entity type in the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ CreateEntityType(context.Context, *CreateEntityTypeRequest) (*EntityType, error)
+ // Updates the specified entity type.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ UpdateEntityType(context.Context, *UpdateEntityTypeRequest) (*EntityType, error)
+ // Deletes the specified entity type.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ DeleteEntityType(context.Context, *DeleteEntityTypeRequest) (*emptypb.Empty, error)
+ // Updates/Creates multiple entity types in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [BatchUpdateEntityTypesResponse][google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse]
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchUpdateEntityTypes(context.Context, *BatchUpdateEntityTypesRequest) (*longrunning.Operation, error)
+ // Deletes entity types in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteEntityTypes(context.Context, *BatchDeleteEntityTypesRequest) (*longrunning.Operation, error)
+ // Creates multiple new entities in the specified entity type.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchCreateEntities(context.Context, *BatchCreateEntitiesRequest) (*longrunning.Operation, error)
+ // Updates or creates multiple entities in the specified entity type. This
+ // method does not affect entities in the entity type that aren't explicitly
+ // specified in the request.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ BatchUpdateEntities(context.Context, *BatchUpdateEntitiesRequest) (*longrunning.Operation, error)
+ // Deletes entities in the specified entity type.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteEntities(context.Context, *BatchDeleteEntitiesRequest) (*longrunning.Operation, error)
+}
+
+// UnimplementedEntityTypesServer can be embedded to have forward compatible implementations.
+type UnimplementedEntityTypesServer struct {
+}
+
+func (*UnimplementedEntityTypesServer) ListEntityTypes(context.Context, *ListEntityTypesRequest) (*ListEntityTypesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListEntityTypes not implemented")
+}
+func (*UnimplementedEntityTypesServer) GetEntityType(context.Context, *GetEntityTypeRequest) (*EntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetEntityType not implemented")
+}
+func (*UnimplementedEntityTypesServer) CreateEntityType(context.Context, *CreateEntityTypeRequest) (*EntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateEntityType not implemented")
+}
+func (*UnimplementedEntityTypesServer) UpdateEntityType(context.Context, *UpdateEntityTypeRequest) (*EntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateEntityType not implemented")
+}
+func (*UnimplementedEntityTypesServer) DeleteEntityType(context.Context, *DeleteEntityTypeRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteEntityType not implemented")
+}
+func (*UnimplementedEntityTypesServer) BatchUpdateEntityTypes(context.Context, *BatchUpdateEntityTypesRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchUpdateEntityTypes not implemented")
+}
+func (*UnimplementedEntityTypesServer) BatchDeleteEntityTypes(context.Context, *BatchDeleteEntityTypesRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchDeleteEntityTypes not implemented")
+}
+func (*UnimplementedEntityTypesServer) BatchCreateEntities(context.Context, *BatchCreateEntitiesRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchCreateEntities not implemented")
+}
+func (*UnimplementedEntityTypesServer) BatchUpdateEntities(context.Context, *BatchUpdateEntitiesRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchUpdateEntities not implemented")
+}
+func (*UnimplementedEntityTypesServer) BatchDeleteEntities(context.Context, *BatchDeleteEntitiesRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchDeleteEntities not implemented")
+}
+
+func RegisterEntityTypesServer(s *grpc.Server, srv EntityTypesServer) {
+ s.RegisterService(&_EntityTypes_serviceDesc, srv)
+}
+
+func _EntityTypes_ListEntityTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListEntityTypesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).ListEntityTypes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/ListEntityTypes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).ListEntityTypes(ctx, req.(*ListEntityTypesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_GetEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).GetEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/GetEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).GetEntityType(ctx, req.(*GetEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_CreateEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).CreateEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/CreateEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).CreateEntityType(ctx, req.(*CreateEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_UpdateEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).UpdateEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/UpdateEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).UpdateEntityType(ctx, req.(*UpdateEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_DeleteEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).DeleteEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/DeleteEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).DeleteEntityType(ctx, req.(*DeleteEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_BatchUpdateEntityTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchUpdateEntityTypesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).BatchUpdateEntityTypes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchUpdateEntityTypes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).BatchUpdateEntityTypes(ctx, req.(*BatchUpdateEntityTypesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_BatchDeleteEntityTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchDeleteEntityTypesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).BatchDeleteEntityTypes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchDeleteEntityTypes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).BatchDeleteEntityTypes(ctx, req.(*BatchDeleteEntityTypesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_BatchCreateEntities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchCreateEntitiesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).BatchCreateEntities(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchCreateEntities",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).BatchCreateEntities(ctx, req.(*BatchCreateEntitiesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_BatchUpdateEntities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchUpdateEntitiesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).BatchUpdateEntities(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchUpdateEntities",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).BatchUpdateEntities(ctx, req.(*BatchUpdateEntitiesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _EntityTypes_BatchDeleteEntities_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchDeleteEntitiesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EntityTypesServer).BatchDeleteEntities(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.EntityTypes/BatchDeleteEntities",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EntityTypesServer).BatchDeleteEntities(ctx, req.(*BatchDeleteEntitiesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _EntityTypes_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.EntityTypes",
+ HandlerType: (*EntityTypesServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListEntityTypes",
+ Handler: _EntityTypes_ListEntityTypes_Handler,
+ },
+ {
+ MethodName: "GetEntityType",
+ Handler: _EntityTypes_GetEntityType_Handler,
+ },
+ {
+ MethodName: "CreateEntityType",
+ Handler: _EntityTypes_CreateEntityType_Handler,
+ },
+ {
+ MethodName: "UpdateEntityType",
+ Handler: _EntityTypes_UpdateEntityType_Handler,
+ },
+ {
+ MethodName: "DeleteEntityType",
+ Handler: _EntityTypes_DeleteEntityType_Handler,
+ },
+ {
+ MethodName: "BatchUpdateEntityTypes",
+ Handler: _EntityTypes_BatchUpdateEntityTypes_Handler,
+ },
+ {
+ MethodName: "BatchDeleteEntityTypes",
+ Handler: _EntityTypes_BatchDeleteEntityTypes_Handler,
+ },
+ {
+ MethodName: "BatchCreateEntities",
+ Handler: _EntityTypes_BatchCreateEntities_Handler,
+ },
+ {
+ MethodName: "BatchUpdateEntities",
+ Handler: _EntityTypes_BatchUpdateEntities_Handler,
+ },
+ {
+ MethodName: "BatchDeleteEntities",
+ Handler: _EntityTypes_BatchDeleteEntities_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/entity_type.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/environment.pb.go b/dialogflow/apiv2beta1/dialogflowpb/environment.pb.go
new file mode 100644
index 0000000..5863193
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/environment.pb.go
@@ -0,0 +1,1764 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/environment.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Represents an environment state. When an environment is pointed to a new
+// agent version, the environment is temporarily set to the `LOADING` state.
+// During that time, the environment keeps on serving the previous version of
+// the agent. After the new agent version is done loading, the environment is
+// set back to the `RUNNING` state.
+type Environment_State int32
+
+const (
+ // Not specified. This value is not used.
+ Environment_STATE_UNSPECIFIED Environment_State = 0
+ // Stopped.
+ Environment_STOPPED Environment_State = 1
+ // Loading.
+ Environment_LOADING Environment_State = 2
+ // Running.
+ Environment_RUNNING Environment_State = 3
+)
+
+// Enum value maps for Environment_State.
+var (
+ Environment_State_name = map[int32]string{
+ 0: "STATE_UNSPECIFIED",
+ 1: "STOPPED",
+ 2: "LOADING",
+ 3: "RUNNING",
+ }
+ Environment_State_value = map[string]int32{
+ "STATE_UNSPECIFIED": 0,
+ "STOPPED": 1,
+ "LOADING": 2,
+ "RUNNING": 3,
+ }
+)
+
+func (x Environment_State) Enum() *Environment_State {
+ p := new(Environment_State)
+ *p = x
+ return p
+}
+
+func (x Environment_State) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Environment_State) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_enumTypes[0].Descriptor()
+}
+
+func (Environment_State) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_environment_proto_enumTypes[0]
+}
+
+func (x Environment_State) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Environment_State.Descriptor instead.
+func (Environment_State) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// You can create multiple versions of your agent and publish them to separate
+// environments.
+//
+// When you edit an agent, you are editing the draft agent. At any point, you
+// can save the draft agent as an agent version, which is an immutable snapshot
+// of your agent.
+//
+// When you save the draft agent, it is published to the default environment.
+// When you create agent versions, you can publish them to custom environments.
+// You can create a variety of custom environments for:
+//
+// - testing
+// - development
+// - production
+// - etc.
+//
+// For more information, see the [versions and environments
+// guide](https://cloud.google.com/dialogflow/docs/agents-versions).
+type Environment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The unique identifier of this agent environment.
+ // Supported formats:
+ // - `projects/<Project Number / ID>/agent/environments/<Environment ID>`
+ // - `projects/<Project Number / ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The developer-provided description for this environment.
+ // The maximum length is 500 characters. If exceeded, the request is rejected.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. The agent version loaded into this environment.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/versions/<Version ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
+ // ID>`
+ AgentVersion string `protobuf:"bytes,3,opt,name=agent_version,json=agentVersion,proto3" json:"agent_version,omitempty"`
+ // Output only. The state of this environment. This field is read-only, i.e.,
+ // it cannot be set by create and update methods.
+ State Environment_State `protobuf:"varint,4,opt,name=state,proto3,enum=google.cloud.dialogflow.v2beta1.Environment_State" json:"state,omitempty"`
+ // Output only. The last update time of this environment. This field is
+ // read-only, i.e., it cannot be set by create and update methods.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Optional. Text to speech settings for this environment.
+ TextToSpeechSettings *TextToSpeechSettings `protobuf:"bytes,7,opt,name=text_to_speech_settings,json=textToSpeechSettings,proto3" json:"text_to_speech_settings,omitempty"`
+ // Optional. The fulfillment settings to use for this environment.
+ Fulfillment *Fulfillment `protobuf:"bytes,8,opt,name=fulfillment,proto3" json:"fulfillment,omitempty"`
+}
+
+func (x *Environment) Reset() {
+ *x = Environment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Environment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Environment) ProtoMessage() {}
+
+func (x *Environment) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Environment.ProtoReflect.Descriptor instead.
+func (*Environment) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Environment) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Environment) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Environment) GetAgentVersion() string {
+ if x != nil {
+ return x.AgentVersion
+ }
+ return ""
+}
+
+func (x *Environment) GetState() Environment_State {
+ if x != nil {
+ return x.State
+ }
+ return Environment_STATE_UNSPECIFIED
+}
+
+func (x *Environment) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Environment) GetTextToSpeechSettings() *TextToSpeechSettings {
+ if x != nil {
+ return x.TextToSpeechSettings
+ }
+ return nil
+}
+
+func (x *Environment) GetFulfillment() *Fulfillment {
+ if x != nil {
+ return x.Fulfillment
+ }
+ return nil
+}
+
+// Instructs the speech synthesizer on how to generate the output audio content.
+type TextToSpeechSettings struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. Indicates whether text to speech is enabled. Even when this field
+ // is false, other settings in this proto are still retained.
+ EnableTextToSpeech bool `protobuf:"varint,1,opt,name=enable_text_to_speech,json=enableTextToSpeech,proto3" json:"enable_text_to_speech,omitempty"`
+ // Required. Audio encoding of the synthesized audio content.
+ OutputAudioEncoding OutputAudioEncoding `protobuf:"varint,2,opt,name=output_audio_encoding,json=outputAudioEncoding,proto3,enum=google.cloud.dialogflow.v2beta1.OutputAudioEncoding" json:"output_audio_encoding,omitempty"`
+ // Optional. The synthesis sample rate (in hertz) for this audio. If not
+ // provided, then the synthesizer will use the default sample rate based on
+ // the audio encoding. If this is different from the voice's natural sample
+ // rate, then the synthesizer will honor this request by converting to the
+ // desired sample rate (which might result in worse audio quality).
+ SampleRateHertz int32 `protobuf:"varint,3,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"`
+ // Optional. Configuration of how speech should be synthesized, mapping from
+ // language (https://cloud.google.com/dialogflow/docs/reference/language) to
+ // SynthesizeSpeechConfig.
+ SynthesizeSpeechConfigs map[string]*SynthesizeSpeechConfig `protobuf:"bytes,4,rep,name=synthesize_speech_configs,json=synthesizeSpeechConfigs,proto3" json:"synthesize_speech_configs,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *TextToSpeechSettings) Reset() {
+ *x = TextToSpeechSettings{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TextToSpeechSettings) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TextToSpeechSettings) ProtoMessage() {}
+
+func (x *TextToSpeechSettings) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TextToSpeechSettings.ProtoReflect.Descriptor instead.
+func (*TextToSpeechSettings) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *TextToSpeechSettings) GetEnableTextToSpeech() bool {
+ if x != nil {
+ return x.EnableTextToSpeech
+ }
+ return false
+}
+
+func (x *TextToSpeechSettings) GetOutputAudioEncoding() OutputAudioEncoding {
+ if x != nil {
+ return x.OutputAudioEncoding
+ }
+ return OutputAudioEncoding_OUTPUT_AUDIO_ENCODING_UNSPECIFIED
+}
+
+func (x *TextToSpeechSettings) GetSampleRateHertz() int32 {
+ if x != nil {
+ return x.SampleRateHertz
+ }
+ return 0
+}
+
+func (x *TextToSpeechSettings) GetSynthesizeSpeechConfigs() map[string]*SynthesizeSpeechConfig {
+ if x != nil {
+ return x.SynthesizeSpeechConfigs
+ }
+ return nil
+}
+
+// The request message for
+// [Environments.ListEnvironments][google.cloud.dialogflow.v2beta1.Environments.ListEnvironments].
+type ListEnvironmentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to list all environments from.
+ // Format:
+ // - `projects/<Project Number / ID>/agent`
+ // - `projects/<Project Number / ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListEnvironmentsRequest) Reset() {
+ *x = ListEnvironmentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListEnvironmentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListEnvironmentsRequest) ProtoMessage() {}
+
+func (x *ListEnvironmentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListEnvironmentsRequest.ProtoReflect.Descriptor instead.
+func (*ListEnvironmentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListEnvironmentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListEnvironmentsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListEnvironmentsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Environments.ListEnvironments][google.cloud.dialogflow.v2beta1.Environments.ListEnvironments].
+type ListEnvironmentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of agent environments. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ Environments []*Environment `protobuf:"bytes,1,rep,name=environments,proto3" json:"environments,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListEnvironmentsResponse) Reset() {
+ *x = ListEnvironmentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListEnvironmentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListEnvironmentsResponse) ProtoMessage() {}
+
+func (x *ListEnvironmentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListEnvironmentsResponse.ProtoReflect.Descriptor instead.
+func (*ListEnvironmentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ListEnvironmentsResponse) GetEnvironments() []*Environment {
+ if x != nil {
+ return x.Environments
+ }
+ return nil
+}
+
+func (x *ListEnvironmentsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Environments.GetEnvironment][google.cloud.dialogflow.v2beta1.Environments.GetEnvironment].
+type GetEnvironmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the environment.
+ // Supported formats:
+ // - `projects/<Project Number / ID>/agent/environments/<Environment ID>`
+ // - `projects/<Project Number / ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetEnvironmentRequest) Reset() {
+ *x = GetEnvironmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEnvironmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEnvironmentRequest) ProtoMessage() {}
+
+func (x *GetEnvironmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetEnvironmentRequest.ProtoReflect.Descriptor instead.
+func (*GetEnvironmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *GetEnvironmentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Environments.CreateEnvironment][google.cloud.dialogflow.v2beta1.Environments.CreateEnvironment].
+type CreateEnvironmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to create an environment for.
+ // Supported formats:
+ // - `projects/<Project Number / ID>/agent`
+ // - `projects/<Project Number / ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The environment to create.
+ Environment *Environment `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
+ // Required. The unique id of the new environment.
+ EnvironmentId string `protobuf:"bytes,3,opt,name=environment_id,json=environmentId,proto3" json:"environment_id,omitempty"`
+}
+
+func (x *CreateEnvironmentRequest) Reset() {
+ *x = CreateEnvironmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateEnvironmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateEnvironmentRequest) ProtoMessage() {}
+
+func (x *CreateEnvironmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateEnvironmentRequest.ProtoReflect.Descriptor instead.
+func (*CreateEnvironmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *CreateEnvironmentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateEnvironmentRequest) GetEnvironment() *Environment {
+ if x != nil {
+ return x.Environment
+ }
+ return nil
+}
+
+func (x *CreateEnvironmentRequest) GetEnvironmentId() string {
+ if x != nil {
+ return x.EnvironmentId
+ }
+ return ""
+}
+
+// The request message for
+// [Environments.UpdateEnvironment][google.cloud.dialogflow.v2beta1.Environments.UpdateEnvironment].
+type UpdateEnvironmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The environment to update.
+ Environment *Environment `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment,omitempty"`
+ // Required. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // Optional. This field is used to prevent accidental overwrite of the draft
+ // environment, which is an operation that cannot be undone. To confirm that
+ // the caller desires this overwrite, this field must be explicitly set to
+ // true when updating the draft environment (environment ID = `-`).
+ AllowLoadToDraftAndDiscardChanges bool `protobuf:"varint,3,opt,name=allow_load_to_draft_and_discard_changes,json=allowLoadToDraftAndDiscardChanges,proto3" json:"allow_load_to_draft_and_discard_changes,omitempty"`
+}
+
+func (x *UpdateEnvironmentRequest) Reset() {
+ *x = UpdateEnvironmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateEnvironmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateEnvironmentRequest) ProtoMessage() {}
+
+func (x *UpdateEnvironmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateEnvironmentRequest.ProtoReflect.Descriptor instead.
+func (*UpdateEnvironmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateEnvironmentRequest) GetEnvironment() *Environment {
+ if x != nil {
+ return x.Environment
+ }
+ return nil
+}
+
+func (x *UpdateEnvironmentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateEnvironmentRequest) GetAllowLoadToDraftAndDiscardChanges() bool {
+ if x != nil {
+ return x.AllowLoadToDraftAndDiscardChanges
+ }
+ return false
+}
+
+// The request message for
+// [Environments.DeleteEnvironment][google.cloud.dialogflow.v2beta1.Environments.DeleteEnvironment].
+type DeleteEnvironmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the environment to delete.
+ // / Format:
+ // - `projects/<Project Number / ID>/agent/environments/<Environment ID>`
+ // - `projects/<Project Number / ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteEnvironmentRequest) Reset() {
+ *x = DeleteEnvironmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteEnvironmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteEnvironmentRequest) ProtoMessage() {}
+
+func (x *DeleteEnvironmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteEnvironmentRequest.ProtoReflect.Descriptor instead.
+func (*DeleteEnvironmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *DeleteEnvironmentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Environments.GetEnvironmentHistory][google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory].
+type GetEnvironmentHistoryRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the environment to retrieve history for.
+ // Supported formats:
+ // - `projects/<Project Number / ID>/agent/environments/<Environment ID>`
+ // - `projects/<Project Number / ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *GetEnvironmentHistoryRequest) Reset() {
+ *x = GetEnvironmentHistoryRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetEnvironmentHistoryRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetEnvironmentHistoryRequest) ProtoMessage() {}
+
+func (x *GetEnvironmentHistoryRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetEnvironmentHistoryRequest.ProtoReflect.Descriptor instead.
+func (*GetEnvironmentHistoryRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *GetEnvironmentHistoryRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *GetEnvironmentHistoryRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *GetEnvironmentHistoryRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Environments.GetEnvironmentHistory][google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory].
+type EnvironmentHistory struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The name of the environment this history is for.
+ // Supported formats:
+ // - `projects/<Project Number / ID>/agent/environments/<Environment ID>`
+ // - `projects/<Project Number / ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Output only. The list of agent environments. There will be a maximum number
+ // of items returned based on the page_size field in the request.
+ Entries []*EnvironmentHistory_Entry `protobuf:"bytes,2,rep,name=entries,proto3" json:"entries,omitempty"`
+ // Output only. Token to retrieve the next page of results, or empty if there
+ // are no more results in the list.
+ NextPageToken string `protobuf:"bytes,3,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *EnvironmentHistory) Reset() {
+ *x = EnvironmentHistory{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EnvironmentHistory) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EnvironmentHistory) ProtoMessage() {}
+
+func (x *EnvironmentHistory) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EnvironmentHistory.ProtoReflect.Descriptor instead.
+func (*EnvironmentHistory) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *EnvironmentHistory) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *EnvironmentHistory) GetEntries() []*EnvironmentHistory_Entry {
+ if x != nil {
+ return x.Entries
+ }
+ return nil
+}
+
+func (x *EnvironmentHistory) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Represents an environment history entry.
+type EnvironmentHistory_Entry struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The agent version loaded into this environment history entry.
+ AgentVersion string `protobuf:"bytes,1,opt,name=agent_version,json=agentVersion,proto3" json:"agent_version,omitempty"`
+ // The developer-provided description for this environment history entry.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // The creation time of this environment history entry.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+}
+
+func (x *EnvironmentHistory_Entry) Reset() {
+ *x = EnvironmentHistory_Entry{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EnvironmentHistory_Entry) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EnvironmentHistory_Entry) ProtoMessage() {}
+
+func (x *EnvironmentHistory_Entry) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EnvironmentHistory_Entry.ProtoReflect.Descriptor instead.
+func (*EnvironmentHistory_Entry) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP(), []int{9, 0}
+}
+
+func (x *EnvironmentHistory_Entry) GetAgentVersion() string {
+ if x != nil {
+ return x.AgentVersion
+ }
+ return ""
+}
+
+func (x *EnvironmentHistory_Entry) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *EnvironmentHistory_Entry) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_environment_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_environment_proto_rawDesc = []byte{
+ 0x0a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
+ 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
+ 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x31, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x66, 0x75, 0x6c,
+ 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
+ 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65,
+ 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74,
+ 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xea,
+ 0x05, 0x0a, 0x0b, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72,
+ 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4e,
+ 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x01, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x4d,
+ 0x0a, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x32, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x53, 0x74, 0x61, 0x74,
+ 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x05, 0x73, 0x74, 0x61, 0x74, 0x65, 0x12, 0x40, 0x0a,
+ 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12,
+ 0x71, 0x0a, 0x17, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63,
+ 0x68, 0x5f, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x53,
+ 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x14, 0x74, 0x65,
+ 0x78, 0x74, 0x54, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x53, 0x65, 0x74, 0x74, 0x69, 0x6e,
+ 0x67, 0x73, 0x12, 0x53, 0x0a, 0x0b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e,
+ 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c,
+ 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x66, 0x75, 0x6c, 0x66,
+ 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x45, 0x0a, 0x05, 0x53, 0x74, 0x61, 0x74, 0x65,
+ 0x12, 0x15, 0x0a, 0x11, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
+ 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x53, 0x54, 0x4f, 0x50, 0x50,
+ 0x45, 0x44, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x4f, 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10,
+ 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x52, 0x55, 0x4e, 0x4e, 0x49, 0x4e, 0x47, 0x10, 0x03, 0x3a, 0xaa,
+ 0x01, 0xea, 0x41, 0xa6, 0x01, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x33, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x7d, 0x12, 0x48, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65,
+ 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x22, 0x8a, 0x04, 0x0a, 0x14,
+ 0x54, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x53, 0x65, 0x74, 0x74,
+ 0x69, 0x6e, 0x67, 0x73, 0x12, 0x36, 0x0a, 0x15, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x74,
+ 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x12, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x54, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x6d, 0x0a, 0x15,
+ 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x65, 0x6e, 0x63,
+ 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e,
+ 0x67, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x13, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x45, 0x6e, 0x63, 0x6f, 0x64, 0x69, 0x6e, 0x67, 0x12, 0x2f, 0x0a, 0x11, 0x73,
+ 0x61, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x61, 0x74, 0x65, 0x5f, 0x68, 0x65, 0x72, 0x74, 0x7a,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x73, 0x61, 0x6d,
+ 0x70, 0x6c, 0x65, 0x52, 0x61, 0x74, 0x65, 0x48, 0x65, 0x72, 0x74, 0x7a, 0x12, 0x93, 0x01, 0x0a,
+ 0x19, 0x73, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65,
+ 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x53,
+ 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x2e, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69,
+ 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45,
+ 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x17, 0x73, 0x79, 0x6e, 0x74, 0x68,
+ 0x65, 0x73, 0x69, 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x73, 0x1a, 0x83, 0x01, 0x0a, 0x1c, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a,
+ 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x73, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x4d, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a,
+ 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x05, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0xa6, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73,
+ 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70,
+ 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a,
+ 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x18, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50,
+ 0x0a, 0x0c, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x52, 0x0c, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73,
+ 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f,
+ 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50,
+ 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x5a, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x45,
+ 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xe2, 0x01, 0x0a, 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45,
+ 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69,
+ 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a,
+ 0x0e, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x64, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x65, 0x6e, 0x76, 0x69,
+ 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x49, 0x64, 0x22, 0x8a, 0x02, 0x0a, 0x18, 0x55, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b,
+ 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41,
+ 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x57, 0x0a,
+ 0x27, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x74, 0x6f, 0x5f, 0x64,
+ 0x72, 0x61, 0x66, 0x74, 0x5f, 0x61, 0x6e, 0x64, 0x5f, 0x64, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64,
+ 0x5f, 0x63, 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x21, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x4c, 0x6f, 0x61, 0x64, 0x54, 0x6f,
+ 0x44, 0x72, 0x61, 0x66, 0x74, 0x41, 0x6e, 0x64, 0x44, 0x69, 0x73, 0x63, 0x61, 0x72, 0x64, 0x43,
+ 0x68, 0x61, 0x6e, 0x67, 0x65, 0x73, 0x22, 0x5d, 0x0a, 0x18, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xab, 0x01, 0x0a, 0x1c, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a,
+ 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12,
+ 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f,
+ 0x6b, 0x65, 0x6e, 0x22, 0xc6, 0x02, 0x0a, 0x12, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69,
+ 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x2e, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65,
+ 0x73, 0x12, 0x2b, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
+ 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x1a, 0x8b,
+ 0x01, 0x0a, 0x05, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x5f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x0c, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a,
+ 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+ 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x32, 0xbf, 0x0d, 0x0a,
+ 0x0c, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x88, 0x02,
+ 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x39, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x7f, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x70, 0x12,
+ 0x2f, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73,
+ 0x5a, 0x3d, 0x12, 0x3b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0xda,
+ 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xee, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
+ 0x74, 0x22, 0x76, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x70, 0x12, 0x2f, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3d, 0x12, 0x3b, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x90, 0x02, 0x0a, 0x11, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12,
+ 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x91, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0x8a, 0x01, 0x22, 0x2f, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x3a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5a, 0x4a, 0x22, 0x3b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x3a,
+ 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0xa8, 0x02, 0x0a,
+ 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0xa9, 0x01, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0xa2, 0x01, 0x32, 0x3b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d,
+ 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x0b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x5a,
+ 0x56, 0x32, 0x47, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x65, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x65, 0x6e, 0x76, 0x69,
+ 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0xde, 0x01, 0x0a, 0x11, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
+ 0x22, 0x76, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x70, 0x2a, 0x2f, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x3d, 0x2a, 0x3b, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x12, 0x99, 0x02, 0x0a, 0x15, 0x47, 0x65, 0x74,
+ 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f,
+ 0x72, 0x79, 0x12, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x48, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x48,
+ 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x22, 0x8b, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x84, 0x01,
+ 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x2f, 0x68, 0x69, 0x73, 0x74, 0x6f, 0x72, 0x79, 0x5a, 0x47, 0x12, 0x45, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x68, 0x69, 0x73,
+ 0x74, 0x6f, 0x72, 0x79, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66,
+ 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
+ 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa8,
+ 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x10, 0x45, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8,
+ 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_environment_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_environment_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_environment_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes = make([]protoimpl.MessageInfo, 12)
+var file_google_cloud_dialogflow_v2beta1_environment_proto_goTypes = []interface{}{
+ (Environment_State)(0), // 0: google.cloud.dialogflow.v2beta1.Environment.State
+ (*Environment)(nil), // 1: google.cloud.dialogflow.v2beta1.Environment
+ (*TextToSpeechSettings)(nil), // 2: google.cloud.dialogflow.v2beta1.TextToSpeechSettings
+ (*ListEnvironmentsRequest)(nil), // 3: google.cloud.dialogflow.v2beta1.ListEnvironmentsRequest
+ (*ListEnvironmentsResponse)(nil), // 4: google.cloud.dialogflow.v2beta1.ListEnvironmentsResponse
+ (*GetEnvironmentRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.GetEnvironmentRequest
+ (*CreateEnvironmentRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.CreateEnvironmentRequest
+ (*UpdateEnvironmentRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.UpdateEnvironmentRequest
+ (*DeleteEnvironmentRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.DeleteEnvironmentRequest
+ (*GetEnvironmentHistoryRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.GetEnvironmentHistoryRequest
+ (*EnvironmentHistory)(nil), // 10: google.cloud.dialogflow.v2beta1.EnvironmentHistory
+ nil, // 11: google.cloud.dialogflow.v2beta1.TextToSpeechSettings.SynthesizeSpeechConfigsEntry
+ (*EnvironmentHistory_Entry)(nil), // 12: google.cloud.dialogflow.v2beta1.EnvironmentHistory.Entry
+ (*timestamppb.Timestamp)(nil), // 13: google.protobuf.Timestamp
+ (*Fulfillment)(nil), // 14: google.cloud.dialogflow.v2beta1.Fulfillment
+ (OutputAudioEncoding)(0), // 15: google.cloud.dialogflow.v2beta1.OutputAudioEncoding
+ (*fieldmaskpb.FieldMask)(nil), // 16: google.protobuf.FieldMask
+ (*SynthesizeSpeechConfig)(nil), // 17: google.cloud.dialogflow.v2beta1.SynthesizeSpeechConfig
+ (*emptypb.Empty)(nil), // 18: google.protobuf.Empty
+}
+var file_google_cloud_dialogflow_v2beta1_environment_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.Environment.state:type_name -> google.cloud.dialogflow.v2beta1.Environment.State
+ 13, // 1: google.cloud.dialogflow.v2beta1.Environment.update_time:type_name -> google.protobuf.Timestamp
+ 2, // 2: google.cloud.dialogflow.v2beta1.Environment.text_to_speech_settings:type_name -> google.cloud.dialogflow.v2beta1.TextToSpeechSettings
+ 14, // 3: google.cloud.dialogflow.v2beta1.Environment.fulfillment:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment
+ 15, // 4: google.cloud.dialogflow.v2beta1.TextToSpeechSettings.output_audio_encoding:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioEncoding
+ 11, // 5: google.cloud.dialogflow.v2beta1.TextToSpeechSettings.synthesize_speech_configs:type_name -> google.cloud.dialogflow.v2beta1.TextToSpeechSettings.SynthesizeSpeechConfigsEntry
+ 1, // 6: google.cloud.dialogflow.v2beta1.ListEnvironmentsResponse.environments:type_name -> google.cloud.dialogflow.v2beta1.Environment
+ 1, // 7: google.cloud.dialogflow.v2beta1.CreateEnvironmentRequest.environment:type_name -> google.cloud.dialogflow.v2beta1.Environment
+ 1, // 8: google.cloud.dialogflow.v2beta1.UpdateEnvironmentRequest.environment:type_name -> google.cloud.dialogflow.v2beta1.Environment
+ 16, // 9: google.cloud.dialogflow.v2beta1.UpdateEnvironmentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 12, // 10: google.cloud.dialogflow.v2beta1.EnvironmentHistory.entries:type_name -> google.cloud.dialogflow.v2beta1.EnvironmentHistory.Entry
+ 17, // 11: google.cloud.dialogflow.v2beta1.TextToSpeechSettings.SynthesizeSpeechConfigsEntry.value:type_name -> google.cloud.dialogflow.v2beta1.SynthesizeSpeechConfig
+ 13, // 12: google.cloud.dialogflow.v2beta1.EnvironmentHistory.Entry.create_time:type_name -> google.protobuf.Timestamp
+ 3, // 13: google.cloud.dialogflow.v2beta1.Environments.ListEnvironments:input_type -> google.cloud.dialogflow.v2beta1.ListEnvironmentsRequest
+ 5, // 14: google.cloud.dialogflow.v2beta1.Environments.GetEnvironment:input_type -> google.cloud.dialogflow.v2beta1.GetEnvironmentRequest
+ 6, // 15: google.cloud.dialogflow.v2beta1.Environments.CreateEnvironment:input_type -> google.cloud.dialogflow.v2beta1.CreateEnvironmentRequest
+ 7, // 16: google.cloud.dialogflow.v2beta1.Environments.UpdateEnvironment:input_type -> google.cloud.dialogflow.v2beta1.UpdateEnvironmentRequest
+ 8, // 17: google.cloud.dialogflow.v2beta1.Environments.DeleteEnvironment:input_type -> google.cloud.dialogflow.v2beta1.DeleteEnvironmentRequest
+ 9, // 18: google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory:input_type -> google.cloud.dialogflow.v2beta1.GetEnvironmentHistoryRequest
+ 4, // 19: google.cloud.dialogflow.v2beta1.Environments.ListEnvironments:output_type -> google.cloud.dialogflow.v2beta1.ListEnvironmentsResponse
+ 1, // 20: google.cloud.dialogflow.v2beta1.Environments.GetEnvironment:output_type -> google.cloud.dialogflow.v2beta1.Environment
+ 1, // 21: google.cloud.dialogflow.v2beta1.Environments.CreateEnvironment:output_type -> google.cloud.dialogflow.v2beta1.Environment
+ 1, // 22: google.cloud.dialogflow.v2beta1.Environments.UpdateEnvironment:output_type -> google.cloud.dialogflow.v2beta1.Environment
+ 18, // 23: google.cloud.dialogflow.v2beta1.Environments.DeleteEnvironment:output_type -> google.protobuf.Empty
+ 10, // 24: google.cloud.dialogflow.v2beta1.Environments.GetEnvironmentHistory:output_type -> google.cloud.dialogflow.v2beta1.EnvironmentHistory
+ 19, // [19:25] is the sub-list for method output_type
+ 13, // [13:19] is the sub-list for method input_type
+ 13, // [13:13] is the sub-list for extension type_name
+ 13, // [13:13] is the sub-list for extension extendee
+ 0, // [0:13] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_environment_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_environment_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_environment_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_init()
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Environment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TextToSpeechSettings); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListEnvironmentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListEnvironmentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEnvironmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateEnvironmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateEnvironmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteEnvironmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetEnvironmentHistoryRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EnvironmentHistory); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EnvironmentHistory_Entry); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_environment_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 12,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_environment_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_environment_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_environment_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_environment_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_environment_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_environment_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_environment_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_environment_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// EnvironmentsClient is the client API for Environments service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type EnvironmentsClient interface {
+ // Returns the list of all non-draft environments of the specified agent.
+ ListEnvironments(ctx context.Context, in *ListEnvironmentsRequest, opts ...grpc.CallOption) (*ListEnvironmentsResponse, error)
+ // Retrieves the specified agent environment.
+ GetEnvironment(ctx context.Context, in *GetEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error)
+ // Creates an agent environment.
+ CreateEnvironment(ctx context.Context, in *CreateEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error)
+ // Updates the specified agent environment.
+ //
+ // This method allows you to deploy new agent versions into the environment.
+ // When an environment is pointed to a new agent version by setting
+ // `environment.agent_version`, the environment is temporarily set to the
+ // `LOADING` state. During that time, the environment keeps on serving the
+ // previous version of the agent. After the new agent version is done loading,
+ // the environment is set back to the `RUNNING` state.
+ // You can use "-" as Environment ID in environment name to update version
+ // in "draft" environment. WARNING: this will negate all recent changes to
+ // draft and can't be undone. You may want to save the draft to a version
+ // before calling this function.
+ UpdateEnvironment(ctx context.Context, in *UpdateEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error)
+ // Deletes the specified agent environment.
+ DeleteEnvironment(ctx context.Context, in *DeleteEnvironmentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Gets the history of the specified environment.
+ GetEnvironmentHistory(ctx context.Context, in *GetEnvironmentHistoryRequest, opts ...grpc.CallOption) (*EnvironmentHistory, error)
+}
+
+type environmentsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewEnvironmentsClient(cc grpc.ClientConnInterface) EnvironmentsClient {
+ return &environmentsClient{cc}
+}
+
+func (c *environmentsClient) ListEnvironments(ctx context.Context, in *ListEnvironmentsRequest, opts ...grpc.CallOption) (*ListEnvironmentsResponse, error) {
+ out := new(ListEnvironmentsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/ListEnvironments", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *environmentsClient) GetEnvironment(ctx context.Context, in *GetEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error) {
+ out := new(Environment)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/GetEnvironment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *environmentsClient) CreateEnvironment(ctx context.Context, in *CreateEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error) {
+ out := new(Environment)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/CreateEnvironment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *environmentsClient) UpdateEnvironment(ctx context.Context, in *UpdateEnvironmentRequest, opts ...grpc.CallOption) (*Environment, error) {
+ out := new(Environment)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/UpdateEnvironment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *environmentsClient) DeleteEnvironment(ctx context.Context, in *DeleteEnvironmentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/DeleteEnvironment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *environmentsClient) GetEnvironmentHistory(ctx context.Context, in *GetEnvironmentHistoryRequest, opts ...grpc.CallOption) (*EnvironmentHistory, error) {
+ out := new(EnvironmentHistory)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Environments/GetEnvironmentHistory", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// EnvironmentsServer is the server API for Environments service.
+type EnvironmentsServer interface {
+ // Returns the list of all non-draft environments of the specified agent.
+ ListEnvironments(context.Context, *ListEnvironmentsRequest) (*ListEnvironmentsResponse, error)
+ // Retrieves the specified agent environment.
+ GetEnvironment(context.Context, *GetEnvironmentRequest) (*Environment, error)
+ // Creates an agent environment.
+ CreateEnvironment(context.Context, *CreateEnvironmentRequest) (*Environment, error)
+ // Updates the specified agent environment.
+ //
+ // This method allows you to deploy new agent versions into the environment.
+ // When an environment is pointed to a new agent version by setting
+ // `environment.agent_version`, the environment is temporarily set to the
+ // `LOADING` state. During that time, the environment keeps on serving the
+ // previous version of the agent. After the new agent version is done loading,
+ // the environment is set back to the `RUNNING` state.
+ // You can use "-" as Environment ID in environment name to update version
+ // in "draft" environment. WARNING: this will negate all recent changes to
+ // draft and can't be undone. You may want to save the draft to a version
+ // before calling this function.
+ UpdateEnvironment(context.Context, *UpdateEnvironmentRequest) (*Environment, error)
+ // Deletes the specified agent environment.
+ DeleteEnvironment(context.Context, *DeleteEnvironmentRequest) (*emptypb.Empty, error)
+ // Gets the history of the specified environment.
+ GetEnvironmentHistory(context.Context, *GetEnvironmentHistoryRequest) (*EnvironmentHistory, error)
+}
+
+// UnimplementedEnvironmentsServer can be embedded to have forward compatible implementations.
+type UnimplementedEnvironmentsServer struct {
+}
+
+func (*UnimplementedEnvironmentsServer) ListEnvironments(context.Context, *ListEnvironmentsRequest) (*ListEnvironmentsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListEnvironments not implemented")
+}
+func (*UnimplementedEnvironmentsServer) GetEnvironment(context.Context, *GetEnvironmentRequest) (*Environment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetEnvironment not implemented")
+}
+func (*UnimplementedEnvironmentsServer) CreateEnvironment(context.Context, *CreateEnvironmentRequest) (*Environment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateEnvironment not implemented")
+}
+func (*UnimplementedEnvironmentsServer) UpdateEnvironment(context.Context, *UpdateEnvironmentRequest) (*Environment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateEnvironment not implemented")
+}
+func (*UnimplementedEnvironmentsServer) DeleteEnvironment(context.Context, *DeleteEnvironmentRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteEnvironment not implemented")
+}
+func (*UnimplementedEnvironmentsServer) GetEnvironmentHistory(context.Context, *GetEnvironmentHistoryRequest) (*EnvironmentHistory, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetEnvironmentHistory not implemented")
+}
+
+func RegisterEnvironmentsServer(s *grpc.Server, srv EnvironmentsServer) {
+ s.RegisterService(&_Environments_serviceDesc, srv)
+}
+
+func _Environments_ListEnvironments_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListEnvironmentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).ListEnvironments(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/ListEnvironments",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).ListEnvironments(ctx, req.(*ListEnvironmentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Environments_GetEnvironment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetEnvironmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).GetEnvironment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/GetEnvironment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).GetEnvironment(ctx, req.(*GetEnvironmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Environments_CreateEnvironment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateEnvironmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).CreateEnvironment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/CreateEnvironment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).CreateEnvironment(ctx, req.(*CreateEnvironmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Environments_UpdateEnvironment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateEnvironmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).UpdateEnvironment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/UpdateEnvironment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).UpdateEnvironment(ctx, req.(*UpdateEnvironmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Environments_DeleteEnvironment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteEnvironmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).DeleteEnvironment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/DeleteEnvironment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).DeleteEnvironment(ctx, req.(*DeleteEnvironmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Environments_GetEnvironmentHistory_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetEnvironmentHistoryRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(EnvironmentsServer).GetEnvironmentHistory(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Environments/GetEnvironmentHistory",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(EnvironmentsServer).GetEnvironmentHistory(ctx, req.(*GetEnvironmentHistoryRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Environments_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Environments",
+ HandlerType: (*EnvironmentsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListEnvironments",
+ Handler: _Environments_ListEnvironments_Handler,
+ },
+ {
+ MethodName: "GetEnvironment",
+ Handler: _Environments_GetEnvironment_Handler,
+ },
+ {
+ MethodName: "CreateEnvironment",
+ Handler: _Environments_CreateEnvironment_Handler,
+ },
+ {
+ MethodName: "UpdateEnvironment",
+ Handler: _Environments_UpdateEnvironment_Handler,
+ },
+ {
+ MethodName: "DeleteEnvironment",
+ Handler: _Environments_DeleteEnvironment_Handler,
+ },
+ {
+ MethodName: "GetEnvironmentHistory",
+ Handler: _Environments_GetEnvironmentHistory_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/environment.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/fulfillment.pb.go b/dialogflow/apiv2beta1/dialogflowpb/fulfillment.pb.go
new file mode 100644
index 0000000..1613de2
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/fulfillment.pb.go
@@ -0,0 +1,881 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/fulfillment.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The type of the feature.
+type Fulfillment_Feature_Type int32
+
+const (
+ // Feature type not specified.
+ Fulfillment_Feature_TYPE_UNSPECIFIED Fulfillment_Feature_Type = 0
+ // Fulfillment is enabled for SmallTalk.
+ Fulfillment_Feature_SMALLTALK Fulfillment_Feature_Type = 1
+)
+
+// Enum value maps for Fulfillment_Feature_Type.
+var (
+ Fulfillment_Feature_Type_name = map[int32]string{
+ 0: "TYPE_UNSPECIFIED",
+ 1: "SMALLTALK",
+ }
+ Fulfillment_Feature_Type_value = map[string]int32{
+ "TYPE_UNSPECIFIED": 0,
+ "SMALLTALK": 1,
+ }
+)
+
+func (x Fulfillment_Feature_Type) Enum() *Fulfillment_Feature_Type {
+ p := new(Fulfillment_Feature_Type)
+ *p = x
+ return p
+}
+
+func (x Fulfillment_Feature_Type) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Fulfillment_Feature_Type) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_enumTypes[0].Descriptor()
+}
+
+func (Fulfillment_Feature_Type) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_enumTypes[0]
+}
+
+func (x Fulfillment_Feature_Type) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Fulfillment_Feature_Type.Descriptor instead.
+func (Fulfillment_Feature_Type) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{0, 1, 0}
+}
+
+// By default, your agent responds to a matched intent with a static response.
+// As an alternative, you can provide a more dynamic response by using
+// fulfillment. When you enable fulfillment for an intent, Dialogflow responds
+// to that intent by calling a service that you define. For example, if an
+// end-user wants to schedule a haircut on Friday, your service can check your
+// database and respond to the end-user with availability information for
+// Friday.
+//
+// For more information, see the [fulfillment
+// guide](https://cloud.google.com/dialogflow/docs/fulfillment-overview).
+type Fulfillment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The unique identifier of the fulfillment.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent/fulfillment`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/fulfillment`
+ //
+ // This field is not used for Fulfillment in an Environment.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The human-readable name of the fulfillment, unique within the agent.
+ //
+ // This field is not used for Fulfillment in an Environment.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Required. The fulfillment configuration.
+ //
+ // Types that are assignable to Fulfillment:
+ //
+ // *Fulfillment_GenericWebService_
+ Fulfillment isFulfillment_Fulfillment `protobuf_oneof:"fulfillment"`
+ // Whether fulfillment is enabled.
+ Enabled bool `protobuf:"varint,4,opt,name=enabled,proto3" json:"enabled,omitempty"`
+ // The field defines whether the fulfillment is enabled for certain features.
+ Features []*Fulfillment_Feature `protobuf:"bytes,5,rep,name=features,proto3" json:"features,omitempty"`
+}
+
+func (x *Fulfillment) Reset() {
+ *x = Fulfillment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Fulfillment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Fulfillment) ProtoMessage() {}
+
+func (x *Fulfillment) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Fulfillment.ProtoReflect.Descriptor instead.
+func (*Fulfillment) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Fulfillment) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Fulfillment) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (m *Fulfillment) GetFulfillment() isFulfillment_Fulfillment {
+ if m != nil {
+ return m.Fulfillment
+ }
+ return nil
+}
+
+func (x *Fulfillment) GetGenericWebService() *Fulfillment_GenericWebService {
+ if x, ok := x.GetFulfillment().(*Fulfillment_GenericWebService_); ok {
+ return x.GenericWebService
+ }
+ return nil
+}
+
+func (x *Fulfillment) GetEnabled() bool {
+ if x != nil {
+ return x.Enabled
+ }
+ return false
+}
+
+func (x *Fulfillment) GetFeatures() []*Fulfillment_Feature {
+ if x != nil {
+ return x.Features
+ }
+ return nil
+}
+
+type isFulfillment_Fulfillment interface {
+ isFulfillment_Fulfillment()
+}
+
+type Fulfillment_GenericWebService_ struct {
+ // Configuration for a generic web service.
+ GenericWebService *Fulfillment_GenericWebService `protobuf:"bytes,3,opt,name=generic_web_service,json=genericWebService,proto3,oneof"`
+}
+
+func (*Fulfillment_GenericWebService_) isFulfillment_Fulfillment() {}
+
+// The request message for
+// [Fulfillments.GetFulfillment][google.cloud.dialogflow.v2beta1.Fulfillments.GetFulfillment].
+type GetFulfillmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the fulfillment.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent/fulfillment`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/fulfillment`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetFulfillmentRequest) Reset() {
+ *x = GetFulfillmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetFulfillmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetFulfillmentRequest) ProtoMessage() {}
+
+func (x *GetFulfillmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetFulfillmentRequest.ProtoReflect.Descriptor instead.
+func (*GetFulfillmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *GetFulfillmentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Fulfillments.UpdateFulfillment][google.cloud.dialogflow.v2beta1.Fulfillments.UpdateFulfillment].
+type UpdateFulfillmentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The fulfillment to update.
+ Fulfillment *Fulfillment `protobuf:"bytes,1,opt,name=fulfillment,proto3" json:"fulfillment,omitempty"`
+ // Required. The mask to control which fields get updated. If the mask is not
+ // present, all fields will be updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateFulfillmentRequest) Reset() {
+ *x = UpdateFulfillmentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateFulfillmentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateFulfillmentRequest) ProtoMessage() {}
+
+func (x *UpdateFulfillmentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateFulfillmentRequest.ProtoReflect.Descriptor instead.
+func (*UpdateFulfillmentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *UpdateFulfillmentRequest) GetFulfillment() *Fulfillment {
+ if x != nil {
+ return x.Fulfillment
+ }
+ return nil
+}
+
+func (x *UpdateFulfillmentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// Represents configuration for a generic web service.
+// Dialogflow supports two mechanisms for authentications:
+//
+// - Basic authentication with username and password.
+// - Authentication with additional authentication headers.
+//
+// More information could be found at:
+// https://cloud.google.com/dialogflow/docs/fulfillment-configure.
+type Fulfillment_GenericWebService struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The fulfillment URI for receiving POST requests.
+ // It must use https protocol.
+ Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
+ // The user name for HTTP Basic authentication.
+ Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
+ // The password for HTTP Basic authentication.
+ Password string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
+ // The HTTP request headers to send together with fulfillment requests.
+ RequestHeaders map[string]string `protobuf:"bytes,4,rep,name=request_headers,json=requestHeaders,proto3" json:"request_headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Optional. Indicates if generic web service is created through Cloud
+ // Functions integration. Defaults to false.
+ //
+ // is_cloud_function is deprecated. Cloud functions can be configured by
+ // its uri as a regular web service now.
+ //
+ // Deprecated: Do not use.
+ IsCloudFunction bool `protobuf:"varint,5,opt,name=is_cloud_function,json=isCloudFunction,proto3" json:"is_cloud_function,omitempty"`
+}
+
+func (x *Fulfillment_GenericWebService) Reset() {
+ *x = Fulfillment_GenericWebService{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Fulfillment_GenericWebService) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Fulfillment_GenericWebService) ProtoMessage() {}
+
+func (x *Fulfillment_GenericWebService) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Fulfillment_GenericWebService.ProtoReflect.Descriptor instead.
+func (*Fulfillment_GenericWebService) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *Fulfillment_GenericWebService) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+func (x *Fulfillment_GenericWebService) GetUsername() string {
+ if x != nil {
+ return x.Username
+ }
+ return ""
+}
+
+func (x *Fulfillment_GenericWebService) GetPassword() string {
+ if x != nil {
+ return x.Password
+ }
+ return ""
+}
+
+func (x *Fulfillment_GenericWebService) GetRequestHeaders() map[string]string {
+ if x != nil {
+ return x.RequestHeaders
+ }
+ return nil
+}
+
+// Deprecated: Do not use.
+func (x *Fulfillment_GenericWebService) GetIsCloudFunction() bool {
+ if x != nil {
+ return x.IsCloudFunction
+ }
+ return false
+}
+
+// Whether fulfillment is enabled for the specific feature.
+type Fulfillment_Feature struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The type of the feature that enabled for fulfillment.
+ Type Fulfillment_Feature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.dialogflow.v2beta1.Fulfillment_Feature_Type" json:"type,omitempty"`
+}
+
+func (x *Fulfillment_Feature) Reset() {
+ *x = Fulfillment_Feature{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Fulfillment_Feature) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Fulfillment_Feature) ProtoMessage() {}
+
+func (x *Fulfillment_Feature) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Fulfillment_Feature.ProtoReflect.Descriptor instead.
+func (*Fulfillment_Feature) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP(), []int{0, 1}
+}
+
+func (x *Fulfillment_Feature) GetType() Fulfillment_Feature_Type {
+ if x != nil {
+ return x.Type
+ }
+ return Fulfillment_Feature_TYPE_UNSPECIFIED
+}
+
+var File_google_cloud_dialogflow_v2beta1_fulfillment_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDesc = []byte{
+ 0x0a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
+ 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
+ 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d,
+ 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xa5, 0x07, 0x0a, 0x0b, 0x46, 0x75,
+ 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
+ 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x70, 0x0a, 0x13, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63,
+ 0x5f, 0x77, 0x65, 0x62, 0x5f, 0x73, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74,
+ 0x2e, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x57, 0x65, 0x62, 0x53, 0x65, 0x72, 0x76, 0x69,
+ 0x63, 0x65, 0x48, 0x00, 0x52, 0x11, 0x67, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x57, 0x65, 0x62,
+ 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c,
+ 0x65, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x07, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65,
+ 0x64, 0x12, 0x50, 0x0a, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x73, 0x18, 0x05, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e,
+ 0x74, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x52, 0x08, 0x66, 0x65, 0x61, 0x74, 0x75,
+ 0x72, 0x65, 0x73, 0x1a, 0xd5, 0x02, 0x0a, 0x11, 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x57,
+ 0x65, 0x62, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x72, 0x69,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x03, 0x75, 0x72, 0x69,
+ 0x12, 0x1a, 0x0a, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x75, 0x73, 0x65, 0x72, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1a, 0x0a, 0x08,
+ 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x12, 0x7b, 0x0a, 0x0f, 0x72, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x52, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x2e,
+ 0x47, 0x65, 0x6e, 0x65, 0x72, 0x69, 0x63, 0x57, 0x65, 0x62, 0x53, 0x65, 0x72, 0x76, 0x69, 0x63,
+ 0x65, 0x2e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
+ 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x48, 0x65,
+ 0x61, 0x64, 0x65, 0x72, 0x73, 0x12, 0x31, 0x0a, 0x11, 0x69, 0x73, 0x5f, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x5f, 0x66, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
+ 0x42, 0x05, 0x18, 0x01, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x69, 0x73, 0x43, 0x6c, 0x6f, 0x75, 0x64,
+ 0x46, 0x75, 0x6e, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x41, 0x0a, 0x13, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12,
+ 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65,
+ 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0x85, 0x01, 0x0a, 0x07,
+ 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x4d, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65,
+ 0x52, 0x04, 0x74, 0x79, 0x70, 0x65, 0x22, 0x2b, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14,
+ 0x0a, 0x10, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49,
+ 0x45, 0x44, 0x10, 0x00, 0x12, 0x0d, 0x0a, 0x09, 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x54, 0x41, 0x4c,
+ 0x4b, 0x10, 0x01, 0x3a, 0x8c, 0x01, 0xea, 0x41, 0x88, 0x01, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e,
+ 0x74, 0x12, 0x24, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x66, 0x75, 0x6c, 0x66,
+ 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65,
+ 0x6e, 0x74, 0x42, 0x0d, 0x0a, 0x0b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e,
+ 0x74, 0x22, 0x5a, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27,
+ 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x46, 0x75, 0x6c, 0x66,
+ 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xb1, 0x01,
+ 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53, 0x0a, 0x0b, 0x66, 0x75,
+ 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x12,
+ 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73,
+ 0x6b, 0x32, 0xb9, 0x05, 0x0a, 0x0c, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e,
+ 0x74, 0x73, 0x12, 0xef, 0x01, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c,
+ 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x46, 0x75, 0x6c, 0x66, 0x69,
+ 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x77, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x6a, 0x12, 0x2c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74,
+ 0x7d, 0x5a, 0x3a, 0x12, 0x38, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e,
+ 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x2f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0xda, 0x41, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xbc, 0x02, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x46,
+ 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x22, 0xbd, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9c, 0x01, 0x32, 0x38, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
+ 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x66, 0x75, 0x6c, 0x66, 0x69,
+ 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x3a, 0x0b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c,
+ 0x6d, 0x65, 0x6e, 0x74, 0x5a, 0x53, 0x32, 0x44, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61,
+ 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x3a, 0x0b, 0x66, 0x75,
+ 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x17, 0x66, 0x75, 0x6c, 0x66,
+ 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d,
+ 0x61, 0x73, 0x6b, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
+ 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
+ 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
+ 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa8, 0x01,
+ 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x10, 0x46, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65,
+ 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70,
+ 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01,
+ 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_fulfillment_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes = make([]protoimpl.MessageInfo, 6)
+var file_google_cloud_dialogflow_v2beta1_fulfillment_proto_goTypes = []interface{}{
+ (Fulfillment_Feature_Type)(0), // 0: google.cloud.dialogflow.v2beta1.Fulfillment.Feature.Type
+ (*Fulfillment)(nil), // 1: google.cloud.dialogflow.v2beta1.Fulfillment
+ (*GetFulfillmentRequest)(nil), // 2: google.cloud.dialogflow.v2beta1.GetFulfillmentRequest
+ (*UpdateFulfillmentRequest)(nil), // 3: google.cloud.dialogflow.v2beta1.UpdateFulfillmentRequest
+ (*Fulfillment_GenericWebService)(nil), // 4: google.cloud.dialogflow.v2beta1.Fulfillment.GenericWebService
+ (*Fulfillment_Feature)(nil), // 5: google.cloud.dialogflow.v2beta1.Fulfillment.Feature
+ nil, // 6: google.cloud.dialogflow.v2beta1.Fulfillment.GenericWebService.RequestHeadersEntry
+ (*fieldmaskpb.FieldMask)(nil), // 7: google.protobuf.FieldMask
+}
+var file_google_cloud_dialogflow_v2beta1_fulfillment_proto_depIdxs = []int32{
+ 4, // 0: google.cloud.dialogflow.v2beta1.Fulfillment.generic_web_service:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment.GenericWebService
+ 5, // 1: google.cloud.dialogflow.v2beta1.Fulfillment.features:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment.Feature
+ 1, // 2: google.cloud.dialogflow.v2beta1.UpdateFulfillmentRequest.fulfillment:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment
+ 7, // 3: google.cloud.dialogflow.v2beta1.UpdateFulfillmentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 6, // 4: google.cloud.dialogflow.v2beta1.Fulfillment.GenericWebService.request_headers:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment.GenericWebService.RequestHeadersEntry
+ 0, // 5: google.cloud.dialogflow.v2beta1.Fulfillment.Feature.type:type_name -> google.cloud.dialogflow.v2beta1.Fulfillment.Feature.Type
+ 2, // 6: google.cloud.dialogflow.v2beta1.Fulfillments.GetFulfillment:input_type -> google.cloud.dialogflow.v2beta1.GetFulfillmentRequest
+ 3, // 7: google.cloud.dialogflow.v2beta1.Fulfillments.UpdateFulfillment:input_type -> google.cloud.dialogflow.v2beta1.UpdateFulfillmentRequest
+ 1, // 8: google.cloud.dialogflow.v2beta1.Fulfillments.GetFulfillment:output_type -> google.cloud.dialogflow.v2beta1.Fulfillment
+ 1, // 9: google.cloud.dialogflow.v2beta1.Fulfillments.UpdateFulfillment:output_type -> google.cloud.dialogflow.v2beta1.Fulfillment
+ 8, // [8:10] is the sub-list for method output_type
+ 6, // [6:8] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_fulfillment_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_fulfillment_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_fulfillment_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Fulfillment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetFulfillmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateFulfillmentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Fulfillment_GenericWebService); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Fulfillment_Feature); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes[0].OneofWrappers = []interface{}{
+ (*Fulfillment_GenericWebService_)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 6,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_fulfillment_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_fulfillment_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_fulfillment_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_fulfillment_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_fulfillment_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_fulfillment_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// FulfillmentsClient is the client API for Fulfillments service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type FulfillmentsClient interface {
+ // Retrieves the fulfillment.
+ GetFulfillment(ctx context.Context, in *GetFulfillmentRequest, opts ...grpc.CallOption) (*Fulfillment, error)
+ // Updates the fulfillment.
+ UpdateFulfillment(ctx context.Context, in *UpdateFulfillmentRequest, opts ...grpc.CallOption) (*Fulfillment, error)
+}
+
+type fulfillmentsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewFulfillmentsClient(cc grpc.ClientConnInterface) FulfillmentsClient {
+ return &fulfillmentsClient{cc}
+}
+
+func (c *fulfillmentsClient) GetFulfillment(ctx context.Context, in *GetFulfillmentRequest, opts ...grpc.CallOption) (*Fulfillment, error) {
+ out := new(Fulfillment)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Fulfillments/GetFulfillment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *fulfillmentsClient) UpdateFulfillment(ctx context.Context, in *UpdateFulfillmentRequest, opts ...grpc.CallOption) (*Fulfillment, error) {
+ out := new(Fulfillment)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Fulfillments/UpdateFulfillment", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// FulfillmentsServer is the server API for Fulfillments service.
+type FulfillmentsServer interface {
+ // Retrieves the fulfillment.
+ GetFulfillment(context.Context, *GetFulfillmentRequest) (*Fulfillment, error)
+ // Updates the fulfillment.
+ UpdateFulfillment(context.Context, *UpdateFulfillmentRequest) (*Fulfillment, error)
+}
+
+// UnimplementedFulfillmentsServer can be embedded to have forward compatible implementations.
+type UnimplementedFulfillmentsServer struct {
+}
+
+func (*UnimplementedFulfillmentsServer) GetFulfillment(context.Context, *GetFulfillmentRequest) (*Fulfillment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetFulfillment not implemented")
+}
+func (*UnimplementedFulfillmentsServer) UpdateFulfillment(context.Context, *UpdateFulfillmentRequest) (*Fulfillment, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateFulfillment not implemented")
+}
+
+func RegisterFulfillmentsServer(s *grpc.Server, srv FulfillmentsServer) {
+ s.RegisterService(&_Fulfillments_serviceDesc, srv)
+}
+
+func _Fulfillments_GetFulfillment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetFulfillmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FulfillmentsServer).GetFulfillment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Fulfillments/GetFulfillment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FulfillmentsServer).GetFulfillment(ctx, req.(*GetFulfillmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Fulfillments_UpdateFulfillment_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateFulfillmentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(FulfillmentsServer).UpdateFulfillment(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Fulfillments/UpdateFulfillment",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(FulfillmentsServer).UpdateFulfillment(ctx, req.(*UpdateFulfillmentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Fulfillments_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Fulfillments",
+ HandlerType: (*FulfillmentsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "GetFulfillment",
+ Handler: _Fulfillments_GetFulfillment_Handler,
+ },
+ {
+ MethodName: "UpdateFulfillment",
+ Handler: _Fulfillments_UpdateFulfillment_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/fulfillment.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/gcs.pb.go b/dialogflow/apiv2beta1/dialogflowpb/gcs.pb.go
new file mode 100644
index 0000000..c3f0414
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/gcs.pb.go
@@ -0,0 +1,319 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/gcs.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Google Cloud Storage locations for the inputs.
+type GcsSources struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Google Cloud Storage URIs for the inputs. A URI is of the
+ // form:
+ //
+ // gs://bucket/object-prefix-or-name
+ //
+ // Whether a prefix or name is used depends on the use case.
+ Uris []string `protobuf:"bytes,2,rep,name=uris,proto3" json:"uris,omitempty"`
+}
+
+func (x *GcsSources) Reset() {
+ *x = GcsSources{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GcsSources) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GcsSources) ProtoMessage() {}
+
+func (x *GcsSources) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GcsSources.ProtoReflect.Descriptor instead.
+func (*GcsSources) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *GcsSources) GetUris() []string {
+ if x != nil {
+ return x.Uris
+ }
+ return nil
+}
+
+// Google Cloud Storage location for single input.
+type GcsSource struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The Google Cloud Storage URIs for the inputs. A URI is of the
+ // form:
+ //
+ // gs://bucket/object-prefix-or-name
+ //
+ // Whether a prefix or name is used depends on the use case.
+ Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
+}
+
+func (x *GcsSource) Reset() {
+ *x = GcsSource{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GcsSource) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GcsSource) ProtoMessage() {}
+
+func (x *GcsSource) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GcsSource.ProtoReflect.Descriptor instead.
+func (*GcsSource) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *GcsSource) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+// Google Cloud Storage location for the output.
+type GcsDestination struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The Google Cloud Storage URIs for the output. A URI is of the
+ // form:
+ //
+ // gs://bucket/object-prefix-or-name
+ //
+ // Whether a prefix or name is used depends on the use case. The requesting
+ // user must have "write-permission" to the bucket.
+ Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
+}
+
+func (x *GcsDestination) Reset() {
+ *x = GcsDestination{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GcsDestination) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GcsDestination) ProtoMessage() {}
+
+func (x *GcsDestination) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GcsDestination.ProtoReflect.Descriptor instead.
+func (*GcsDestination) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *GcsDestination) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_gcs_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDesc = []byte{
+ 0x0a, 0x29, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x67, 0x63, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1f, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62,
+ 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x25, 0x0a,
+ 0x0a, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x73, 0x12, 0x17, 0x0a, 0x04, 0x75,
+ 0x72, 0x69, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04,
+ 0x75, 0x72, 0x69, 0x73, 0x22, 0x1d, 0x0a, 0x09, 0x47, 0x63, 0x73, 0x53, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03,
+ 0x75, 0x72, 0x69, 0x22, 0x22, 0x0a, 0x0e, 0x47, 0x63, 0x73, 0x44, 0x65, 0x73, 0x74, 0x69, 0x6e,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x42, 0xa0, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42,
+ 0x08, 0x47, 0x63, 0x73, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62,
+ 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
+var file_google_cloud_dialogflow_v2beta1_gcs_proto_goTypes = []interface{}{
+ (*GcsSources)(nil), // 0: google.cloud.dialogflow.v2beta1.GcsSources
+ (*GcsSource)(nil), // 1: google.cloud.dialogflow.v2beta1.GcsSource
+ (*GcsDestination)(nil), // 2: google.cloud.dialogflow.v2beta1.GcsDestination
+}
+var file_google_cloud_dialogflow_v2beta1_gcs_proto_depIdxs = []int32{
+ 0, // [0:0] is the sub-list for method output_type
+ 0, // [0:0] is the sub-list for method input_type
+ 0, // [0:0] is the sub-list for extension type_name
+ 0, // [0:0] is the sub-list for extension extendee
+ 0, // [0:0] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_gcs_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_gcs_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_gcs_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GcsSources); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GcsSource); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GcsDestination); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 3,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_gcs_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_gcs_proto_depIdxs,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_gcs_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_gcs_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_gcs_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/human_agent_assistant_event.pb.go b/dialogflow/apiv2beta1/dialogflowpb/human_agent_assistant_event.pb.go
new file mode 100644
index 0000000..bf3428e
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/human_agent_assistant_event.pb.go
@@ -0,0 +1,220 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/human_agent_assistant_event.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Output only. Represents a notification sent to Pub/Sub subscribers for
+// agent assistant events in a specific conversation.
+type HumanAgentAssistantEvent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The conversation this notification refers to.
+ // Format: `projects/<Project ID>/conversations/<Conversation ID>`.
+ Conversation string `protobuf:"bytes,1,opt,name=conversation,proto3" json:"conversation,omitempty"`
+ // The participant that the suggestion is compiled for. And This field is used
+ // to call
+ // [Participants.ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions]
+ // API. Format: `projects/<Project ID>/conversations/<Conversation
+ // ID>/participants/<Participant ID>`.
+ // It will not be set in legacy workflow.
+ // [HumanAgentAssistantConfig.name][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.name]
+ // for more information.
+ Participant string `protobuf:"bytes,3,opt,name=participant,proto3" json:"participant,omitempty"`
+ // The suggestion results payload that this notification refers to. It will
+ // only be set when
+ // [HumanAgentAssistantConfig.SuggestionConfig.group_suggestion_responses][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.group_suggestion_responses]
+ // sets to true.
+ SuggestionResults []*SuggestionResult `protobuf:"bytes,5,rep,name=suggestion_results,json=suggestionResults,proto3" json:"suggestion_results,omitempty"`
+}
+
+func (x *HumanAgentAssistantEvent) Reset() {
+ *x = HumanAgentAssistantEvent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *HumanAgentAssistantEvent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*HumanAgentAssistantEvent) ProtoMessage() {}
+
+func (x *HumanAgentAssistantEvent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use HumanAgentAssistantEvent.ProtoReflect.Descriptor instead.
+func (*HumanAgentAssistantEvent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *HumanAgentAssistantEvent) GetConversation() string {
+ if x != nil {
+ return x.Conversation
+ }
+ return ""
+}
+
+func (x *HumanAgentAssistantEvent) GetParticipant() string {
+ if x != nil {
+ return x.Participant
+ }
+ return ""
+}
+
+func (x *HumanAgentAssistantEvent) GetSuggestionResults() []*SuggestionResult {
+ if x != nil {
+ return x.SuggestionResults
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDesc = []byte{
+ 0x0a, 0x41, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x73,
+ 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x5f, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x1a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc2, 0x01, 0x0a, 0x18, 0x48, 0x75, 0x6d, 0x61,
+ 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x12, 0x22, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x60, 0x0a, 0x12, 0x73, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73,
+ 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x11, 0x73, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x42, 0xb5, 0x01, 0x0a,
+ 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x42, 0x1d, 0x48, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74,
+ 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x61, 0x6e, 0x74, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02,
+ 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_goTypes = []interface{}{
+ (*HumanAgentAssistantEvent)(nil), // 0: google.cloud.dialogflow.v2beta1.HumanAgentAssistantEvent
+ (*SuggestionResult)(nil), // 1: google.cloud.dialogflow.v2beta1.SuggestionResult
+}
+var file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_depIdxs = []int32{
+ 1, // 0: google.cloud.dialogflow.v2beta1.HumanAgentAssistantEvent.suggestion_results:type_name -> google.cloud.dialogflow.v2beta1.SuggestionResult
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*HumanAgentAssistantEvent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_depIdxs,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_human_agent_assistant_event_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/intent.pb.go b/dialogflow/apiv2beta1/dialogflowpb/intent.pb.go
new file mode 100644
index 0000000..211743e
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/intent.pb.go
@@ -0,0 +1,7697 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/intent.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ structpb "google.golang.org/protobuf/types/known/structpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Represents the options for views of an intent.
+// An intent can be a sizable object. Therefore, we provide a resource view that
+// does not return training phrases in the response by default.
+type IntentView int32
+
+const (
+ // Training phrases field is not populated in the response.
+ IntentView_INTENT_VIEW_UNSPECIFIED IntentView = 0
+ // All fields are populated.
+ IntentView_INTENT_VIEW_FULL IntentView = 1
+)
+
+// Enum value maps for IntentView.
+var (
+ IntentView_name = map[int32]string{
+ 0: "INTENT_VIEW_UNSPECIFIED",
+ 1: "INTENT_VIEW_FULL",
+ }
+ IntentView_value = map[string]int32{
+ "INTENT_VIEW_UNSPECIFIED": 0,
+ "INTENT_VIEW_FULL": 1,
+ }
+)
+
+func (x IntentView) Enum() *IntentView {
+ p := new(IntentView)
+ *p = x
+ return p
+}
+
+func (x IntentView) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (IntentView) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[0].Descriptor()
+}
+
+func (IntentView) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[0]
+}
+
+func (x IntentView) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use IntentView.Descriptor instead.
+func (IntentView) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0}
+}
+
+// Represents the different states that webhooks can be in.
+type Intent_WebhookState int32
+
+const (
+ // Webhook is disabled in the agent and in the intent.
+ Intent_WEBHOOK_STATE_UNSPECIFIED Intent_WebhookState = 0
+ // Webhook is enabled in the agent and in the intent.
+ Intent_WEBHOOK_STATE_ENABLED Intent_WebhookState = 1
+ // Webhook is enabled in the agent and in the intent. Also, each slot
+ // filling prompt is forwarded to the webhook.
+ Intent_WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING Intent_WebhookState = 2
+)
+
+// Enum value maps for Intent_WebhookState.
+var (
+ Intent_WebhookState_name = map[int32]string{
+ 0: "WEBHOOK_STATE_UNSPECIFIED",
+ 1: "WEBHOOK_STATE_ENABLED",
+ 2: "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING",
+ }
+ Intent_WebhookState_value = map[string]int32{
+ "WEBHOOK_STATE_UNSPECIFIED": 0,
+ "WEBHOOK_STATE_ENABLED": 1,
+ "WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING": 2,
+ }
+)
+
+func (x Intent_WebhookState) Enum() *Intent_WebhookState {
+ p := new(Intent_WebhookState)
+ *p = x
+ return p
+}
+
+func (x Intent_WebhookState) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_WebhookState) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[1].Descriptor()
+}
+
+func (Intent_WebhookState) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[1]
+}
+
+func (x Intent_WebhookState) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_WebhookState.Descriptor instead.
+func (Intent_WebhookState) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Represents different types of training phrases.
+type Intent_TrainingPhrase_Type int32
+
+const (
+ // Not specified. This value should never be used.
+ Intent_TrainingPhrase_TYPE_UNSPECIFIED Intent_TrainingPhrase_Type = 0
+ // Examples do not contain @-prefixed entity type names, but example parts
+ // can be annotated with entity types.
+ Intent_TrainingPhrase_EXAMPLE Intent_TrainingPhrase_Type = 1
+ // Templates are not annotated with entity types, but they can contain
+ // @-prefixed entity type names as substrings.
+ // Note: Template mode has been deprecated. Example mode is the only
+ // supported way to create new training phrases. If you have existing
+ // training phrases in template mode, they will be removed during training
+ // and it can cause a drop in agent performance.
+ //
+ // Deprecated: Do not use.
+ Intent_TrainingPhrase_TEMPLATE Intent_TrainingPhrase_Type = 2
+)
+
+// Enum value maps for Intent_TrainingPhrase_Type.
+var (
+ Intent_TrainingPhrase_Type_name = map[int32]string{
+ 0: "TYPE_UNSPECIFIED",
+ 1: "EXAMPLE",
+ 2: "TEMPLATE",
+ }
+ Intent_TrainingPhrase_Type_value = map[string]int32{
+ "TYPE_UNSPECIFIED": 0,
+ "EXAMPLE": 1,
+ "TEMPLATE": 2,
+ }
+)
+
+func (x Intent_TrainingPhrase_Type) Enum() *Intent_TrainingPhrase_Type {
+ p := new(Intent_TrainingPhrase_Type)
+ *p = x
+ return p
+}
+
+func (x Intent_TrainingPhrase_Type) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_TrainingPhrase_Type) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[2].Descriptor()
+}
+
+func (Intent_TrainingPhrase_Type) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[2]
+}
+
+func (x Intent_TrainingPhrase_Type) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_TrainingPhrase_Type.Descriptor instead.
+func (Intent_TrainingPhrase_Type) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 0, 0}
+}
+
+// Represents different platforms that a rich message can be intended for.
+type Intent_Message_Platform int32
+
+const (
+ // Not specified.
+ Intent_Message_PLATFORM_UNSPECIFIED Intent_Message_Platform = 0
+ // Facebook.
+ Intent_Message_FACEBOOK Intent_Message_Platform = 1
+ // Slack.
+ Intent_Message_SLACK Intent_Message_Platform = 2
+ // Telegram.
+ Intent_Message_TELEGRAM Intent_Message_Platform = 3
+ // Kik.
+ Intent_Message_KIK Intent_Message_Platform = 4
+ // Skype.
+ Intent_Message_SKYPE Intent_Message_Platform = 5
+ // Line.
+ Intent_Message_LINE Intent_Message_Platform = 6
+ // Viber.
+ Intent_Message_VIBER Intent_Message_Platform = 7
+ // Google Assistant
+ // See [Dialogflow webhook
+ // format](https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
+ Intent_Message_ACTIONS_ON_GOOGLE Intent_Message_Platform = 8
+ // Telephony Gateway.
+ Intent_Message_TELEPHONY Intent_Message_Platform = 10
+ // Google Hangouts.
+ Intent_Message_GOOGLE_HANGOUTS Intent_Message_Platform = 11
+)
+
+// Enum value maps for Intent_Message_Platform.
+var (
+ Intent_Message_Platform_name = map[int32]string{
+ 0: "PLATFORM_UNSPECIFIED",
+ 1: "FACEBOOK",
+ 2: "SLACK",
+ 3: "TELEGRAM",
+ 4: "KIK",
+ 5: "SKYPE",
+ 6: "LINE",
+ 7: "VIBER",
+ 8: "ACTIONS_ON_GOOGLE",
+ 10: "TELEPHONY",
+ 11: "GOOGLE_HANGOUTS",
+ }
+ Intent_Message_Platform_value = map[string]int32{
+ "PLATFORM_UNSPECIFIED": 0,
+ "FACEBOOK": 1,
+ "SLACK": 2,
+ "TELEGRAM": 3,
+ "KIK": 4,
+ "SKYPE": 5,
+ "LINE": 6,
+ "VIBER": 7,
+ "ACTIONS_ON_GOOGLE": 8,
+ "TELEPHONY": 10,
+ "GOOGLE_HANGOUTS": 11,
+ }
+)
+
+func (x Intent_Message_Platform) Enum() *Intent_Message_Platform {
+ p := new(Intent_Message_Platform)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_Platform) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_Platform) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[3].Descriptor()
+}
+
+func (Intent_Message_Platform) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[3]
+}
+
+func (x Intent_Message_Platform) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_Platform.Descriptor instead.
+func (Intent_Message_Platform) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 0}
+}
+
+// The width of the cards in the carousel.
+type Intent_Message_RbmCarouselCard_CardWidth int32
+
+const (
+ // Not specified.
+ Intent_Message_RbmCarouselCard_CARD_WIDTH_UNSPECIFIED Intent_Message_RbmCarouselCard_CardWidth = 0
+ // 120 DP. Note that tall media cannot be used.
+ Intent_Message_RbmCarouselCard_SMALL Intent_Message_RbmCarouselCard_CardWidth = 1
+ // 232 DP.
+ Intent_Message_RbmCarouselCard_MEDIUM Intent_Message_RbmCarouselCard_CardWidth = 2
+)
+
+// Enum value maps for Intent_Message_RbmCarouselCard_CardWidth.
+var (
+ Intent_Message_RbmCarouselCard_CardWidth_name = map[int32]string{
+ 0: "CARD_WIDTH_UNSPECIFIED",
+ 1: "SMALL",
+ 2: "MEDIUM",
+ }
+ Intent_Message_RbmCarouselCard_CardWidth_value = map[string]int32{
+ "CARD_WIDTH_UNSPECIFIED": 0,
+ "SMALL": 1,
+ "MEDIUM": 2,
+ }
+)
+
+func (x Intent_Message_RbmCarouselCard_CardWidth) Enum() *Intent_Message_RbmCarouselCard_CardWidth {
+ p := new(Intent_Message_RbmCarouselCard_CardWidth)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_RbmCarouselCard_CardWidth) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_RbmCarouselCard_CardWidth) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[4].Descriptor()
+}
+
+func (Intent_Message_RbmCarouselCard_CardWidth) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[4]
+}
+
+func (x Intent_Message_RbmCarouselCard_CardWidth) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_RbmCarouselCard_CardWidth.Descriptor instead.
+func (Intent_Message_RbmCarouselCard_CardWidth) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 17, 0}
+}
+
+// Orientation of the card.
+type Intent_Message_RbmStandaloneCard_CardOrientation int32
+
+const (
+ // Not specified.
+ Intent_Message_RbmStandaloneCard_CARD_ORIENTATION_UNSPECIFIED Intent_Message_RbmStandaloneCard_CardOrientation = 0
+ // Horizontal layout.
+ Intent_Message_RbmStandaloneCard_HORIZONTAL Intent_Message_RbmStandaloneCard_CardOrientation = 1
+ // Vertical layout.
+ Intent_Message_RbmStandaloneCard_VERTICAL Intent_Message_RbmStandaloneCard_CardOrientation = 2
+)
+
+// Enum value maps for Intent_Message_RbmStandaloneCard_CardOrientation.
+var (
+ Intent_Message_RbmStandaloneCard_CardOrientation_name = map[int32]string{
+ 0: "CARD_ORIENTATION_UNSPECIFIED",
+ 1: "HORIZONTAL",
+ 2: "VERTICAL",
+ }
+ Intent_Message_RbmStandaloneCard_CardOrientation_value = map[string]int32{
+ "CARD_ORIENTATION_UNSPECIFIED": 0,
+ "HORIZONTAL": 1,
+ "VERTICAL": 2,
+ }
+)
+
+func (x Intent_Message_RbmStandaloneCard_CardOrientation) Enum() *Intent_Message_RbmStandaloneCard_CardOrientation {
+ p := new(Intent_Message_RbmStandaloneCard_CardOrientation)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_RbmStandaloneCard_CardOrientation) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_RbmStandaloneCard_CardOrientation) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[5].Descriptor()
+}
+
+func (Intent_Message_RbmStandaloneCard_CardOrientation) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[5]
+}
+
+func (x Intent_Message_RbmStandaloneCard_CardOrientation) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_RbmStandaloneCard_CardOrientation.Descriptor instead.
+func (Intent_Message_RbmStandaloneCard_CardOrientation) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 18, 0}
+}
+
+// Thumbnail preview alignment for standalone cards with horizontal
+// layout.
+type Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment int32
+
+const (
+ // Not specified.
+ Intent_Message_RbmStandaloneCard_THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment = 0
+ // Thumbnail preview is left-aligned.
+ Intent_Message_RbmStandaloneCard_LEFT Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment = 1
+ // Thumbnail preview is right-aligned.
+ Intent_Message_RbmStandaloneCard_RIGHT Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment = 2
+)
+
+// Enum value maps for Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment.
+var (
+ Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment_name = map[int32]string{
+ 0: "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED",
+ 1: "LEFT",
+ 2: "RIGHT",
+ }
+ Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment_value = map[string]int32{
+ "THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED": 0,
+ "LEFT": 1,
+ "RIGHT": 2,
+ }
+)
+
+func (x Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) Enum() *Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment {
+ p := new(Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[6].Descriptor()
+}
+
+func (Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[6]
+}
+
+func (x Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment.Descriptor instead.
+func (Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 18, 1}
+}
+
+// Media height
+type Intent_Message_RbmCardContent_RbmMedia_Height int32
+
+const (
+ // Not specified.
+ Intent_Message_RbmCardContent_RbmMedia_HEIGHT_UNSPECIFIED Intent_Message_RbmCardContent_RbmMedia_Height = 0
+ // 112 DP.
+ Intent_Message_RbmCardContent_RbmMedia_SHORT Intent_Message_RbmCardContent_RbmMedia_Height = 1
+ // 168 DP.
+ Intent_Message_RbmCardContent_RbmMedia_MEDIUM Intent_Message_RbmCardContent_RbmMedia_Height = 2
+ // 264 DP. Not available for rich card carousels when the card width
+ // is set to small.
+ Intent_Message_RbmCardContent_RbmMedia_TALL Intent_Message_RbmCardContent_RbmMedia_Height = 3
+)
+
+// Enum value maps for Intent_Message_RbmCardContent_RbmMedia_Height.
+var (
+ Intent_Message_RbmCardContent_RbmMedia_Height_name = map[int32]string{
+ 0: "HEIGHT_UNSPECIFIED",
+ 1: "SHORT",
+ 2: "MEDIUM",
+ 3: "TALL",
+ }
+ Intent_Message_RbmCardContent_RbmMedia_Height_value = map[string]int32{
+ "HEIGHT_UNSPECIFIED": 0,
+ "SHORT": 1,
+ "MEDIUM": 2,
+ "TALL": 3,
+ }
+)
+
+func (x Intent_Message_RbmCardContent_RbmMedia_Height) Enum() *Intent_Message_RbmCardContent_RbmMedia_Height {
+ p := new(Intent_Message_RbmCardContent_RbmMedia_Height)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_RbmCardContent_RbmMedia_Height) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_RbmCardContent_RbmMedia_Height) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[7].Descriptor()
+}
+
+func (Intent_Message_RbmCardContent_RbmMedia_Height) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[7]
+}
+
+func (x Intent_Message_RbmCardContent_RbmMedia_Height) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_RbmCardContent_RbmMedia_Height.Descriptor instead.
+func (Intent_Message_RbmCardContent_RbmMedia_Height) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 19, 0, 0}
+}
+
+// Format of response media type.
+type Intent_Message_MediaContent_ResponseMediaType int32
+
+const (
+ // Unspecified.
+ Intent_Message_MediaContent_RESPONSE_MEDIA_TYPE_UNSPECIFIED Intent_Message_MediaContent_ResponseMediaType = 0
+ // Response media type is audio.
+ Intent_Message_MediaContent_AUDIO Intent_Message_MediaContent_ResponseMediaType = 1
+)
+
+// Enum value maps for Intent_Message_MediaContent_ResponseMediaType.
+var (
+ Intent_Message_MediaContent_ResponseMediaType_name = map[int32]string{
+ 0: "RESPONSE_MEDIA_TYPE_UNSPECIFIED",
+ 1: "AUDIO",
+ }
+ Intent_Message_MediaContent_ResponseMediaType_value = map[string]int32{
+ "RESPONSE_MEDIA_TYPE_UNSPECIFIED": 0,
+ "AUDIO": 1,
+ }
+)
+
+func (x Intent_Message_MediaContent_ResponseMediaType) Enum() *Intent_Message_MediaContent_ResponseMediaType {
+ p := new(Intent_Message_MediaContent_ResponseMediaType)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_MediaContent_ResponseMediaType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_MediaContent_ResponseMediaType) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[8].Descriptor()
+}
+
+func (Intent_Message_MediaContent_ResponseMediaType) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[8]
+}
+
+func (x Intent_Message_MediaContent_ResponseMediaType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_MediaContent_ResponseMediaType.Descriptor instead.
+func (Intent_Message_MediaContent_ResponseMediaType) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 23, 0}
+}
+
+// Image display options for Actions on Google. This should be used for
+// when the image's aspect ratio does not match the image container's
+// aspect ratio.
+type Intent_Message_BrowseCarouselCard_ImageDisplayOptions int32
+
+const (
+ // Fill the gaps between the image and the image container with gray
+ // bars.
+ Intent_Message_BrowseCarouselCard_IMAGE_DISPLAY_OPTIONS_UNSPECIFIED Intent_Message_BrowseCarouselCard_ImageDisplayOptions = 0
+ // Fill the gaps between the image and the image container with gray
+ // bars.
+ Intent_Message_BrowseCarouselCard_GRAY Intent_Message_BrowseCarouselCard_ImageDisplayOptions = 1
+ // Fill the gaps between the image and the image container with white
+ // bars.
+ Intent_Message_BrowseCarouselCard_WHITE Intent_Message_BrowseCarouselCard_ImageDisplayOptions = 2
+ // Image is scaled such that the image width and height match or exceed
+ // the container dimensions. This may crop the top and bottom of the
+ // image if the scaled image height is greater than the container
+ // height, or crop the left and right of the image if the scaled image
+ // width is greater than the container width. This is similar to "Zoom
+ // Mode" on a widescreen TV when playing a 4:3 video.
+ Intent_Message_BrowseCarouselCard_CROPPED Intent_Message_BrowseCarouselCard_ImageDisplayOptions = 3
+ // Pad the gaps between image and image frame with a blurred copy of the
+ // same image.
+ Intent_Message_BrowseCarouselCard_BLURRED_BACKGROUND Intent_Message_BrowseCarouselCard_ImageDisplayOptions = 4
+)
+
+// Enum value maps for Intent_Message_BrowseCarouselCard_ImageDisplayOptions.
+var (
+ Intent_Message_BrowseCarouselCard_ImageDisplayOptions_name = map[int32]string{
+ 0: "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED",
+ 1: "GRAY",
+ 2: "WHITE",
+ 3: "CROPPED",
+ 4: "BLURRED_BACKGROUND",
+ }
+ Intent_Message_BrowseCarouselCard_ImageDisplayOptions_value = map[string]int32{
+ "IMAGE_DISPLAY_OPTIONS_UNSPECIFIED": 0,
+ "GRAY": 1,
+ "WHITE": 2,
+ "CROPPED": 3,
+ "BLURRED_BACKGROUND": 4,
+ }
+)
+
+func (x Intent_Message_BrowseCarouselCard_ImageDisplayOptions) Enum() *Intent_Message_BrowseCarouselCard_ImageDisplayOptions {
+ p := new(Intent_Message_BrowseCarouselCard_ImageDisplayOptions)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_BrowseCarouselCard_ImageDisplayOptions) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_BrowseCarouselCard_ImageDisplayOptions) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[9].Descriptor()
+}
+
+func (Intent_Message_BrowseCarouselCard_ImageDisplayOptions) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[9]
+}
+
+func (x Intent_Message_BrowseCarouselCard_ImageDisplayOptions) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_BrowseCarouselCard_ImageDisplayOptions.Descriptor instead.
+func (Intent_Message_BrowseCarouselCard_ImageDisplayOptions) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 24, 0}
+}
+
+// Type of the URI.
+type Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint int32
+
+const (
+ // Unspecified
+ Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_URL_TYPE_HINT_UNSPECIFIED Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint = 0
+ // Url would be an amp action
+ Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_AMP_ACTION Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint = 1
+ // URL that points directly to AMP content, or to a canonical URL
+ // which refers to AMP content via <link rel="amphtml">.
+ Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_AMP_CONTENT Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint = 2
+)
+
+// Enum value maps for Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint.
+var (
+ Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint_name = map[int32]string{
+ 0: "URL_TYPE_HINT_UNSPECIFIED",
+ 1: "AMP_ACTION",
+ 2: "AMP_CONTENT",
+ }
+ Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint_value = map[string]int32{
+ "URL_TYPE_HINT_UNSPECIFIED": 0,
+ "AMP_ACTION": 1,
+ "AMP_CONTENT": 2,
+ }
+)
+
+func (x Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) Enum() *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint {
+ p := new(Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[10].Descriptor()
+}
+
+func (Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[10]
+}
+
+func (x Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint.Descriptor instead.
+func (Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 24, 0, 0, 0}
+}
+
+// Text alignments within a cell.
+type Intent_Message_ColumnProperties_HorizontalAlignment int32
+
+const (
+ // Text is aligned to the leading edge of the column.
+ Intent_Message_ColumnProperties_HORIZONTAL_ALIGNMENT_UNSPECIFIED Intent_Message_ColumnProperties_HorizontalAlignment = 0
+ // Text is aligned to the leading edge of the column.
+ Intent_Message_ColumnProperties_LEADING Intent_Message_ColumnProperties_HorizontalAlignment = 1
+ // Text is centered in the column.
+ Intent_Message_ColumnProperties_CENTER Intent_Message_ColumnProperties_HorizontalAlignment = 2
+ // Text is aligned to the trailing edge of the column.
+ Intent_Message_ColumnProperties_TRAILING Intent_Message_ColumnProperties_HorizontalAlignment = 3
+)
+
+// Enum value maps for Intent_Message_ColumnProperties_HorizontalAlignment.
+var (
+ Intent_Message_ColumnProperties_HorizontalAlignment_name = map[int32]string{
+ 0: "HORIZONTAL_ALIGNMENT_UNSPECIFIED",
+ 1: "LEADING",
+ 2: "CENTER",
+ 3: "TRAILING",
+ }
+ Intent_Message_ColumnProperties_HorizontalAlignment_value = map[string]int32{
+ "HORIZONTAL_ALIGNMENT_UNSPECIFIED": 0,
+ "LEADING": 1,
+ "CENTER": 2,
+ "TRAILING": 3,
+ }
+)
+
+func (x Intent_Message_ColumnProperties_HorizontalAlignment) Enum() *Intent_Message_ColumnProperties_HorizontalAlignment {
+ p := new(Intent_Message_ColumnProperties_HorizontalAlignment)
+ *p = x
+ return p
+}
+
+func (x Intent_Message_ColumnProperties_HorizontalAlignment) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Intent_Message_ColumnProperties_HorizontalAlignment) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[11].Descriptor()
+}
+
+func (Intent_Message_ColumnProperties_HorizontalAlignment) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes[11]
+}
+
+func (x Intent_Message_ColumnProperties_HorizontalAlignment) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Intent_Message_ColumnProperties_HorizontalAlignment.Descriptor instead.
+func (Intent_Message_ColumnProperties_HorizontalAlignment) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 26, 0}
+}
+
+// An intent categorizes an end-user's intention for one conversation turn. For
+// each agent, you define many intents, where your combined intents can handle a
+// complete conversation. When an end-user writes or says something, referred to
+// as an end-user expression or end-user input, Dialogflow matches the end-user
+// input to the best intent in your agent. Matching an intent is also known as
+// intent classification.
+//
+// For more information, see the [intent
+// guide](https://cloud.google.com/dialogflow/docs/intents-overview).
+type Intent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The unique identifier of this intent.
+ // Required for
+ // [Intents.UpdateIntent][google.cloud.dialogflow.v2beta1.Intents.UpdateIntent]
+ // and
+ // [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents]
+ // methods.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent/intents/<Intent ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The name of this intent.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Optional. Indicates whether webhooks are enabled for the intent.
+ WebhookState Intent_WebhookState `protobuf:"varint,6,opt,name=webhook_state,json=webhookState,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_WebhookState" json:"webhook_state,omitempty"`
+ // Optional. The priority of this intent. Higher numbers represent higher
+ // priorities.
+ //
+ // - If the supplied value is unspecified or 0, the service
+ // translates the value to 500,000, which corresponds to the
+ // `Normal` priority in the console.
+ // - If the supplied value is negative, the intent is ignored
+ // in runtime detect intent requests.
+ Priority int32 `protobuf:"varint,3,opt,name=priority,proto3" json:"priority,omitempty"`
+ // Optional. Indicates whether this is a fallback intent.
+ IsFallback bool `protobuf:"varint,4,opt,name=is_fallback,json=isFallback,proto3" json:"is_fallback,omitempty"`
+ // Optional. Indicates whether Machine Learning is enabled for the intent.
+ // Note: If `ml_enabled` setting is set to false, then this intent is not
+ // taken into account during inference in `ML ONLY` match mode. Also,
+ // auto-markup in the UI is turned off.
+ // DEPRECATED! Please use `ml_disabled` field instead.
+ // NOTE: If both `ml_enabled` and `ml_disabled` are either not set or false,
+ // then the default value is determined as follows:
+ //
+ // - Before April 15th, 2018 the default is:
+ // ml_enabled = false / ml_disabled = true.
+ // - After April 15th, 2018 the default is:
+ // ml_enabled = true / ml_disabled = false.
+ //
+ // Deprecated: Do not use.
+ MlEnabled bool `protobuf:"varint,5,opt,name=ml_enabled,json=mlEnabled,proto3" json:"ml_enabled,omitempty"`
+ // Optional. Indicates whether Machine Learning is disabled for the intent.
+ // Note: If `ml_disabled` setting is set to true, then this intent is not
+ // taken into account during inference in `ML ONLY` match mode. Also,
+ // auto-markup in the UI is turned off.
+ MlDisabled bool `protobuf:"varint,19,opt,name=ml_disabled,json=mlDisabled,proto3" json:"ml_disabled,omitempty"`
+ // Optional. Indicates that a live agent should be brought in to handle the
+ // interaction with the user. In most cases, when you set this flag to true,
+ // you would also want to set end_interaction to true as well. Default is
+ // false.
+ LiveAgentHandoff bool `protobuf:"varint,20,opt,name=live_agent_handoff,json=liveAgentHandoff,proto3" json:"live_agent_handoff,omitempty"`
+ // Optional. Indicates that this intent ends an interaction. Some integrations
+ // (e.g., Actions on Google or Dialogflow phone gateway) use this information
+ // to close interaction with an end user. Default is false.
+ EndInteraction bool `protobuf:"varint,21,opt,name=end_interaction,json=endInteraction,proto3" json:"end_interaction,omitempty"`
+ // Optional. The list of context names required for this intent to be
+ // triggered.
+ // Formats:
+ //
+ // - `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/sessions/-/contexts/<Context ID>`
+ InputContextNames []string `protobuf:"bytes,7,rep,name=input_context_names,json=inputContextNames,proto3" json:"input_context_names,omitempty"`
+ // Optional. The collection of event names that trigger the intent.
+ // If the collection of input contexts is not empty, all of the contexts must
+ // be present in the active user session for an event to trigger this intent.
+ // Event names are limited to 150 characters.
+ Events []string `protobuf:"bytes,8,rep,name=events,proto3" json:"events,omitempty"`
+ // Optional. The collection of examples that the agent is
+ // trained on.
+ TrainingPhrases []*Intent_TrainingPhrase `protobuf:"bytes,9,rep,name=training_phrases,json=trainingPhrases,proto3" json:"training_phrases,omitempty"`
+ // Optional. The name of the action associated with the intent.
+ // Note: The action name must not contain whitespaces.
+ Action string `protobuf:"bytes,10,opt,name=action,proto3" json:"action,omitempty"`
+ // Optional. The collection of contexts that are activated when the intent
+ // is matched. Context messages in this collection should not set the
+ // parameters field. Setting the `lifespan_count` to 0 will reset the context
+ // when the intent is matched.
+ // Format: `projects/<Project ID>/agent/sessions/-/contexts/<Context ID>`.
+ OutputContexts []*Context `protobuf:"bytes,11,rep,name=output_contexts,json=outputContexts,proto3" json:"output_contexts,omitempty"`
+ // Optional. Indicates whether to delete all contexts in the current
+ // session when this intent is matched.
+ ResetContexts bool `protobuf:"varint,12,opt,name=reset_contexts,json=resetContexts,proto3" json:"reset_contexts,omitempty"`
+ // Optional. The collection of parameters associated with the intent.
+ Parameters []*Intent_Parameter `protobuf:"bytes,13,rep,name=parameters,proto3" json:"parameters,omitempty"`
+ // Optional. The collection of rich messages corresponding to the
+ // `Response` field in the Dialogflow console.
+ Messages []*Intent_Message `protobuf:"bytes,14,rep,name=messages,proto3" json:"messages,omitempty"`
+ // Optional. The list of platforms for which the first responses will be
+ // copied from the messages in PLATFORM_UNSPECIFIED (i.e. default platform).
+ DefaultResponsePlatforms []Intent_Message_Platform `protobuf:"varint,15,rep,packed,name=default_response_platforms,json=defaultResponsePlatforms,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_Platform" json:"default_response_platforms,omitempty"`
+ // Output only. The unique identifier of the root intent in the chain of
+ // followup intents. It identifies the correct followup intents chain for
+ // this intent.
+ //
+ // Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+ RootFollowupIntentName string `protobuf:"bytes,16,opt,name=root_followup_intent_name,json=rootFollowupIntentName,proto3" json:"root_followup_intent_name,omitempty"`
+ // Optional. The unique identifier of the parent intent in the
+ // chain of followup intents. You can set this field when creating an intent,
+ // for example with
+ // [CreateIntent][google.cloud.dialogflow.v2beta1.Intents.CreateIntent] or
+ // [BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents],
+ // in order to make this intent a followup intent.
+ //
+ // It identifies the parent followup intent.
+ // Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+ ParentFollowupIntentName string `protobuf:"bytes,17,opt,name=parent_followup_intent_name,json=parentFollowupIntentName,proto3" json:"parent_followup_intent_name,omitempty"`
+ // Output only. Information about all followup intents that have this intent
+ // as a direct or indirect parent. We populate this field only in the output.
+ FollowupIntentInfo []*Intent_FollowupIntentInfo `protobuf:"bytes,18,rep,name=followup_intent_info,json=followupIntentInfo,proto3" json:"followup_intent_info,omitempty"`
+}
+
+func (x *Intent) Reset() {
+ *x = Intent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent) ProtoMessage() {}
+
+func (x *Intent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent.ProtoReflect.Descriptor instead.
+func (*Intent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Intent) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Intent) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Intent) GetWebhookState() Intent_WebhookState {
+ if x != nil {
+ return x.WebhookState
+ }
+ return Intent_WEBHOOK_STATE_UNSPECIFIED
+}
+
+func (x *Intent) GetPriority() int32 {
+ if x != nil {
+ return x.Priority
+ }
+ return 0
+}
+
+func (x *Intent) GetIsFallback() bool {
+ if x != nil {
+ return x.IsFallback
+ }
+ return false
+}
+
+// Deprecated: Do not use.
+func (x *Intent) GetMlEnabled() bool {
+ if x != nil {
+ return x.MlEnabled
+ }
+ return false
+}
+
+func (x *Intent) GetMlDisabled() bool {
+ if x != nil {
+ return x.MlDisabled
+ }
+ return false
+}
+
+func (x *Intent) GetLiveAgentHandoff() bool {
+ if x != nil {
+ return x.LiveAgentHandoff
+ }
+ return false
+}
+
+func (x *Intent) GetEndInteraction() bool {
+ if x != nil {
+ return x.EndInteraction
+ }
+ return false
+}
+
+func (x *Intent) GetInputContextNames() []string {
+ if x != nil {
+ return x.InputContextNames
+ }
+ return nil
+}
+
+func (x *Intent) GetEvents() []string {
+ if x != nil {
+ return x.Events
+ }
+ return nil
+}
+
+func (x *Intent) GetTrainingPhrases() []*Intent_TrainingPhrase {
+ if x != nil {
+ return x.TrainingPhrases
+ }
+ return nil
+}
+
+func (x *Intent) GetAction() string {
+ if x != nil {
+ return x.Action
+ }
+ return ""
+}
+
+func (x *Intent) GetOutputContexts() []*Context {
+ if x != nil {
+ return x.OutputContexts
+ }
+ return nil
+}
+
+func (x *Intent) GetResetContexts() bool {
+ if x != nil {
+ return x.ResetContexts
+ }
+ return false
+}
+
+func (x *Intent) GetParameters() []*Intent_Parameter {
+ if x != nil {
+ return x.Parameters
+ }
+ return nil
+}
+
+func (x *Intent) GetMessages() []*Intent_Message {
+ if x != nil {
+ return x.Messages
+ }
+ return nil
+}
+
+func (x *Intent) GetDefaultResponsePlatforms() []Intent_Message_Platform {
+ if x != nil {
+ return x.DefaultResponsePlatforms
+ }
+ return nil
+}
+
+func (x *Intent) GetRootFollowupIntentName() string {
+ if x != nil {
+ return x.RootFollowupIntentName
+ }
+ return ""
+}
+
+func (x *Intent) GetParentFollowupIntentName() string {
+ if x != nil {
+ return x.ParentFollowupIntentName
+ }
+ return ""
+}
+
+func (x *Intent) GetFollowupIntentInfo() []*Intent_FollowupIntentInfo {
+ if x != nil {
+ return x.FollowupIntentInfo
+ }
+ return nil
+}
+
+// The request message for
+// [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents].
+type ListIntentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to list all intents from.
+ // Format: `projects/<Project ID>/agent` or `projects/<Project
+ // ID>/locations/<Location ID>/agent`.
+ //
+ // Alternatively, you can specify the environment to list intents for.
+ // Format: `projects/<Project ID>/agent/environments/<Environment ID>`
+ // or `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>`.
+ // Note: training phrases of the intents will not be returned for non-draft
+ // environment.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The resource view to apply to the returned intent.
+ IntentView IntentView `protobuf:"varint,3,opt,name=intent_view,json=intentView,proto3,enum=google.cloud.dialogflow.v2beta1.IntentView" json:"intent_view,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,4,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,5,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListIntentsRequest) Reset() {
+ *x = ListIntentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListIntentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListIntentsRequest) ProtoMessage() {}
+
+func (x *ListIntentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListIntentsRequest.ProtoReflect.Descriptor instead.
+func (*ListIntentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListIntentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListIntentsRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *ListIntentsRequest) GetIntentView() IntentView {
+ if x != nil {
+ return x.IntentView
+ }
+ return IntentView_INTENT_VIEW_UNSPECIFIED
+}
+
+func (x *ListIntentsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListIntentsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents].
+type ListIntentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of agent intents. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ Intents []*Intent `protobuf:"bytes,1,rep,name=intents,proto3" json:"intents,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListIntentsResponse) Reset() {
+ *x = ListIntentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListIntentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListIntentsResponse) ProtoMessage() {}
+
+func (x *ListIntentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListIntentsResponse.ProtoReflect.Descriptor instead.
+func (*ListIntentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListIntentsResponse) GetIntents() []*Intent {
+ if x != nil {
+ return x.Intents
+ }
+ return nil
+}
+
+func (x *ListIntentsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Intents.GetIntent][google.cloud.dialogflow.v2beta1.Intents.GetIntent].
+type GetIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the intent.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent/intents/<Intent ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The resource view to apply to the returned intent.
+ IntentView IntentView `protobuf:"varint,3,opt,name=intent_view,json=intentView,proto3,enum=google.cloud.dialogflow.v2beta1.IntentView" json:"intent_view,omitempty"`
+}
+
+func (x *GetIntentRequest) Reset() {
+ *x = GetIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetIntentRequest) ProtoMessage() {}
+
+func (x *GetIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetIntentRequest.ProtoReflect.Descriptor instead.
+func (*GetIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetIntentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *GetIntentRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *GetIntentRequest) GetIntentView() IntentView {
+ if x != nil {
+ return x.IntentView
+ }
+ return IntentView_INTENT_VIEW_UNSPECIFIED
+}
+
+// The request message for
+// [Intents.CreateIntent][google.cloud.dialogflow.v2beta1.Intents.CreateIntent].
+type CreateIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to create a intent for.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The intent to create.
+ Intent *Intent `protobuf:"bytes,2,opt,name=intent,proto3" json:"intent,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The resource view to apply to the returned intent.
+ IntentView IntentView `protobuf:"varint,4,opt,name=intent_view,json=intentView,proto3,enum=google.cloud.dialogflow.v2beta1.IntentView" json:"intent_view,omitempty"`
+}
+
+func (x *CreateIntentRequest) Reset() {
+ *x = CreateIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateIntentRequest) ProtoMessage() {}
+
+func (x *CreateIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateIntentRequest.ProtoReflect.Descriptor instead.
+func (*CreateIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateIntentRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateIntentRequest) GetIntent() *Intent {
+ if x != nil {
+ return x.Intent
+ }
+ return nil
+}
+
+func (x *CreateIntentRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *CreateIntentRequest) GetIntentView() IntentView {
+ if x != nil {
+ return x.IntentView
+ }
+ return IntentView_INTENT_VIEW_UNSPECIFIED
+}
+
+// The request message for
+// [Intents.UpdateIntent][google.cloud.dialogflow.v2beta1.Intents.UpdateIntent].
+type UpdateIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The intent to update.
+ Intent *Intent `protobuf:"bytes,1,opt,name=intent,proto3" json:"intent,omitempty"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,3,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // Optional. The resource view to apply to the returned intent.
+ IntentView IntentView `protobuf:"varint,4,opt,name=intent_view,json=intentView,proto3,enum=google.cloud.dialogflow.v2beta1.IntentView" json:"intent_view,omitempty"`
+}
+
+func (x *UpdateIntentRequest) Reset() {
+ *x = UpdateIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateIntentRequest) ProtoMessage() {}
+
+func (x *UpdateIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateIntentRequest.ProtoReflect.Descriptor instead.
+func (*UpdateIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *UpdateIntentRequest) GetIntent() *Intent {
+ if x != nil {
+ return x.Intent
+ }
+ return nil
+}
+
+func (x *UpdateIntentRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *UpdateIntentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *UpdateIntentRequest) GetIntentView() IntentView {
+ if x != nil {
+ return x.IntentView
+ }
+ return IntentView_INTENT_VIEW_UNSPECIFIED
+}
+
+// The request message for
+// [Intents.DeleteIntent][google.cloud.dialogflow.v2beta1.Intents.DeleteIntent].
+type DeleteIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the intent to delete. If this intent has direct or
+ // indirect followup intents, we also delete them.
+ //
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent/intents/<Intent ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/intents/<Intent ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteIntentRequest) Reset() {
+ *x = DeleteIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteIntentRequest) ProtoMessage() {}
+
+func (x *DeleteIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteIntentRequest.ProtoReflect.Descriptor instead.
+func (*DeleteIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *DeleteIntentRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents].
+type BatchUpdateIntentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the agent to update or create intents in.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The source of the intent batch.
+ //
+ // For each intent in the batch:
+ //
+ // * If `name` is specified, we update an existing intent.
+ // * If `name` is not specified, we create a new intent.
+ //
+ // Types that are assignable to IntentBatch:
+ //
+ // *BatchUpdateIntentsRequest_IntentBatchUri
+ // *BatchUpdateIntentsRequest_IntentBatchInline
+ IntentBatch isBatchUpdateIntentsRequest_IntentBatch `protobuf_oneof:"intent_batch"`
+ // Optional. The language used to access language-specific data.
+ // If not specified, the agent's default language is used.
+ // For more information, see
+ // [Multilingual intent and entity
+ // data](https://cloud.google.com/dialogflow/docs/agents-multilingual#intent-entity).
+ LanguageCode string `protobuf:"bytes,4,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,5,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+ // Optional. The resource view to apply to the returned intent.
+ IntentView IntentView `protobuf:"varint,6,opt,name=intent_view,json=intentView,proto3,enum=google.cloud.dialogflow.v2beta1.IntentView" json:"intent_view,omitempty"`
+}
+
+func (x *BatchUpdateIntentsRequest) Reset() {
+ *x = BatchUpdateIntentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchUpdateIntentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchUpdateIntentsRequest) ProtoMessage() {}
+
+func (x *BatchUpdateIntentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchUpdateIntentsRequest.ProtoReflect.Descriptor instead.
+func (*BatchUpdateIntentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *BatchUpdateIntentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (m *BatchUpdateIntentsRequest) GetIntentBatch() isBatchUpdateIntentsRequest_IntentBatch {
+ if m != nil {
+ return m.IntentBatch
+ }
+ return nil
+}
+
+func (x *BatchUpdateIntentsRequest) GetIntentBatchUri() string {
+ if x, ok := x.GetIntentBatch().(*BatchUpdateIntentsRequest_IntentBatchUri); ok {
+ return x.IntentBatchUri
+ }
+ return ""
+}
+
+func (x *BatchUpdateIntentsRequest) GetIntentBatchInline() *IntentBatch {
+ if x, ok := x.GetIntentBatch().(*BatchUpdateIntentsRequest_IntentBatchInline); ok {
+ return x.IntentBatchInline
+ }
+ return nil
+}
+
+func (x *BatchUpdateIntentsRequest) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *BatchUpdateIntentsRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+func (x *BatchUpdateIntentsRequest) GetIntentView() IntentView {
+ if x != nil {
+ return x.IntentView
+ }
+ return IntentView_INTENT_VIEW_UNSPECIFIED
+}
+
+type isBatchUpdateIntentsRequest_IntentBatch interface {
+ isBatchUpdateIntentsRequest_IntentBatch()
+}
+
+type BatchUpdateIntentsRequest_IntentBatchUri struct {
+ // The URI to a Google Cloud Storage file containing intents to update or
+ // create. The file format can either be a serialized proto (of IntentBatch
+ // type) or JSON object. Note: The URI must start with "gs://".
+ IntentBatchUri string `protobuf:"bytes,2,opt,name=intent_batch_uri,json=intentBatchUri,proto3,oneof"`
+}
+
+type BatchUpdateIntentsRequest_IntentBatchInline struct {
+ // The collection of intents to update or create.
+ IntentBatchInline *IntentBatch `protobuf:"bytes,3,opt,name=intent_batch_inline,json=intentBatchInline,proto3,oneof"`
+}
+
+func (*BatchUpdateIntentsRequest_IntentBatchUri) isBatchUpdateIntentsRequest_IntentBatch() {}
+
+func (*BatchUpdateIntentsRequest_IntentBatchInline) isBatchUpdateIntentsRequest_IntentBatch() {}
+
+// The response message for
+// [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents].
+type BatchUpdateIntentsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The collection of updated or created intents.
+ Intents []*Intent `protobuf:"bytes,1,rep,name=intents,proto3" json:"intents,omitempty"`
+}
+
+func (x *BatchUpdateIntentsResponse) Reset() {
+ *x = BatchUpdateIntentsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchUpdateIntentsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchUpdateIntentsResponse) ProtoMessage() {}
+
+func (x *BatchUpdateIntentsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchUpdateIntentsResponse.ProtoReflect.Descriptor instead.
+func (*BatchUpdateIntentsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *BatchUpdateIntentsResponse) GetIntents() []*Intent {
+ if x != nil {
+ return x.Intents
+ }
+ return nil
+}
+
+// The request message for
+// [Intents.BatchDeleteIntents][google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents].
+type BatchDeleteIntentsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the agent to delete all entities types for.
+ // Supported formats:
+ //
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The collection of intents to delete. Only intent `name` must be
+ // filled in.
+ Intents []*Intent `protobuf:"bytes,2,rep,name=intents,proto3" json:"intents,omitempty"`
+}
+
+func (x *BatchDeleteIntentsRequest) Reset() {
+ *x = BatchDeleteIntentsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *BatchDeleteIntentsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*BatchDeleteIntentsRequest) ProtoMessage() {}
+
+func (x *BatchDeleteIntentsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use BatchDeleteIntentsRequest.ProtoReflect.Descriptor instead.
+func (*BatchDeleteIntentsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *BatchDeleteIntentsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *BatchDeleteIntentsRequest) GetIntents() []*Intent {
+ if x != nil {
+ return x.Intents
+ }
+ return nil
+}
+
+// This message is a wrapper around a collection of intents.
+type IntentBatch struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A collection of intents.
+ Intents []*Intent `protobuf:"bytes,1,rep,name=intents,proto3" json:"intents,omitempty"`
+}
+
+func (x *IntentBatch) Reset() {
+ *x = IntentBatch{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *IntentBatch) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*IntentBatch) ProtoMessage() {}
+
+func (x *IntentBatch) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use IntentBatch.ProtoReflect.Descriptor instead.
+func (*IntentBatch) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *IntentBatch) GetIntents() []*Intent {
+ if x != nil {
+ return x.Intents
+ }
+ return nil
+}
+
+// Represents an example that the agent is trained on.
+type Intent_TrainingPhrase struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The unique identifier of this training phrase.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The type of the training phrase.
+ Type Intent_TrainingPhrase_Type `protobuf:"varint,2,opt,name=type,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_TrainingPhrase_Type" json:"type,omitempty"`
+ // Required. The ordered list of training phrase parts.
+ // The parts are concatenated in order to form the training phrase.
+ //
+ // Note: The API does not automatically annotate training phrases like the
+ // Dialogflow Console does.
+ //
+ // Note: Do not forget to include whitespace at part boundaries,
+ // so the training phrase is well formatted when the parts are concatenated.
+ //
+ // If the training phrase does not need to be annotated with parameters,
+ // you just need a single part with only the
+ // [Part.text][google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Part.text]
+ // field set.
+ //
+ // If you want to annotate the training phrase, you must create multiple
+ // parts, where the fields of each part are populated in one of two ways:
+ //
+ // - `Part.text` is set to a part of the phrase that has no parameters.
+ // - `Part.text` is set to a part of the phrase that you want to annotate,
+ // and the `entity_type`, `alias`, and `user_defined` fields are all
+ // set.
+ Parts []*Intent_TrainingPhrase_Part `protobuf:"bytes,3,rep,name=parts,proto3" json:"parts,omitempty"`
+ // Optional. Indicates how many times this example was added to
+ // the intent. Each time a developer adds an existing sample by editing an
+ // intent or training, this counter is increased.
+ TimesAddedCount int32 `protobuf:"varint,4,opt,name=times_added_count,json=timesAddedCount,proto3" json:"times_added_count,omitempty"`
+}
+
+func (x *Intent_TrainingPhrase) Reset() {
+ *x = Intent_TrainingPhrase{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_TrainingPhrase) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_TrainingPhrase) ProtoMessage() {}
+
+func (x *Intent_TrainingPhrase) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_TrainingPhrase.ProtoReflect.Descriptor instead.
+func (*Intent_TrainingPhrase) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 0}
+}
+
+func (x *Intent_TrainingPhrase) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Intent_TrainingPhrase) GetType() Intent_TrainingPhrase_Type {
+ if x != nil {
+ return x.Type
+ }
+ return Intent_TrainingPhrase_TYPE_UNSPECIFIED
+}
+
+func (x *Intent_TrainingPhrase) GetParts() []*Intent_TrainingPhrase_Part {
+ if x != nil {
+ return x.Parts
+ }
+ return nil
+}
+
+func (x *Intent_TrainingPhrase) GetTimesAddedCount() int32 {
+ if x != nil {
+ return x.TimesAddedCount
+ }
+ return 0
+}
+
+// Represents intent parameters.
+type Intent_Parameter struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of this parameter.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The name of the parameter.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Optional. The definition of the parameter value. It can be:
+ //
+ // - a constant string,
+ // - a parameter value defined as `$parameter_name`,
+ // - an original parameter value defined as `$parameter_name.original`,
+ // - a parameter value from some context defined as
+ // `#context_name.parameter_name`.
+ Value string `protobuf:"bytes,3,opt,name=value,proto3" json:"value,omitempty"`
+ // Optional. The default value to use when the `value` yields an empty
+ // result.
+ // Default values can be extracted from contexts by using the following
+ // syntax: `#context_name.parameter_name`.
+ DefaultValue string `protobuf:"bytes,4,opt,name=default_value,json=defaultValue,proto3" json:"default_value,omitempty"`
+ // Optional. The name of the entity type, prefixed with `@`, that
+ // describes values of the parameter. If the parameter is
+ // required, this must be provided.
+ EntityTypeDisplayName string `protobuf:"bytes,5,opt,name=entity_type_display_name,json=entityTypeDisplayName,proto3" json:"entity_type_display_name,omitempty"`
+ // Optional. Indicates whether the parameter is required. That is,
+ // whether the intent cannot be completed without collecting the parameter
+ // value.
+ Mandatory bool `protobuf:"varint,6,opt,name=mandatory,proto3" json:"mandatory,omitempty"`
+ // Optional. The collection of prompts that the agent can present to the
+ // user in order to collect a value for the parameter.
+ Prompts []string `protobuf:"bytes,7,rep,name=prompts,proto3" json:"prompts,omitempty"`
+ // Optional. Indicates whether the parameter represents a list of values.
+ IsList bool `protobuf:"varint,8,opt,name=is_list,json=isList,proto3" json:"is_list,omitempty"`
+}
+
+func (x *Intent_Parameter) Reset() {
+ *x = Intent_Parameter{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Parameter) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Parameter) ProtoMessage() {}
+
+func (x *Intent_Parameter) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Parameter.ProtoReflect.Descriptor instead.
+func (*Intent_Parameter) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 1}
+}
+
+func (x *Intent_Parameter) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Intent_Parameter) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Intent_Parameter) GetValue() string {
+ if x != nil {
+ return x.Value
+ }
+ return ""
+}
+
+func (x *Intent_Parameter) GetDefaultValue() string {
+ if x != nil {
+ return x.DefaultValue
+ }
+ return ""
+}
+
+func (x *Intent_Parameter) GetEntityTypeDisplayName() string {
+ if x != nil {
+ return x.EntityTypeDisplayName
+ }
+ return ""
+}
+
+func (x *Intent_Parameter) GetMandatory() bool {
+ if x != nil {
+ return x.Mandatory
+ }
+ return false
+}
+
+func (x *Intent_Parameter) GetPrompts() []string {
+ if x != nil {
+ return x.Prompts
+ }
+ return nil
+}
+
+func (x *Intent_Parameter) GetIsList() bool {
+ if x != nil {
+ return x.IsList
+ }
+ return false
+}
+
+// Corresponds to the `Response` field in the Dialogflow console.
+type Intent_Message struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The rich response message.
+ //
+ // Types that are assignable to Message:
+ //
+ // *Intent_Message_Text_
+ // *Intent_Message_Image_
+ // *Intent_Message_QuickReplies_
+ // *Intent_Message_Card_
+ // *Intent_Message_Payload
+ // *Intent_Message_SimpleResponses_
+ // *Intent_Message_BasicCard_
+ // *Intent_Message_Suggestions_
+ // *Intent_Message_LinkOutSuggestion_
+ // *Intent_Message_ListSelect_
+ // *Intent_Message_CarouselSelect_
+ // *Intent_Message_TelephonyPlayAudio_
+ // *Intent_Message_TelephonySynthesizeSpeech_
+ // *Intent_Message_TelephonyTransferCall_
+ // *Intent_Message_RbmText_
+ // *Intent_Message_RbmStandaloneRichCard
+ // *Intent_Message_RbmCarouselRichCard
+ // *Intent_Message_BrowseCarouselCard_
+ // *Intent_Message_TableCard_
+ // *Intent_Message_MediaContent_
+ Message isIntent_Message_Message `protobuf_oneof:"message"`
+ // Optional. The platform that this message is intended for.
+ Platform Intent_Message_Platform `protobuf:"varint,6,opt,name=platform,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_Platform" json:"platform,omitempty"`
+}
+
+func (x *Intent_Message) Reset() {
+ *x = Intent_Message{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message) ProtoMessage() {}
+
+func (x *Intent_Message) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message.ProtoReflect.Descriptor instead.
+func (*Intent_Message) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2}
+}
+
+func (m *Intent_Message) GetMessage() isIntent_Message_Message {
+ if m != nil {
+ return m.Message
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetText() *Intent_Message_Text {
+ if x, ok := x.GetMessage().(*Intent_Message_Text_); ok {
+ return x.Text
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetImage() *Intent_Message_Image {
+ if x, ok := x.GetMessage().(*Intent_Message_Image_); ok {
+ return x.Image
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetQuickReplies() *Intent_Message_QuickReplies {
+ if x, ok := x.GetMessage().(*Intent_Message_QuickReplies_); ok {
+ return x.QuickReplies
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetCard() *Intent_Message_Card {
+ if x, ok := x.GetMessage().(*Intent_Message_Card_); ok {
+ return x.Card
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetPayload() *structpb.Struct {
+ if x, ok := x.GetMessage().(*Intent_Message_Payload); ok {
+ return x.Payload
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetSimpleResponses() *Intent_Message_SimpleResponses {
+ if x, ok := x.GetMessage().(*Intent_Message_SimpleResponses_); ok {
+ return x.SimpleResponses
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetBasicCard() *Intent_Message_BasicCard {
+ if x, ok := x.GetMessage().(*Intent_Message_BasicCard_); ok {
+ return x.BasicCard
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetSuggestions() *Intent_Message_Suggestions {
+ if x, ok := x.GetMessage().(*Intent_Message_Suggestions_); ok {
+ return x.Suggestions
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetLinkOutSuggestion() *Intent_Message_LinkOutSuggestion {
+ if x, ok := x.GetMessage().(*Intent_Message_LinkOutSuggestion_); ok {
+ return x.LinkOutSuggestion
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetListSelect() *Intent_Message_ListSelect {
+ if x, ok := x.GetMessage().(*Intent_Message_ListSelect_); ok {
+ return x.ListSelect
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetCarouselSelect() *Intent_Message_CarouselSelect {
+ if x, ok := x.GetMessage().(*Intent_Message_CarouselSelect_); ok {
+ return x.CarouselSelect
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetTelephonyPlayAudio() *Intent_Message_TelephonyPlayAudio {
+ if x, ok := x.GetMessage().(*Intent_Message_TelephonyPlayAudio_); ok {
+ return x.TelephonyPlayAudio
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetTelephonySynthesizeSpeech() *Intent_Message_TelephonySynthesizeSpeech {
+ if x, ok := x.GetMessage().(*Intent_Message_TelephonySynthesizeSpeech_); ok {
+ return x.TelephonySynthesizeSpeech
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetTelephonyTransferCall() *Intent_Message_TelephonyTransferCall {
+ if x, ok := x.GetMessage().(*Intent_Message_TelephonyTransferCall_); ok {
+ return x.TelephonyTransferCall
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetRbmText() *Intent_Message_RbmText {
+ if x, ok := x.GetMessage().(*Intent_Message_RbmText_); ok {
+ return x.RbmText
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetRbmStandaloneRichCard() *Intent_Message_RbmStandaloneCard {
+ if x, ok := x.GetMessage().(*Intent_Message_RbmStandaloneRichCard); ok {
+ return x.RbmStandaloneRichCard
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetRbmCarouselRichCard() *Intent_Message_RbmCarouselCard {
+ if x, ok := x.GetMessage().(*Intent_Message_RbmCarouselRichCard); ok {
+ return x.RbmCarouselRichCard
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetBrowseCarouselCard() *Intent_Message_BrowseCarouselCard {
+ if x, ok := x.GetMessage().(*Intent_Message_BrowseCarouselCard_); ok {
+ return x.BrowseCarouselCard
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetTableCard() *Intent_Message_TableCard {
+ if x, ok := x.GetMessage().(*Intent_Message_TableCard_); ok {
+ return x.TableCard
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetMediaContent() *Intent_Message_MediaContent {
+ if x, ok := x.GetMessage().(*Intent_Message_MediaContent_); ok {
+ return x.MediaContent
+ }
+ return nil
+}
+
+func (x *Intent_Message) GetPlatform() Intent_Message_Platform {
+ if x != nil {
+ return x.Platform
+ }
+ return Intent_Message_PLATFORM_UNSPECIFIED
+}
+
+type isIntent_Message_Message interface {
+ isIntent_Message_Message()
+}
+
+type Intent_Message_Text_ struct {
+ // Returns a text response.
+ Text *Intent_Message_Text `protobuf:"bytes,1,opt,name=text,proto3,oneof"`
+}
+
+type Intent_Message_Image_ struct {
+ // Displays an image.
+ Image *Intent_Message_Image `protobuf:"bytes,2,opt,name=image,proto3,oneof"`
+}
+
+type Intent_Message_QuickReplies_ struct {
+ // Displays quick replies.
+ QuickReplies *Intent_Message_QuickReplies `protobuf:"bytes,3,opt,name=quick_replies,json=quickReplies,proto3,oneof"`
+}
+
+type Intent_Message_Card_ struct {
+ // Displays a card.
+ Card *Intent_Message_Card `protobuf:"bytes,4,opt,name=card,proto3,oneof"`
+}
+
+type Intent_Message_Payload struct {
+ // A custom platform-specific response.
+ Payload *structpb.Struct `protobuf:"bytes,5,opt,name=payload,proto3,oneof"`
+}
+
+type Intent_Message_SimpleResponses_ struct {
+ // Returns a voice or text-only response for Actions on Google.
+ SimpleResponses *Intent_Message_SimpleResponses `protobuf:"bytes,7,opt,name=simple_responses,json=simpleResponses,proto3,oneof"`
+}
+
+type Intent_Message_BasicCard_ struct {
+ // Displays a basic card for Actions on Google.
+ BasicCard *Intent_Message_BasicCard `protobuf:"bytes,8,opt,name=basic_card,json=basicCard,proto3,oneof"`
+}
+
+type Intent_Message_Suggestions_ struct {
+ // Displays suggestion chips for Actions on Google.
+ Suggestions *Intent_Message_Suggestions `protobuf:"bytes,9,opt,name=suggestions,proto3,oneof"`
+}
+
+type Intent_Message_LinkOutSuggestion_ struct {
+ // Displays a link out suggestion chip for Actions on Google.
+ LinkOutSuggestion *Intent_Message_LinkOutSuggestion `protobuf:"bytes,10,opt,name=link_out_suggestion,json=linkOutSuggestion,proto3,oneof"`
+}
+
+type Intent_Message_ListSelect_ struct {
+ // Displays a list card for Actions on Google.
+ ListSelect *Intent_Message_ListSelect `protobuf:"bytes,11,opt,name=list_select,json=listSelect,proto3,oneof"`
+}
+
+type Intent_Message_CarouselSelect_ struct {
+ // Displays a carousel card for Actions on Google.
+ CarouselSelect *Intent_Message_CarouselSelect `protobuf:"bytes,12,opt,name=carousel_select,json=carouselSelect,proto3,oneof"`
+}
+
+type Intent_Message_TelephonyPlayAudio_ struct {
+ // Plays audio from a file in Telephony Gateway.
+ TelephonyPlayAudio *Intent_Message_TelephonyPlayAudio `protobuf:"bytes,13,opt,name=telephony_play_audio,json=telephonyPlayAudio,proto3,oneof"`
+}
+
+type Intent_Message_TelephonySynthesizeSpeech_ struct {
+ // Synthesizes speech in Telephony Gateway.
+ TelephonySynthesizeSpeech *Intent_Message_TelephonySynthesizeSpeech `protobuf:"bytes,14,opt,name=telephony_synthesize_speech,json=telephonySynthesizeSpeech,proto3,oneof"`
+}
+
+type Intent_Message_TelephonyTransferCall_ struct {
+ // Transfers the call in Telephony Gateway.
+ TelephonyTransferCall *Intent_Message_TelephonyTransferCall `protobuf:"bytes,15,opt,name=telephony_transfer_call,json=telephonyTransferCall,proto3,oneof"`
+}
+
+type Intent_Message_RbmText_ struct {
+ // Rich Business Messaging (RBM) text response.
+ //
+ // RBM allows businesses to send enriched and branded versions of SMS. See
+ // https://jibe.google.com/business-messaging.
+ RbmText *Intent_Message_RbmText `protobuf:"bytes,18,opt,name=rbm_text,json=rbmText,proto3,oneof"`
+}
+
+type Intent_Message_RbmStandaloneRichCard struct {
+ // Standalone Rich Business Messaging (RBM) rich card response.
+ RbmStandaloneRichCard *Intent_Message_RbmStandaloneCard `protobuf:"bytes,19,opt,name=rbm_standalone_rich_card,json=rbmStandaloneRichCard,proto3,oneof"`
+}
+
+type Intent_Message_RbmCarouselRichCard struct {
+ // Rich Business Messaging (RBM) carousel rich card response.
+ RbmCarouselRichCard *Intent_Message_RbmCarouselCard `protobuf:"bytes,20,opt,name=rbm_carousel_rich_card,json=rbmCarouselRichCard,proto3,oneof"`
+}
+
+type Intent_Message_BrowseCarouselCard_ struct {
+ // Browse carousel card for Actions on Google.
+ BrowseCarouselCard *Intent_Message_BrowseCarouselCard `protobuf:"bytes,22,opt,name=browse_carousel_card,json=browseCarouselCard,proto3,oneof"`
+}
+
+type Intent_Message_TableCard_ struct {
+ // Table card for Actions on Google.
+ TableCard *Intent_Message_TableCard `protobuf:"bytes,23,opt,name=table_card,json=tableCard,proto3,oneof"`
+}
+
+type Intent_Message_MediaContent_ struct {
+ // The media content card for Actions on Google.
+ MediaContent *Intent_Message_MediaContent `protobuf:"bytes,24,opt,name=media_content,json=mediaContent,proto3,oneof"`
+}
+
+func (*Intent_Message_Text_) isIntent_Message_Message() {}
+
+func (*Intent_Message_Image_) isIntent_Message_Message() {}
+
+func (*Intent_Message_QuickReplies_) isIntent_Message_Message() {}
+
+func (*Intent_Message_Card_) isIntent_Message_Message() {}
+
+func (*Intent_Message_Payload) isIntent_Message_Message() {}
+
+func (*Intent_Message_SimpleResponses_) isIntent_Message_Message() {}
+
+func (*Intent_Message_BasicCard_) isIntent_Message_Message() {}
+
+func (*Intent_Message_Suggestions_) isIntent_Message_Message() {}
+
+func (*Intent_Message_LinkOutSuggestion_) isIntent_Message_Message() {}
+
+func (*Intent_Message_ListSelect_) isIntent_Message_Message() {}
+
+func (*Intent_Message_CarouselSelect_) isIntent_Message_Message() {}
+
+func (*Intent_Message_TelephonyPlayAudio_) isIntent_Message_Message() {}
+
+func (*Intent_Message_TelephonySynthesizeSpeech_) isIntent_Message_Message() {}
+
+func (*Intent_Message_TelephonyTransferCall_) isIntent_Message_Message() {}
+
+func (*Intent_Message_RbmText_) isIntent_Message_Message() {}
+
+func (*Intent_Message_RbmStandaloneRichCard) isIntent_Message_Message() {}
+
+func (*Intent_Message_RbmCarouselRichCard) isIntent_Message_Message() {}
+
+func (*Intent_Message_BrowseCarouselCard_) isIntent_Message_Message() {}
+
+func (*Intent_Message_TableCard_) isIntent_Message_Message() {}
+
+func (*Intent_Message_MediaContent_) isIntent_Message_Message() {}
+
+// Represents a single followup intent in the chain.
+type Intent_FollowupIntentInfo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of the followup intent.
+ // Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+ FollowupIntentName string `protobuf:"bytes,1,opt,name=followup_intent_name,json=followupIntentName,proto3" json:"followup_intent_name,omitempty"`
+ // The unique identifier of the followup intent's parent.
+ // Format: `projects/<Project ID>/agent/intents/<Intent ID>`.
+ ParentFollowupIntentName string `protobuf:"bytes,2,opt,name=parent_followup_intent_name,json=parentFollowupIntentName,proto3" json:"parent_followup_intent_name,omitempty"`
+}
+
+func (x *Intent_FollowupIntentInfo) Reset() {
+ *x = Intent_FollowupIntentInfo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_FollowupIntentInfo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_FollowupIntentInfo) ProtoMessage() {}
+
+func (x *Intent_FollowupIntentInfo) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_FollowupIntentInfo.ProtoReflect.Descriptor instead.
+func (*Intent_FollowupIntentInfo) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 3}
+}
+
+func (x *Intent_FollowupIntentInfo) GetFollowupIntentName() string {
+ if x != nil {
+ return x.FollowupIntentName
+ }
+ return ""
+}
+
+func (x *Intent_FollowupIntentInfo) GetParentFollowupIntentName() string {
+ if x != nil {
+ return x.ParentFollowupIntentName
+ }
+ return ""
+}
+
+// Represents a part of a training phrase.
+type Intent_TrainingPhrase_Part struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The text for this part.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Optional. The entity type name prefixed with `@`.
+ // This field is required for annotated parts of the training phrase.
+ EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
+ // Optional. The parameter name for the value extracted from the
+ // annotated part of the example.
+ // This field is required for annotated parts of the training phrase.
+ Alias string `protobuf:"bytes,3,opt,name=alias,proto3" json:"alias,omitempty"`
+ // Optional. Indicates whether the text was manually annotated.
+ // This field is set to true when the Dialogflow Console is used to
+ // manually annotate the part. When creating an annotated part with the
+ // API, you must set this to true.
+ UserDefined bool `protobuf:"varint,4,opt,name=user_defined,json=userDefined,proto3" json:"user_defined,omitempty"`
+}
+
+func (x *Intent_TrainingPhrase_Part) Reset() {
+ *x = Intent_TrainingPhrase_Part{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_TrainingPhrase_Part) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_TrainingPhrase_Part) ProtoMessage() {}
+
+func (x *Intent_TrainingPhrase_Part) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[15]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_TrainingPhrase_Part.ProtoReflect.Descriptor instead.
+func (*Intent_TrainingPhrase_Part) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 0, 0}
+}
+
+func (x *Intent_TrainingPhrase_Part) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_TrainingPhrase_Part) GetEntityType() string {
+ if x != nil {
+ return x.EntityType
+ }
+ return ""
+}
+
+func (x *Intent_TrainingPhrase_Part) GetAlias() string {
+ if x != nil {
+ return x.Alias
+ }
+ return ""
+}
+
+func (x *Intent_TrainingPhrase_Part) GetUserDefined() bool {
+ if x != nil {
+ return x.UserDefined
+ }
+ return false
+}
+
+// The text response message.
+type Intent_Message_Text struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The collection of the agent's responses.
+ Text []string `protobuf:"bytes,1,rep,name=text,proto3" json:"text,omitempty"`
+}
+
+func (x *Intent_Message_Text) Reset() {
+ *x = Intent_Message_Text{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Text) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Text) ProtoMessage() {}
+
+func (x *Intent_Message_Text) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[16]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Text.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Text) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 0}
+}
+
+func (x *Intent_Message_Text) GetText() []string {
+ if x != nil {
+ return x.Text
+ }
+ return nil
+}
+
+// The image response message.
+type Intent_Message_Image struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The public URI to an image file.
+ ImageUri string `protobuf:"bytes,1,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
+ // A text description of the image to be used for accessibility,
+ // e.g., screen readers. Required if image_uri is set for CarouselSelect.
+ AccessibilityText string `protobuf:"bytes,2,opt,name=accessibility_text,json=accessibilityText,proto3" json:"accessibility_text,omitempty"`
+}
+
+func (x *Intent_Message_Image) Reset() {
+ *x = Intent_Message_Image{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Image) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Image) ProtoMessage() {}
+
+func (x *Intent_Message_Image) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[17]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Image.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Image) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 1}
+}
+
+func (x *Intent_Message_Image) GetImageUri() string {
+ if x != nil {
+ return x.ImageUri
+ }
+ return ""
+}
+
+func (x *Intent_Message_Image) GetAccessibilityText() string {
+ if x != nil {
+ return x.AccessibilityText
+ }
+ return ""
+}
+
+// The quick replies response message.
+type Intent_Message_QuickReplies struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The title of the collection of quick replies.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. The collection of quick replies.
+ QuickReplies []string `protobuf:"bytes,2,rep,name=quick_replies,json=quickReplies,proto3" json:"quick_replies,omitempty"`
+}
+
+func (x *Intent_Message_QuickReplies) Reset() {
+ *x = Intent_Message_QuickReplies{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_QuickReplies) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_QuickReplies) ProtoMessage() {}
+
+func (x *Intent_Message_QuickReplies) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[18]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_QuickReplies.ProtoReflect.Descriptor instead.
+func (*Intent_Message_QuickReplies) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 2}
+}
+
+func (x *Intent_Message_QuickReplies) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_QuickReplies) GetQuickReplies() []string {
+ if x != nil {
+ return x.QuickReplies
+ }
+ return nil
+}
+
+// The card response message.
+type Intent_Message_Card struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The title of the card.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. The subtitle of the card.
+ Subtitle string `protobuf:"bytes,2,opt,name=subtitle,proto3" json:"subtitle,omitempty"`
+ // Optional. The public URI to an image file for the card.
+ ImageUri string `protobuf:"bytes,3,opt,name=image_uri,json=imageUri,proto3" json:"image_uri,omitempty"`
+ // Optional. The collection of card buttons.
+ Buttons []*Intent_Message_Card_Button `protobuf:"bytes,4,rep,name=buttons,proto3" json:"buttons,omitempty"`
+}
+
+func (x *Intent_Message_Card) Reset() {
+ *x = Intent_Message_Card{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Card) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Card) ProtoMessage() {}
+
+func (x *Intent_Message_Card) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[19]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Card.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Card) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 3}
+}
+
+func (x *Intent_Message_Card) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_Card) GetSubtitle() string {
+ if x != nil {
+ return x.Subtitle
+ }
+ return ""
+}
+
+func (x *Intent_Message_Card) GetImageUri() string {
+ if x != nil {
+ return x.ImageUri
+ }
+ return ""
+}
+
+func (x *Intent_Message_Card) GetButtons() []*Intent_Message_Card_Button {
+ if x != nil {
+ return x.Buttons
+ }
+ return nil
+}
+
+// The simple response message containing speech or text.
+type Intent_Message_SimpleResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // One of text_to_speech or ssml must be provided. The plain text of the
+ // speech output. Mutually exclusive with ssml.
+ TextToSpeech string `protobuf:"bytes,1,opt,name=text_to_speech,json=textToSpeech,proto3" json:"text_to_speech,omitempty"`
+ // One of text_to_speech or ssml must be provided. Structured spoken
+ // response to the user in the SSML format. Mutually exclusive with
+ // text_to_speech.
+ Ssml string `protobuf:"bytes,2,opt,name=ssml,proto3" json:"ssml,omitempty"`
+ // Optional. The text to display.
+ DisplayText string `protobuf:"bytes,3,opt,name=display_text,json=displayText,proto3" json:"display_text,omitempty"`
+}
+
+func (x *Intent_Message_SimpleResponse) Reset() {
+ *x = Intent_Message_SimpleResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_SimpleResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_SimpleResponse) ProtoMessage() {}
+
+func (x *Intent_Message_SimpleResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[20]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_SimpleResponse.ProtoReflect.Descriptor instead.
+func (*Intent_Message_SimpleResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 4}
+}
+
+func (x *Intent_Message_SimpleResponse) GetTextToSpeech() string {
+ if x != nil {
+ return x.TextToSpeech
+ }
+ return ""
+}
+
+func (x *Intent_Message_SimpleResponse) GetSsml() string {
+ if x != nil {
+ return x.Ssml
+ }
+ return ""
+}
+
+func (x *Intent_Message_SimpleResponse) GetDisplayText() string {
+ if x != nil {
+ return x.DisplayText
+ }
+ return ""
+}
+
+// The collection of simple response candidates.
+// This message in `QueryResult.fulfillment_messages` and
+// `WebhookResponse.fulfillment_messages` should contain only one
+// `SimpleResponse`.
+type Intent_Message_SimpleResponses struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The list of simple responses.
+ SimpleResponses []*Intent_Message_SimpleResponse `protobuf:"bytes,1,rep,name=simple_responses,json=simpleResponses,proto3" json:"simple_responses,omitempty"`
+}
+
+func (x *Intent_Message_SimpleResponses) Reset() {
+ *x = Intent_Message_SimpleResponses{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_SimpleResponses) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_SimpleResponses) ProtoMessage() {}
+
+func (x *Intent_Message_SimpleResponses) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[21]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_SimpleResponses.ProtoReflect.Descriptor instead.
+func (*Intent_Message_SimpleResponses) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 5}
+}
+
+func (x *Intent_Message_SimpleResponses) GetSimpleResponses() []*Intent_Message_SimpleResponse {
+ if x != nil {
+ return x.SimpleResponses
+ }
+ return nil
+}
+
+// The basic card message. Useful for displaying information.
+type Intent_Message_BasicCard struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The title of the card.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. The subtitle of the card.
+ Subtitle string `protobuf:"bytes,2,opt,name=subtitle,proto3" json:"subtitle,omitempty"`
+ // Required, unless image is present. The body text of the card.
+ FormattedText string `protobuf:"bytes,3,opt,name=formatted_text,json=formattedText,proto3" json:"formatted_text,omitempty"`
+ // Optional. The image for the card.
+ Image *Intent_Message_Image `protobuf:"bytes,4,opt,name=image,proto3" json:"image,omitempty"`
+ // Optional. The collection of card buttons.
+ Buttons []*Intent_Message_BasicCard_Button `protobuf:"bytes,5,rep,name=buttons,proto3" json:"buttons,omitempty"`
+}
+
+func (x *Intent_Message_BasicCard) Reset() {
+ *x = Intent_Message_BasicCard{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BasicCard) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BasicCard) ProtoMessage() {}
+
+func (x *Intent_Message_BasicCard) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[22]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BasicCard.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BasicCard) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 6}
+}
+
+func (x *Intent_Message_BasicCard) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_BasicCard) GetSubtitle() string {
+ if x != nil {
+ return x.Subtitle
+ }
+ return ""
+}
+
+func (x *Intent_Message_BasicCard) GetFormattedText() string {
+ if x != nil {
+ return x.FormattedText
+ }
+ return ""
+}
+
+func (x *Intent_Message_BasicCard) GetImage() *Intent_Message_Image {
+ if x != nil {
+ return x.Image
+ }
+ return nil
+}
+
+func (x *Intent_Message_BasicCard) GetButtons() []*Intent_Message_BasicCard_Button {
+ if x != nil {
+ return x.Buttons
+ }
+ return nil
+}
+
+// The suggestion chip message that the user can tap to quickly post a reply
+// to the conversation.
+type Intent_Message_Suggestion struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The text shown the in the suggestion chip.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+}
+
+func (x *Intent_Message_Suggestion) Reset() {
+ *x = Intent_Message_Suggestion{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Suggestion) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Suggestion) ProtoMessage() {}
+
+func (x *Intent_Message_Suggestion) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[23]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Suggestion.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Suggestion) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 7}
+}
+
+func (x *Intent_Message_Suggestion) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+// The collection of suggestions.
+type Intent_Message_Suggestions struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The list of suggested replies.
+ Suggestions []*Intent_Message_Suggestion `protobuf:"bytes,1,rep,name=suggestions,proto3" json:"suggestions,omitempty"`
+}
+
+func (x *Intent_Message_Suggestions) Reset() {
+ *x = Intent_Message_Suggestions{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Suggestions) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Suggestions) ProtoMessage() {}
+
+func (x *Intent_Message_Suggestions) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[24]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Suggestions.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Suggestions) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 8}
+}
+
+func (x *Intent_Message_Suggestions) GetSuggestions() []*Intent_Message_Suggestion {
+ if x != nil {
+ return x.Suggestions
+ }
+ return nil
+}
+
+// The suggestion chip message that allows the user to jump out to the app
+// or website associated with this agent.
+type Intent_Message_LinkOutSuggestion struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the app or site this chip is linking to.
+ DestinationName string `protobuf:"bytes,1,opt,name=destination_name,json=destinationName,proto3" json:"destination_name,omitempty"`
+ // Required. The URI of the app or site to open when the user taps the
+ // suggestion chip.
+ Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
+}
+
+func (x *Intent_Message_LinkOutSuggestion) Reset() {
+ *x = Intent_Message_LinkOutSuggestion{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_LinkOutSuggestion) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_LinkOutSuggestion) ProtoMessage() {}
+
+func (x *Intent_Message_LinkOutSuggestion) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[25]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_LinkOutSuggestion.ProtoReflect.Descriptor instead.
+func (*Intent_Message_LinkOutSuggestion) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 9}
+}
+
+func (x *Intent_Message_LinkOutSuggestion) GetDestinationName() string {
+ if x != nil {
+ return x.DestinationName
+ }
+ return ""
+}
+
+func (x *Intent_Message_LinkOutSuggestion) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+// The card for presenting a list of options to select from.
+type Intent_Message_ListSelect struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The overall title of the list.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Required. List items.
+ Items []*Intent_Message_ListSelect_Item `protobuf:"bytes,2,rep,name=items,proto3" json:"items,omitempty"`
+ // Optional. Subtitle of the list.
+ Subtitle string `protobuf:"bytes,3,opt,name=subtitle,proto3" json:"subtitle,omitempty"`
+}
+
+func (x *Intent_Message_ListSelect) Reset() {
+ *x = Intent_Message_ListSelect{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_ListSelect) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_ListSelect) ProtoMessage() {}
+
+func (x *Intent_Message_ListSelect) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[26]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_ListSelect.ProtoReflect.Descriptor instead.
+func (*Intent_Message_ListSelect) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 10}
+}
+
+func (x *Intent_Message_ListSelect) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_ListSelect) GetItems() []*Intent_Message_ListSelect_Item {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+func (x *Intent_Message_ListSelect) GetSubtitle() string {
+ if x != nil {
+ return x.Subtitle
+ }
+ return ""
+}
+
+// The card for presenting a carousel of options to select from.
+type Intent_Message_CarouselSelect struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Carousel items.
+ Items []*Intent_Message_CarouselSelect_Item `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+}
+
+func (x *Intent_Message_CarouselSelect) Reset() {
+ *x = Intent_Message_CarouselSelect{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_CarouselSelect) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_CarouselSelect) ProtoMessage() {}
+
+func (x *Intent_Message_CarouselSelect) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[27]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_CarouselSelect.ProtoReflect.Descriptor instead.
+func (*Intent_Message_CarouselSelect) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 11}
+}
+
+func (x *Intent_Message_CarouselSelect) GetItems() []*Intent_Message_CarouselSelect_Item {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+// Additional info about the select item for when it is triggered in a
+// dialog.
+type Intent_Message_SelectItemInfo struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. A unique key that will be sent back to the agent if this
+ // response is given.
+ Key string `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"`
+ // Optional. A list of synonyms that can also be used to trigger this
+ // item in dialog.
+ Synonyms []string `protobuf:"bytes,2,rep,name=synonyms,proto3" json:"synonyms,omitempty"`
+}
+
+func (x *Intent_Message_SelectItemInfo) Reset() {
+ *x = Intent_Message_SelectItemInfo{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_SelectItemInfo) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_SelectItemInfo) ProtoMessage() {}
+
+func (x *Intent_Message_SelectItemInfo) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[28]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_SelectItemInfo.ProtoReflect.Descriptor instead.
+func (*Intent_Message_SelectItemInfo) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 12}
+}
+
+func (x *Intent_Message_SelectItemInfo) GetKey() string {
+ if x != nil {
+ return x.Key
+ }
+ return ""
+}
+
+func (x *Intent_Message_SelectItemInfo) GetSynonyms() []string {
+ if x != nil {
+ return x.Synonyms
+ }
+ return nil
+}
+
+// Plays audio from a file in Telephony Gateway.
+type Intent_Message_TelephonyPlayAudio struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. URI to a Google Cloud Storage object containing the audio to
+ // play, e.g., "gs://bucket/object". The object must contain a single
+ // channel (mono) of linear PCM audio (2 bytes / sample) at 8kHz.
+ //
+ // This object must be readable by the `service-<Project
+ // Number>@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
+ // where <Project Number> is the number of the Telephony Gateway project
+ // (usually the same as the Dialogflow agent project). If the Google Cloud
+ // Storage bucket is in the Telephony Gateway project, this permission is
+ // added by default when enabling the Dialogflow V2 API.
+ //
+ // For audio from other sources, consider using the
+ // `TelephonySynthesizeSpeech` message with SSML.
+ AudioUri string `protobuf:"bytes,1,opt,name=audio_uri,json=audioUri,proto3" json:"audio_uri,omitempty"`
+}
+
+func (x *Intent_Message_TelephonyPlayAudio) Reset() {
+ *x = Intent_Message_TelephonyPlayAudio{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TelephonyPlayAudio) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TelephonyPlayAudio) ProtoMessage() {}
+
+func (x *Intent_Message_TelephonyPlayAudio) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[29]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TelephonyPlayAudio.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TelephonyPlayAudio) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 13}
+}
+
+func (x *Intent_Message_TelephonyPlayAudio) GetAudioUri() string {
+ if x != nil {
+ return x.AudioUri
+ }
+ return ""
+}
+
+// Synthesizes speech and plays back the synthesized audio to the caller in
+// Telephony Gateway.
+//
+// Telephony Gateway takes the synthesizer settings from
+// `DetectIntentResponse.output_audio_config` which can either be set
+// at request-level or can come from the agent-level synthesizer config.
+type Intent_Message_TelephonySynthesizeSpeech struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The source to be synthesized.
+ //
+ // Types that are assignable to Source:
+ //
+ // *Intent_Message_TelephonySynthesizeSpeech_Text
+ // *Intent_Message_TelephonySynthesizeSpeech_Ssml
+ Source isIntent_Message_TelephonySynthesizeSpeech_Source `protobuf_oneof:"source"`
+}
+
+func (x *Intent_Message_TelephonySynthesizeSpeech) Reset() {
+ *x = Intent_Message_TelephonySynthesizeSpeech{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TelephonySynthesizeSpeech) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TelephonySynthesizeSpeech) ProtoMessage() {}
+
+func (x *Intent_Message_TelephonySynthesizeSpeech) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[30]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TelephonySynthesizeSpeech.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TelephonySynthesizeSpeech) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 14}
+}
+
+func (m *Intent_Message_TelephonySynthesizeSpeech) GetSource() isIntent_Message_TelephonySynthesizeSpeech_Source {
+ if m != nil {
+ return m.Source
+ }
+ return nil
+}
+
+func (x *Intent_Message_TelephonySynthesizeSpeech) GetText() string {
+ if x, ok := x.GetSource().(*Intent_Message_TelephonySynthesizeSpeech_Text); ok {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_Message_TelephonySynthesizeSpeech) GetSsml() string {
+ if x, ok := x.GetSource().(*Intent_Message_TelephonySynthesizeSpeech_Ssml); ok {
+ return x.Ssml
+ }
+ return ""
+}
+
+type isIntent_Message_TelephonySynthesizeSpeech_Source interface {
+ isIntent_Message_TelephonySynthesizeSpeech_Source()
+}
+
+type Intent_Message_TelephonySynthesizeSpeech_Text struct {
+ // The raw text to be synthesized.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3,oneof"`
+}
+
+type Intent_Message_TelephonySynthesizeSpeech_Ssml struct {
+ // The SSML to be synthesized. For more information, see
+ // [SSML](https://developers.google.com/actions/reference/ssml).
+ Ssml string `protobuf:"bytes,2,opt,name=ssml,proto3,oneof"`
+}
+
+func (*Intent_Message_TelephonySynthesizeSpeech_Text) isIntent_Message_TelephonySynthesizeSpeech_Source() {
+}
+
+func (*Intent_Message_TelephonySynthesizeSpeech_Ssml) isIntent_Message_TelephonySynthesizeSpeech_Source() {
+}
+
+// Transfers the call in Telephony Gateway.
+type Intent_Message_TelephonyTransferCall struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The phone number to transfer the call to
+ // in [E.164 format](https://en.wikipedia.org/wiki/E.164).
+ //
+ // We currently only allow transferring to US numbers (+1xxxyyyzzzz).
+ PhoneNumber string `protobuf:"bytes,1,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
+}
+
+func (x *Intent_Message_TelephonyTransferCall) Reset() {
+ *x = Intent_Message_TelephonyTransferCall{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TelephonyTransferCall) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TelephonyTransferCall) ProtoMessage() {}
+
+func (x *Intent_Message_TelephonyTransferCall) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[31]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TelephonyTransferCall.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TelephonyTransferCall) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 15}
+}
+
+func (x *Intent_Message_TelephonyTransferCall) GetPhoneNumber() string {
+ if x != nil {
+ return x.PhoneNumber
+ }
+ return ""
+}
+
+// Rich Business Messaging (RBM) text response with suggestions.
+type Intent_Message_RbmText struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Text sent and displayed to the user.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Optional. One or more suggestions to show to the user.
+ RbmSuggestion []*Intent_Message_RbmSuggestion `protobuf:"bytes,2,rep,name=rbm_suggestion,json=rbmSuggestion,proto3" json:"rbm_suggestion,omitempty"`
+}
+
+func (x *Intent_Message_RbmText) Reset() {
+ *x = Intent_Message_RbmText{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmText) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmText) ProtoMessage() {}
+
+func (x *Intent_Message_RbmText) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[32]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmText.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmText) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 16}
+}
+
+func (x *Intent_Message_RbmText) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmText) GetRbmSuggestion() []*Intent_Message_RbmSuggestion {
+ if x != nil {
+ return x.RbmSuggestion
+ }
+ return nil
+}
+
+// Carousel Rich Business Messaging (RBM) rich card.
+//
+// Rich cards allow you to respond to users with more vivid content, e.g.
+// with media and suggestions.
+//
+// If you want to show a single card with more control over the layout,
+// please use
+// [RbmStandaloneCard][google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard]
+// instead.
+type Intent_Message_RbmCarouselCard struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The width of the cards in the carousel.
+ CardWidth Intent_Message_RbmCarouselCard_CardWidth `protobuf:"varint,1,opt,name=card_width,json=cardWidth,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_RbmCarouselCard_CardWidth" json:"card_width,omitempty"`
+ // Required. The cards in the carousel. A carousel must have at least
+ // 2 cards and at most 10.
+ CardContents []*Intent_Message_RbmCardContent `protobuf:"bytes,2,rep,name=card_contents,json=cardContents,proto3" json:"card_contents,omitempty"`
+}
+
+func (x *Intent_Message_RbmCarouselCard) Reset() {
+ *x = Intent_Message_RbmCarouselCard{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmCarouselCard) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmCarouselCard) ProtoMessage() {}
+
+func (x *Intent_Message_RbmCarouselCard) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[33]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmCarouselCard.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmCarouselCard) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 17}
+}
+
+func (x *Intent_Message_RbmCarouselCard) GetCardWidth() Intent_Message_RbmCarouselCard_CardWidth {
+ if x != nil {
+ return x.CardWidth
+ }
+ return Intent_Message_RbmCarouselCard_CARD_WIDTH_UNSPECIFIED
+}
+
+func (x *Intent_Message_RbmCarouselCard) GetCardContents() []*Intent_Message_RbmCardContent {
+ if x != nil {
+ return x.CardContents
+ }
+ return nil
+}
+
+// Standalone Rich Business Messaging (RBM) rich card.
+//
+// Rich cards allow you to respond to users with more vivid content, e.g.
+// with media and suggestions.
+//
+// You can group multiple rich cards into one using
+// [RbmCarouselCard][google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard]
+// but carousel cards will give you less control over the card layout.
+type Intent_Message_RbmStandaloneCard struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Orientation of the card.
+ CardOrientation Intent_Message_RbmStandaloneCard_CardOrientation `protobuf:"varint,1,opt,name=card_orientation,json=cardOrientation,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_RbmStandaloneCard_CardOrientation" json:"card_orientation,omitempty"`
+ // Required if orientation is horizontal.
+ // Image preview alignment for standalone cards with horizontal layout.
+ ThumbnailImageAlignment Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment `protobuf:"varint,2,opt,name=thumbnail_image_alignment,json=thumbnailImageAlignment,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment" json:"thumbnail_image_alignment,omitempty"`
+ // Required. Card content.
+ CardContent *Intent_Message_RbmCardContent `protobuf:"bytes,3,opt,name=card_content,json=cardContent,proto3" json:"card_content,omitempty"`
+}
+
+func (x *Intent_Message_RbmStandaloneCard) Reset() {
+ *x = Intent_Message_RbmStandaloneCard{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmStandaloneCard) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmStandaloneCard) ProtoMessage() {}
+
+func (x *Intent_Message_RbmStandaloneCard) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[34]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmStandaloneCard.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmStandaloneCard) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 18}
+}
+
+func (x *Intent_Message_RbmStandaloneCard) GetCardOrientation() Intent_Message_RbmStandaloneCard_CardOrientation {
+ if x != nil {
+ return x.CardOrientation
+ }
+ return Intent_Message_RbmStandaloneCard_CARD_ORIENTATION_UNSPECIFIED
+}
+
+func (x *Intent_Message_RbmStandaloneCard) GetThumbnailImageAlignment() Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment {
+ if x != nil {
+ return x.ThumbnailImageAlignment
+ }
+ return Intent_Message_RbmStandaloneCard_THUMBNAIL_IMAGE_ALIGNMENT_UNSPECIFIED
+}
+
+func (x *Intent_Message_RbmStandaloneCard) GetCardContent() *Intent_Message_RbmCardContent {
+ if x != nil {
+ return x.CardContent
+ }
+ return nil
+}
+
+// Rich Business Messaging (RBM) Card content
+type Intent_Message_RbmCardContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. Title of the card (at most 200 bytes).
+ //
+ // At least one of the title, description or media must be set.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. Description of the card (at most 2000 bytes).
+ //
+ // At least one of the title, description or media must be set.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. However at least one of the title, description or media must
+ // be set. Media (image, GIF or a video) to include in the card.
+ Media *Intent_Message_RbmCardContent_RbmMedia `protobuf:"bytes,3,opt,name=media,proto3" json:"media,omitempty"`
+ // Optional. List of suggestions to include in the card.
+ Suggestions []*Intent_Message_RbmSuggestion `protobuf:"bytes,4,rep,name=suggestions,proto3" json:"suggestions,omitempty"`
+}
+
+func (x *Intent_Message_RbmCardContent) Reset() {
+ *x = Intent_Message_RbmCardContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmCardContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmCardContent) ProtoMessage() {}
+
+func (x *Intent_Message_RbmCardContent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[35]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmCardContent.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmCardContent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 19}
+}
+
+func (x *Intent_Message_RbmCardContent) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmCardContent) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmCardContent) GetMedia() *Intent_Message_RbmCardContent_RbmMedia {
+ if x != nil {
+ return x.Media
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmCardContent) GetSuggestions() []*Intent_Message_RbmSuggestion {
+ if x != nil {
+ return x.Suggestions
+ }
+ return nil
+}
+
+// Rich Business Messaging (RBM) suggestion. Suggestions allow user to
+// easily select/click a predefined response or perform an action (like
+// opening a web uri).
+type Intent_Message_RbmSuggestion struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Predefined suggested response or action for user to choose
+ //
+ // Types that are assignable to Suggestion:
+ //
+ // *Intent_Message_RbmSuggestion_Reply
+ // *Intent_Message_RbmSuggestion_Action
+ Suggestion isIntent_Message_RbmSuggestion_Suggestion `protobuf_oneof:"suggestion"`
+}
+
+func (x *Intent_Message_RbmSuggestion) Reset() {
+ *x = Intent_Message_RbmSuggestion{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[36]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestion) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestion) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestion) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[36]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestion.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestion) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 20}
+}
+
+func (m *Intent_Message_RbmSuggestion) GetSuggestion() isIntent_Message_RbmSuggestion_Suggestion {
+ if m != nil {
+ return m.Suggestion
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmSuggestion) GetReply() *Intent_Message_RbmSuggestedReply {
+ if x, ok := x.GetSuggestion().(*Intent_Message_RbmSuggestion_Reply); ok {
+ return x.Reply
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmSuggestion) GetAction() *Intent_Message_RbmSuggestedAction {
+ if x, ok := x.GetSuggestion().(*Intent_Message_RbmSuggestion_Action); ok {
+ return x.Action
+ }
+ return nil
+}
+
+type isIntent_Message_RbmSuggestion_Suggestion interface {
+ isIntent_Message_RbmSuggestion_Suggestion()
+}
+
+type Intent_Message_RbmSuggestion_Reply struct {
+ // Predefined replies for user to select instead of typing
+ Reply *Intent_Message_RbmSuggestedReply `protobuf:"bytes,1,opt,name=reply,proto3,oneof"`
+}
+
+type Intent_Message_RbmSuggestion_Action struct {
+ // Predefined client side actions that user can choose
+ Action *Intent_Message_RbmSuggestedAction `protobuf:"bytes,2,opt,name=action,proto3,oneof"`
+}
+
+func (*Intent_Message_RbmSuggestion_Reply) isIntent_Message_RbmSuggestion_Suggestion() {}
+
+func (*Intent_Message_RbmSuggestion_Action) isIntent_Message_RbmSuggestion_Suggestion() {}
+
+// Rich Business Messaging (RBM) suggested reply that the user can click
+// instead of typing in their own response.
+type Intent_Message_RbmSuggestedReply struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Suggested reply text.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Opaque payload that the Dialogflow receives in a user event
+ // when the user taps the suggested reply. This data will be also
+ // forwarded to webhook to allow performing custom business logic.
+ PostbackData string `protobuf:"bytes,2,opt,name=postback_data,json=postbackData,proto3" json:"postback_data,omitempty"`
+}
+
+func (x *Intent_Message_RbmSuggestedReply) Reset() {
+ *x = Intent_Message_RbmSuggestedReply{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[37]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestedReply) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestedReply) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestedReply) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[37]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestedReply.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestedReply) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 21}
+}
+
+func (x *Intent_Message_RbmSuggestedReply) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmSuggestedReply) GetPostbackData() string {
+ if x != nil {
+ return x.PostbackData
+ }
+ return ""
+}
+
+// Rich Business Messaging (RBM) suggested client-side action that the user
+// can choose from the card.
+type Intent_Message_RbmSuggestedAction struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Text to display alongside the action.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Opaque payload that the Dialogflow receives in a user event
+ // when the user taps the suggested action. This data will be also
+ // forwarded to webhook to allow performing custom business logic.
+ PostbackData string `protobuf:"bytes,2,opt,name=postback_data,json=postbackData,proto3" json:"postback_data,omitempty"`
+ // Action that needs to be triggered.
+ //
+ // Types that are assignable to Action:
+ //
+ // *Intent_Message_RbmSuggestedAction_Dial
+ // *Intent_Message_RbmSuggestedAction_OpenUrl
+ // *Intent_Message_RbmSuggestedAction_ShareLocation
+ Action isIntent_Message_RbmSuggestedAction_Action `protobuf_oneof:"action"`
+}
+
+func (x *Intent_Message_RbmSuggestedAction) Reset() {
+ *x = Intent_Message_RbmSuggestedAction{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[38]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestedAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestedAction) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestedAction) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[38]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestedAction.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestedAction) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 22}
+}
+
+func (x *Intent_Message_RbmSuggestedAction) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmSuggestedAction) GetPostbackData() string {
+ if x != nil {
+ return x.PostbackData
+ }
+ return ""
+}
+
+func (m *Intent_Message_RbmSuggestedAction) GetAction() isIntent_Message_RbmSuggestedAction_Action {
+ if m != nil {
+ return m.Action
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmSuggestedAction) GetDial() *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial {
+ if x, ok := x.GetAction().(*Intent_Message_RbmSuggestedAction_Dial); ok {
+ return x.Dial
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmSuggestedAction) GetOpenUrl() *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri {
+ if x, ok := x.GetAction().(*Intent_Message_RbmSuggestedAction_OpenUrl); ok {
+ return x.OpenUrl
+ }
+ return nil
+}
+
+func (x *Intent_Message_RbmSuggestedAction) GetShareLocation() *Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation {
+ if x, ok := x.GetAction().(*Intent_Message_RbmSuggestedAction_ShareLocation); ok {
+ return x.ShareLocation
+ }
+ return nil
+}
+
+type isIntent_Message_RbmSuggestedAction_Action interface {
+ isIntent_Message_RbmSuggestedAction_Action()
+}
+
+type Intent_Message_RbmSuggestedAction_Dial struct {
+ // Suggested client side action: Dial a phone number
+ Dial *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial `protobuf:"bytes,3,opt,name=dial,proto3,oneof"`
+}
+
+type Intent_Message_RbmSuggestedAction_OpenUrl struct {
+ // Suggested client side action: Open a URI on device
+ OpenUrl *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri `protobuf:"bytes,4,opt,name=open_url,json=openUrl,proto3,oneof"`
+}
+
+type Intent_Message_RbmSuggestedAction_ShareLocation struct {
+ // Suggested client side action: Share user location
+ ShareLocation *Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation `protobuf:"bytes,5,opt,name=share_location,json=shareLocation,proto3,oneof"`
+}
+
+func (*Intent_Message_RbmSuggestedAction_Dial) isIntent_Message_RbmSuggestedAction_Action() {}
+
+func (*Intent_Message_RbmSuggestedAction_OpenUrl) isIntent_Message_RbmSuggestedAction_Action() {}
+
+func (*Intent_Message_RbmSuggestedAction_ShareLocation) isIntent_Message_RbmSuggestedAction_Action() {
+}
+
+// The media content card for Actions on Google.
+type Intent_Message_MediaContent struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. What type of media is the content (ie "audio").
+ MediaType Intent_Message_MediaContent_ResponseMediaType `protobuf:"varint,1,opt,name=media_type,json=mediaType,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_MediaContent_ResponseMediaType" json:"media_type,omitempty"`
+ // Required. List of media objects.
+ MediaObjects []*Intent_Message_MediaContent_ResponseMediaObject `protobuf:"bytes,2,rep,name=media_objects,json=mediaObjects,proto3" json:"media_objects,omitempty"`
+}
+
+func (x *Intent_Message_MediaContent) Reset() {
+ *x = Intent_Message_MediaContent{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[39]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_MediaContent) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_MediaContent) ProtoMessage() {}
+
+func (x *Intent_Message_MediaContent) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[39]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_MediaContent.ProtoReflect.Descriptor instead.
+func (*Intent_Message_MediaContent) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 23}
+}
+
+func (x *Intent_Message_MediaContent) GetMediaType() Intent_Message_MediaContent_ResponseMediaType {
+ if x != nil {
+ return x.MediaType
+ }
+ return Intent_Message_MediaContent_RESPONSE_MEDIA_TYPE_UNSPECIFIED
+}
+
+func (x *Intent_Message_MediaContent) GetMediaObjects() []*Intent_Message_MediaContent_ResponseMediaObject {
+ if x != nil {
+ return x.MediaObjects
+ }
+ return nil
+}
+
+// Browse Carousel Card for Actions on Google.
+// https://developers.google.com/actions/assistant/responses#browsing_carousel
+type Intent_Message_BrowseCarouselCard struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. List of items in the Browse Carousel Card. Minimum of two
+ // items, maximum of ten.
+ Items []*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem `protobuf:"bytes,1,rep,name=items,proto3" json:"items,omitempty"`
+ // Optional. Settings for displaying the image. Applies to every image in
+ // [items][google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.items].
+ ImageDisplayOptions Intent_Message_BrowseCarouselCard_ImageDisplayOptions `protobuf:"varint,2,opt,name=image_display_options,json=imageDisplayOptions,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_BrowseCarouselCard_ImageDisplayOptions" json:"image_display_options,omitempty"`
+}
+
+func (x *Intent_Message_BrowseCarouselCard) Reset() {
+ *x = Intent_Message_BrowseCarouselCard{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BrowseCarouselCard) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BrowseCarouselCard) ProtoMessage() {}
+
+func (x *Intent_Message_BrowseCarouselCard) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[40]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BrowseCarouselCard.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BrowseCarouselCard) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 24}
+}
+
+func (x *Intent_Message_BrowseCarouselCard) GetItems() []*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem {
+ if x != nil {
+ return x.Items
+ }
+ return nil
+}
+
+func (x *Intent_Message_BrowseCarouselCard) GetImageDisplayOptions() Intent_Message_BrowseCarouselCard_ImageDisplayOptions {
+ if x != nil {
+ return x.ImageDisplayOptions
+ }
+ return Intent_Message_BrowseCarouselCard_IMAGE_DISPLAY_OPTIONS_UNSPECIFIED
+}
+
+// Table card for Actions on Google.
+type Intent_Message_TableCard struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Title of the card.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. Subtitle to the title.
+ Subtitle string `protobuf:"bytes,2,opt,name=subtitle,proto3" json:"subtitle,omitempty"`
+ // Optional. Image which should be displayed on the card.
+ Image *Intent_Message_Image `protobuf:"bytes,3,opt,name=image,proto3" json:"image,omitempty"`
+ // Optional. Display properties for the columns in this table.
+ ColumnProperties []*Intent_Message_ColumnProperties `protobuf:"bytes,4,rep,name=column_properties,json=columnProperties,proto3" json:"column_properties,omitempty"`
+ // Optional. Rows in this table of data.
+ Rows []*Intent_Message_TableCardRow `protobuf:"bytes,5,rep,name=rows,proto3" json:"rows,omitempty"`
+ // Optional. List of buttons for the card.
+ Buttons []*Intent_Message_BasicCard_Button `protobuf:"bytes,6,rep,name=buttons,proto3" json:"buttons,omitempty"`
+}
+
+func (x *Intent_Message_TableCard) Reset() {
+ *x = Intent_Message_TableCard{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TableCard) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TableCard) ProtoMessage() {}
+
+func (x *Intent_Message_TableCard) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[41]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TableCard.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TableCard) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 25}
+}
+
+func (x *Intent_Message_TableCard) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_TableCard) GetSubtitle() string {
+ if x != nil {
+ return x.Subtitle
+ }
+ return ""
+}
+
+func (x *Intent_Message_TableCard) GetImage() *Intent_Message_Image {
+ if x != nil {
+ return x.Image
+ }
+ return nil
+}
+
+func (x *Intent_Message_TableCard) GetColumnProperties() []*Intent_Message_ColumnProperties {
+ if x != nil {
+ return x.ColumnProperties
+ }
+ return nil
+}
+
+func (x *Intent_Message_TableCard) GetRows() []*Intent_Message_TableCardRow {
+ if x != nil {
+ return x.Rows
+ }
+ return nil
+}
+
+func (x *Intent_Message_TableCard) GetButtons() []*Intent_Message_BasicCard_Button {
+ if x != nil {
+ return x.Buttons
+ }
+ return nil
+}
+
+// Column properties for
+// [TableCard][google.cloud.dialogflow.v2beta1.Intent.Message.TableCard].
+type Intent_Message_ColumnProperties struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Column heading.
+ Header string `protobuf:"bytes,1,opt,name=header,proto3" json:"header,omitempty"`
+ // Optional. Defines text alignment for all cells in this column.
+ HorizontalAlignment Intent_Message_ColumnProperties_HorizontalAlignment `protobuf:"varint,2,opt,name=horizontal_alignment,json=horizontalAlignment,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_ColumnProperties_HorizontalAlignment" json:"horizontal_alignment,omitempty"`
+}
+
+func (x *Intent_Message_ColumnProperties) Reset() {
+ *x = Intent_Message_ColumnProperties{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[42]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_ColumnProperties) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_ColumnProperties) ProtoMessage() {}
+
+func (x *Intent_Message_ColumnProperties) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[42]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_ColumnProperties.ProtoReflect.Descriptor instead.
+func (*Intent_Message_ColumnProperties) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 26}
+}
+
+func (x *Intent_Message_ColumnProperties) GetHeader() string {
+ if x != nil {
+ return x.Header
+ }
+ return ""
+}
+
+func (x *Intent_Message_ColumnProperties) GetHorizontalAlignment() Intent_Message_ColumnProperties_HorizontalAlignment {
+ if x != nil {
+ return x.HorizontalAlignment
+ }
+ return Intent_Message_ColumnProperties_HORIZONTAL_ALIGNMENT_UNSPECIFIED
+}
+
+// Row of
+// [TableCard][google.cloud.dialogflow.v2beta1.Intent.Message.TableCard].
+type Intent_Message_TableCardRow struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. List of cells that make up this row.
+ Cells []*Intent_Message_TableCardCell `protobuf:"bytes,1,rep,name=cells,proto3" json:"cells,omitempty"`
+ // Optional. Whether to add a visual divider after this row.
+ DividerAfter bool `protobuf:"varint,2,opt,name=divider_after,json=dividerAfter,proto3" json:"divider_after,omitempty"`
+}
+
+func (x *Intent_Message_TableCardRow) Reset() {
+ *x = Intent_Message_TableCardRow{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[43]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TableCardRow) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TableCardRow) ProtoMessage() {}
+
+func (x *Intent_Message_TableCardRow) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[43]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TableCardRow.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TableCardRow) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 27}
+}
+
+func (x *Intent_Message_TableCardRow) GetCells() []*Intent_Message_TableCardCell {
+ if x != nil {
+ return x.Cells
+ }
+ return nil
+}
+
+func (x *Intent_Message_TableCardRow) GetDividerAfter() bool {
+ if x != nil {
+ return x.DividerAfter
+ }
+ return false
+}
+
+// Cell of
+// [TableCardRow][google.cloud.dialogflow.v2beta1.Intent.Message.TableCardRow].
+type Intent_Message_TableCardCell struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Text in this cell.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+}
+
+func (x *Intent_Message_TableCardCell) Reset() {
+ *x = Intent_Message_TableCardCell{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[44]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_TableCardCell) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_TableCardCell) ProtoMessage() {}
+
+func (x *Intent_Message_TableCardCell) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[44]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_TableCardCell.ProtoReflect.Descriptor instead.
+func (*Intent_Message_TableCardCell) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 28}
+}
+
+func (x *Intent_Message_TableCardCell) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+// Optional. Contains information about a button.
+type Intent_Message_Card_Button struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The text to show on the button.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Optional. The text to send back to the Dialogflow API or a URI to
+ // open.
+ Postback string `protobuf:"bytes,2,opt,name=postback,proto3" json:"postback,omitempty"`
+}
+
+func (x *Intent_Message_Card_Button) Reset() {
+ *x = Intent_Message_Card_Button{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_Card_Button) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_Card_Button) ProtoMessage() {}
+
+func (x *Intent_Message_Card_Button) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[45]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_Card_Button.ProtoReflect.Descriptor instead.
+func (*Intent_Message_Card_Button) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 3, 0}
+}
+
+func (x *Intent_Message_Card_Button) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *Intent_Message_Card_Button) GetPostback() string {
+ if x != nil {
+ return x.Postback
+ }
+ return ""
+}
+
+// The button object that appears at the bottom of a card.
+type Intent_Message_BasicCard_Button struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The title of the button.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Required. Action to take when a user taps on the button.
+ OpenUriAction *Intent_Message_BasicCard_Button_OpenUriAction `protobuf:"bytes,2,opt,name=open_uri_action,json=openUriAction,proto3" json:"open_uri_action,omitempty"`
+}
+
+func (x *Intent_Message_BasicCard_Button) Reset() {
+ *x = Intent_Message_BasicCard_Button{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[46]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BasicCard_Button) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BasicCard_Button) ProtoMessage() {}
+
+func (x *Intent_Message_BasicCard_Button) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[46]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BasicCard_Button.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BasicCard_Button) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 6, 0}
+}
+
+func (x *Intent_Message_BasicCard_Button) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_BasicCard_Button) GetOpenUriAction() *Intent_Message_BasicCard_Button_OpenUriAction {
+ if x != nil {
+ return x.OpenUriAction
+ }
+ return nil
+}
+
+// Opens the given URI.
+type Intent_Message_BasicCard_Button_OpenUriAction struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The HTTP or HTTPS scheme URI.
+ Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
+}
+
+func (x *Intent_Message_BasicCard_Button_OpenUriAction) Reset() {
+ *x = Intent_Message_BasicCard_Button_OpenUriAction{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[47]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BasicCard_Button_OpenUriAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BasicCard_Button_OpenUriAction) ProtoMessage() {}
+
+func (x *Intent_Message_BasicCard_Button_OpenUriAction) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[47]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BasicCard_Button_OpenUriAction.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BasicCard_Button_OpenUriAction) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 6, 0, 0}
+}
+
+func (x *Intent_Message_BasicCard_Button_OpenUriAction) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+// An item in the list.
+type Intent_Message_ListSelect_Item struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Additional information about this option.
+ Info *Intent_Message_SelectItemInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"`
+ // Required. The title of the list item.
+ Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. The main text describing the item.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. The image to display.
+ Image *Intent_Message_Image `protobuf:"bytes,4,opt,name=image,proto3" json:"image,omitempty"`
+}
+
+func (x *Intent_Message_ListSelect_Item) Reset() {
+ *x = Intent_Message_ListSelect_Item{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[48]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_ListSelect_Item) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_ListSelect_Item) ProtoMessage() {}
+
+func (x *Intent_Message_ListSelect_Item) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[48]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_ListSelect_Item.ProtoReflect.Descriptor instead.
+func (*Intent_Message_ListSelect_Item) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 10, 0}
+}
+
+func (x *Intent_Message_ListSelect_Item) GetInfo() *Intent_Message_SelectItemInfo {
+ if x != nil {
+ return x.Info
+ }
+ return nil
+}
+
+func (x *Intent_Message_ListSelect_Item) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_ListSelect_Item) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Intent_Message_ListSelect_Item) GetImage() *Intent_Message_Image {
+ if x != nil {
+ return x.Image
+ }
+ return nil
+}
+
+// An item in the carousel.
+type Intent_Message_CarouselSelect_Item struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Additional info about the option item.
+ Info *Intent_Message_SelectItemInfo `protobuf:"bytes,1,opt,name=info,proto3" json:"info,omitempty"`
+ // Required. Title of the carousel item.
+ Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. The body text of the card.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. The image to display.
+ Image *Intent_Message_Image `protobuf:"bytes,4,opt,name=image,proto3" json:"image,omitempty"`
+}
+
+func (x *Intent_Message_CarouselSelect_Item) Reset() {
+ *x = Intent_Message_CarouselSelect_Item{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[49]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_CarouselSelect_Item) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_CarouselSelect_Item) ProtoMessage() {}
+
+func (x *Intent_Message_CarouselSelect_Item) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[49]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_CarouselSelect_Item.ProtoReflect.Descriptor instead.
+func (*Intent_Message_CarouselSelect_Item) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 11, 0}
+}
+
+func (x *Intent_Message_CarouselSelect_Item) GetInfo() *Intent_Message_SelectItemInfo {
+ if x != nil {
+ return x.Info
+ }
+ return nil
+}
+
+func (x *Intent_Message_CarouselSelect_Item) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_CarouselSelect_Item) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Intent_Message_CarouselSelect_Item) GetImage() *Intent_Message_Image {
+ if x != nil {
+ return x.Image
+ }
+ return nil
+}
+
+// Rich Business Messaging (RBM) Media displayed in Cards
+// The following media-types are currently supported:
+//
+// # Image Types
+//
+// * image/jpeg
+// * image/jpg'
+// * image/gif
+// * image/png
+//
+// # Video Types
+//
+// * video/h263
+// * video/m4v
+// * video/mp4
+// * video/mpeg
+// * video/mpeg4
+// * video/webm
+type Intent_Message_RbmCardContent_RbmMedia struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Publicly reachable URI of the file. The RBM platform
+ // determines the MIME type of the file from the content-type field in
+ // the HTTP headers when the platform fetches the file. The content-type
+ // field must be present and accurate in the HTTP response from the URL.
+ FileUri string `protobuf:"bytes,1,opt,name=file_uri,json=fileUri,proto3" json:"file_uri,omitempty"`
+ // Optional. Publicly reachable URI of the thumbnail.If you don't
+ // provide a thumbnail URI, the RBM platform displays a blank
+ // placeholder thumbnail until the user's device downloads the file.
+ // Depending on the user's setting, the file may not download
+ // automatically and may require the user to tap a download button.
+ ThumbnailUri string `protobuf:"bytes,2,opt,name=thumbnail_uri,json=thumbnailUri,proto3" json:"thumbnail_uri,omitempty"`
+ // Required for cards with vertical orientation. The height of the media
+ // within a rich card with a vertical layout.
+ // For a standalone card with horizontal layout, height is not
+ // customizable, and this field is ignored.
+ Height Intent_Message_RbmCardContent_RbmMedia_Height `protobuf:"varint,3,opt,name=height,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_RbmCardContent_RbmMedia_Height" json:"height,omitempty"`
+}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) Reset() {
+ *x = Intent_Message_RbmCardContent_RbmMedia{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[50]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmCardContent_RbmMedia) ProtoMessage() {}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[50]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmCardContent_RbmMedia.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmCardContent_RbmMedia) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 19, 0}
+}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) GetFileUri() string {
+ if x != nil {
+ return x.FileUri
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) GetThumbnailUri() string {
+ if x != nil {
+ return x.ThumbnailUri
+ }
+ return ""
+}
+
+func (x *Intent_Message_RbmCardContent_RbmMedia) GetHeight() Intent_Message_RbmCardContent_RbmMedia_Height {
+ if x != nil {
+ return x.Height
+ }
+ return Intent_Message_RbmCardContent_RbmMedia_HEIGHT_UNSPECIFIED
+}
+
+// Opens the user's default dialer app with the specified phone number
+// but does not dial automatically.
+type Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The phone number to fill in the default dialer app.
+ // This field should be in [E.164](https://en.wikipedia.org/wiki/E.164)
+ // format. An example of a correctly formatted phone number:
+ // +15556767888.
+ PhoneNumber string `protobuf:"bytes,1,opt,name=phone_number,json=phoneNumber,proto3" json:"phone_number,omitempty"`
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) Reset() {
+ *x = Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[51]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[51]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 22, 0}
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial) GetPhoneNumber() string {
+ if x != nil {
+ return x.PhoneNumber
+ }
+ return ""
+}
+
+// Opens the user's default web browser app to the specified uri
+// If the user has an app installed that is
+// registered as the default handler for the URL, then this app will be
+// opened instead, and its icon will be used in the suggested action UI.
+type Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The uri to open on the user device
+ Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) Reset() {
+ *x = Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[52]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[52]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 22, 1}
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+// Opens the device's location chooser so the user can pick a location
+// to send back to the agent.
+type Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation) Reset() {
+ *x = Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[53]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation) ProtoMessage() {}
+
+func (x *Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[53]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation.ProtoReflect.Descriptor instead.
+func (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 22, 2}
+}
+
+// Response media object for media content card.
+type Intent_Message_MediaContent_ResponseMediaObject struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Name of media card.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. Description of media card.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // Image to show with the media card.
+ //
+ // Types that are assignable to Image:
+ //
+ // *Intent_Message_MediaContent_ResponseMediaObject_LargeImage
+ // *Intent_Message_MediaContent_ResponseMediaObject_Icon
+ Image isIntent_Message_MediaContent_ResponseMediaObject_Image `protobuf_oneof:"image"`
+ // Required. Url where the media is stored.
+ ContentUrl string `protobuf:"bytes,5,opt,name=content_url,json=contentUrl,proto3" json:"content_url,omitempty"`
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) Reset() {
+ *x = Intent_Message_MediaContent_ResponseMediaObject{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[54]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_MediaContent_ResponseMediaObject) ProtoMessage() {}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[54]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_MediaContent_ResponseMediaObject.ProtoReflect.Descriptor instead.
+func (*Intent_Message_MediaContent_ResponseMediaObject) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 23, 0}
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (m *Intent_Message_MediaContent_ResponseMediaObject) GetImage() isIntent_Message_MediaContent_ResponseMediaObject_Image {
+ if m != nil {
+ return m.Image
+ }
+ return nil
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) GetLargeImage() *Intent_Message_Image {
+ if x, ok := x.GetImage().(*Intent_Message_MediaContent_ResponseMediaObject_LargeImage); ok {
+ return x.LargeImage
+ }
+ return nil
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) GetIcon() *Intent_Message_Image {
+ if x, ok := x.GetImage().(*Intent_Message_MediaContent_ResponseMediaObject_Icon); ok {
+ return x.Icon
+ }
+ return nil
+}
+
+func (x *Intent_Message_MediaContent_ResponseMediaObject) GetContentUrl() string {
+ if x != nil {
+ return x.ContentUrl
+ }
+ return ""
+}
+
+type isIntent_Message_MediaContent_ResponseMediaObject_Image interface {
+ isIntent_Message_MediaContent_ResponseMediaObject_Image()
+}
+
+type Intent_Message_MediaContent_ResponseMediaObject_LargeImage struct {
+ // Optional. Image to display above media content.
+ LargeImage *Intent_Message_Image `protobuf:"bytes,3,opt,name=large_image,json=largeImage,proto3,oneof"`
+}
+
+type Intent_Message_MediaContent_ResponseMediaObject_Icon struct {
+ // Optional. Icon to display above media content.
+ Icon *Intent_Message_Image `protobuf:"bytes,4,opt,name=icon,proto3,oneof"`
+}
+
+func (*Intent_Message_MediaContent_ResponseMediaObject_LargeImage) isIntent_Message_MediaContent_ResponseMediaObject_Image() {
+}
+
+func (*Intent_Message_MediaContent_ResponseMediaObject_Icon) isIntent_Message_MediaContent_ResponseMediaObject_Image() {
+}
+
+// Browsing carousel tile
+type Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Action to present to the user.
+ OpenUriAction *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction `protobuf:"bytes,1,opt,name=open_uri_action,json=openUriAction,proto3" json:"open_uri_action,omitempty"`
+ // Required. Title of the carousel item. Maximum of two lines of text.
+ Title string `protobuf:"bytes,2,opt,name=title,proto3" json:"title,omitempty"`
+ // Optional. Description of the carousel item. Maximum of four lines of
+ // text.
+ Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
+ // Optional. Hero image for the carousel item.
+ Image *Intent_Message_Image `protobuf:"bytes,4,opt,name=image,proto3" json:"image,omitempty"`
+ // Optional. Text that appears at the bottom of the Browse Carousel
+ // Card. Maximum of one line of text.
+ Footer string `protobuf:"bytes,5,opt,name=footer,proto3" json:"footer,omitempty"`
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) Reset() {
+ *x = Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[55]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) ProtoMessage() {}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[55]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 24, 0}
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) GetOpenUriAction() *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction {
+ if x != nil {
+ return x.OpenUriAction
+ }
+ return nil
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) GetImage() *Intent_Message_Image {
+ if x != nil {
+ return x.Image
+ }
+ return nil
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem) GetFooter() string {
+ if x != nil {
+ return x.Footer
+ }
+ return ""
+}
+
+// Actions on Google action to open a given url.
+type Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. URL
+ Url string `protobuf:"bytes,1,opt,name=url,proto3" json:"url,omitempty"`
+ // Optional. Specifies the type of viewer that is used when opening
+ // the URL. Defaults to opening via web browser.
+ UrlTypeHint Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint `protobuf:"varint,3,opt,name=url_type_hint,json=urlTypeHint,proto3,enum=google.cloud.dialogflow.v2beta1.Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint" json:"url_type_hint,omitempty"`
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) Reset() {
+ *x = Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[56]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) ProtoMessage() {}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[56]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction.ProtoReflect.Descriptor instead.
+func (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP(), []int{0, 2, 24, 0, 0}
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) GetUrl() string {
+ if x != nil {
+ return x.Url
+ }
+ return ""
+}
+
+func (x *Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction) GetUrlTypeHint() Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint {
+ if x != nil {
+ return x.UrlTypeHint
+ }
+ return Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_URL_TYPE_HINT_UNSPECIFIED
+}
+
+var File_google_cloud_dialogflow_v2beta1_intent_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_intent_proto_rawDesc = []byte{
+ 0x0a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a,
+ 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61,
+ 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f,
+ 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x23, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75,
+ 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0xba, 0x5d, 0x0a, 0x06, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x17,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c,
+ 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12,
+ 0x5e, 0x0a, 0x0d, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x61, 0x74, 0x65,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
+ 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x42, 0x03, 0xe0, 0x41,
+ 0x01, 0x52, 0x0c, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12,
+ 0x1f, 0x0a, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x72, 0x69, 0x6f, 0x72, 0x69, 0x74, 0x79,
+ 0x12, 0x24, 0x0a, 0x0b, 0x69, 0x73, 0x5f, 0x66, 0x61, 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x18,
+ 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x69, 0x73, 0x46, 0x61,
+ 0x6c, 0x6c, 0x62, 0x61, 0x63, 0x6b, 0x12, 0x24, 0x0a, 0x0a, 0x6d, 0x6c, 0x5f, 0x65, 0x6e, 0x61,
+ 0x62, 0x6c, 0x65, 0x64, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08, 0x42, 0x05, 0x18, 0x01, 0xe0, 0x41,
+ 0x01, 0x52, 0x09, 0x6d, 0x6c, 0x45, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x12, 0x24, 0x0a, 0x0b,
+ 0x6d, 0x6c, 0x5f, 0x64, 0x69, 0x73, 0x61, 0x62, 0x6c, 0x65, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28,
+ 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x6d, 0x6c, 0x44, 0x69, 0x73, 0x61, 0x62, 0x6c,
+ 0x65, 0x64, 0x12, 0x31, 0x0a, 0x12, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x18, 0x14, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x10, 0x6c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61,
+ 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x12, 0x2c, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x74,
+ 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x12, 0x33, 0x0a, 0x13, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x1b, 0x0a, 0x06, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x06, 0x65,
+ 0x76, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x66, 0x0a, 0x10, 0x74, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e,
+ 0x67, 0x5f, 0x70, 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x18, 0x09, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e,
+ 0x67, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x74, 0x72,
+ 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x73, 0x12, 0x1b, 0x0a,
+ 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x01, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x56, 0x0a, 0x0f, 0x6f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x18, 0x0b, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x42, 0x03, 0xe0,
+ 0x41, 0x01, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x73, 0x12, 0x2a, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x73, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x0d, 0x72, 0x65, 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x56,
+ 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0d, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x50, 0x61, 0x72, 0x61,
+ 0x6d, 0x65, 0x74, 0x65, 0x72, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x70, 0x61, 0x72, 0x61,
+ 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x4b, 0x0a, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x73, 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x08, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x73, 0x12, 0x7b, 0x0a, 0x1a, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x72,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d,
+ 0x73, 0x18, 0x0f, 0x20, 0x03, 0x28, 0x0e, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
+ 0x6d, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x18, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x73,
+ 0x12, 0x3e, 0x0a, 0x19, 0x72, 0x6f, 0x6f, 0x74, 0x5f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75,
+ 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x10, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x16, 0x72, 0x6f, 0x6f, 0x74, 0x46, 0x6f,
+ 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65,
+ 0x12, 0x42, 0x0a, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f,
+ 0x77, 0x75, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x11, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x18, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x71, 0x0a, 0x14, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70,
+ 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x12, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x46, 0x6f, 0x6c, 0x6c,
+ 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x42, 0x03,
+ 0xe0, 0x41, 0x03, 0x52, 0x12, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x1a, 0xb6, 0x03, 0x0a, 0x0e, 0x54, 0x72, 0x61, 0x69,
+ 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x54,
+ 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x3b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x72, 0x61, 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x68,
+ 0x72, 0x61, 0x73, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04,
+ 0x74, 0x79, 0x70, 0x65, 0x12, 0x56, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x18, 0x03, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x54, 0x72, 0x61,
+ 0x69, 0x6e, 0x69, 0x6e, 0x67, 0x50, 0x68, 0x72, 0x61, 0x73, 0x65, 0x2e, 0x50, 0x61, 0x72, 0x74,
+ 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x05, 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x2f, 0x0a, 0x11,
+ 0x74, 0x69, 0x6d, 0x65, 0x73, 0x5f, 0x61, 0x64, 0x64, 0x65, 0x64, 0x5f, 0x63, 0x6f, 0x75, 0x6e,
+ 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0f, 0x74, 0x69,
+ 0x6d, 0x65, 0x73, 0x41, 0x64, 0x64, 0x65, 0x64, 0x43, 0x6f, 0x75, 0x6e, 0x74, 0x1a, 0x74, 0x0a,
+ 0x04, 0x50, 0x61, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x61, 0x6c,
+ 0x69, 0x61, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x61, 0x6c, 0x69, 0x61, 0x73,
+ 0x12, 0x21, 0x0a, 0x0c, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x64, 0x65, 0x66, 0x69, 0x6e, 0x65, 0x64,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0b, 0x75, 0x73, 0x65, 0x72, 0x44, 0x65, 0x66, 0x69,
+ 0x6e, 0x65, 0x64, 0x22, 0x3b, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54,
+ 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x45, 0x58, 0x41, 0x4d, 0x50, 0x4c, 0x45, 0x10, 0x01, 0x12, 0x10,
+ 0x0a, 0x08, 0x54, 0x45, 0x4d, 0x50, 0x4c, 0x41, 0x54, 0x45, 0x10, 0x02, 0x1a, 0x02, 0x08, 0x01,
+ 0x1a, 0x87, 0x02, 0x0a, 0x09, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x12, 0x12,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61,
+ 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x64,
+ 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x5f, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0c, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x56, 0x61, 0x6c, 0x75, 0x65,
+ 0x12, 0x37, 0x0a, 0x18, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f,
+ 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x15, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x44, 0x69,
+ 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x6d, 0x61, 0x6e,
+ 0x64, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x08, 0x52, 0x09, 0x6d, 0x61,
+ 0x6e, 0x64, 0x61, 0x74, 0x6f, 0x72, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70,
+ 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x70, 0x72, 0x6f, 0x6d, 0x70, 0x74,
+ 0x73, 0x12, 0x17, 0x0a, 0x07, 0x69, 0x73, 0x5f, 0x6c, 0x69, 0x73, 0x74, 0x18, 0x08, 0x20, 0x01,
+ 0x28, 0x08, 0x52, 0x06, 0x69, 0x73, 0x4c, 0x69, 0x73, 0x74, 0x1a, 0xd1, 0x4a, 0x0a, 0x07, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4a, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65,
+ 0x78, 0x74, 0x12, 0x4d, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x48, 0x00, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67,
+ 0x65, 0x12, 0x63, 0x0a, 0x0d, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69,
+ 0x65, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x51, 0x75, 0x69, 0x63, 0x6b, 0x52,
+ 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x48, 0x00, 0x52, 0x0c, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x52,
+ 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x4a, 0x0a, 0x04, 0x63, 0x61, 0x72, 0x64, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x04, 0x63, 0x61,
+ 0x72, 0x64, 0x12, 0x33, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x48, 0x00, 0x52, 0x07,
+ 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x6c, 0x0a, 0x10, 0x73, 0x69, 0x6d, 0x70, 0x6c,
+ 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x18, 0x07, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x73, 0x48, 0x00, 0x52, 0x0f, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x12, 0x5a, 0x0a, 0x0a, 0x62, 0x61, 0x73, 0x69, 0x63, 0x5f, 0x63,
+ 0x61, 0x72, 0x64, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63,
+ 0x43, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x09, 0x62, 0x61, 0x73, 0x69, 0x63, 0x43, 0x61, 0x72,
+ 0x64, 0x12, 0x5f, 0x0a, 0x0b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x48, 0x00, 0x52, 0x0b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x12, 0x73, 0x0a, 0x13, 0x6c, 0x69, 0x6e, 0x6b, 0x5f, 0x6f, 0x75, 0x74, 0x5f, 0x73,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x4c, 0x69, 0x6e, 0x6b, 0x4f, 0x75, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x11, 0x6c, 0x69, 0x6e, 0x6b, 0x4f, 0x75, 0x74, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x0b, 0x6c, 0x69, 0x73, 0x74, 0x5f,
+ 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4c, 0x69,
+ 0x73, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x6c, 0x69, 0x73, 0x74,
+ 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x69, 0x0a, 0x0f, 0x63, 0x61, 0x72, 0x6f, 0x75, 0x73,
+ 0x65, 0x6c, 0x5f, 0x73, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x48,
+ 0x00, 0x52, 0x0e, 0x63, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63,
+ 0x74, 0x12, 0x76, 0x0a, 0x14, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x5f, 0x70,
+ 0x6c, 0x61, 0x79, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x0d, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x48, 0x00, 0x52, 0x12, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79,
+ 0x50, 0x6c, 0x61, 0x79, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x8b, 0x01, 0x0a, 0x1b, 0x74, 0x65,
+ 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x5f, 0x73, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69,
+ 0x7a, 0x65, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65,
+ 0x73, 0x69, 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x48, 0x00, 0x52, 0x19, 0x74, 0x65,
+ 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69, 0x7a,
+ 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x7f, 0x0a, 0x17, 0x74, 0x65, 0x6c, 0x65, 0x70,
+ 0x68, 0x6f, 0x6e, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x5f, 0x63, 0x61,
+ 0x6c, 0x6c, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68,
+ 0x6f, 0x6e, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x48,
+ 0x00, 0x52, 0x15, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x54, 0x72, 0x61, 0x6e,
+ 0x73, 0x66, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x54, 0x0a, 0x08, 0x72, 0x62, 0x6d, 0x5f,
+ 0x74, 0x65, 0x78, 0x74, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x54,
+ 0x65, 0x78, 0x74, 0x48, 0x00, 0x52, 0x07, 0x72, 0x62, 0x6d, 0x54, 0x65, 0x78, 0x74, 0x12, 0x7c,
+ 0x0a, 0x18, 0x72, 0x62, 0x6d, 0x5f, 0x73, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65,
+ 0x5f, 0x72, 0x69, 0x63, 0x68, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x13, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x43,
+ 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x15, 0x72, 0x62, 0x6d, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61,
+ 0x6c, 0x6f, 0x6e, 0x65, 0x52, 0x69, 0x63, 0x68, 0x43, 0x61, 0x72, 0x64, 0x12, 0x76, 0x0a, 0x16,
+ 0x72, 0x62, 0x6d, 0x5f, 0x63, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x5f, 0x72, 0x69, 0x63,
+ 0x68, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x14, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62,
+ 0x6d, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52,
+ 0x13, 0x72, 0x62, 0x6d, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x52, 0x69, 0x63, 0x68,
+ 0x43, 0x61, 0x72, 0x64, 0x12, 0x76, 0x0a, 0x14, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x5f, 0x63,
+ 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x16, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73,
+ 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x12, 0x62, 0x72, 0x6f, 0x77, 0x73, 0x65,
+ 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x12, 0x5a, 0x0a, 0x0a,
+ 0x74, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x63, 0x61, 0x72, 0x64, 0x18, 0x17, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x48, 0x00, 0x52, 0x09, 0x74,
+ 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x63, 0x0a, 0x0d, 0x6d, 0x65, 0x64, 0x69,
+ 0x61, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x18, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x48, 0x00, 0x52,
+ 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x59, 0x0a,
+ 0x08, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32,
+ 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x1a, 0x1a, 0x0a, 0x04, 0x54, 0x65, 0x78, 0x74,
+ 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x04,
+ 0x74, 0x65, 0x78, 0x74, 0x1a, 0x53, 0x0a, 0x05, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x1b, 0x0a,
+ 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x69, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x63,
+ 0x63, 0x65, 0x73, 0x73, 0x69, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x11, 0x61, 0x63, 0x63, 0x65, 0x73, 0x73, 0x69, 0x62,
+ 0x69, 0x6c, 0x69, 0x74, 0x79, 0x54, 0x65, 0x78, 0x74, 0x1a, 0x49, 0x0a, 0x0c, 0x51, 0x75, 0x69,
+ 0x63, 0x6b, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74,
+ 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12,
+ 0x23, 0x0a, 0x0d, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73,
+ 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x0c, 0x71, 0x75, 0x69, 0x63, 0x6b, 0x52, 0x65, 0x70,
+ 0x6c, 0x69, 0x65, 0x73, 0x1a, 0xe6, 0x01, 0x0a, 0x04, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a,
+ 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12,
+ 0x1b, 0x0a, 0x09, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x55, 0x72, 0x69, 0x12, 0x55, 0x0a, 0x07,
+ 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3b, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43,
+ 0x61, 0x72, 0x64, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x07, 0x62, 0x75, 0x74, 0x74,
+ 0x6f, 0x6e, 0x73, 0x1a, 0x38, 0x0a, 0x06, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x12, 0x0a,
+ 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78,
+ 0x74, 0x12, 0x1a, 0x0a, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x08, 0x70, 0x6f, 0x73, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x1a, 0x6d, 0x0a,
+ 0x0e, 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12,
+ 0x24, 0x0a, 0x0e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x74, 0x6f, 0x5f, 0x73, 0x70, 0x65, 0x65, 0x63,
+ 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x65, 0x78, 0x74, 0x54, 0x6f, 0x53,
+ 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x12, 0x0a, 0x04, 0x73, 0x73, 0x6d, 0x6c, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x04, 0x73, 0x73, 0x6d, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73,
+ 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x0b, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x54, 0x65, 0x78, 0x74, 0x1a, 0x7c, 0x0a, 0x0f,
+ 0x53, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x12,
+ 0x69, 0x0a, 0x10, 0x73, 0x69, 0x6d, 0x70, 0x6c, 0x65, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53, 0x69, 0x6d, 0x70, 0x6c,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x52, 0x0f, 0x73, 0x69, 0x6d, 0x70, 0x6c,
+ 0x65, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x73, 0x1a, 0xc9, 0x03, 0x0a, 0x09, 0x42,
+ 0x61, 0x73, 0x69, 0x63, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x1a,
+ 0x0a, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x25, 0x0a, 0x0e, 0x66, 0x6f,
+ 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0d, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x54, 0x65, 0x78,
+ 0x74, 0x12, 0x4b, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x5a,
+ 0x0a, 0x07, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f,
+ 0x6e, 0x52, 0x07, 0x62, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x1a, 0xb9, 0x01, 0x0a, 0x06, 0x42,
+ 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x76, 0x0a, 0x0f, 0x6f,
+ 0x70, 0x65, 0x6e, 0x5f, 0x75, 0x72, 0x69, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x4e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x42, 0x61, 0x73, 0x69, 0x63, 0x43, 0x61, 0x72, 0x64, 0x2e,
+ 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x2e, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x72, 0x69, 0x41, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6f, 0x70, 0x65, 0x6e, 0x55, 0x72, 0x69, 0x41, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x1a, 0x21, 0x0a, 0x0d, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x72, 0x69, 0x41, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x1a, 0x22, 0x0a, 0x0a, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x1a, 0x6b, 0x0a, 0x0b, 0x53, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x5c, 0x0a, 0x0b, 0x73, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
+ 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b, 0x73, 0x75, 0x67, 0x67,
+ 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0x50, 0x0a, 0x11, 0x4c, 0x69, 0x6e, 0x6b, 0x4f,
+ 0x75, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x29, 0x0a, 0x10,
+ 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x61, 0x6d, 0x65,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x64, 0x65, 0x73, 0x74, 0x69, 0x6e, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x1a, 0xfc, 0x02, 0x0a, 0x0a, 0x4c, 0x69,
+ 0x73, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c,
+ 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x55,
+ 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3f, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4c,
+ 0x69, 0x73, 0x74, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05,
+ 0x69, 0x74, 0x65, 0x6d, 0x73, 0x12, 0x1f, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x73, 0x75,
+ 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x1a, 0xdf, 0x01, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12,
+ 0x52, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53,
+ 0x65, 0x6c, 0x65, 0x63, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69,
+ 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x05, 0x69,
+ 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67,
+ 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x1a, 0xcd, 0x02, 0x0a, 0x0e, 0x43, 0x61, 0x72,
+ 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x12, 0x59, 0x0a, 0x05, 0x69,
+ 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x61, 0x72, 0x6f,
+ 0x75, 0x73, 0x65, 0x6c, 0x53, 0x65, 0x6c, 0x65, 0x63, 0x74, 0x2e, 0x49, 0x74, 0x65, 0x6d, 0x52,
+ 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x1a, 0xdf, 0x01, 0x0a, 0x04, 0x49, 0x74, 0x65, 0x6d, 0x12,
+ 0x52, 0x0a, 0x04, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x53,
+ 0x65, 0x6c, 0x65, 0x63, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x52, 0x04, 0x69,
+ 0x6e, 0x66, 0x6f, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x05, 0x69,
+ 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67,
+ 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x1a, 0x3e, 0x0a, 0x0e, 0x53, 0x65, 0x6c, 0x65,
+ 0x63, 0x74, 0x49, 0x74, 0x65, 0x6d, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
+ 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x1a, 0x0a, 0x08,
+ 0x73, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08,
+ 0x73, 0x79, 0x6e, 0x6f, 0x6e, 0x79, 0x6d, 0x73, 0x1a, 0x31, 0x0a, 0x12, 0x54, 0x65, 0x6c, 0x65,
+ 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x50, 0x6c, 0x61, 0x79, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x1b,
+ 0x0a, 0x09, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x08, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x55, 0x72, 0x69, 0x1a, 0x51, 0x0a, 0x19, 0x54,
+ 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x53, 0x79, 0x6e, 0x74, 0x68, 0x65, 0x73, 0x69,
+ 0x7a, 0x65, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x12, 0x14, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x14,
+ 0x0a, 0x04, 0x73, 0x73, 0x6d, 0x6c, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x04,
+ 0x73, 0x73, 0x6d, 0x6c, 0x42, 0x08, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x1a, 0x3a,
+ 0x0a, 0x15, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73,
+ 0x66, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x12, 0x21, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65,
+ 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70,
+ 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x1a, 0x83, 0x01, 0x0a, 0x07, 0x52,
+ 0x62, 0x6d, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x64, 0x0a, 0x0e, 0x72, 0x62,
+ 0x6d, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x0d, 0x72, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x1a, 0xa0, 0x02, 0x0a, 0x0f, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c,
+ 0x43, 0x61, 0x72, 0x64, 0x12, 0x68, 0x0a, 0x0a, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x77, 0x69, 0x64,
+ 0x74, 0x68, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x49, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72,
+ 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x57, 0x69,
+ 0x64, 0x74, 0x68, 0x52, 0x09, 0x63, 0x61, 0x72, 0x64, 0x57, 0x69, 0x64, 0x74, 0x68, 0x12, 0x63,
+ 0x0a, 0x0d, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18,
+ 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0c, 0x63, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x73, 0x22, 0x3e, 0x0a, 0x09, 0x43, 0x61, 0x72, 0x64, 0x57, 0x69, 0x64, 0x74, 0x68,
+ 0x12, 0x1a, 0x0a, 0x16, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x57, 0x49, 0x44, 0x54, 0x48, 0x5f, 0x55,
+ 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05,
+ 0x53, 0x4d, 0x41, 0x4c, 0x4c, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x45, 0x44, 0x49, 0x55,
+ 0x4d, 0x10, 0x02, 0x1a, 0xba, 0x04, 0x0a, 0x11, 0x52, 0x62, 0x6d, 0x53, 0x74, 0x61, 0x6e, 0x64,
+ 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x7c, 0x0a, 0x10, 0x63, 0x61, 0x72,
+ 0x64, 0x5f, 0x6f, 0x72, 0x69, 0x65, 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x51, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f,
+ 0x6e, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x72, 0x69, 0x65, 0x6e,
+ 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x63, 0x61, 0x72, 0x64, 0x4f, 0x72, 0x69, 0x65,
+ 0x6e, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x95, 0x01, 0x0a, 0x19, 0x74, 0x68, 0x75, 0x6d,
+ 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6c, 0x69, 0x67,
+ 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x59, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d,
+ 0x53, 0x74, 0x61, 0x6e, 0x64, 0x61, 0x6c, 0x6f, 0x6e, 0x65, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x54,
+ 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6c, 0x69,
+ 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x17, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69,
+ 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x12,
+ 0x61, 0x0a, 0x0c, 0x63, 0x61, 0x72, 0x64, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x0b, 0x63, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x22, 0x51, 0x0a, 0x0f, 0x43, 0x61, 0x72, 0x64, 0x4f, 0x72, 0x69, 0x65, 0x6e, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x20, 0x0a, 0x1c, 0x43, 0x41, 0x52, 0x44, 0x5f, 0x4f, 0x52,
+ 0x49, 0x45, 0x4e, 0x54, 0x41, 0x54, 0x49, 0x4f, 0x4e, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43,
+ 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x48, 0x4f, 0x52, 0x49, 0x5a,
+ 0x4f, 0x4e, 0x54, 0x41, 0x4c, 0x10, 0x01, 0x12, 0x0c, 0x0a, 0x08, 0x56, 0x45, 0x52, 0x54, 0x49,
+ 0x43, 0x41, 0x4c, 0x10, 0x02, 0x22, 0x59, 0x0a, 0x17, 0x54, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61,
+ 0x69, 0x6c, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x12, 0x29, 0x0a, 0x25, 0x54, 0x48, 0x55, 0x4d, 0x42, 0x4e, 0x41, 0x49, 0x4c, 0x5f, 0x49, 0x4d,
+ 0x41, 0x47, 0x45, 0x5f, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e,
+ 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x4c,
+ 0x45, 0x46, 0x54, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x49, 0x47, 0x48, 0x54, 0x10, 0x02,
+ 0x1a, 0x80, 0x04, 0x0a, 0x0e, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5d, 0x0a, 0x05, 0x6d,
+ 0x65, 0x64, 0x69, 0x61, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x43,
+ 0x61, 0x72, 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x62, 0x6d, 0x4d, 0x65,
+ 0x64, 0x69, 0x61, 0x52, 0x05, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x5f, 0x0a, 0x0b, 0x73, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0b,
+ 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xf5, 0x01, 0x0a, 0x08,
+ 0x52, 0x62, 0x6d, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x12, 0x19, 0x0a, 0x08, 0x66, 0x69, 0x6c, 0x65,
+ 0x5f, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x66, 0x69, 0x6c, 0x65,
+ 0x55, 0x72, 0x69, 0x12, 0x23, 0x0a, 0x0d, 0x74, 0x68, 0x75, 0x6d, 0x62, 0x6e, 0x61, 0x69, 0x6c,
+ 0x5f, 0x75, 0x72, 0x69, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x74, 0x68, 0x75, 0x6d,
+ 0x62, 0x6e, 0x61, 0x69, 0x6c, 0x55, 0x72, 0x69, 0x12, 0x66, 0x0a, 0x06, 0x68, 0x65, 0x69, 0x67,
+ 0x68, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x43, 0x61, 0x72,
+ 0x64, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x52, 0x62, 0x6d, 0x4d, 0x65, 0x64, 0x69,
+ 0x61, 0x2e, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x52, 0x06, 0x68, 0x65, 0x69, 0x67, 0x68, 0x74,
+ 0x22, 0x41, 0x0a, 0x06, 0x48, 0x65, 0x69, 0x67, 0x68, 0x74, 0x12, 0x16, 0x0a, 0x12, 0x48, 0x45,
+ 0x49, 0x47, 0x48, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x48, 0x4f, 0x52, 0x54, 0x10, 0x01, 0x12, 0x0a, 0x0a,
+ 0x06, 0x4d, 0x45, 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x54, 0x41, 0x4c,
+ 0x4c, 0x10, 0x03, 0x1a, 0xd6, 0x01, 0x0a, 0x0d, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x59, 0x0a, 0x05, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x48, 0x00, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6c, 0x79,
+ 0x12, 0x5c, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x42, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x0c,
+ 0x0a, 0x0a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x4c, 0x0a, 0x11,
+ 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x52, 0x65, 0x70, 0x6c,
+ 0x79, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x73, 0x74, 0x62, 0x61, 0x63,
+ 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6f,
+ 0x73, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x1a, 0xe0, 0x04, 0x0a, 0x12, 0x52,
+ 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x70, 0x6f, 0x73, 0x74, 0x62, 0x61, 0x63,
+ 0x6b, 0x5f, 0x64, 0x61, 0x74, 0x61, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x70, 0x6f,
+ 0x73, 0x74, 0x62, 0x61, 0x63, 0x6b, 0x44, 0x61, 0x74, 0x61, 0x12, 0x6f, 0x0a, 0x04, 0x64, 0x69,
+ 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x59, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x62, 0x6d,
+ 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44,
+ 0x69, 0x61, 0x6c, 0x48, 0x00, 0x52, 0x04, 0x64, 0x69, 0x61, 0x6c, 0x12, 0x79, 0x0a, 0x08, 0x6f,
+ 0x70, 0x65, 0x6e, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x5c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x52,
+ 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x72, 0x69, 0x48, 0x00, 0x52, 0x07, 0x6f,
+ 0x70, 0x65, 0x6e, 0x55, 0x72, 0x6c, 0x12, 0x8b, 0x01, 0x0a, 0x0e, 0x73, 0x68, 0x61, 0x72, 0x65,
+ 0x5f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x62, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x2e, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64,
+ 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0d, 0x73, 0x68, 0x61, 0x72, 0x65, 0x4c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0x3b, 0x0a, 0x16, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x65, 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x44, 0x69, 0x61, 0x6c, 0x12, 0x21,
+ 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e, 0x75, 0x6d, 0x62, 0x65,
+ 0x72, 0x1a, 0x2d, 0x0a, 0x19, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65,
+ 0x64, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, 0x65, 0x6e, 0x55, 0x72, 0x69, 0x12, 0x10,
+ 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69,
+ 0x1a, 0x21, 0x0a, 0x1f, 0x52, 0x62, 0x6d, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x65, 0x64,
+ 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x68, 0x61, 0x72, 0x65, 0x4c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x42, 0x08, 0x0a, 0x06, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xd8, 0x04,
+ 0x0a, 0x0c, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x6d,
+ 0x0a, 0x0a, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x4e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x09, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x75, 0x0a,
+ 0x0d, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x5f, 0x6f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x18, 0x02,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x50, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61,
+ 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x52, 0x0c, 0x6d, 0x65, 0x64, 0x69, 0x61, 0x4f, 0x62, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x1a, 0x9c, 0x02, 0x0a, 0x13, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x4d, 0x65, 0x64, 0x69, 0x61, 0x4f, 0x62, 0x6a, 0x65, 0x63, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x58, 0x0a, 0x0b, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67,
+ 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x48, 0x00,
+ 0x52, 0x0a, 0x6c, 0x61, 0x72, 0x67, 0x65, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x4b, 0x0a, 0x04,
+ 0x69, 0x63, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67,
+ 0x65, 0x48, 0x00, 0x52, 0x04, 0x69, 0x63, 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x75, 0x72, 0x6c, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x55, 0x72, 0x6c, 0x42, 0x07, 0x0a, 0x05, 0x69, 0x6d,
+ 0x61, 0x67, 0x65, 0x22, 0x43, 0x0a, 0x11, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d,
+ 0x65, 0x64, 0x69, 0x61, 0x54, 0x79, 0x70, 0x65, 0x12, 0x23, 0x0a, 0x1f, 0x52, 0x45, 0x53, 0x50,
+ 0x4f, 0x4e, 0x53, 0x45, 0x5f, 0x4d, 0x45, 0x44, 0x49, 0x41, 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f,
+ 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x09, 0x0a,
+ 0x05, 0x41, 0x55, 0x44, 0x49, 0x4f, 0x10, 0x01, 0x1a, 0xe1, 0x07, 0x0a, 0x12, 0x42, 0x72, 0x6f,
+ 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x12,
+ 0x6f, 0x0a, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x59,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e,
+ 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61,
+ 0x72, 0x64, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65,
+ 0x6c, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x52, 0x05, 0x69, 0x74, 0x65, 0x6d, 0x73,
+ 0x12, 0x8a, 0x01, 0x0a, 0x15, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x5f, 0x64, 0x69, 0x73, 0x70, 0x6c,
+ 0x61, 0x79, 0x5f, 0x6f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x56, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c,
+ 0x43, 0x61, 0x72, 0x64, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x69, 0x73, 0x70, 0x6c, 0x61,
+ 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x13, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x44,
+ 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x1a, 0xd4, 0x04,
+ 0x0a, 0x16, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c,
+ 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x12, 0x8f, 0x01, 0x0a, 0x0f, 0x6f, 0x70, 0x65,
+ 0x6e, 0x5f, 0x75, 0x72, 0x69, 0x5f, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x67, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75, 0x73,
+ 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72,
+ 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x4f, 0x70,
+ 0x65, 0x6e, 0x55, 0x72, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0d, 0x6f, 0x70, 0x65,
+ 0x6e, 0x55, 0x72, 0x69, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65,
+ 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12,
+ 0x16, 0x0a, 0x06, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x06, 0x66, 0x6f, 0x6f, 0x74, 0x65, 0x72, 0x1a, 0x8a, 0x02, 0x0a, 0x0d, 0x4f, 0x70, 0x65, 0x6e,
+ 0x55, 0x72, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x6c,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x6c, 0x12, 0x97, 0x01, 0x0a, 0x0d,
+ 0x75, 0x72, 0x6c, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5f, 0x68, 0x69, 0x6e, 0x74, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x73, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61, 0x72, 0x6f, 0x75,
+ 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x42, 0x72, 0x6f, 0x77, 0x73, 0x65, 0x43, 0x61,
+ 0x72, 0x6f, 0x75, 0x73, 0x65, 0x6c, 0x43, 0x61, 0x72, 0x64, 0x49, 0x74, 0x65, 0x6d, 0x2e, 0x4f,
+ 0x70, 0x65, 0x6e, 0x55, 0x72, 0x6c, 0x41, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x55, 0x72, 0x6c,
+ 0x54, 0x79, 0x70, 0x65, 0x48, 0x69, 0x6e, 0x74, 0x52, 0x0b, 0x75, 0x72, 0x6c, 0x54, 0x79, 0x70,
+ 0x65, 0x48, 0x69, 0x6e, 0x74, 0x22, 0x4d, 0x0a, 0x0b, 0x55, 0x72, 0x6c, 0x54, 0x79, 0x70, 0x65,
+ 0x48, 0x69, 0x6e, 0x74, 0x12, 0x1d, 0x0a, 0x19, 0x55, 0x52, 0x4c, 0x5f, 0x54, 0x59, 0x50, 0x45,
+ 0x5f, 0x48, 0x49, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x41, 0x4d, 0x50, 0x5f, 0x41, 0x43, 0x54, 0x49, 0x4f,
+ 0x4e, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x41, 0x4d, 0x50, 0x5f, 0x43, 0x4f, 0x4e, 0x54, 0x45,
+ 0x4e, 0x54, 0x10, 0x02, 0x22, 0x76, 0x0a, 0x13, 0x49, 0x6d, 0x61, 0x67, 0x65, 0x44, 0x69, 0x73,
+ 0x70, 0x6c, 0x61, 0x79, 0x4f, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x25, 0x0a, 0x21, 0x49,
+ 0x4d, 0x41, 0x47, 0x45, 0x5f, 0x44, 0x49, 0x53, 0x50, 0x4c, 0x41, 0x59, 0x5f, 0x4f, 0x50, 0x54,
+ 0x49, 0x4f, 0x4e, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x47, 0x52, 0x41, 0x59, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05,
+ 0x57, 0x48, 0x49, 0x54, 0x45, 0x10, 0x02, 0x12, 0x0b, 0x0a, 0x07, 0x43, 0x52, 0x4f, 0x50, 0x50,
+ 0x45, 0x44, 0x10, 0x03, 0x12, 0x16, 0x0a, 0x12, 0x42, 0x4c, 0x55, 0x52, 0x52, 0x45, 0x44, 0x5f,
+ 0x42, 0x41, 0x43, 0x4b, 0x47, 0x52, 0x4f, 0x55, 0x4e, 0x44, 0x10, 0x04, 0x1a, 0xa7, 0x03, 0x0a,
+ 0x09, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69,
+ 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65,
+ 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x08, 0x73, 0x75, 0x62, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x4b, 0x0a, 0x05,
+ 0x69, 0x6d, 0x61, 0x67, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x49, 0x6d, 0x61,
+ 0x67, 0x65, 0x52, 0x05, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x12, 0x6d, 0x0a, 0x11, 0x63, 0x6f, 0x6c,
+ 0x75, 0x6d, 0x6e, 0x5f, 0x70, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x18, 0x04,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x50, 0x72, 0x6f, 0x70,
+ 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x52, 0x10, 0x63, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x50, 0x72,
+ 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x50, 0x0a, 0x04, 0x72, 0x6f, 0x77, 0x73,
+ 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72,
+ 0x64, 0x52, 0x6f, 0x77, 0x52, 0x04, 0x72, 0x6f, 0x77, 0x73, 0x12, 0x5a, 0x0a, 0x07, 0x62, 0x75,
+ 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x40, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x42, 0x61, 0x73,
+ 0x69, 0x63, 0x43, 0x61, 0x72, 0x64, 0x2e, 0x42, 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x52, 0x07, 0x62,
+ 0x75, 0x74, 0x74, 0x6f, 0x6e, 0x73, 0x1a, 0x98, 0x02, 0x0a, 0x10, 0x43, 0x6f, 0x6c, 0x75, 0x6d,
+ 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x69, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x68,
+ 0x65, 0x61, 0x64, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x68, 0x65, 0x61,
+ 0x64, 0x65, 0x72, 0x12, 0x87, 0x01, 0x0a, 0x14, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74,
+ 0x61, 0x6c, 0x5f, 0x61, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x54, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x2e, 0x43, 0x6f, 0x6c, 0x75, 0x6d, 0x6e, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72,
+ 0x74, 0x69, 0x65, 0x73, 0x2e, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x41,
+ 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x13, 0x68, 0x6f, 0x72, 0x69, 0x7a, 0x6f,
+ 0x6e, 0x74, 0x61, 0x6c, 0x41, 0x6c, 0x69, 0x67, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x62, 0x0a,
+ 0x13, 0x48, 0x6f, 0x72, 0x69, 0x7a, 0x6f, 0x6e, 0x74, 0x61, 0x6c, 0x41, 0x6c, 0x69, 0x67, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x24, 0x0a, 0x20, 0x48, 0x4f, 0x52, 0x49, 0x5a, 0x4f, 0x4e, 0x54,
+ 0x41, 0x4c, 0x5f, 0x41, 0x4c, 0x49, 0x47, 0x4e, 0x4d, 0x45, 0x4e, 0x54, 0x5f, 0x55, 0x4e, 0x53,
+ 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x4c, 0x45,
+ 0x41, 0x44, 0x49, 0x4e, 0x47, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x43, 0x45, 0x4e, 0x54, 0x45,
+ 0x52, 0x10, 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x52, 0x41, 0x49, 0x4c, 0x49, 0x4e, 0x47, 0x10,
+ 0x03, 0x1a, 0x88, 0x01, 0x0a, 0x0c, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x52,
+ 0x6f, 0x77, 0x12, 0x53, 0x0a, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x3d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x2e, 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x43, 0x65, 0x6c, 0x6c,
+ 0x52, 0x05, 0x63, 0x65, 0x6c, 0x6c, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x64, 0x69, 0x76, 0x69, 0x64,
+ 0x65, 0x72, 0x5f, 0x61, 0x66, 0x74, 0x65, 0x72, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0c,
+ 0x64, 0x69, 0x76, 0x69, 0x64, 0x65, 0x72, 0x41, 0x66, 0x74, 0x65, 0x72, 0x1a, 0x23, 0x0a, 0x0d,
+ 0x54, 0x61, 0x62, 0x6c, 0x65, 0x43, 0x61, 0x72, 0x64, 0x43, 0x65, 0x6c, 0x6c, 0x12, 0x12, 0x0a,
+ 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78,
+ 0x74, 0x22, 0xaf, 0x01, 0x0a, 0x08, 0x50, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x12, 0x18,
+ 0x0a, 0x14, 0x50, 0x4c, 0x41, 0x54, 0x46, 0x4f, 0x52, 0x4d, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
+ 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0c, 0x0a, 0x08, 0x46, 0x41, 0x43, 0x45,
+ 0x42, 0x4f, 0x4f, 0x4b, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x4c, 0x41, 0x43, 0x4b, 0x10,
+ 0x02, 0x12, 0x0c, 0x0a, 0x08, 0x54, 0x45, 0x4c, 0x45, 0x47, 0x52, 0x41, 0x4d, 0x10, 0x03, 0x12,
+ 0x07, 0x0a, 0x03, 0x4b, 0x49, 0x4b, 0x10, 0x04, 0x12, 0x09, 0x0a, 0x05, 0x53, 0x4b, 0x59, 0x50,
+ 0x45, 0x10, 0x05, 0x12, 0x08, 0x0a, 0x04, 0x4c, 0x49, 0x4e, 0x45, 0x10, 0x06, 0x12, 0x09, 0x0a,
+ 0x05, 0x56, 0x49, 0x42, 0x45, 0x52, 0x10, 0x07, 0x12, 0x15, 0x0a, 0x11, 0x41, 0x43, 0x54, 0x49,
+ 0x4f, 0x4e, 0x53, 0x5f, 0x4f, 0x4e, 0x5f, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x10, 0x08, 0x12,
+ 0x0d, 0x0a, 0x09, 0x54, 0x45, 0x4c, 0x45, 0x50, 0x48, 0x4f, 0x4e, 0x59, 0x10, 0x0a, 0x12, 0x13,
+ 0x0a, 0x0f, 0x47, 0x4f, 0x4f, 0x47, 0x4c, 0x45, 0x5f, 0x48, 0x41, 0x4e, 0x47, 0x4f, 0x55, 0x54,
+ 0x53, 0x10, 0x0b, 0x42, 0x09, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x85,
+ 0x01, 0x0a, 0x12, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x30, 0x0a, 0x14, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75,
+ 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x12, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x3d, 0x0a, 0x1b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x5f, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x18, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x46, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x49, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x4e, 0x61, 0x6d, 0x65, 0x22, 0x74, 0x0a, 0x0c, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f,
+ 0x6b, 0x53, 0x74, 0x61, 0x74, 0x65, 0x12, 0x1d, 0x0a, 0x19, 0x57, 0x45, 0x42, 0x48, 0x4f, 0x4f,
+ 0x4b, 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46,
+ 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x19, 0x0a, 0x15, 0x57, 0x45, 0x42, 0x48, 0x4f, 0x4f, 0x4b,
+ 0x5f, 0x53, 0x54, 0x41, 0x54, 0x45, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x10, 0x01,
+ 0x12, 0x2a, 0x0a, 0x26, 0x57, 0x45, 0x42, 0x48, 0x4f, 0x4f, 0x4b, 0x5f, 0x53, 0x54, 0x41, 0x54,
+ 0x45, 0x5f, 0x45, 0x4e, 0x41, 0x42, 0x4c, 0x45, 0x44, 0x5f, 0x46, 0x4f, 0x52, 0x5f, 0x53, 0x4c,
+ 0x4f, 0x54, 0x5f, 0x46, 0x49, 0x4c, 0x4c, 0x49, 0x4e, 0x47, 0x10, 0x02, 0x3a, 0x91, 0x01, 0xea,
+ 0x41, 0x8d, 0x01, 0x0a, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x7d,
+ 0x12, 0x3e, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x7d,
+ 0x22, 0x8a, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x12,
+ 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43,
+ 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x69,
+ 0x65, 0x77, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x56, 0x69, 0x65, 0x77, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65,
+ 0x77, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d,
+ 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x80, 0x01,
+ 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52,
+ 0x07, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74,
+ 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x22, 0xc8, 0x01, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f,
+ 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a,
+ 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x52,
+ 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x22, 0x95, 0x02, 0x0a, 0x13,
+ 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x22, 0x12, 0x20, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03,
+ 0xe0, 0x41, 0x02, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
+ 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x4c, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f,
+ 0x76, 0x69, 0x65, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56,
+ 0x69, 0x65, 0x77, 0x22, 0x90, 0x02, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x44, 0x0a, 0x06, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f,
+ 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x4c, 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x22, 0x53, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3c, 0x0a,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02,
+ 0xfa, 0x41, 0x22, 0x0a, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xae, 0x03, 0x0a, 0x19,
+ 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x22, 0x12, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x2a, 0x0a, 0x10, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x72, 0x69, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0e, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x55, 0x72, 0x69, 0x12, 0x5e, 0x0a, 0x13, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74,
+ 0x63, 0x68, 0x48, 0x00, 0x52, 0x11, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x61, 0x74, 0x63,
+ 0x68, 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x12, 0x28, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75,
+ 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64,
+ 0x65, 0x12, 0x3b, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61,
+ 0x73, 0x6b, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x4c,
+ 0x0a, 0x0b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x76, 0x69, 0x65, 0x77, 0x18, 0x06, 0x20,
+ 0x01, 0x28, 0x0e, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77,
+ 0x52, 0x0a, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x56, 0x69, 0x65, 0x77, 0x42, 0x0e, 0x0a, 0x0c,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x22, 0x5f, 0x0a, 0x1a,
+ 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x41, 0x0a, 0x07, 0x69, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0xa5, 0x01,
+ 0x0a, 0x19, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x40, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x28, 0xe0, 0x41, 0x02,
+ 0xfa, 0x41, 0x22, 0x12, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x46, 0x0a,
+ 0x07, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x69, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x73, 0x22, 0x50, 0x0a, 0x0b, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x42,
+ 0x61, 0x74, 0x63, 0x68, 0x12, 0x41, 0x0a, 0x07, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x07,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2a, 0x3f, 0x0a, 0x0a, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x56, 0x69, 0x65, 0x77, 0x12, 0x1b, 0x0a, 0x17, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f,
+ 0x56, 0x49, 0x45, 0x57, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44,
+ 0x10, 0x00, 0x12, 0x14, 0x0a, 0x10, 0x49, 0x4e, 0x54, 0x45, 0x4e, 0x54, 0x5f, 0x56, 0x49, 0x45,
+ 0x57, 0x5f, 0x46, 0x55, 0x4c, 0x4c, 0x10, 0x01, 0x32, 0xa1, 0x12, 0x0a, 0x07, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x73, 0x12, 0x8e, 0x03, 0x0a, 0x0b, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x73, 0x12, 0x33, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0x93, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xec, 0x01, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a,
+ 0x3b, 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x5a, 0x47, 0x12, 0x45,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x69, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0xda, 0x41,
+ 0x14, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65,
+ 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0xf2, 0x01, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x12, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22,
+ 0x88, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x66, 0x12, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x38, 0x12, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xda, 0x41, 0x12, 0x6e, 0x61, 0x6d, 0x65, 0x2c, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0x9a, 0x02, 0x0a, 0x0c, 0x43,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0xaa, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x76, 0x22, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3a,
+ 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5a, 0x40, 0x22, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x73, 0x3a, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x0d, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x1b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61,
+ 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x12, 0xd3, 0x02, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x27,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x22, 0xe3, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x84,
+ 0x01, 0x32, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x69, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5a, 0x47, 0x32, 0x3d,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x06, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0xda, 0x41, 0x12, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2c, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0xda, 0x41, 0x06, 0x69, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0xda, 0x41, 0x14, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2c, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0xda, 0x41, 0x20, 0x69, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x2c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64,
+ 0x65, 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xd1, 0x01,
+ 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x34,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x73, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x66, 0x2a, 0x2a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x5a, 0x38, 0x2a, 0x36, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61,
+ 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x12, 0x8b, 0x03, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f,
+ 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x22, 0x99, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x84, 0x01, 0x22, 0x36, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x47, 0x22, 0x42, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x3a, 0x01,
+ 0x2a, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x5f, 0x62, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x75, 0x72, 0x69, 0xda, 0x41, 0x1a, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x62, 0x61, 0x74, 0x63,
+ 0x68, 0x5f, 0x69, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0xca, 0x41, 0x54, 0x0a, 0x3a, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74,
+ 0x63, 0x68, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x12,
+ 0xc0, 0x02, 0x0a, 0x12, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x42, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67,
+ 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x22, 0xce, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x84, 0x01, 0x22, 0x36, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f,
+ 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0x5a, 0x47, 0x22, 0x42, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
+ 0x3a, 0x62, 0x61, 0x74, 0x63, 0x68, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x3a, 0x01, 0x2a, 0xda,
+ 0x41, 0x0e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73,
+ 0xca, 0x41, 0x2f, 0x0a, 0x15, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x12, 0x16, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75,
+ 0x63, 0x74, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
+ 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72,
+ 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74,
+ 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa3, 0x01, 0x0a,
+ 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x42, 0x0b, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74,
+ 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46,
+ 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_intent_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_intent_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes = make([]protoimpl.EnumInfo, 12)
+var file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes = make([]protoimpl.MessageInfo, 57)
+var file_google_cloud_dialogflow_v2beta1_intent_proto_goTypes = []interface{}{
+ (IntentView)(0), // 0: google.cloud.dialogflow.v2beta1.IntentView
+ (Intent_WebhookState)(0), // 1: google.cloud.dialogflow.v2beta1.Intent.WebhookState
+ (Intent_TrainingPhrase_Type)(0), // 2: google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Type
+ (Intent_Message_Platform)(0), // 3: google.cloud.dialogflow.v2beta1.Intent.Message.Platform
+ (Intent_Message_RbmCarouselCard_CardWidth)(0), // 4: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard.CardWidth
+ (Intent_Message_RbmStandaloneCard_CardOrientation)(0), // 5: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.CardOrientation
+ (Intent_Message_RbmStandaloneCard_ThumbnailImageAlignment)(0), // 6: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.ThumbnailImageAlignment
+ (Intent_Message_RbmCardContent_RbmMedia_Height)(0), // 7: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.RbmMedia.Height
+ (Intent_Message_MediaContent_ResponseMediaType)(0), // 8: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaType
+ (Intent_Message_BrowseCarouselCard_ImageDisplayOptions)(0), // 9: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.ImageDisplayOptions
+ (Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction_UrlTypeHint)(0), // 10: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.OpenUrlAction.UrlTypeHint
+ (Intent_Message_ColumnProperties_HorizontalAlignment)(0), // 11: google.cloud.dialogflow.v2beta1.Intent.Message.ColumnProperties.HorizontalAlignment
+ (*Intent)(nil), // 12: google.cloud.dialogflow.v2beta1.Intent
+ (*ListIntentsRequest)(nil), // 13: google.cloud.dialogflow.v2beta1.ListIntentsRequest
+ (*ListIntentsResponse)(nil), // 14: google.cloud.dialogflow.v2beta1.ListIntentsResponse
+ (*GetIntentRequest)(nil), // 15: google.cloud.dialogflow.v2beta1.GetIntentRequest
+ (*CreateIntentRequest)(nil), // 16: google.cloud.dialogflow.v2beta1.CreateIntentRequest
+ (*UpdateIntentRequest)(nil), // 17: google.cloud.dialogflow.v2beta1.UpdateIntentRequest
+ (*DeleteIntentRequest)(nil), // 18: google.cloud.dialogflow.v2beta1.DeleteIntentRequest
+ (*BatchUpdateIntentsRequest)(nil), // 19: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsRequest
+ (*BatchUpdateIntentsResponse)(nil), // 20: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse
+ (*BatchDeleteIntentsRequest)(nil), // 21: google.cloud.dialogflow.v2beta1.BatchDeleteIntentsRequest
+ (*IntentBatch)(nil), // 22: google.cloud.dialogflow.v2beta1.IntentBatch
+ (*Intent_TrainingPhrase)(nil), // 23: google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase
+ (*Intent_Parameter)(nil), // 24: google.cloud.dialogflow.v2beta1.Intent.Parameter
+ (*Intent_Message)(nil), // 25: google.cloud.dialogflow.v2beta1.Intent.Message
+ (*Intent_FollowupIntentInfo)(nil), // 26: google.cloud.dialogflow.v2beta1.Intent.FollowupIntentInfo
+ (*Intent_TrainingPhrase_Part)(nil), // 27: google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Part
+ (*Intent_Message_Text)(nil), // 28: google.cloud.dialogflow.v2beta1.Intent.Message.Text
+ (*Intent_Message_Image)(nil), // 29: google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ (*Intent_Message_QuickReplies)(nil), // 30: google.cloud.dialogflow.v2beta1.Intent.Message.QuickReplies
+ (*Intent_Message_Card)(nil), // 31: google.cloud.dialogflow.v2beta1.Intent.Message.Card
+ (*Intent_Message_SimpleResponse)(nil), // 32: google.cloud.dialogflow.v2beta1.Intent.Message.SimpleResponse
+ (*Intent_Message_SimpleResponses)(nil), // 33: google.cloud.dialogflow.v2beta1.Intent.Message.SimpleResponses
+ (*Intent_Message_BasicCard)(nil), // 34: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard
+ (*Intent_Message_Suggestion)(nil), // 35: google.cloud.dialogflow.v2beta1.Intent.Message.Suggestion
+ (*Intent_Message_Suggestions)(nil), // 36: google.cloud.dialogflow.v2beta1.Intent.Message.Suggestions
+ (*Intent_Message_LinkOutSuggestion)(nil), // 37: google.cloud.dialogflow.v2beta1.Intent.Message.LinkOutSuggestion
+ (*Intent_Message_ListSelect)(nil), // 38: google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect
+ (*Intent_Message_CarouselSelect)(nil), // 39: google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect
+ (*Intent_Message_SelectItemInfo)(nil), // 40: google.cloud.dialogflow.v2beta1.Intent.Message.SelectItemInfo
+ (*Intent_Message_TelephonyPlayAudio)(nil), // 41: google.cloud.dialogflow.v2beta1.Intent.Message.TelephonyPlayAudio
+ (*Intent_Message_TelephonySynthesizeSpeech)(nil), // 42: google.cloud.dialogflow.v2beta1.Intent.Message.TelephonySynthesizeSpeech
+ (*Intent_Message_TelephonyTransferCall)(nil), // 43: google.cloud.dialogflow.v2beta1.Intent.Message.TelephonyTransferCall
+ (*Intent_Message_RbmText)(nil), // 44: google.cloud.dialogflow.v2beta1.Intent.Message.RbmText
+ (*Intent_Message_RbmCarouselCard)(nil), // 45: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard
+ (*Intent_Message_RbmStandaloneCard)(nil), // 46: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard
+ (*Intent_Message_RbmCardContent)(nil), // 47: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent
+ (*Intent_Message_RbmSuggestion)(nil), // 48: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestion
+ (*Intent_Message_RbmSuggestedReply)(nil), // 49: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedReply
+ (*Intent_Message_RbmSuggestedAction)(nil), // 50: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction
+ (*Intent_Message_MediaContent)(nil), // 51: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent
+ (*Intent_Message_BrowseCarouselCard)(nil), // 52: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard
+ (*Intent_Message_TableCard)(nil), // 53: google.cloud.dialogflow.v2beta1.Intent.Message.TableCard
+ (*Intent_Message_ColumnProperties)(nil), // 54: google.cloud.dialogflow.v2beta1.Intent.Message.ColumnProperties
+ (*Intent_Message_TableCardRow)(nil), // 55: google.cloud.dialogflow.v2beta1.Intent.Message.TableCardRow
+ (*Intent_Message_TableCardCell)(nil), // 56: google.cloud.dialogflow.v2beta1.Intent.Message.TableCardCell
+ (*Intent_Message_Card_Button)(nil), // 57: google.cloud.dialogflow.v2beta1.Intent.Message.Card.Button
+ (*Intent_Message_BasicCard_Button)(nil), // 58: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button
+ (*Intent_Message_BasicCard_Button_OpenUriAction)(nil), // 59: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button.OpenUriAction
+ (*Intent_Message_ListSelect_Item)(nil), // 60: google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect.Item
+ (*Intent_Message_CarouselSelect_Item)(nil), // 61: google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect.Item
+ (*Intent_Message_RbmCardContent_RbmMedia)(nil), // 62: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.RbmMedia
+ (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial)(nil), // 63: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionDial
+ (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri)(nil), // 64: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionOpenUri
+ (*Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation)(nil), // 65: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionShareLocation
+ (*Intent_Message_MediaContent_ResponseMediaObject)(nil), // 66: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaObject
+ (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem)(nil), // 67: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem
+ (*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction)(nil), // 68: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.OpenUrlAction
+ (*Context)(nil), // 69: google.cloud.dialogflow.v2beta1.Context
+ (*fieldmaskpb.FieldMask)(nil), // 70: google.protobuf.FieldMask
+ (*structpb.Struct)(nil), // 71: google.protobuf.Struct
+ (*emptypb.Empty)(nil), // 72: google.protobuf.Empty
+ (*longrunning.Operation)(nil), // 73: google.longrunning.Operation
+}
+var file_google_cloud_dialogflow_v2beta1_intent_proto_depIdxs = []int32{
+ 1, // 0: google.cloud.dialogflow.v2beta1.Intent.webhook_state:type_name -> google.cloud.dialogflow.v2beta1.Intent.WebhookState
+ 23, // 1: google.cloud.dialogflow.v2beta1.Intent.training_phrases:type_name -> google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase
+ 69, // 2: google.cloud.dialogflow.v2beta1.Intent.output_contexts:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 24, // 3: google.cloud.dialogflow.v2beta1.Intent.parameters:type_name -> google.cloud.dialogflow.v2beta1.Intent.Parameter
+ 25, // 4: google.cloud.dialogflow.v2beta1.Intent.messages:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message
+ 3, // 5: google.cloud.dialogflow.v2beta1.Intent.default_response_platforms:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Platform
+ 26, // 6: google.cloud.dialogflow.v2beta1.Intent.followup_intent_info:type_name -> google.cloud.dialogflow.v2beta1.Intent.FollowupIntentInfo
+ 0, // 7: google.cloud.dialogflow.v2beta1.ListIntentsRequest.intent_view:type_name -> google.cloud.dialogflow.v2beta1.IntentView
+ 12, // 8: google.cloud.dialogflow.v2beta1.ListIntentsResponse.intents:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 0, // 9: google.cloud.dialogflow.v2beta1.GetIntentRequest.intent_view:type_name -> google.cloud.dialogflow.v2beta1.IntentView
+ 12, // 10: google.cloud.dialogflow.v2beta1.CreateIntentRequest.intent:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 0, // 11: google.cloud.dialogflow.v2beta1.CreateIntentRequest.intent_view:type_name -> google.cloud.dialogflow.v2beta1.IntentView
+ 12, // 12: google.cloud.dialogflow.v2beta1.UpdateIntentRequest.intent:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 70, // 13: google.cloud.dialogflow.v2beta1.UpdateIntentRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 0, // 14: google.cloud.dialogflow.v2beta1.UpdateIntentRequest.intent_view:type_name -> google.cloud.dialogflow.v2beta1.IntentView
+ 22, // 15: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsRequest.intent_batch_inline:type_name -> google.cloud.dialogflow.v2beta1.IntentBatch
+ 70, // 16: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 0, // 17: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsRequest.intent_view:type_name -> google.cloud.dialogflow.v2beta1.IntentView
+ 12, // 18: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse.intents:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 12, // 19: google.cloud.dialogflow.v2beta1.BatchDeleteIntentsRequest.intents:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 12, // 20: google.cloud.dialogflow.v2beta1.IntentBatch.intents:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 2, // 21: google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.type:type_name -> google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Type
+ 27, // 22: google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.parts:type_name -> google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Part
+ 28, // 23: google.cloud.dialogflow.v2beta1.Intent.Message.text:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Text
+ 29, // 24: google.cloud.dialogflow.v2beta1.Intent.Message.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 30, // 25: google.cloud.dialogflow.v2beta1.Intent.Message.quick_replies:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.QuickReplies
+ 31, // 26: google.cloud.dialogflow.v2beta1.Intent.Message.card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Card
+ 71, // 27: google.cloud.dialogflow.v2beta1.Intent.Message.payload:type_name -> google.protobuf.Struct
+ 33, // 28: google.cloud.dialogflow.v2beta1.Intent.Message.simple_responses:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.SimpleResponses
+ 34, // 29: google.cloud.dialogflow.v2beta1.Intent.Message.basic_card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard
+ 36, // 30: google.cloud.dialogflow.v2beta1.Intent.Message.suggestions:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Suggestions
+ 37, // 31: google.cloud.dialogflow.v2beta1.Intent.Message.link_out_suggestion:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.LinkOutSuggestion
+ 38, // 32: google.cloud.dialogflow.v2beta1.Intent.Message.list_select:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect
+ 39, // 33: google.cloud.dialogflow.v2beta1.Intent.Message.carousel_select:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect
+ 41, // 34: google.cloud.dialogflow.v2beta1.Intent.Message.telephony_play_audio:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TelephonyPlayAudio
+ 42, // 35: google.cloud.dialogflow.v2beta1.Intent.Message.telephony_synthesize_speech:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TelephonySynthesizeSpeech
+ 43, // 36: google.cloud.dialogflow.v2beta1.Intent.Message.telephony_transfer_call:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TelephonyTransferCall
+ 44, // 37: google.cloud.dialogflow.v2beta1.Intent.Message.rbm_text:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmText
+ 46, // 38: google.cloud.dialogflow.v2beta1.Intent.Message.rbm_standalone_rich_card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard
+ 45, // 39: google.cloud.dialogflow.v2beta1.Intent.Message.rbm_carousel_rich_card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard
+ 52, // 40: google.cloud.dialogflow.v2beta1.Intent.Message.browse_carousel_card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard
+ 53, // 41: google.cloud.dialogflow.v2beta1.Intent.Message.table_card:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TableCard
+ 51, // 42: google.cloud.dialogflow.v2beta1.Intent.Message.media_content:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent
+ 3, // 43: google.cloud.dialogflow.v2beta1.Intent.Message.platform:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Platform
+ 57, // 44: google.cloud.dialogflow.v2beta1.Intent.Message.Card.buttons:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Card.Button
+ 32, // 45: google.cloud.dialogflow.v2beta1.Intent.Message.SimpleResponses.simple_responses:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.SimpleResponse
+ 29, // 46: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 58, // 47: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.buttons:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button
+ 35, // 48: google.cloud.dialogflow.v2beta1.Intent.Message.Suggestions.suggestions:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Suggestion
+ 60, // 49: google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect.items:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect.Item
+ 61, // 50: google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect.items:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect.Item
+ 48, // 51: google.cloud.dialogflow.v2beta1.Intent.Message.RbmText.rbm_suggestion:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestion
+ 4, // 52: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard.card_width:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard.CardWidth
+ 47, // 53: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCarouselCard.card_contents:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent
+ 5, // 54: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.card_orientation:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.CardOrientation
+ 6, // 55: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.thumbnail_image_alignment:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.ThumbnailImageAlignment
+ 47, // 56: google.cloud.dialogflow.v2beta1.Intent.Message.RbmStandaloneCard.card_content:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent
+ 62, // 57: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.media:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.RbmMedia
+ 48, // 58: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.suggestions:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestion
+ 49, // 59: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestion.reply:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedReply
+ 50, // 60: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestion.action:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction
+ 63, // 61: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.dial:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionDial
+ 64, // 62: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.open_url:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionOpenUri
+ 65, // 63: google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.share_location:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmSuggestedAction.RbmSuggestedActionShareLocation
+ 8, // 64: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.media_type:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaType
+ 66, // 65: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.media_objects:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaObject
+ 67, // 66: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.items:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem
+ 9, // 67: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.image_display_options:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.ImageDisplayOptions
+ 29, // 68: google.cloud.dialogflow.v2beta1.Intent.Message.TableCard.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 54, // 69: google.cloud.dialogflow.v2beta1.Intent.Message.TableCard.column_properties:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.ColumnProperties
+ 55, // 70: google.cloud.dialogflow.v2beta1.Intent.Message.TableCard.rows:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TableCardRow
+ 58, // 71: google.cloud.dialogflow.v2beta1.Intent.Message.TableCard.buttons:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button
+ 11, // 72: google.cloud.dialogflow.v2beta1.Intent.Message.ColumnProperties.horizontal_alignment:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.ColumnProperties.HorizontalAlignment
+ 56, // 73: google.cloud.dialogflow.v2beta1.Intent.Message.TableCardRow.cells:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.TableCardCell
+ 59, // 74: google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button.open_uri_action:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BasicCard.Button.OpenUriAction
+ 40, // 75: google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect.Item.info:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.SelectItemInfo
+ 29, // 76: google.cloud.dialogflow.v2beta1.Intent.Message.ListSelect.Item.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 40, // 77: google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect.Item.info:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.SelectItemInfo
+ 29, // 78: google.cloud.dialogflow.v2beta1.Intent.Message.CarouselSelect.Item.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 7, // 79: google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.RbmMedia.height:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.RbmCardContent.RbmMedia.Height
+ 29, // 80: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaObject.large_image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 29, // 81: google.cloud.dialogflow.v2beta1.Intent.Message.MediaContent.ResponseMediaObject.icon:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 68, // 82: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.open_uri_action:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.OpenUrlAction
+ 29, // 83: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.image:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.Image
+ 10, // 84: google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.OpenUrlAction.url_type_hint:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message.BrowseCarouselCard.BrowseCarouselCardItem.OpenUrlAction.UrlTypeHint
+ 13, // 85: google.cloud.dialogflow.v2beta1.Intents.ListIntents:input_type -> google.cloud.dialogflow.v2beta1.ListIntentsRequest
+ 15, // 86: google.cloud.dialogflow.v2beta1.Intents.GetIntent:input_type -> google.cloud.dialogflow.v2beta1.GetIntentRequest
+ 16, // 87: google.cloud.dialogflow.v2beta1.Intents.CreateIntent:input_type -> google.cloud.dialogflow.v2beta1.CreateIntentRequest
+ 17, // 88: google.cloud.dialogflow.v2beta1.Intents.UpdateIntent:input_type -> google.cloud.dialogflow.v2beta1.UpdateIntentRequest
+ 18, // 89: google.cloud.dialogflow.v2beta1.Intents.DeleteIntent:input_type -> google.cloud.dialogflow.v2beta1.DeleteIntentRequest
+ 19, // 90: google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents:input_type -> google.cloud.dialogflow.v2beta1.BatchUpdateIntentsRequest
+ 21, // 91: google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents:input_type -> google.cloud.dialogflow.v2beta1.BatchDeleteIntentsRequest
+ 14, // 92: google.cloud.dialogflow.v2beta1.Intents.ListIntents:output_type -> google.cloud.dialogflow.v2beta1.ListIntentsResponse
+ 12, // 93: google.cloud.dialogflow.v2beta1.Intents.GetIntent:output_type -> google.cloud.dialogflow.v2beta1.Intent
+ 12, // 94: google.cloud.dialogflow.v2beta1.Intents.CreateIntent:output_type -> google.cloud.dialogflow.v2beta1.Intent
+ 12, // 95: google.cloud.dialogflow.v2beta1.Intents.UpdateIntent:output_type -> google.cloud.dialogflow.v2beta1.Intent
+ 72, // 96: google.cloud.dialogflow.v2beta1.Intents.DeleteIntent:output_type -> google.protobuf.Empty
+ 73, // 97: google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents:output_type -> google.longrunning.Operation
+ 73, // 98: google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents:output_type -> google.longrunning.Operation
+ 92, // [92:99] is the sub-list for method output_type
+ 85, // [85:92] is the sub-list for method input_type
+ 85, // [85:85] is the sub-list for extension type_name
+ 85, // [85:85] is the sub-list for extension extendee
+ 0, // [0:85] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_intent_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_intent_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_intent_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListIntentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListIntentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchUpdateIntentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchUpdateIntentsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*BatchDeleteIntentsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*IntentBatch); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_TrainingPhrase); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Parameter); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_FollowupIntentInfo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_TrainingPhrase_Part); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Text); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Image); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_QuickReplies); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Card); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_SimpleResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_SimpleResponses); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BasicCard); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Suggestion); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Suggestions); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_LinkOutSuggestion); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_ListSelect); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_CarouselSelect); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_SelectItemInfo); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TelephonyPlayAudio); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TelephonySynthesizeSpeech); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TelephonyTransferCall); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmText); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmCarouselCard); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmStandaloneCard); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmCardContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[36].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestion); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[37].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestedReply); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[38].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestedAction); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[39].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_MediaContent); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BrowseCarouselCard); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TableCard); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[42].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_ColumnProperties); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[43].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TableCardRow); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_TableCardCell); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_Card_Button); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BasicCard_Button); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BasicCard_Button_OpenUriAction); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_ListSelect_Item); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_CarouselSelect_Item); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[50].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmCardContent_RbmMedia); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[51].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestedAction_RbmSuggestedActionDial); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[52].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestedAction_RbmSuggestedActionOpenUri); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[53].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_RbmSuggestedAction_RbmSuggestedActionShareLocation); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[54].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_MediaContent_ResponseMediaObject); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[55].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[56].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Intent_Message_BrowseCarouselCard_BrowseCarouselCardItem_OpenUrlAction); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[7].OneofWrappers = []interface{}{
+ (*BatchUpdateIntentsRequest_IntentBatchUri)(nil),
+ (*BatchUpdateIntentsRequest_IntentBatchInline)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[13].OneofWrappers = []interface{}{
+ (*Intent_Message_Text_)(nil),
+ (*Intent_Message_Image_)(nil),
+ (*Intent_Message_QuickReplies_)(nil),
+ (*Intent_Message_Card_)(nil),
+ (*Intent_Message_Payload)(nil),
+ (*Intent_Message_SimpleResponses_)(nil),
+ (*Intent_Message_BasicCard_)(nil),
+ (*Intent_Message_Suggestions_)(nil),
+ (*Intent_Message_LinkOutSuggestion_)(nil),
+ (*Intent_Message_ListSelect_)(nil),
+ (*Intent_Message_CarouselSelect_)(nil),
+ (*Intent_Message_TelephonyPlayAudio_)(nil),
+ (*Intent_Message_TelephonySynthesizeSpeech_)(nil),
+ (*Intent_Message_TelephonyTransferCall_)(nil),
+ (*Intent_Message_RbmText_)(nil),
+ (*Intent_Message_RbmStandaloneRichCard)(nil),
+ (*Intent_Message_RbmCarouselRichCard)(nil),
+ (*Intent_Message_BrowseCarouselCard_)(nil),
+ (*Intent_Message_TableCard_)(nil),
+ (*Intent_Message_MediaContent_)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[30].OneofWrappers = []interface{}{
+ (*Intent_Message_TelephonySynthesizeSpeech_Text)(nil),
+ (*Intent_Message_TelephonySynthesizeSpeech_Ssml)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[36].OneofWrappers = []interface{}{
+ (*Intent_Message_RbmSuggestion_Reply)(nil),
+ (*Intent_Message_RbmSuggestion_Action)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[38].OneofWrappers = []interface{}{
+ (*Intent_Message_RbmSuggestedAction_Dial)(nil),
+ (*Intent_Message_RbmSuggestedAction_OpenUrl)(nil),
+ (*Intent_Message_RbmSuggestedAction_ShareLocation)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes[54].OneofWrappers = []interface{}{
+ (*Intent_Message_MediaContent_ResponseMediaObject_LargeImage)(nil),
+ (*Intent_Message_MediaContent_ResponseMediaObject_Icon)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_intent_proto_rawDesc,
+ NumEnums: 12,
+ NumMessages: 57,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_intent_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_intent_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_intent_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_intent_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_intent_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_intent_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_intent_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_intent_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// IntentsClient is the client API for Intents service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type IntentsClient interface {
+ // Returns the list of all intents in the specified agent.
+ ListIntents(ctx context.Context, in *ListIntentsRequest, opts ...grpc.CallOption) (*ListIntentsResponse, error)
+ // Retrieves the specified intent.
+ GetIntent(ctx context.Context, in *GetIntentRequest, opts ...grpc.CallOption) (*Intent, error)
+ // Creates an intent in the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ CreateIntent(ctx context.Context, in *CreateIntentRequest, opts ...grpc.CallOption) (*Intent, error)
+ // Updates the specified intent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ UpdateIntent(ctx context.Context, in *UpdateIntentRequest, opts ...grpc.CallOption) (*Intent, error)
+ // Deletes the specified intent and its direct or indirect followup intents.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ DeleteIntent(ctx context.Context, in *DeleteIntentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Updates/Creates multiple intents in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [BatchUpdateIntentsResponse][google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse]
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchUpdateIntents(ctx context.Context, in *BatchUpdateIntentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes intents in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteIntents(ctx context.Context, in *BatchDeleteIntentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+}
+
+type intentsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewIntentsClient(cc grpc.ClientConnInterface) IntentsClient {
+ return &intentsClient{cc}
+}
+
+func (c *intentsClient) ListIntents(ctx context.Context, in *ListIntentsRequest, opts ...grpc.CallOption) (*ListIntentsResponse, error) {
+ out := new(ListIntentsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/ListIntents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) GetIntent(ctx context.Context, in *GetIntentRequest, opts ...grpc.CallOption) (*Intent, error) {
+ out := new(Intent)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/GetIntent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) CreateIntent(ctx context.Context, in *CreateIntentRequest, opts ...grpc.CallOption) (*Intent, error) {
+ out := new(Intent)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/CreateIntent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) UpdateIntent(ctx context.Context, in *UpdateIntentRequest, opts ...grpc.CallOption) (*Intent, error) {
+ out := new(Intent)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/UpdateIntent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) DeleteIntent(ctx context.Context, in *DeleteIntentRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/DeleteIntent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) BatchUpdateIntents(ctx context.Context, in *BatchUpdateIntentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/BatchUpdateIntents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *intentsClient) BatchDeleteIntents(ctx context.Context, in *BatchDeleteIntentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Intents/BatchDeleteIntents", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// IntentsServer is the server API for Intents service.
+type IntentsServer interface {
+ // Returns the list of all intents in the specified agent.
+ ListIntents(context.Context, *ListIntentsRequest) (*ListIntentsResponse, error)
+ // Retrieves the specified intent.
+ GetIntent(context.Context, *GetIntentRequest) (*Intent, error)
+ // Creates an intent in the specified agent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ CreateIntent(context.Context, *CreateIntentRequest) (*Intent, error)
+ // Updates the specified intent.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ UpdateIntent(context.Context, *UpdateIntentRequest) (*Intent, error)
+ // Deletes the specified intent and its direct or indirect followup intents.
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ DeleteIntent(context.Context, *DeleteIntentRequest) (*emptypb.Empty, error)
+ // Updates/Creates multiple intents in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`:
+ //
+ // [BatchUpdateIntentsResponse][google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse]
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchUpdateIntents(context.Context, *BatchUpdateIntentsRequest) (*longrunning.Operation, error)
+ // Deletes intents in the specified agent.
+ //
+ // This method is a [long-running
+ // operation](https://cloud.google.com/dialogflow/es/docs/how/long-running-operations).
+ // The returned `Operation` type has the following method-specific fields:
+ //
+ // - `metadata`: An empty [Struct
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#struct)
+ // - `response`: An [Empty
+ // message](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#empty)
+ //
+ // Note: You should always train an agent prior to sending it queries. See the
+ // [training
+ // documentation](https://cloud.google.com/dialogflow/es/docs/training).
+ BatchDeleteIntents(context.Context, *BatchDeleteIntentsRequest) (*longrunning.Operation, error)
+}
+
+// UnimplementedIntentsServer can be embedded to have forward compatible implementations.
+type UnimplementedIntentsServer struct {
+}
+
+func (*UnimplementedIntentsServer) ListIntents(context.Context, *ListIntentsRequest) (*ListIntentsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListIntents not implemented")
+}
+func (*UnimplementedIntentsServer) GetIntent(context.Context, *GetIntentRequest) (*Intent, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetIntent not implemented")
+}
+func (*UnimplementedIntentsServer) CreateIntent(context.Context, *CreateIntentRequest) (*Intent, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateIntent not implemented")
+}
+func (*UnimplementedIntentsServer) UpdateIntent(context.Context, *UpdateIntentRequest) (*Intent, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateIntent not implemented")
+}
+func (*UnimplementedIntentsServer) DeleteIntent(context.Context, *DeleteIntentRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteIntent not implemented")
+}
+func (*UnimplementedIntentsServer) BatchUpdateIntents(context.Context, *BatchUpdateIntentsRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchUpdateIntents not implemented")
+}
+func (*UnimplementedIntentsServer) BatchDeleteIntents(context.Context, *BatchDeleteIntentsRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method BatchDeleteIntents not implemented")
+}
+
+func RegisterIntentsServer(s *grpc.Server, srv IntentsServer) {
+ s.RegisterService(&_Intents_serviceDesc, srv)
+}
+
+func _Intents_ListIntents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListIntentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).ListIntents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/ListIntents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).ListIntents(ctx, req.(*ListIntentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_GetIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetIntentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).GetIntent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/GetIntent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).GetIntent(ctx, req.(*GetIntentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_CreateIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateIntentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).CreateIntent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/CreateIntent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).CreateIntent(ctx, req.(*CreateIntentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_UpdateIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateIntentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).UpdateIntent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/UpdateIntent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).UpdateIntent(ctx, req.(*UpdateIntentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_DeleteIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteIntentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).DeleteIntent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/DeleteIntent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).DeleteIntent(ctx, req.(*DeleteIntentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_BatchUpdateIntents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchUpdateIntentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).BatchUpdateIntents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/BatchUpdateIntents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).BatchUpdateIntents(ctx, req.(*BatchUpdateIntentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Intents_BatchDeleteIntents_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(BatchDeleteIntentsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(IntentsServer).BatchDeleteIntents(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Intents/BatchDeleteIntents",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(IntentsServer).BatchDeleteIntents(ctx, req.(*BatchDeleteIntentsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Intents_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Intents",
+ HandlerType: (*IntentsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListIntents",
+ Handler: _Intents_ListIntents_Handler,
+ },
+ {
+ MethodName: "GetIntent",
+ Handler: _Intents_GetIntent_Handler,
+ },
+ {
+ MethodName: "CreateIntent",
+ Handler: _Intents_CreateIntent_Handler,
+ },
+ {
+ MethodName: "UpdateIntent",
+ Handler: _Intents_UpdateIntent_Handler,
+ },
+ {
+ MethodName: "DeleteIntent",
+ Handler: _Intents_DeleteIntent_Handler,
+ },
+ {
+ MethodName: "BatchUpdateIntents",
+ Handler: _Intents_BatchUpdateIntents_Handler,
+ },
+ {
+ MethodName: "BatchDeleteIntents",
+ Handler: _Intents_BatchDeleteIntents_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/intent.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/knowledge_base.pb.go b/dialogflow/apiv2beta1/dialogflowpb/knowledge_base.pb.go
new file mode 100644
index 0000000..13a5a8d
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/knowledge_base.pb.go
@@ -0,0 +1,1172 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/knowledge_base.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// A knowledge base represents a collection of knowledge documents that you
+// provide to Dialogflow. Your knowledge documents contain information that may
+// be useful during conversations with end-users. Some Dialogflow features use
+// knowledge bases when looking for a response to an end-user input.
+//
+// For more information, see the [knowledge base
+// guide](https://cloud.google.com/dialogflow/docs/how/knowledge-bases).
+//
+// Note: The `projects.agent.knowledgeBases` resource is deprecated;
+// only use `projects.knowledgeBases`.
+type KnowledgeBase struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The knowledge base resource name.
+ // The name must be empty when creating a knowledge base.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The display name of the knowledge base. The name must be 1024
+ // bytes or less; otherwise, the creation request fails.
+ DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // Language which represents the KnowledgeBase. When the KnowledgeBase is
+ // created/updated, this is populated for all non en-us languages. If not
+ // populated, the default language en-us applies.
+ LanguageCode string `protobuf:"bytes,4,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *KnowledgeBase) Reset() {
+ *x = KnowledgeBase{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KnowledgeBase) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KnowledgeBase) ProtoMessage() {}
+
+func (x *KnowledgeBase) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KnowledgeBase.ProtoReflect.Descriptor instead.
+func (*KnowledgeBase) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *KnowledgeBase) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *KnowledgeBase) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *KnowledgeBase) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// Request message for
+// [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases].
+type ListKnowledgeBasesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to list of knowledge bases for.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of items to return in a single page. By
+ // default 10 and at most 100.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // The filter expression used to filter knowledge bases returned by the list
+ // method. The expression has the following syntax:
+ //
+ // <field> <operator> <value> [AND <field> <operator> <value>] ...
+ //
+ // The following fields and operators are supported:
+ //
+ // * display_name with has(:) operator
+ // * language_code with equals(=) operator
+ //
+ // Examples:
+ //
+ // - 'language_code=en-us' matches knowledge bases with en-us language code.
+ // - 'display_name:articles' matches knowledge bases whose display name
+ // contains "articles".
+ // - 'display_name:"Best Articles"' matches knowledge bases whose display
+ // name contains "Best Articles".
+ // - 'language_code=en-gb AND display_name=articles' matches all knowledge
+ // bases whose display name contains "articles" and whose language code is
+ // "en-gb".
+ //
+ // Note: An empty filter string (i.e. "") is a no-op and will result in no
+ // filtering.
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListKnowledgeBasesRequest) Reset() {
+ *x = ListKnowledgeBasesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListKnowledgeBasesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListKnowledgeBasesRequest) ProtoMessage() {}
+
+func (x *ListKnowledgeBasesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListKnowledgeBasesRequest.ProtoReflect.Descriptor instead.
+func (*ListKnowledgeBasesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListKnowledgeBasesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListKnowledgeBasesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListKnowledgeBasesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListKnowledgeBasesRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// Response message for
+// [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases].
+type ListKnowledgeBasesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of knowledge bases.
+ KnowledgeBases []*KnowledgeBase `protobuf:"bytes,1,rep,name=knowledge_bases,json=knowledgeBases,proto3" json:"knowledge_bases,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListKnowledgeBasesResponse) Reset() {
+ *x = ListKnowledgeBasesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListKnowledgeBasesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListKnowledgeBasesResponse) ProtoMessage() {}
+
+func (x *ListKnowledgeBasesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListKnowledgeBasesResponse.ProtoReflect.Descriptor instead.
+func (*ListKnowledgeBasesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListKnowledgeBasesResponse) GetKnowledgeBases() []*KnowledgeBase {
+ if x != nil {
+ return x.KnowledgeBases
+ }
+ return nil
+}
+
+func (x *ListKnowledgeBasesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for
+// [KnowledgeBases.GetKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase].
+type GetKnowledgeBaseRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the knowledge base to retrieve.
+ // Format `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetKnowledgeBaseRequest) Reset() {
+ *x = GetKnowledgeBaseRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetKnowledgeBaseRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetKnowledgeBaseRequest) ProtoMessage() {}
+
+func (x *GetKnowledgeBaseRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetKnowledgeBaseRequest.ProtoReflect.Descriptor instead.
+func (*GetKnowledgeBaseRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetKnowledgeBaseRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for
+// [KnowledgeBases.CreateKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase].
+type CreateKnowledgeBaseRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The project to create a knowledge base for.
+ // Format: `projects/<Project ID>/locations/<Location ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The knowledge base to create.
+ KnowledgeBase *KnowledgeBase `protobuf:"bytes,2,opt,name=knowledge_base,json=knowledgeBase,proto3" json:"knowledge_base,omitempty"`
+}
+
+func (x *CreateKnowledgeBaseRequest) Reset() {
+ *x = CreateKnowledgeBaseRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateKnowledgeBaseRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateKnowledgeBaseRequest) ProtoMessage() {}
+
+func (x *CreateKnowledgeBaseRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateKnowledgeBaseRequest.ProtoReflect.Descriptor instead.
+func (*CreateKnowledgeBaseRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateKnowledgeBaseRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateKnowledgeBaseRequest) GetKnowledgeBase() *KnowledgeBase {
+ if x != nil {
+ return x.KnowledgeBase
+ }
+ return nil
+}
+
+// Request message for
+// [KnowledgeBases.DeleteKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase].
+type DeleteKnowledgeBaseRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the knowledge base to delete.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/knowledgeBases/<Knowledge Base ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. Force deletes the knowledge base. When set to true, any documents
+ // in the knowledge base are also deleted.
+ Force bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
+}
+
+func (x *DeleteKnowledgeBaseRequest) Reset() {
+ *x = DeleteKnowledgeBaseRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteKnowledgeBaseRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteKnowledgeBaseRequest) ProtoMessage() {}
+
+func (x *DeleteKnowledgeBaseRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteKnowledgeBaseRequest.ProtoReflect.Descriptor instead.
+func (*DeleteKnowledgeBaseRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *DeleteKnowledgeBaseRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeleteKnowledgeBaseRequest) GetForce() bool {
+ if x != nil {
+ return x.Force
+ }
+ return false
+}
+
+// Request message for
+// [KnowledgeBases.UpdateKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase].
+type UpdateKnowledgeBaseRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The knowledge base to update.
+ KnowledgeBase *KnowledgeBase `protobuf:"bytes,1,opt,name=knowledge_base,json=knowledgeBase,proto3" json:"knowledge_base,omitempty"`
+ // Optional. Not specified means `update all`.
+ // Currently, only `display_name` can be updated, an InvalidArgument will be
+ // returned for attempting to update other fields.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateKnowledgeBaseRequest) Reset() {
+ *x = UpdateKnowledgeBaseRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateKnowledgeBaseRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateKnowledgeBaseRequest) ProtoMessage() {}
+
+func (x *UpdateKnowledgeBaseRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateKnowledgeBaseRequest.ProtoReflect.Descriptor instead.
+func (*UpdateKnowledgeBaseRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateKnowledgeBaseRequest) GetKnowledgeBase() *KnowledgeBase {
+ if x != nil {
+ return x.KnowledgeBase
+ }
+ return nil
+}
+
+func (x *UpdateKnowledgeBaseRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_knowledge_base_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDesc = []byte{
+ 0x0a, 0x34, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70,
+ 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64,
+ 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f,
+ 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74,
+ 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d,
+ 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x9d, 0x02, 0x0a, 0x0d, 0x4b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12,
+ 0x26, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x64, 0x69, 0x73, 0x70,
+ 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75,
+ 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c,
+ 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x3a, 0xaa, 0x01, 0xea,
+ 0x41, 0xa6, 0x01, 0x0a, 0x27, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x32, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d,
+ 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f,
+ 0x7b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x7d,
+ 0x12, 0x47, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x7d, 0x22, 0xb8, 0x01, 0x0a, 0x19, 0x4c, 0x69,
+ 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x12,
+ 0x27, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a,
+ 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06,
+ 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69,
+ 0x6c, 0x74, 0x65, 0x72, 0x22, 0x9d, 0x01, 0x0a, 0x1a, 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x5f, 0x62, 0x61, 0x73, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x0e, 0x6b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f,
+ 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x5e, 0x0a, 0x17, 0x47, 0x65, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xc1, 0x01, 0x0a, 0x1a, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x12, 0x27, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x5a, 0x0a, 0x0e,
+ 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65,
+ 0x42, 0x61, 0x73, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0x7c, 0x0a, 0x1a, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x2f, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x29, 0x0a, 0x27, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x19, 0x0a, 0x05, 0x66,
+ 0x6f, 0x72, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x05, 0x66, 0x6f, 0x72, 0x63, 0x65, 0x22, 0xba, 0x01, 0x0a, 0x1a, 0x55, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x5a, 0x0a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2e, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0d, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73,
+ 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61,
+ 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d,
+ 0x61, 0x73, 0x6b, 0x32, 0xbd, 0x0e, 0x0a, 0x0e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x12, 0xbd, 0x02, 0x0a, 0x12, 0x4c, 0x69, 0x73, 0x74, 0x4b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x12, 0x3a, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73,
+ 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74,
+ 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xad, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9d, 0x01,
+ 0x12, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x5a, 0x39, 0x12,
+ 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x5a, 0x33, 0x12, 0x31, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x6b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0xda, 0x41, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xaa, 0x02, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x4b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x38, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65,
+ 0x74, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0xab, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9d, 0x01, 0x12,
+ 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x39, 0x12, 0x37,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42,
+ 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x33, 0x12, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x12, 0xf1, 0x02, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72,
+ 0x65, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0xec, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0xcd, 0x01, 0x22, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x3a,
+ 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5a,
+ 0x49, 0x22, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x3a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5a, 0x43, 0x22, 0x31, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d,
+ 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x3a,
+ 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0xda,
+ 0x41, 0x15, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x12, 0x98, 0x02, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65,
+ 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12,
+ 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x42, 0x61, 0x73, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45,
+ 0x6d, 0x70, 0x74, 0x79, 0x22, 0xab, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9d, 0x01, 0x2a, 0x2b,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x39, 0x2a, 0x37, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61,
+ 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x33, 0x2a, 0x31, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0xb4, 0x03, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x22, 0xaf, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xfa,
+ 0x01, 0x32, 0x3a, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77,
+ 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0e, 0x6b,
+ 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5a, 0x58, 0x32,
+ 0x46, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42,
+ 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5a, 0x52, 0x32, 0x40, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62,
+ 0x61, 0x73, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65,
+ 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0e, 0x6b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0xda, 0x41, 0x1a, 0x6b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x2c, 0x75, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0xda, 0x41, 0x0e, 0x6b, 0x6e, 0x6f, 0x77, 0x6c,
+ 0x65, 0x64, 0x67, 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
+ 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
+ 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x42, 0xaa, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x12, 0x4b, 0x6e, 0x6f,
+ 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73, 0x65, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50,
+ 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02,
+ 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
+var file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_goTypes = []interface{}{
+ (*KnowledgeBase)(nil), // 0: google.cloud.dialogflow.v2beta1.KnowledgeBase
+ (*ListKnowledgeBasesRequest)(nil), // 1: google.cloud.dialogflow.v2beta1.ListKnowledgeBasesRequest
+ (*ListKnowledgeBasesResponse)(nil), // 2: google.cloud.dialogflow.v2beta1.ListKnowledgeBasesResponse
+ (*GetKnowledgeBaseRequest)(nil), // 3: google.cloud.dialogflow.v2beta1.GetKnowledgeBaseRequest
+ (*CreateKnowledgeBaseRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.CreateKnowledgeBaseRequest
+ (*DeleteKnowledgeBaseRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.DeleteKnowledgeBaseRequest
+ (*UpdateKnowledgeBaseRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.UpdateKnowledgeBaseRequest
+ (*fieldmaskpb.FieldMask)(nil), // 7: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 8: google.protobuf.Empty
+}
+var file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.ListKnowledgeBasesResponse.knowledge_bases:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 0, // 1: google.cloud.dialogflow.v2beta1.CreateKnowledgeBaseRequest.knowledge_base:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 0, // 2: google.cloud.dialogflow.v2beta1.UpdateKnowledgeBaseRequest.knowledge_base:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 7, // 3: google.cloud.dialogflow.v2beta1.UpdateKnowledgeBaseRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 1, // 4: google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases:input_type -> google.cloud.dialogflow.v2beta1.ListKnowledgeBasesRequest
+ 3, // 5: google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase:input_type -> google.cloud.dialogflow.v2beta1.GetKnowledgeBaseRequest
+ 4, // 6: google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase:input_type -> google.cloud.dialogflow.v2beta1.CreateKnowledgeBaseRequest
+ 5, // 7: google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase:input_type -> google.cloud.dialogflow.v2beta1.DeleteKnowledgeBaseRequest
+ 6, // 8: google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase:input_type -> google.cloud.dialogflow.v2beta1.UpdateKnowledgeBaseRequest
+ 2, // 9: google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases:output_type -> google.cloud.dialogflow.v2beta1.ListKnowledgeBasesResponse
+ 0, // 10: google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase:output_type -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 0, // 11: google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase:output_type -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 8, // 12: google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase:output_type -> google.protobuf.Empty
+ 0, // 13: google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase:output_type -> google.cloud.dialogflow.v2beta1.KnowledgeBase
+ 9, // [9:14] is the sub-list for method output_type
+ 4, // [4:9] is the sub-list for method input_type
+ 4, // [4:4] is the sub-list for extension type_name
+ 4, // [4:4] is the sub-list for extension extendee
+ 0, // [0:4] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_knowledge_base_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KnowledgeBase); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListKnowledgeBasesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListKnowledgeBasesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetKnowledgeBaseRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateKnowledgeBaseRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteKnowledgeBaseRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateKnowledgeBaseRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 7,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_depIdxs,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_knowledge_base_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_knowledge_base_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// KnowledgeBasesClient is the client API for KnowledgeBases service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type KnowledgeBasesClient interface {
+ // Returns the list of all knowledge bases of the specified agent.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ ListKnowledgeBases(ctx context.Context, in *ListKnowledgeBasesRequest, opts ...grpc.CallOption) (*ListKnowledgeBasesResponse, error)
+ // Retrieves the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ GetKnowledgeBase(ctx context.Context, in *GetKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error)
+ // Creates a knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ CreateKnowledgeBase(ctx context.Context, in *CreateKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error)
+ // Deletes the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ DeleteKnowledgeBase(ctx context.Context, in *DeleteKnowledgeBaseRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+ // Updates the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ UpdateKnowledgeBase(ctx context.Context, in *UpdateKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error)
+}
+
+type knowledgeBasesClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewKnowledgeBasesClient(cc grpc.ClientConnInterface) KnowledgeBasesClient {
+ return &knowledgeBasesClient{cc}
+}
+
+func (c *knowledgeBasesClient) ListKnowledgeBases(ctx context.Context, in *ListKnowledgeBasesRequest, opts ...grpc.CallOption) (*ListKnowledgeBasesResponse, error) {
+ out := new(ListKnowledgeBasesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.KnowledgeBases/ListKnowledgeBases", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *knowledgeBasesClient) GetKnowledgeBase(ctx context.Context, in *GetKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error) {
+ out := new(KnowledgeBase)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.KnowledgeBases/GetKnowledgeBase", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *knowledgeBasesClient) CreateKnowledgeBase(ctx context.Context, in *CreateKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error) {
+ out := new(KnowledgeBase)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.KnowledgeBases/CreateKnowledgeBase", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *knowledgeBasesClient) DeleteKnowledgeBase(ctx context.Context, in *DeleteKnowledgeBaseRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.KnowledgeBases/DeleteKnowledgeBase", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *knowledgeBasesClient) UpdateKnowledgeBase(ctx context.Context, in *UpdateKnowledgeBaseRequest, opts ...grpc.CallOption) (*KnowledgeBase, error) {
+ out := new(KnowledgeBase)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.KnowledgeBases/UpdateKnowledgeBase", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// KnowledgeBasesServer is the server API for KnowledgeBases service.
+type KnowledgeBasesServer interface {
+ // Returns the list of all knowledge bases of the specified agent.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ ListKnowledgeBases(context.Context, *ListKnowledgeBasesRequest) (*ListKnowledgeBasesResponse, error)
+ // Retrieves the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ GetKnowledgeBase(context.Context, *GetKnowledgeBaseRequest) (*KnowledgeBase, error)
+ // Creates a knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ CreateKnowledgeBase(context.Context, *CreateKnowledgeBaseRequest) (*KnowledgeBase, error)
+ // Deletes the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ DeleteKnowledgeBase(context.Context, *DeleteKnowledgeBaseRequest) (*emptypb.Empty, error)
+ // Updates the specified knowledge base.
+ //
+ // Note: The `projects.agent.knowledgeBases` resource is deprecated;
+ // only use `projects.knowledgeBases`.
+ UpdateKnowledgeBase(context.Context, *UpdateKnowledgeBaseRequest) (*KnowledgeBase, error)
+}
+
+// UnimplementedKnowledgeBasesServer can be embedded to have forward compatible implementations.
+type UnimplementedKnowledgeBasesServer struct {
+}
+
+func (*UnimplementedKnowledgeBasesServer) ListKnowledgeBases(context.Context, *ListKnowledgeBasesRequest) (*ListKnowledgeBasesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListKnowledgeBases not implemented")
+}
+func (*UnimplementedKnowledgeBasesServer) GetKnowledgeBase(context.Context, *GetKnowledgeBaseRequest) (*KnowledgeBase, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetKnowledgeBase not implemented")
+}
+func (*UnimplementedKnowledgeBasesServer) CreateKnowledgeBase(context.Context, *CreateKnowledgeBaseRequest) (*KnowledgeBase, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateKnowledgeBase not implemented")
+}
+func (*UnimplementedKnowledgeBasesServer) DeleteKnowledgeBase(context.Context, *DeleteKnowledgeBaseRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteKnowledgeBase not implemented")
+}
+func (*UnimplementedKnowledgeBasesServer) UpdateKnowledgeBase(context.Context, *UpdateKnowledgeBaseRequest) (*KnowledgeBase, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateKnowledgeBase not implemented")
+}
+
+func RegisterKnowledgeBasesServer(s *grpc.Server, srv KnowledgeBasesServer) {
+ s.RegisterService(&_KnowledgeBases_serviceDesc, srv)
+}
+
+func _KnowledgeBases_ListKnowledgeBases_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListKnowledgeBasesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(KnowledgeBasesServer).ListKnowledgeBases(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.KnowledgeBases/ListKnowledgeBases",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(KnowledgeBasesServer).ListKnowledgeBases(ctx, req.(*ListKnowledgeBasesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _KnowledgeBases_GetKnowledgeBase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetKnowledgeBaseRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(KnowledgeBasesServer).GetKnowledgeBase(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.KnowledgeBases/GetKnowledgeBase",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(KnowledgeBasesServer).GetKnowledgeBase(ctx, req.(*GetKnowledgeBaseRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _KnowledgeBases_CreateKnowledgeBase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateKnowledgeBaseRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(KnowledgeBasesServer).CreateKnowledgeBase(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.KnowledgeBases/CreateKnowledgeBase",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(KnowledgeBasesServer).CreateKnowledgeBase(ctx, req.(*CreateKnowledgeBaseRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _KnowledgeBases_DeleteKnowledgeBase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteKnowledgeBaseRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(KnowledgeBasesServer).DeleteKnowledgeBase(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.KnowledgeBases/DeleteKnowledgeBase",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(KnowledgeBasesServer).DeleteKnowledgeBase(ctx, req.(*DeleteKnowledgeBaseRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _KnowledgeBases_UpdateKnowledgeBase_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateKnowledgeBaseRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(KnowledgeBasesServer).UpdateKnowledgeBase(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.KnowledgeBases/UpdateKnowledgeBase",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(KnowledgeBasesServer).UpdateKnowledgeBase(ctx, req.(*UpdateKnowledgeBaseRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _KnowledgeBases_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.KnowledgeBases",
+ HandlerType: (*KnowledgeBasesServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListKnowledgeBases",
+ Handler: _KnowledgeBases_ListKnowledgeBases_Handler,
+ },
+ {
+ MethodName: "GetKnowledgeBase",
+ Handler: _KnowledgeBases_GetKnowledgeBase_Handler,
+ },
+ {
+ MethodName: "CreateKnowledgeBase",
+ Handler: _KnowledgeBases_CreateKnowledgeBase_Handler,
+ },
+ {
+ MethodName: "DeleteKnowledgeBase",
+ Handler: _KnowledgeBases_DeleteKnowledgeBase_Handler,
+ },
+ {
+ MethodName: "UpdateKnowledgeBase",
+ Handler: _KnowledgeBases_UpdateKnowledgeBase_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/knowledge_base.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/participant.pb.go b/dialogflow/apiv2beta1/dialogflowpb/participant.pb.go
new file mode 100644
index 0000000..91bb5fa
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/participant.pb.go
@@ -0,0 +1,6726 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/participant.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ status "google.golang.org/genproto/googleapis/rpc/status"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status1 "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ structpb "google.golang.org/protobuf/types/known/structpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Enumeration of the roles a participant can play in a conversation.
+type Participant_Role int32
+
+const (
+ // Participant role not set.
+ Participant_ROLE_UNSPECIFIED Participant_Role = 0
+ // Participant is a human agent.
+ Participant_HUMAN_AGENT Participant_Role = 1
+ // Participant is an automated agent, such as a Dialogflow agent.
+ Participant_AUTOMATED_AGENT Participant_Role = 2
+ // Participant is an end user that has called or chatted with
+ // Dialogflow services.
+ Participant_END_USER Participant_Role = 3
+)
+
+// Enum value maps for Participant_Role.
+var (
+ Participant_Role_name = map[int32]string{
+ 0: "ROLE_UNSPECIFIED",
+ 1: "HUMAN_AGENT",
+ 2: "AUTOMATED_AGENT",
+ 3: "END_USER",
+ }
+ Participant_Role_value = map[string]int32{
+ "ROLE_UNSPECIFIED": 0,
+ "HUMAN_AGENT": 1,
+ "AUTOMATED_AGENT": 2,
+ "END_USER": 3,
+ }
+)
+
+func (x Participant_Role) Enum() *Participant_Role {
+ p := new(Participant_Role)
+ *p = x
+ return p
+}
+
+func (x Participant_Role) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Participant_Role) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[0].Descriptor()
+}
+
+func (Participant_Role) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[0]
+}
+
+func (x Participant_Role) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Participant_Role.Descriptor instead.
+func (Participant_Role) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Represents different automated agent reply types.
+type AutomatedAgentReply_AutomatedAgentReplyType int32
+
+const (
+ // Not specified. This should never happen.
+ AutomatedAgentReply_AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED AutomatedAgentReply_AutomatedAgentReplyType = 0
+ // Partial reply. e.g. Aggregated responses in a `Fulfillment` that enables
+ // `return_partial_response` can be returned as partial reply.
+ // WARNING: partial reply is not eligible for barge-in.
+ AutomatedAgentReply_PARTIAL AutomatedAgentReply_AutomatedAgentReplyType = 1
+ // Final reply.
+ AutomatedAgentReply_FINAL AutomatedAgentReply_AutomatedAgentReplyType = 2
+)
+
+// Enum value maps for AutomatedAgentReply_AutomatedAgentReplyType.
+var (
+ AutomatedAgentReply_AutomatedAgentReplyType_name = map[int32]string{
+ 0: "AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED",
+ 1: "PARTIAL",
+ 2: "FINAL",
+ }
+ AutomatedAgentReply_AutomatedAgentReplyType_value = map[string]int32{
+ "AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED": 0,
+ "PARTIAL": 1,
+ "FINAL": 2,
+ }
+)
+
+func (x AutomatedAgentReply_AutomatedAgentReplyType) Enum() *AutomatedAgentReply_AutomatedAgentReplyType {
+ p := new(AutomatedAgentReply_AutomatedAgentReplyType)
+ *p = x
+ return p
+}
+
+func (x AutomatedAgentReply_AutomatedAgentReplyType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (AutomatedAgentReply_AutomatedAgentReplyType) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[1].Descriptor()
+}
+
+func (AutomatedAgentReply_AutomatedAgentReplyType) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[1]
+}
+
+func (x AutomatedAgentReply_AutomatedAgentReplyType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use AutomatedAgentReply_AutomatedAgentReplyType.Descriptor instead.
+func (AutomatedAgentReply_AutomatedAgentReplyType) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{9, 0}
+}
+
+// Defines the type of Human Agent Assistant feature.
+type SuggestionFeature_Type int32
+
+const (
+ // Unspecified feature type.
+ SuggestionFeature_TYPE_UNSPECIFIED SuggestionFeature_Type = 0
+ // Run article suggestion model for chat.
+ SuggestionFeature_ARTICLE_SUGGESTION SuggestionFeature_Type = 1
+ // Run FAQ model.
+ SuggestionFeature_FAQ SuggestionFeature_Type = 2
+ // Run smart reply model for chat.
+ SuggestionFeature_SMART_REPLY SuggestionFeature_Type = 3
+ // Run conversation summarization model for chat.
+ SuggestionFeature_CONVERSATION_SUMMARIZATION SuggestionFeature_Type = 8
+)
+
+// Enum value maps for SuggestionFeature_Type.
+var (
+ SuggestionFeature_Type_name = map[int32]string{
+ 0: "TYPE_UNSPECIFIED",
+ 1: "ARTICLE_SUGGESTION",
+ 2: "FAQ",
+ 3: "SMART_REPLY",
+ 8: "CONVERSATION_SUMMARIZATION",
+ }
+ SuggestionFeature_Type_value = map[string]int32{
+ "TYPE_UNSPECIFIED": 0,
+ "ARTICLE_SUGGESTION": 1,
+ "FAQ": 2,
+ "SMART_REPLY": 3,
+ "CONVERSATION_SUMMARIZATION": 8,
+ }
+)
+
+func (x SuggestionFeature_Type) Enum() *SuggestionFeature_Type {
+ p := new(SuggestionFeature_Type)
+ *p = x
+ return p
+}
+
+func (x SuggestionFeature_Type) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SuggestionFeature_Type) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[2].Descriptor()
+}
+
+func (SuggestionFeature_Type) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes[2]
+}
+
+func (x SuggestionFeature_Type) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SuggestionFeature_Type.Descriptor instead.
+func (SuggestionFeature_Type) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{10, 0}
+}
+
+// Represents a conversation participant (human agent, virtual agent, end-user).
+type Participant struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The unique identifier of this participant.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Immutable. The role this participant plays in the conversation. This field
+ // must be set during participant creation and is then immutable.
+ Role Participant_Role `protobuf:"varint,2,opt,name=role,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"role,omitempty"`
+ // Optional. Obfuscated user id that should be associated with the created
+ // participant.
+ //
+ // You can specify a user id as follows:
+ //
+ // 1. If you set this field in
+ // [CreateParticipantRequest][google.cloud.dialogflow.v2beta1.CreateParticipantRequest.participant]
+ // or
+ // [UpdateParticipantRequest][google.cloud.dialogflow.v2beta1.UpdateParticipantRequest.participant],
+ // Dialogflow adds the obfuscated user id with the participant.
+ //
+ // 2. If you set this field in
+ // [AnalyzeContent][google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.obfuscated_external_user_id]
+ // or
+ // [StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.obfuscated_external_user_id],
+ // Dialogflow will update
+ // [Participant.obfuscated_external_user_id][google.cloud.dialogflow.v2beta1.Participant.obfuscated_external_user_id].
+ //
+ // Dialogflow uses this user id for following purposes:
+ // 1) Billing and measurement. If user with the same
+ // obfuscated_external_user_id is created in a later conversation, dialogflow
+ // will know it's the same user. 2) Agent assist suggestion personalization.
+ // For example, Dialogflow can use it to provide personalized smart reply
+ // suggestions for this user.
+ //
+ // Note:
+ //
+ // - Please never pass raw user ids to Dialogflow. Always obfuscate your user
+ // id first.
+ // - Dialogflow only accepts a UTF-8 encoded string, e.g., a hex digest of a
+ // hash function like SHA-512.
+ // - The length of the user id must be <= 256 characters.
+ ObfuscatedExternalUserId string `protobuf:"bytes,7,opt,name=obfuscated_external_user_id,json=obfuscatedExternalUserId,proto3" json:"obfuscated_external_user_id,omitempty"`
+ // Optional. Key-value filters on the metadata of documents returned by
+ // article suggestion. If specified, article suggestion only returns suggested
+ // documents that match all filters in their
+ // [Document.metadata][google.cloud.dialogflow.v2beta1.Document.metadata].
+ // Multiple values for a metadata key should be concatenated by comma. For
+ // example, filters to match all documents that have 'US' or 'CA' in their
+ // market metadata values and 'agent' in their user metadata values will be
+ // ```
+ //
+ // documents_metadata_filters {
+ // key: "market"
+ // value: "US,CA"
+ // }
+ //
+ // documents_metadata_filters {
+ // key: "user"
+ // value: "agent"
+ // }
+ //
+ // ```
+ DocumentsMetadataFilters map[string]string `protobuf:"bytes,8,rep,name=documents_metadata_filters,json=documentsMetadataFilters,proto3" json:"documents_metadata_filters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *Participant) Reset() {
+ *x = Participant{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Participant) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Participant) ProtoMessage() {}
+
+func (x *Participant) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Participant.ProtoReflect.Descriptor instead.
+func (*Participant) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Participant) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Participant) GetRole() Participant_Role {
+ if x != nil {
+ return x.Role
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *Participant) GetObfuscatedExternalUserId() string {
+ if x != nil {
+ return x.ObfuscatedExternalUserId
+ }
+ return ""
+}
+
+func (x *Participant) GetDocumentsMetadataFilters() map[string]string {
+ if x != nil {
+ return x.DocumentsMetadataFilters
+ }
+ return nil
+}
+
+// Represents a message posted into a conversation.
+type Message struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The unique identifier of the message.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. The message content.
+ Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"`
+ // Optional. The message language.
+ // This should be a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt)
+ // language tag. Example: "en-US".
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // Output only. The participant that sends this message.
+ Participant string `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"`
+ // Output only. The role of the participant.
+ ParticipantRole Participant_Role `protobuf:"varint,5,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2beta1.Participant_Role" json:"participant_role,omitempty"`
+ // Output only. The time when the message was created in Contact Center AI.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Optional. The time when the message was sent.
+ SendTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=send_time,json=sendTime,proto3" json:"send_time,omitempty"`
+ // Output only. The annotation for the message.
+ MessageAnnotation *MessageAnnotation `protobuf:"bytes,7,opt,name=message_annotation,json=messageAnnotation,proto3" json:"message_annotation,omitempty"`
+ // Output only. The sentiment analysis result for the message.
+ SentimentAnalysis *SentimentAnalysisResult `protobuf:"bytes,8,opt,name=sentiment_analysis,json=sentimentAnalysis,proto3" json:"sentiment_analysis,omitempty"`
+}
+
+func (x *Message) Reset() {
+ *x = Message{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Message) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Message) ProtoMessage() {}
+
+func (x *Message) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Message.ProtoReflect.Descriptor instead.
+func (*Message) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *Message) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Message) GetContent() string {
+ if x != nil {
+ return x.Content
+ }
+ return ""
+}
+
+func (x *Message) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *Message) GetParticipant() string {
+ if x != nil {
+ return x.Participant
+ }
+ return ""
+}
+
+func (x *Message) GetParticipantRole() Participant_Role {
+ if x != nil {
+ return x.ParticipantRole
+ }
+ return Participant_ROLE_UNSPECIFIED
+}
+
+func (x *Message) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Message) GetSendTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.SendTime
+ }
+ return nil
+}
+
+func (x *Message) GetMessageAnnotation() *MessageAnnotation {
+ if x != nil {
+ return x.MessageAnnotation
+ }
+ return nil
+}
+
+func (x *Message) GetSentimentAnalysis() *SentimentAnalysisResult {
+ if x != nil {
+ return x.SentimentAnalysis
+ }
+ return nil
+}
+
+// The request message for
+// [Participants.CreateParticipant][google.cloud.dialogflow.v2beta1.Participants.CreateParticipant].
+type CreateParticipantRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Resource identifier of the conversation adding the participant.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The participant to create.
+ Participant *Participant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant,omitempty"`
+}
+
+func (x *CreateParticipantRequest) Reset() {
+ *x = CreateParticipantRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateParticipantRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateParticipantRequest) ProtoMessage() {}
+
+func (x *CreateParticipantRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateParticipantRequest.ProtoReflect.Descriptor instead.
+func (*CreateParticipantRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *CreateParticipantRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateParticipantRequest) GetParticipant() *Participant {
+ if x != nil {
+ return x.Participant
+ }
+ return nil
+}
+
+// The request message for
+// [Participants.GetParticipant][google.cloud.dialogflow.v2beta1.Participants.GetParticipant].
+type GetParticipantRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant. Format:
+ // `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
+ // ID>/participants/<Participant ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetParticipantRequest) Reset() {
+ *x = GetParticipantRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetParticipantRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetParticipantRequest) ProtoMessage() {}
+
+func (x *GetParticipantRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetParticipantRequest.ProtoReflect.Descriptor instead.
+func (*GetParticipantRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetParticipantRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Participants.ListParticipants][google.cloud.dialogflow.v2beta1.Participants.ListParticipants].
+type ListParticipantsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The conversation to list all participants from.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListParticipantsRequest) Reset() {
+ *x = ListParticipantsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListParticipantsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListParticipantsRequest) ProtoMessage() {}
+
+func (x *ListParticipantsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListParticipantsRequest.ProtoReflect.Descriptor instead.
+func (*ListParticipantsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *ListParticipantsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListParticipantsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListParticipantsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Participants.ListParticipants][google.cloud.dialogflow.v2beta1.Participants.ListParticipants].
+type ListParticipantsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of participants. There is a maximum number of items
+ // returned based on the page_size field in the request.
+ Participants []*Participant `protobuf:"bytes,1,rep,name=participants,proto3" json:"participants,omitempty"`
+ // Token to retrieve the next page of results or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListParticipantsResponse) Reset() {
+ *x = ListParticipantsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListParticipantsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListParticipantsResponse) ProtoMessage() {}
+
+func (x *ListParticipantsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListParticipantsResponse.ProtoReflect.Descriptor instead.
+func (*ListParticipantsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *ListParticipantsResponse) GetParticipants() []*Participant {
+ if x != nil {
+ return x.Participants
+ }
+ return nil
+}
+
+func (x *ListParticipantsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Participants.UpdateParticipant][google.cloud.dialogflow.v2beta1.Participants.UpdateParticipant].
+type UpdateParticipantRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The participant to update.
+ Participant *Participant `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
+ // Required. The mask to specify which fields to update.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateParticipantRequest) Reset() {
+ *x = UpdateParticipantRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateParticipantRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateParticipantRequest) ProtoMessage() {}
+
+func (x *UpdateParticipantRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateParticipantRequest.ProtoReflect.Descriptor instead.
+func (*UpdateParticipantRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdateParticipantRequest) GetParticipant() *Participant {
+ if x != nil {
+ return x.Participant
+ }
+ return nil
+}
+
+func (x *UpdateParticipantRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// Represents the natural language speech audio to be processed.
+type AudioInput struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Instructs the speech recognizer how to process the speech audio.
+ Config *InputAudioConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
+ // Required. The natural language speech audio to be processed.
+ // A single request can contain up to 1 minute of speech audio data.
+ // The transcribed text cannot contain more than 256 bytes for virtual agent
+ // interactions.
+ Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
+}
+
+func (x *AudioInput) Reset() {
+ *x = AudioInput{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AudioInput) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AudioInput) ProtoMessage() {}
+
+func (x *AudioInput) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AudioInput.ProtoReflect.Descriptor instead.
+func (*AudioInput) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *AudioInput) GetConfig() *InputAudioConfig {
+ if x != nil {
+ return x.Config
+ }
+ return nil
+}
+
+func (x *AudioInput) GetAudio() []byte {
+ if x != nil {
+ return x.Audio
+ }
+ return nil
+}
+
+// Represents the natural language speech audio to be played to the end user.
+type OutputAudio struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. Instructs the speech synthesizer how to generate the speech
+ // audio.
+ Config *OutputAudioConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
+ // Required. The natural language speech audio.
+ Audio []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
+}
+
+func (x *OutputAudio) Reset() {
+ *x = OutputAudio{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OutputAudio) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OutputAudio) ProtoMessage() {}
+
+func (x *OutputAudio) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OutputAudio.ProtoReflect.Descriptor instead.
+func (*OutputAudio) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *OutputAudio) GetConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.Config
+ }
+ return nil
+}
+
+func (x *OutputAudio) GetAudio() []byte {
+ if x != nil {
+ return x.Audio
+ }
+ return nil
+}
+
+// Represents a response from an automated agent.
+type AutomatedAgentReply struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required.
+ //
+ // Types that are assignable to Response:
+ //
+ // *AutomatedAgentReply_DetectIntentResponse
+ Response isAutomatedAgentReply_Response `protobuf_oneof:"response"`
+ // Response messages from the automated agent.
+ ResponseMessages []*ResponseMessage `protobuf:"bytes,3,rep,name=response_messages,json=responseMessages,proto3" json:"response_messages,omitempty"`
+ // Info on the query match for the automated agent response.
+ //
+ // Types that are assignable to Match:
+ //
+ // *AutomatedAgentReply_Intent
+ // *AutomatedAgentReply_Event
+ Match isAutomatedAgentReply_Match `protobuf_oneof:"match"`
+ // The confidence of the match. Values range from 0.0 (completely uncertain)
+ // to 1.0 (completely certain).
+ // This value is for informational purpose only and is only used to help match
+ // the best intent within the classification threshold. This value may change
+ // for the same end-user expression at any time due to a model retraining or
+ // change in implementation.
+ MatchConfidence float32 `protobuf:"fixed32,9,opt,name=match_confidence,json=matchConfidence,proto3" json:"match_confidence,omitempty"`
+ // The collection of current parameters at the time of this response.
+ Parameters *structpb.Struct `protobuf:"bytes,10,opt,name=parameters,proto3" json:"parameters,omitempty"`
+ // The collection of current Dialogflow CX agent session parameters at the
+ // time of this response.
+ // Deprecated: Use `parameters` instead.
+ //
+ // Deprecated: Do not use.
+ CxSessionParameters *structpb.Struct `protobuf:"bytes,6,opt,name=cx_session_parameters,json=cxSessionParameters,proto3" json:"cx_session_parameters,omitempty"`
+ // AutomatedAgentReply type.
+ AutomatedAgentReplyType AutomatedAgentReply_AutomatedAgentReplyType `protobuf:"varint,7,opt,name=automated_agent_reply_type,json=automatedAgentReplyType,proto3,enum=google.cloud.dialogflow.v2beta1.AutomatedAgentReply_AutomatedAgentReplyType" json:"automated_agent_reply_type,omitempty"`
+ // Indicates whether the partial automated agent reply is interruptible when a
+ // later reply message arrives. e.g. if the agent specified some music as
+ // partial response, it can be cancelled.
+ AllowCancellation bool `protobuf:"varint,8,opt,name=allow_cancellation,json=allowCancellation,proto3" json:"allow_cancellation,omitempty"`
+ // The unique identifier of the current Dialogflow CX conversation page.
+ // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
+ // ID>/flows/<Flow ID>/pages/<Page ID>`.
+ CxCurrentPage string `protobuf:"bytes,11,opt,name=cx_current_page,json=cxCurrentPage,proto3" json:"cx_current_page,omitempty"`
+}
+
+func (x *AutomatedAgentReply) Reset() {
+ *x = AutomatedAgentReply{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AutomatedAgentReply) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AutomatedAgentReply) ProtoMessage() {}
+
+func (x *AutomatedAgentReply) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AutomatedAgentReply.ProtoReflect.Descriptor instead.
+func (*AutomatedAgentReply) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{9}
+}
+
+func (m *AutomatedAgentReply) GetResponse() isAutomatedAgentReply_Response {
+ if m != nil {
+ return m.Response
+ }
+ return nil
+}
+
+func (x *AutomatedAgentReply) GetDetectIntentResponse() *DetectIntentResponse {
+ if x, ok := x.GetResponse().(*AutomatedAgentReply_DetectIntentResponse); ok {
+ return x.DetectIntentResponse
+ }
+ return nil
+}
+
+func (x *AutomatedAgentReply) GetResponseMessages() []*ResponseMessage {
+ if x != nil {
+ return x.ResponseMessages
+ }
+ return nil
+}
+
+func (m *AutomatedAgentReply) GetMatch() isAutomatedAgentReply_Match {
+ if m != nil {
+ return m.Match
+ }
+ return nil
+}
+
+func (x *AutomatedAgentReply) GetIntent() string {
+ if x, ok := x.GetMatch().(*AutomatedAgentReply_Intent); ok {
+ return x.Intent
+ }
+ return ""
+}
+
+func (x *AutomatedAgentReply) GetEvent() string {
+ if x, ok := x.GetMatch().(*AutomatedAgentReply_Event); ok {
+ return x.Event
+ }
+ return ""
+}
+
+func (x *AutomatedAgentReply) GetMatchConfidence() float32 {
+ if x != nil {
+ return x.MatchConfidence
+ }
+ return 0
+}
+
+func (x *AutomatedAgentReply) GetParameters() *structpb.Struct {
+ if x != nil {
+ return x.Parameters
+ }
+ return nil
+}
+
+// Deprecated: Do not use.
+func (x *AutomatedAgentReply) GetCxSessionParameters() *structpb.Struct {
+ if x != nil {
+ return x.CxSessionParameters
+ }
+ return nil
+}
+
+func (x *AutomatedAgentReply) GetAutomatedAgentReplyType() AutomatedAgentReply_AutomatedAgentReplyType {
+ if x != nil {
+ return x.AutomatedAgentReplyType
+ }
+ return AutomatedAgentReply_AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED
+}
+
+func (x *AutomatedAgentReply) GetAllowCancellation() bool {
+ if x != nil {
+ return x.AllowCancellation
+ }
+ return false
+}
+
+func (x *AutomatedAgentReply) GetCxCurrentPage() string {
+ if x != nil {
+ return x.CxCurrentPage
+ }
+ return ""
+}
+
+type isAutomatedAgentReply_Response interface {
+ isAutomatedAgentReply_Response()
+}
+
+type AutomatedAgentReply_DetectIntentResponse struct {
+ // Response of the Dialogflow
+ // [Sessions.DetectIntent][google.cloud.dialogflow.v2beta1.Sessions.DetectIntent]
+ // call.
+ DetectIntentResponse *DetectIntentResponse `protobuf:"bytes,1,opt,name=detect_intent_response,json=detectIntentResponse,proto3,oneof"`
+}
+
+func (*AutomatedAgentReply_DetectIntentResponse) isAutomatedAgentReply_Response() {}
+
+type isAutomatedAgentReply_Match interface {
+ isAutomatedAgentReply_Match()
+}
+
+type AutomatedAgentReply_Intent struct {
+ // Name of the intent if an intent is matched for the query.
+ // For a V2 query, the value format is `projects/<Project ID>/locations/
+ // <Location ID>/agent/intents/<Intent ID>`.
+ // For a V3 query, the value format is `projects/<Project ID>/locations/
+ // <Location ID>/agents/<Agent ID>/intents/<Intent ID>`.
+ Intent string `protobuf:"bytes,4,opt,name=intent,proto3,oneof"`
+}
+
+type AutomatedAgentReply_Event struct {
+ // Event name if an event is triggered for the query.
+ Event string `protobuf:"bytes,5,opt,name=event,proto3,oneof"`
+}
+
+func (*AutomatedAgentReply_Intent) isAutomatedAgentReply_Match() {}
+
+func (*AutomatedAgentReply_Event) isAutomatedAgentReply_Match() {}
+
+// The type of Human Agent Assistant API suggestion to perform, and the maximum
+// number of results to return for that type. Multiple `Feature` objects can
+// be specified in the `features` list.
+type SuggestionFeature struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Type of Human Agent Assistant API feature to request.
+ Type SuggestionFeature_Type `protobuf:"varint,1,opt,name=type,proto3,enum=google.cloud.dialogflow.v2beta1.SuggestionFeature_Type" json:"type,omitempty"`
+}
+
+func (x *SuggestionFeature) Reset() {
+ *x = SuggestionFeature{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestionFeature) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestionFeature) ProtoMessage() {}
+
+func (x *SuggestionFeature) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestionFeature.ProtoReflect.Descriptor instead.
+func (*SuggestionFeature) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *SuggestionFeature) GetType() SuggestionFeature_Type {
+ if x != nil {
+ return x.Type
+ }
+ return SuggestionFeature_TYPE_UNSPECIFIED
+}
+
+// Represents the parameters of human assist query.
+type AssistQueryParameters struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Key-value filters on the metadata of documents returned by article
+ // suggestion. If specified, article suggestion only returns suggested
+ // documents that match all filters in their
+ // [Document.metadata][google.cloud.dialogflow.v2beta1.Document.metadata].
+ // Multiple values for a metadata key should be concatenated by comma. For
+ // example, filters to match all documents that have 'US' or 'CA' in their
+ // market metadata values and 'agent' in their user metadata values will be
+ // ```
+ //
+ // documents_metadata_filters {
+ // key: "market"
+ // value: "US,CA"
+ // }
+ //
+ // documents_metadata_filters {
+ // key: "user"
+ // value: "agent"
+ // }
+ //
+ // ```
+ DocumentsMetadataFilters map[string]string `protobuf:"bytes,1,rep,name=documents_metadata_filters,json=documentsMetadataFilters,proto3" json:"documents_metadata_filters,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *AssistQueryParameters) Reset() {
+ *x = AssistQueryParameters{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AssistQueryParameters) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AssistQueryParameters) ProtoMessage() {}
+
+func (x *AssistQueryParameters) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AssistQueryParameters.ProtoReflect.Descriptor instead.
+func (*AssistQueryParameters) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *AssistQueryParameters) GetDocumentsMetadataFilters() map[string]string {
+ if x != nil {
+ return x.DocumentsMetadataFilters
+ }
+ return nil
+}
+
+// The request message for
+// [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent].
+type AnalyzeContentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant this text comes from.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Participant string `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
+ // Required. The input content.
+ //
+ // Types that are assignable to Input:
+ //
+ // *AnalyzeContentRequest_TextInput
+ // *AnalyzeContentRequest_AudioInput
+ // *AnalyzeContentRequest_EventInput
+ Input isAnalyzeContentRequest_Input `protobuf_oneof:"input"`
+ // Speech synthesis configuration.
+ // The speech synthesis settings for a virtual agent that may be configured
+ // for the associated conversation profile are not used when calling
+ // AnalyzeContent. If this configuration is not supplied, speech synthesis
+ // is disabled.
+ ReplyAudioConfig *OutputAudioConfig `protobuf:"bytes,5,opt,name=reply_audio_config,json=replyAudioConfig,proto3" json:"reply_audio_config,omitempty"`
+ // Parameters for a Dialogflow virtual-agent query.
+ QueryParams *QueryParameters `protobuf:"bytes,9,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
+ // Parameters for a human assist query.
+ AssistQueryParams *AssistQueryParameters `protobuf:"bytes,14,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
+ // Additional parameters to be put into Dialogflow CX session parameters. To
+ // remove a parameter from the session, clients should explicitly set the
+ // parameter value to null.
+ //
+ // Note: this field should only be used if you are connecting to a Dialogflow
+ // CX agent.
+ CxParameters *structpb.Struct `protobuf:"bytes,18,opt,name=cx_parameters,json=cxParameters,proto3" json:"cx_parameters,omitempty"`
+ // The unique identifier of the CX page to override the `current_page` in the
+ // session.
+ // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
+ // ID>/flows/<Flow ID>/pages/<Page ID>`.
+ //
+ // If `cx_current_page` is specified, the previous state of the session will
+ // be ignored by Dialogflow CX, including the [previous
+ // page][QueryResult.current_page] and the [previous session
+ // parameters][QueryResult.parameters]. In most cases, `cx_current_page` and
+ // `cx_parameters` should be configured together to direct a session to a
+ // specific state.
+ //
+ // Note: this field should only be used if you are connecting to a Dialogflow
+ // CX agent.
+ CxCurrentPage string `protobuf:"bytes,20,opt,name=cx_current_page,json=cxCurrentPage,proto3" json:"cx_current_page,omitempty"`
+ // Optional. The send time of the message from end user or human agent's
+ // perspective. It is used for identifying the same message under one
+ // participant.
+ //
+ // Given two messages under the same participant:
+ // - If send time are different regardless of whether the content of the
+ // messages are exactly the same, the conversation will regard them as
+ // two distinct messages sent by the participant.
+ // - If send time is the same regardless of whether the content of the
+ // messages are exactly the same, the conversation will regard them as
+ // same message, and ignore the message received later.
+ //
+ // If the value is not provided, a new request will always be regarded as a
+ // new message without any de-duplication.
+ MessageSendTime *timestamppb.Timestamp `protobuf:"bytes,10,opt,name=message_send_time,json=messageSendTime,proto3" json:"message_send_time,omitempty"`
+ // A unique identifier for this request. Restricted to 36 ASCII characters.
+ // A random UUID is recommended.
+ // This request is only idempotent if a `request_id` is provided.
+ RequestId string `protobuf:"bytes,11,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
+}
+
+func (x *AnalyzeContentRequest) Reset() {
+ *x = AnalyzeContentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AnalyzeContentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AnalyzeContentRequest) ProtoMessage() {}
+
+func (x *AnalyzeContentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AnalyzeContentRequest.ProtoReflect.Descriptor instead.
+func (*AnalyzeContentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *AnalyzeContentRequest) GetParticipant() string {
+ if x != nil {
+ return x.Participant
+ }
+ return ""
+}
+
+func (m *AnalyzeContentRequest) GetInput() isAnalyzeContentRequest_Input {
+ if m != nil {
+ return m.Input
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetTextInput() *TextInput {
+ if x, ok := x.GetInput().(*AnalyzeContentRequest_TextInput); ok {
+ return x.TextInput
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetAudioInput() *AudioInput {
+ if x, ok := x.GetInput().(*AnalyzeContentRequest_AudioInput); ok {
+ return x.AudioInput
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetEventInput() *EventInput {
+ if x, ok := x.GetInput().(*AnalyzeContentRequest_EventInput); ok {
+ return x.EventInput
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetReplyAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.ReplyAudioConfig
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetQueryParams() *QueryParameters {
+ if x != nil {
+ return x.QueryParams
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetAssistQueryParams() *AssistQueryParameters {
+ if x != nil {
+ return x.AssistQueryParams
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetCxParameters() *structpb.Struct {
+ if x != nil {
+ return x.CxParameters
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetCxCurrentPage() string {
+ if x != nil {
+ return x.CxCurrentPage
+ }
+ return ""
+}
+
+func (x *AnalyzeContentRequest) GetMessageSendTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.MessageSendTime
+ }
+ return nil
+}
+
+func (x *AnalyzeContentRequest) GetRequestId() string {
+ if x != nil {
+ return x.RequestId
+ }
+ return ""
+}
+
+type isAnalyzeContentRequest_Input interface {
+ isAnalyzeContentRequest_Input()
+}
+
+type AnalyzeContentRequest_TextInput struct {
+ // The natural language text to be processed.
+ TextInput *TextInput `protobuf:"bytes,6,opt,name=text_input,json=textInput,proto3,oneof"`
+}
+
+type AnalyzeContentRequest_AudioInput struct {
+ // The natural language speech audio to be processed.
+ AudioInput *AudioInput `protobuf:"bytes,7,opt,name=audio_input,json=audioInput,proto3,oneof"`
+}
+
+type AnalyzeContentRequest_EventInput struct {
+ // An input event to send to Dialogflow.
+ EventInput *EventInput `protobuf:"bytes,8,opt,name=event_input,json=eventInput,proto3,oneof"`
+}
+
+func (*AnalyzeContentRequest_TextInput) isAnalyzeContentRequest_Input() {}
+
+func (*AnalyzeContentRequest_AudioInput) isAnalyzeContentRequest_Input() {}
+
+func (*AnalyzeContentRequest_EventInput) isAnalyzeContentRequest_Input() {}
+
+// The message in the response that indicates the parameters of DTMF.
+type DtmfParameters struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Indicates whether DTMF input can be handled in the next request.
+ AcceptsDtmfInput bool `protobuf:"varint,1,opt,name=accepts_dtmf_input,json=acceptsDtmfInput,proto3" json:"accepts_dtmf_input,omitempty"`
+}
+
+func (x *DtmfParameters) Reset() {
+ *x = DtmfParameters{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DtmfParameters) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DtmfParameters) ProtoMessage() {}
+
+func (x *DtmfParameters) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DtmfParameters.ProtoReflect.Descriptor instead.
+func (*DtmfParameters) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *DtmfParameters) GetAcceptsDtmfInput() bool {
+ if x != nil {
+ return x.AcceptsDtmfInput
+ }
+ return false
+}
+
+// The response message for
+// [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent].
+type AnalyzeContentResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The output text content.
+ // This field is set if the automated agent responded with text to show to
+ // the user.
+ ReplyText string `protobuf:"bytes,1,opt,name=reply_text,json=replyText,proto3" json:"reply_text,omitempty"`
+ // Optional. The audio data bytes encoded as specified in the request.
+ // This field is set if:
+ //
+ // - `reply_audio_config` was specified in the request, or
+ // - The automated agent responded with audio to play to the user. In such
+ // case, `reply_audio.config` contains settings used to synthesize the
+ // speech.
+ //
+ // In some scenarios, multiple output audio fields may be present in the
+ // response structure. In these cases, only the top-most-level audio output
+ // has content.
+ ReplyAudio *OutputAudio `protobuf:"bytes,2,opt,name=reply_audio,json=replyAudio,proto3" json:"reply_audio,omitempty"`
+ // Optional. Only set if a Dialogflow automated agent has responded.
+ // Note that: [AutomatedAgentReply.detect_intent_response.output_audio][]
+ // and [AutomatedAgentReply.detect_intent_response.output_audio_config][]
+ // are always empty, use
+ // [reply_audio][google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.reply_audio]
+ // instead.
+ AutomatedAgentReply *AutomatedAgentReply `protobuf:"bytes,3,opt,name=automated_agent_reply,json=automatedAgentReply,proto3" json:"automated_agent_reply,omitempty"`
+ // Output only. Message analyzed by CCAI.
+ Message *Message `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
+ // The suggestions for most recent human agent. The order is the same as
+ // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
+ // of
+ // [HumanAgentAssistantConfig.human_agent_suggestion_config][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.human_agent_suggestion_config].
+ //
+ // Note that any failure of Agent Assist features will not lead to the overall
+ // failure of an AnalyzeContent API call. Instead, the features will
+ // fail silently with the error field set in the corresponding
+ // SuggestionResult.
+ HumanAgentSuggestionResults []*SuggestionResult `protobuf:"bytes,6,rep,name=human_agent_suggestion_results,json=humanAgentSuggestionResults,proto3" json:"human_agent_suggestion_results,omitempty"`
+ // The suggestions for end user. The order is the same as
+ // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
+ // of
+ // [HumanAgentAssistantConfig.end_user_suggestion_config][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.end_user_suggestion_config].
+ //
+ // Same as human_agent_suggestion_results, any failure of Agent Assist
+ // features will not lead to the overall failure of an AnalyzeContent API
+ // call. Instead, the features will fail silently with the error field set in
+ // the corresponding SuggestionResult.
+ EndUserSuggestionResults []*SuggestionResult `protobuf:"bytes,7,rep,name=end_user_suggestion_results,json=endUserSuggestionResults,proto3" json:"end_user_suggestion_results,omitempty"`
+ // Indicates the parameters of DTMF.
+ DtmfParameters *DtmfParameters `protobuf:"bytes,9,opt,name=dtmf_parameters,json=dtmfParameters,proto3" json:"dtmf_parameters,omitempty"`
+}
+
+func (x *AnalyzeContentResponse) Reset() {
+ *x = AnalyzeContentResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[14]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AnalyzeContentResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AnalyzeContentResponse) ProtoMessage() {}
+
+func (x *AnalyzeContentResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[14]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AnalyzeContentResponse.ProtoReflect.Descriptor instead.
+func (*AnalyzeContentResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{14}
+}
+
+func (x *AnalyzeContentResponse) GetReplyText() string {
+ if x != nil {
+ return x.ReplyText
+ }
+ return ""
+}
+
+func (x *AnalyzeContentResponse) GetReplyAudio() *OutputAudio {
+ if x != nil {
+ return x.ReplyAudio
+ }
+ return nil
+}
+
+func (x *AnalyzeContentResponse) GetAutomatedAgentReply() *AutomatedAgentReply {
+ if x != nil {
+ return x.AutomatedAgentReply
+ }
+ return nil
+}
+
+func (x *AnalyzeContentResponse) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+func (x *AnalyzeContentResponse) GetHumanAgentSuggestionResults() []*SuggestionResult {
+ if x != nil {
+ return x.HumanAgentSuggestionResults
+ }
+ return nil
+}
+
+func (x *AnalyzeContentResponse) GetEndUserSuggestionResults() []*SuggestionResult {
+ if x != nil {
+ return x.EndUserSuggestionResults
+ }
+ return nil
+}
+
+func (x *AnalyzeContentResponse) GetDtmfParameters() *DtmfParameters {
+ if x != nil {
+ return x.DtmfParameters
+ }
+ return nil
+}
+
+// Defines the language used in the input text.
+type InputTextConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The language of this conversational query. See [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes.
+ LanguageCode string `protobuf:"bytes,1,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *InputTextConfig) Reset() {
+ *x = InputTextConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *InputTextConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*InputTextConfig) ProtoMessage() {}
+
+func (x *InputTextConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[15]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use InputTextConfig.ProtoReflect.Descriptor instead.
+func (*InputTextConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{15}
+}
+
+func (x *InputTextConfig) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// The top-level message sent by the client to the
+// [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent]
+// method.
+//
+// Multiple request messages should be sent in order:
+//
+// 1. The first message must contain
+// [participant][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.participant],
+// [config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.config]
+// and optionally
+// [query_params][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.query_params].
+// If you want to receive an audio response, it should also contain
+// [reply_audio_config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.reply_audio_config].
+// The message must not contain
+// [input][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.input].
+//
+// 2. If
+// [config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.config]
+// in the first message
+//
+// was set to
+// [audio_config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.audio_config],
+// all subsequent messages must contain
+// [input_audio][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.input_audio]
+// to continue with Speech recognition. If you decide to rather analyze text
+// input after you already started Speech recognition, please send a message
+// with
+// [StreamingAnalyzeContentRequest.input_text][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.input_text].
+//
+// However, note that:
+//
+// * Dialogflow will bill you for the audio so far.
+// * Dialogflow discards all Speech recognition results in favor of the
+// text input.
+//
+// 3. If
+// [StreamingAnalyzeContentRequest.config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.config]
+// in the first message was set
+// to
+// [StreamingAnalyzeContentRequest.text_config][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.text_config],
+// then the second message must contain only
+// [input_text][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.input_text].
+// Moreover, you must not send more than two messages.
+//
+// After you sent all input, you must half-close or abort the request stream.
+type StreamingAnalyzeContentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant this text comes from.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Participant string `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
+ // Required. The input config.
+ //
+ // Types that are assignable to Config:
+ //
+ // *StreamingAnalyzeContentRequest_AudioConfig
+ // *StreamingAnalyzeContentRequest_TextConfig
+ Config isStreamingAnalyzeContentRequest_Config `protobuf_oneof:"config"`
+ // Speech synthesis configuration.
+ // The speech synthesis settings for a virtual agent that may be configured
+ // for the associated conversation profile are not used when calling
+ // StreamingAnalyzeContent. If this configuration is not supplied, speech
+ // synthesis is disabled.
+ ReplyAudioConfig *OutputAudioConfig `protobuf:"bytes,4,opt,name=reply_audio_config,json=replyAudioConfig,proto3" json:"reply_audio_config,omitempty"`
+ // Required. The input.
+ //
+ // Types that are assignable to Input:
+ //
+ // *StreamingAnalyzeContentRequest_InputAudio
+ // *StreamingAnalyzeContentRequest_InputText
+ // *StreamingAnalyzeContentRequest_InputDtmf
+ Input isStreamingAnalyzeContentRequest_Input `protobuf_oneof:"input"`
+ // Parameters for a Dialogflow virtual-agent query.
+ QueryParams *QueryParameters `protobuf:"bytes,7,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
+ // Parameters for a human assist query.
+ AssistQueryParams *AssistQueryParameters `protobuf:"bytes,8,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
+ // Additional parameters to be put into Dialogflow CX session parameters. To
+ // remove a parameter from the session, clients should explicitly set the
+ // parameter value to null.
+ //
+ // Note: this field should only be used if you are connecting to a Dialogflow
+ // CX agent.
+ CxParameters *structpb.Struct `protobuf:"bytes,13,opt,name=cx_parameters,json=cxParameters,proto3" json:"cx_parameters,omitempty"`
+ // The unique identifier of the CX page to override the `current_page` in the
+ // session.
+ // Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
+ // ID>/flows/<Flow ID>/pages/<Page ID>`.
+ //
+ // If `cx_current_page` is specified, the previous state of the session will
+ // be ignored by Dialogflow CX, including the [previous
+ // page][QueryResult.current_page] and the [previous session
+ // parameters][QueryResult.parameters]. In most cases, `cx_current_page` and
+ // `cx_parameters` should be configured together to direct a session to a
+ // specific state.
+ //
+ // Note: this field should only be used if you are connecting to a Dialogflow
+ // CX agent.
+ CxCurrentPage string `protobuf:"bytes,15,opt,name=cx_current_page,json=cxCurrentPage,proto3" json:"cx_current_page,omitempty"`
+ // Enable partial virtual agent responses. If this flag is not enabled,
+ // response stream still contains only one final response even if some
+ // `Fulfillment`s in Dialogflow virtual agent have been configured to return
+ // partial responses.
+ EnablePartialAutomatedAgentReply bool `protobuf:"varint,12,opt,name=enable_partial_automated_agent_reply,json=enablePartialAutomatedAgentReply,proto3" json:"enable_partial_automated_agent_reply,omitempty"`
+}
+
+func (x *StreamingAnalyzeContentRequest) Reset() {
+ *x = StreamingAnalyzeContentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[16]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamingAnalyzeContentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingAnalyzeContentRequest) ProtoMessage() {}
+
+func (x *StreamingAnalyzeContentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[16]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingAnalyzeContentRequest.ProtoReflect.Descriptor instead.
+func (*StreamingAnalyzeContentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{16}
+}
+
+func (x *StreamingAnalyzeContentRequest) GetParticipant() string {
+ if x != nil {
+ return x.Participant
+ }
+ return ""
+}
+
+func (m *StreamingAnalyzeContentRequest) GetConfig() isStreamingAnalyzeContentRequest_Config {
+ if m != nil {
+ return m.Config
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetAudioConfig() *InputAudioConfig {
+ if x, ok := x.GetConfig().(*StreamingAnalyzeContentRequest_AudioConfig); ok {
+ return x.AudioConfig
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetTextConfig() *InputTextConfig {
+ if x, ok := x.GetConfig().(*StreamingAnalyzeContentRequest_TextConfig); ok {
+ return x.TextConfig
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetReplyAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.ReplyAudioConfig
+ }
+ return nil
+}
+
+func (m *StreamingAnalyzeContentRequest) GetInput() isStreamingAnalyzeContentRequest_Input {
+ if m != nil {
+ return m.Input
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetInputAudio() []byte {
+ if x, ok := x.GetInput().(*StreamingAnalyzeContentRequest_InputAudio); ok {
+ return x.InputAudio
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetInputText() string {
+ if x, ok := x.GetInput().(*StreamingAnalyzeContentRequest_InputText); ok {
+ return x.InputText
+ }
+ return ""
+}
+
+func (x *StreamingAnalyzeContentRequest) GetInputDtmf() *TelephonyDtmfEvents {
+ if x, ok := x.GetInput().(*StreamingAnalyzeContentRequest_InputDtmf); ok {
+ return x.InputDtmf
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetQueryParams() *QueryParameters {
+ if x != nil {
+ return x.QueryParams
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetAssistQueryParams() *AssistQueryParameters {
+ if x != nil {
+ return x.AssistQueryParams
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetCxParameters() *structpb.Struct {
+ if x != nil {
+ return x.CxParameters
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentRequest) GetCxCurrentPage() string {
+ if x != nil {
+ return x.CxCurrentPage
+ }
+ return ""
+}
+
+func (x *StreamingAnalyzeContentRequest) GetEnablePartialAutomatedAgentReply() bool {
+ if x != nil {
+ return x.EnablePartialAutomatedAgentReply
+ }
+ return false
+}
+
+type isStreamingAnalyzeContentRequest_Config interface {
+ isStreamingAnalyzeContentRequest_Config()
+}
+
+type StreamingAnalyzeContentRequest_AudioConfig struct {
+ // Instructs the speech recognizer how to process the speech audio.
+ AudioConfig *InputAudioConfig `protobuf:"bytes,2,opt,name=audio_config,json=audioConfig,proto3,oneof"`
+}
+
+type StreamingAnalyzeContentRequest_TextConfig struct {
+ // The natural language text to be processed.
+ TextConfig *InputTextConfig `protobuf:"bytes,3,opt,name=text_config,json=textConfig,proto3,oneof"`
+}
+
+func (*StreamingAnalyzeContentRequest_AudioConfig) isStreamingAnalyzeContentRequest_Config() {}
+
+func (*StreamingAnalyzeContentRequest_TextConfig) isStreamingAnalyzeContentRequest_Config() {}
+
+type isStreamingAnalyzeContentRequest_Input interface {
+ isStreamingAnalyzeContentRequest_Input()
+}
+
+type StreamingAnalyzeContentRequest_InputAudio struct {
+ // The input audio content to be recognized. Must be sent if `audio_config`
+ // is set in the first message. The complete audio over all streaming
+ // messages must not exceed 1 minute.
+ InputAudio []byte `protobuf:"bytes,5,opt,name=input_audio,json=inputAudio,proto3,oneof"`
+}
+
+type StreamingAnalyzeContentRequest_InputText struct {
+ // The UTF-8 encoded natural language text to be processed. Must be sent if
+ // `text_config` is set in the first message. Text length must not exceed
+ // 256 bytes for virtual agent interactions. The `input_text` field can be
+ // only sent once.
+ InputText string `protobuf:"bytes,6,opt,name=input_text,json=inputText,proto3,oneof"`
+}
+
+type StreamingAnalyzeContentRequest_InputDtmf struct {
+ // The DTMF digits used to invoke intent and fill in parameter value.
+ //
+ // This input is ignored if the previous response indicated that DTMF input
+ // is not accepted.
+ InputDtmf *TelephonyDtmfEvents `protobuf:"bytes,9,opt,name=input_dtmf,json=inputDtmf,proto3,oneof"`
+}
+
+func (*StreamingAnalyzeContentRequest_InputAudio) isStreamingAnalyzeContentRequest_Input() {}
+
+func (*StreamingAnalyzeContentRequest_InputText) isStreamingAnalyzeContentRequest_Input() {}
+
+func (*StreamingAnalyzeContentRequest_InputDtmf) isStreamingAnalyzeContentRequest_Input() {}
+
+// The top-level message returned from the `StreamingAnalyzeContent` method.
+//
+// Multiple response messages can be returned in order:
+//
+// 1. If the input was set to streaming audio, the first one or more messages
+// contain `recognition_result`. Each `recognition_result` represents a more
+// complete transcript of what the user said. The last `recognition_result`
+// has `is_final` set to `true`.
+//
+// 2. In virtual agent stage: if `enable_partial_automated_agent_reply` is
+// true, the following N (currently 1 <= N <= 4) messages
+// contain `automated_agent_reply` and optionally `reply_audio`
+// returned by the virtual agent. The first (N-1)
+// `automated_agent_reply`s will have `automated_agent_reply_type` set to
+// `PARTIAL`. The last `automated_agent_reply` has
+// `automated_agent_reply_type` set to `FINAL`.
+// If `enable_partial_automated_agent_reply` is not enabled, response stream
+// only contains the final reply.
+//
+// In human assist stage: the following N (N >= 1) messages contain
+// `human_agent_suggestion_results`, `end_user_suggestion_results` or
+// `message`.
+type StreamingAnalyzeContentResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The result of speech recognition.
+ RecognitionResult *StreamingRecognitionResult `protobuf:"bytes,1,opt,name=recognition_result,json=recognitionResult,proto3" json:"recognition_result,omitempty"`
+ // Optional. The output text content.
+ // This field is set if an automated agent responded with a text for the user.
+ ReplyText string `protobuf:"bytes,2,opt,name=reply_text,json=replyText,proto3" json:"reply_text,omitempty"`
+ // Optional. The audio data bytes encoded as specified in the request.
+ // This field is set if:
+ //
+ // - The `reply_audio_config` field is specified in the request.
+ // - The automated agent, which this output comes from, responded with audio.
+ // In such case, the `reply_audio.config` field contains settings used to
+ // synthesize the speech.
+ //
+ // In some scenarios, multiple output audio fields may be present in the
+ // response structure. In these cases, only the top-most-level audio output
+ // has content.
+ ReplyAudio *OutputAudio `protobuf:"bytes,3,opt,name=reply_audio,json=replyAudio,proto3" json:"reply_audio,omitempty"`
+ // Optional. Only set if a Dialogflow automated agent has responded.
+ // Note that: [AutomatedAgentReply.detect_intent_response.output_audio][]
+ // and [AutomatedAgentReply.detect_intent_response.output_audio_config][]
+ // are always empty, use
+ // [reply_audio][google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.reply_audio]
+ // instead.
+ AutomatedAgentReply *AutomatedAgentReply `protobuf:"bytes,4,opt,name=automated_agent_reply,json=automatedAgentReply,proto3" json:"automated_agent_reply,omitempty"`
+ // Output only. Message analyzed by CCAI.
+ Message *Message `protobuf:"bytes,6,opt,name=message,proto3" json:"message,omitempty"`
+ // The suggestions for most recent human agent. The order is the same as
+ // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
+ // of
+ // [HumanAgentAssistantConfig.human_agent_suggestion_config][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.human_agent_suggestion_config].
+ HumanAgentSuggestionResults []*SuggestionResult `protobuf:"bytes,7,rep,name=human_agent_suggestion_results,json=humanAgentSuggestionResults,proto3" json:"human_agent_suggestion_results,omitempty"`
+ // The suggestions for end user. The order is the same as
+ // [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
+ // of
+ // [HumanAgentAssistantConfig.end_user_suggestion_config][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.end_user_suggestion_config].
+ EndUserSuggestionResults []*SuggestionResult `protobuf:"bytes,8,rep,name=end_user_suggestion_results,json=endUserSuggestionResults,proto3" json:"end_user_suggestion_results,omitempty"`
+ // Indicates the parameters of DTMF.
+ DtmfParameters *DtmfParameters `protobuf:"bytes,10,opt,name=dtmf_parameters,json=dtmfParameters,proto3" json:"dtmf_parameters,omitempty"`
+}
+
+func (x *StreamingAnalyzeContentResponse) Reset() {
+ *x = StreamingAnalyzeContentResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[17]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamingAnalyzeContentResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingAnalyzeContentResponse) ProtoMessage() {}
+
+func (x *StreamingAnalyzeContentResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[17]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingAnalyzeContentResponse.ProtoReflect.Descriptor instead.
+func (*StreamingAnalyzeContentResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{17}
+}
+
+func (x *StreamingAnalyzeContentResponse) GetRecognitionResult() *StreamingRecognitionResult {
+ if x != nil {
+ return x.RecognitionResult
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetReplyText() string {
+ if x != nil {
+ return x.ReplyText
+ }
+ return ""
+}
+
+func (x *StreamingAnalyzeContentResponse) GetReplyAudio() *OutputAudio {
+ if x != nil {
+ return x.ReplyAudio
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetAutomatedAgentReply() *AutomatedAgentReply {
+ if x != nil {
+ return x.AutomatedAgentReply
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetMessage() *Message {
+ if x != nil {
+ return x.Message
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetHumanAgentSuggestionResults() []*SuggestionResult {
+ if x != nil {
+ return x.HumanAgentSuggestionResults
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetEndUserSuggestionResults() []*SuggestionResult {
+ if x != nil {
+ return x.EndUserSuggestionResults
+ }
+ return nil
+}
+
+func (x *StreamingAnalyzeContentResponse) GetDtmfParameters() *DtmfParameters {
+ if x != nil {
+ return x.DtmfParameters
+ }
+ return nil
+}
+
+// Represents a part of a message possibly annotated with an entity. The part
+// can be an entity or purely a part of the message between two entities or
+// message start/end.
+type AnnotatedMessagePart struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. A part of a message possibly annotated with an entity.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Optional. The [Dialogflow system entity
+ // type](https://cloud.google.com/dialogflow/docs/reference/system-entities)
+ // of this message part. If this is empty, Dialogflow could not annotate the
+ // phrase part with a system entity.
+ EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
+ // Optional. The [Dialogflow system entity formatted value
+ // ](https://cloud.google.com/dialogflow/docs/reference/system-entities) of
+ // this message part. For example for a system entity of type
+ // `@sys.unit-currency`, this may contain:
+ // <pre>
+ //
+ // {
+ // "amount": 5,
+ // "currency": "USD"
+ // }
+ //
+ // </pre>
+ FormattedValue *structpb.Value `protobuf:"bytes,3,opt,name=formatted_value,json=formattedValue,proto3" json:"formatted_value,omitempty"`
+}
+
+func (x *AnnotatedMessagePart) Reset() {
+ *x = AnnotatedMessagePart{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[18]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *AnnotatedMessagePart) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*AnnotatedMessagePart) ProtoMessage() {}
+
+func (x *AnnotatedMessagePart) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[18]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use AnnotatedMessagePart.ProtoReflect.Descriptor instead.
+func (*AnnotatedMessagePart) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{18}
+}
+
+func (x *AnnotatedMessagePart) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *AnnotatedMessagePart) GetEntityType() string {
+ if x != nil {
+ return x.EntityType
+ }
+ return ""
+}
+
+func (x *AnnotatedMessagePart) GetFormattedValue() *structpb.Value {
+ if x != nil {
+ return x.FormattedValue
+ }
+ return nil
+}
+
+// Represents the result of annotation for the message.
+type MessageAnnotation struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The collection of annotated message parts ordered by their
+ // position in the message. You can recover the annotated message by
+ // concatenating [AnnotatedMessagePart.text].
+ Parts []*AnnotatedMessagePart `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"`
+ // Required. Indicates whether the text message contains entities.
+ ContainEntities bool `protobuf:"varint,2,opt,name=contain_entities,json=containEntities,proto3" json:"contain_entities,omitempty"`
+}
+
+func (x *MessageAnnotation) Reset() {
+ *x = MessageAnnotation{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[19]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *MessageAnnotation) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*MessageAnnotation) ProtoMessage() {}
+
+func (x *MessageAnnotation) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[19]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use MessageAnnotation.ProtoReflect.Descriptor instead.
+func (*MessageAnnotation) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{19}
+}
+
+func (x *MessageAnnotation) GetParts() []*AnnotatedMessagePart {
+ if x != nil {
+ return x.Parts
+ }
+ return nil
+}
+
+func (x *MessageAnnotation) GetContainEntities() bool {
+ if x != nil {
+ return x.ContainEntities
+ }
+ return false
+}
+
+// Represents article answer.
+type ArticleAnswer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The article title.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // The article URI.
+ Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
+ // Output only. Article snippets.
+ Snippets []string `protobuf:"bytes,3,rep,name=snippets,proto3" json:"snippets,omitempty"`
+ // A map that contains metadata about the answer and the
+ // document from which it originates.
+ Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // The name of answer record, in the format of
+ // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
+ // ID>"
+ AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *ArticleAnswer) Reset() {
+ *x = ArticleAnswer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[20]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ArticleAnswer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ArticleAnswer) ProtoMessage() {}
+
+func (x *ArticleAnswer) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[20]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ArticleAnswer.ProtoReflect.Descriptor instead.
+func (*ArticleAnswer) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{20}
+}
+
+func (x *ArticleAnswer) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *ArticleAnswer) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+func (x *ArticleAnswer) GetSnippets() []string {
+ if x != nil {
+ return x.Snippets
+ }
+ return nil
+}
+
+func (x *ArticleAnswer) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *ArticleAnswer) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+// Represents answer from "frequently asked questions".
+type FaqAnswer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The piece of text from the `source` knowledge base document.
+ Answer string `protobuf:"bytes,1,opt,name=answer,proto3" json:"answer,omitempty"`
+ // The system's confidence score that this Knowledge answer is a good match
+ // for this conversational query, range from 0.0 (completely uncertain)
+ // to 1.0 (completely certain).
+ Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
+ // The corresponding FAQ question.
+ Question string `protobuf:"bytes,3,opt,name=question,proto3" json:"question,omitempty"`
+ // Indicates which Knowledge Document this answer was extracted
+ // from.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/agent/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
+ Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"`
+ // A map that contains metadata about the answer and the
+ // document from which it originates.
+ Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // The name of answer record, in the format of
+ // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
+ // ID>"
+ AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *FaqAnswer) Reset() {
+ *x = FaqAnswer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[21]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *FaqAnswer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*FaqAnswer) ProtoMessage() {}
+
+func (x *FaqAnswer) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[21]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use FaqAnswer.ProtoReflect.Descriptor instead.
+func (*FaqAnswer) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{21}
+}
+
+func (x *FaqAnswer) GetAnswer() string {
+ if x != nil {
+ return x.Answer
+ }
+ return ""
+}
+
+func (x *FaqAnswer) GetConfidence() float32 {
+ if x != nil {
+ return x.Confidence
+ }
+ return 0
+}
+
+func (x *FaqAnswer) GetQuestion() string {
+ if x != nil {
+ return x.Question
+ }
+ return ""
+}
+
+func (x *FaqAnswer) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *FaqAnswer) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *FaqAnswer) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+// Represents a smart reply answer.
+type SmartReplyAnswer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The content of the reply.
+ Reply string `protobuf:"bytes,1,opt,name=reply,proto3" json:"reply,omitempty"`
+ // Smart reply confidence.
+ // The system's confidence score that this reply is a good match for
+ // this conversation, as a value from 0.0 (completely uncertain) to 1.0
+ // (completely certain).
+ Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
+ // The name of answer record, in the format of
+ // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
+ // ID>"
+ AnswerRecord string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *SmartReplyAnswer) Reset() {
+ *x = SmartReplyAnswer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[22]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SmartReplyAnswer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SmartReplyAnswer) ProtoMessage() {}
+
+func (x *SmartReplyAnswer) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[22]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SmartReplyAnswer.ProtoReflect.Descriptor instead.
+func (*SmartReplyAnswer) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{22}
+}
+
+func (x *SmartReplyAnswer) GetReply() string {
+ if x != nil {
+ return x.Reply
+ }
+ return ""
+}
+
+func (x *SmartReplyAnswer) GetConfidence() float32 {
+ if x != nil {
+ return x.Confidence
+ }
+ return 0
+}
+
+func (x *SmartReplyAnswer) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+// One response of different type of suggestion response which is used in
+// the response of
+// [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+// and
+// [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent],
+// as well as
+// [HumanAgentAssistantEvent][google.cloud.dialogflow.v2beta1.HumanAgentAssistantEvent].
+type SuggestionResult struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Different type of suggestion response.
+ //
+ // Types that are assignable to SuggestionResponse:
+ //
+ // *SuggestionResult_Error
+ // *SuggestionResult_SuggestArticlesResponse
+ // *SuggestionResult_SuggestFaqAnswersResponse
+ // *SuggestionResult_SuggestSmartRepliesResponse
+ SuggestionResponse isSuggestionResult_SuggestionResponse `protobuf_oneof:"suggestion_response"`
+}
+
+func (x *SuggestionResult) Reset() {
+ *x = SuggestionResult{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[23]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestionResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestionResult) ProtoMessage() {}
+
+func (x *SuggestionResult) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[23]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestionResult.ProtoReflect.Descriptor instead.
+func (*SuggestionResult) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{23}
+}
+
+func (m *SuggestionResult) GetSuggestionResponse() isSuggestionResult_SuggestionResponse {
+ if m != nil {
+ return m.SuggestionResponse
+ }
+ return nil
+}
+
+func (x *SuggestionResult) GetError() *status.Status {
+ if x, ok := x.GetSuggestionResponse().(*SuggestionResult_Error); ok {
+ return x.Error
+ }
+ return nil
+}
+
+func (x *SuggestionResult) GetSuggestArticlesResponse() *SuggestArticlesResponse {
+ if x, ok := x.GetSuggestionResponse().(*SuggestionResult_SuggestArticlesResponse); ok {
+ return x.SuggestArticlesResponse
+ }
+ return nil
+}
+
+func (x *SuggestionResult) GetSuggestFaqAnswersResponse() *SuggestFaqAnswersResponse {
+ if x, ok := x.GetSuggestionResponse().(*SuggestionResult_SuggestFaqAnswersResponse); ok {
+ return x.SuggestFaqAnswersResponse
+ }
+ return nil
+}
+
+func (x *SuggestionResult) GetSuggestSmartRepliesResponse() *SuggestSmartRepliesResponse {
+ if x, ok := x.GetSuggestionResponse().(*SuggestionResult_SuggestSmartRepliesResponse); ok {
+ return x.SuggestSmartRepliesResponse
+ }
+ return nil
+}
+
+type isSuggestionResult_SuggestionResponse interface {
+ isSuggestionResult_SuggestionResponse()
+}
+
+type SuggestionResult_Error struct {
+ // Error status if the request failed.
+ Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
+}
+
+type SuggestionResult_SuggestArticlesResponse struct {
+ // SuggestArticlesResponse if request is for ARTICLE_SUGGESTION.
+ SuggestArticlesResponse *SuggestArticlesResponse `protobuf:"bytes,2,opt,name=suggest_articles_response,json=suggestArticlesResponse,proto3,oneof"`
+}
+
+type SuggestionResult_SuggestFaqAnswersResponse struct {
+ // SuggestFaqAnswersResponse if request is for FAQ_ANSWER.
+ SuggestFaqAnswersResponse *SuggestFaqAnswersResponse `protobuf:"bytes,3,opt,name=suggest_faq_answers_response,json=suggestFaqAnswersResponse,proto3,oneof"`
+}
+
+type SuggestionResult_SuggestSmartRepliesResponse struct {
+ // SuggestSmartRepliesResponse if request is for SMART_REPLY.
+ SuggestSmartRepliesResponse *SuggestSmartRepliesResponse `protobuf:"bytes,4,opt,name=suggest_smart_replies_response,json=suggestSmartRepliesResponse,proto3,oneof"`
+}
+
+func (*SuggestionResult_Error) isSuggestionResult_SuggestionResponse() {}
+
+func (*SuggestionResult_SuggestArticlesResponse) isSuggestionResult_SuggestionResponse() {}
+
+func (*SuggestionResult_SuggestFaqAnswersResponse) isSuggestionResult_SuggestionResponse() {}
+
+func (*SuggestionResult_SuggestSmartRepliesResponse) isSuggestionResult_SuggestionResponse() {}
+
+// The request message for
+// [Participants.SuggestArticles][google.cloud.dialogflow.v2beta1.Participants.SuggestArticles].
+type SuggestArticlesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant to fetch suggestion for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The name of the latest conversation message to compile suggestion
+ // for. If empty, it will be the latest message of the conversation.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Optional. Max number of messages prior to and including
+ // [latest_message][google.cloud.dialogflow.v2beta1.SuggestArticlesRequest.latest_message]
+ // to use as context when compiling the suggestion. By default 20 and at
+ // most 50.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+ // Optional. Parameters for a human assist query.
+ AssistQueryParams *AssistQueryParameters `protobuf:"bytes,4,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
+}
+
+func (x *SuggestArticlesRequest) Reset() {
+ *x = SuggestArticlesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[24]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestArticlesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestArticlesRequest) ProtoMessage() {}
+
+func (x *SuggestArticlesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[24]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestArticlesRequest.ProtoReflect.Descriptor instead.
+func (*SuggestArticlesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{24}
+}
+
+func (x *SuggestArticlesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *SuggestArticlesRequest) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestArticlesRequest) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+func (x *SuggestArticlesRequest) GetAssistQueryParams() *AssistQueryParameters {
+ if x != nil {
+ return x.AssistQueryParams
+ }
+ return nil
+}
+
+// The response message for
+// [Participants.SuggestArticles][google.cloud.dialogflow.v2beta1.Participants.SuggestArticles].
+type SuggestArticlesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. Articles ordered by score in descending order.
+ ArticleAnswers []*ArticleAnswer `protobuf:"bytes,1,rep,name=article_answers,json=articleAnswers,proto3" json:"article_answers,omitempty"`
+ // The name of the latest conversation message used to compile
+ // suggestion for.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Number of messages prior to and including
+ // [latest_message][google.cloud.dialogflow.v2beta1.SuggestArticlesResponse.latest_message]
+ // to compile the suggestion. It may be smaller than the
+ // [SuggestArticlesResponse.context_size][google.cloud.dialogflow.v2beta1.SuggestArticlesResponse.context_size]
+ // field in the request if there aren't that many messages in the
+ // conversation.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestArticlesResponse) Reset() {
+ *x = SuggestArticlesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[25]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestArticlesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestArticlesResponse) ProtoMessage() {}
+
+func (x *SuggestArticlesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[25]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestArticlesResponse.ProtoReflect.Descriptor instead.
+func (*SuggestArticlesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{25}
+}
+
+func (x *SuggestArticlesResponse) GetArticleAnswers() []*ArticleAnswer {
+ if x != nil {
+ return x.ArticleAnswers
+ }
+ return nil
+}
+
+func (x *SuggestArticlesResponse) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestArticlesResponse) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// The request message for
+// [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers].
+type SuggestFaqAnswersRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant to fetch suggestion for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The name of the latest conversation message to compile suggestion
+ // for. If empty, it will be the latest message of the conversation.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Optional. Max number of messages prior to and including
+ // [latest_message] to use as context when compiling the
+ // suggestion. By default 20 and at most 50.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+ // Optional. Parameters for a human assist query.
+ AssistQueryParams *AssistQueryParameters `protobuf:"bytes,4,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
+}
+
+func (x *SuggestFaqAnswersRequest) Reset() {
+ *x = SuggestFaqAnswersRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[26]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestFaqAnswersRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestFaqAnswersRequest) ProtoMessage() {}
+
+func (x *SuggestFaqAnswersRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[26]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestFaqAnswersRequest.ProtoReflect.Descriptor instead.
+func (*SuggestFaqAnswersRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{26}
+}
+
+func (x *SuggestFaqAnswersRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *SuggestFaqAnswersRequest) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestFaqAnswersRequest) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+func (x *SuggestFaqAnswersRequest) GetAssistQueryParams() *AssistQueryParameters {
+ if x != nil {
+ return x.AssistQueryParams
+ }
+ return nil
+}
+
+// The request message for
+// [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers].
+type SuggestFaqAnswersResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. Answers extracted from FAQ documents.
+ FaqAnswers []*FaqAnswer `protobuf:"bytes,1,rep,name=faq_answers,json=faqAnswers,proto3" json:"faq_answers,omitempty"`
+ // The name of the latest conversation message used to compile
+ // suggestion for.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Number of messages prior to and including
+ // [latest_message][google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse.latest_message]
+ // to compile the suggestion. It may be smaller than the
+ // [SuggestFaqAnswersRequest.context_size][google.cloud.dialogflow.v2beta1.SuggestFaqAnswersRequest.context_size]
+ // field in the request if there aren't that many messages in the
+ // conversation.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestFaqAnswersResponse) Reset() {
+ *x = SuggestFaqAnswersResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[27]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestFaqAnswersResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestFaqAnswersResponse) ProtoMessage() {}
+
+func (x *SuggestFaqAnswersResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[27]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestFaqAnswersResponse.ProtoReflect.Descriptor instead.
+func (*SuggestFaqAnswersResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{27}
+}
+
+func (x *SuggestFaqAnswersResponse) GetFaqAnswers() []*FaqAnswer {
+ if x != nil {
+ return x.FaqAnswers
+ }
+ return nil
+}
+
+func (x *SuggestFaqAnswersResponse) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestFaqAnswersResponse) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// The request message for
+// [Participants.SuggestSmartReplies][google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies].
+type SuggestSmartRepliesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant to fetch suggestion for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The current natural language text segment to compile suggestion
+ // for. This provides a way for user to get follow up smart reply suggestion
+ // after a smart reply selection, without sending a text message.
+ CurrentTextInput *TextInput `protobuf:"bytes,4,opt,name=current_text_input,json=currentTextInput,proto3" json:"current_text_input,omitempty"`
+ // The name of the latest conversation message to compile suggestion
+ // for. If empty, it will be the latest message of the conversation.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Optional. Max number of messages prior to and including
+ // [latest_message] to use as context when compiling the
+ // suggestion. By default 20 and at most 50.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestSmartRepliesRequest) Reset() {
+ *x = SuggestSmartRepliesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[28]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestSmartRepliesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestSmartRepliesRequest) ProtoMessage() {}
+
+func (x *SuggestSmartRepliesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[28]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestSmartRepliesRequest.ProtoReflect.Descriptor instead.
+func (*SuggestSmartRepliesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{28}
+}
+
+func (x *SuggestSmartRepliesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *SuggestSmartRepliesRequest) GetCurrentTextInput() *TextInput {
+ if x != nil {
+ return x.CurrentTextInput
+ }
+ return nil
+}
+
+func (x *SuggestSmartRepliesRequest) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestSmartRepliesRequest) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// The response message for
+// [Participants.SuggestSmartReplies][google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies].
+type SuggestSmartRepliesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. Multiple reply options provided by smart reply service. The
+ // order is based on the rank of the model prediction.
+ // The maximum number of the returned replies is set in SmartReplyConfig.
+ SmartReplyAnswers []*SmartReplyAnswer `protobuf:"bytes,1,rep,name=smart_reply_answers,json=smartReplyAnswers,proto3" json:"smart_reply_answers,omitempty"`
+ // The name of the latest conversation message used to compile
+ // suggestion for.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Number of messages prior to and including
+ // [latest_message][google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse.latest_message]
+ // to compile the suggestion. It may be smaller than the
+ // [SuggestSmartRepliesRequest.context_size][google.cloud.dialogflow.v2beta1.SuggestSmartRepliesRequest.context_size]
+ // field in the request if there aren't that many messages in the
+ // conversation.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *SuggestSmartRepliesResponse) Reset() {
+ *x = SuggestSmartRepliesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[29]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SuggestSmartRepliesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SuggestSmartRepliesResponse) ProtoMessage() {}
+
+func (x *SuggestSmartRepliesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[29]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SuggestSmartRepliesResponse.ProtoReflect.Descriptor instead.
+func (*SuggestSmartRepliesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{29}
+}
+
+func (x *SuggestSmartRepliesResponse) GetSmartReplyAnswers() []*SmartReplyAnswer {
+ if x != nil {
+ return x.SmartReplyAnswers
+ }
+ return nil
+}
+
+func (x *SuggestSmartRepliesResponse) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *SuggestSmartRepliesResponse) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// Represents a suggestion for a human agent.
+//
+// Deprecated: Do not use.
+type Suggestion struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The name of this suggestion.
+ // Format:
+ // `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
+ // ID>/participants/*/suggestions/<Suggestion ID>`.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Output only. Articles ordered by score in descending order.
+ Articles []*Suggestion_Article `protobuf:"bytes,2,rep,name=articles,proto3" json:"articles,omitempty"`
+ // Output only. Answers extracted from FAQ documents.
+ FaqAnswers []*Suggestion_FaqAnswer `protobuf:"bytes,4,rep,name=faq_answers,json=faqAnswers,proto3" json:"faq_answers,omitempty"`
+ // Output only. The time the suggestion was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. Latest message used as context to compile this suggestion.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,7,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+}
+
+func (x *Suggestion) Reset() {
+ *x = Suggestion{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[30]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Suggestion) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Suggestion) ProtoMessage() {}
+
+func (x *Suggestion) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[30]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Suggestion.ProtoReflect.Descriptor instead.
+func (*Suggestion) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{30}
+}
+
+func (x *Suggestion) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Suggestion) GetArticles() []*Suggestion_Article {
+ if x != nil {
+ return x.Articles
+ }
+ return nil
+}
+
+func (x *Suggestion) GetFaqAnswers() []*Suggestion_FaqAnswer {
+ if x != nil {
+ return x.FaqAnswers
+ }
+ return nil
+}
+
+func (x *Suggestion) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Suggestion) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+// The request message for
+// [Participants.ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions].
+//
+// Deprecated: Do not use.
+type ListSuggestionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant to fetch suggestions for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. The
+ // default value is 100; the maximum value is 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+ // Optional. Filter on suggestions fields. Currently predicates on
+ // `create_time` and `create_time_epoch_microseconds` are supported.
+ // `create_time` only support milliseconds accuracy. E.g.,
+ // `create_time_epoch_microseconds > 1551790877964485` or
+ // `create_time > "2017-01-15T01:30:15.01Z"`
+ //
+ // For more information about filtering, see
+ // [API Filtering](https://aip.dev/160).
+ Filter string `protobuf:"bytes,4,opt,name=filter,proto3" json:"filter,omitempty"`
+}
+
+func (x *ListSuggestionsRequest) Reset() {
+ *x = ListSuggestionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[31]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListSuggestionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListSuggestionsRequest) ProtoMessage() {}
+
+func (x *ListSuggestionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[31]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListSuggestionsRequest.ProtoReflect.Descriptor instead.
+func (*ListSuggestionsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{31}
+}
+
+func (x *ListSuggestionsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListSuggestionsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListSuggestionsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+func (x *ListSuggestionsRequest) GetFilter() string {
+ if x != nil {
+ return x.Filter
+ }
+ return ""
+}
+
+// The response message for
+// [Participants.ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions].
+//
+// Deprecated: Do not use.
+type ListSuggestionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The list of suggestions. There will be a maximum number of items
+ // returned based on the page_size field in the request. `suggestions` is
+ // sorted by `create_time` in descending order.
+ Suggestions []*Suggestion `protobuf:"bytes,1,rep,name=suggestions,proto3" json:"suggestions,omitempty"`
+ // Optional. Token to retrieve the next page of results or empty if there are
+ // no more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListSuggestionsResponse) Reset() {
+ *x = ListSuggestionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[32]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListSuggestionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListSuggestionsResponse) ProtoMessage() {}
+
+func (x *ListSuggestionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[32]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListSuggestionsResponse.ProtoReflect.Descriptor instead.
+func (*ListSuggestionsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{32}
+}
+
+func (x *ListSuggestionsResponse) GetSuggestions() []*Suggestion {
+ if x != nil {
+ return x.Suggestions
+ }
+ return nil
+}
+
+func (x *ListSuggestionsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Participants.CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion].
+//
+// Deprecated: Do not use.
+type CompileSuggestionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the participant to fetch suggestion for.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The name of the latest conversation message to compile suggestion
+ // for. If empty, it will be the latest message of the conversation.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Optional. Max number of messages prior to and including
+ // [latest_message] to use as context when compiling the
+ // suggestion. If zero or less than zero, 20 is used.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *CompileSuggestionRequest) Reset() {
+ *x = CompileSuggestionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[33]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CompileSuggestionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CompileSuggestionRequest) ProtoMessage() {}
+
+func (x *CompileSuggestionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[33]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CompileSuggestionRequest.ProtoReflect.Descriptor instead.
+func (*CompileSuggestionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{33}
+}
+
+func (x *CompileSuggestionRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CompileSuggestionRequest) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *CompileSuggestionRequest) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// The response message for
+// [Participants.CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion].
+//
+// Deprecated: Do not use.
+type CompileSuggestionResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The compiled suggestion.
+ Suggestion *Suggestion `protobuf:"bytes,1,opt,name=suggestion,proto3" json:"suggestion,omitempty"`
+ // The name of the latest conversation message used to compile
+ // suggestion for.
+ //
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/conversations/<Conversation ID>/messages/<Message ID>`.
+ LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
+ // Number of messages prior to and including
+ // [latest_message][google.cloud.dialogflow.v2beta1.CompileSuggestionResponse.latest_message]
+ // to compile the suggestion. It may be smaller than the
+ // [CompileSuggestionRequest.context_size][google.cloud.dialogflow.v2beta1.CompileSuggestionRequest.context_size]
+ // field in the request if there aren't that many messages in the
+ // conversation.
+ ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
+}
+
+func (x *CompileSuggestionResponse) Reset() {
+ *x = CompileSuggestionResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[34]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CompileSuggestionResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CompileSuggestionResponse) ProtoMessage() {}
+
+func (x *CompileSuggestionResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[34]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CompileSuggestionResponse.ProtoReflect.Descriptor instead.
+func (*CompileSuggestionResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{34}
+}
+
+func (x *CompileSuggestionResponse) GetSuggestion() *Suggestion {
+ if x != nil {
+ return x.Suggestion
+ }
+ return nil
+}
+
+func (x *CompileSuggestionResponse) GetLatestMessage() string {
+ if x != nil {
+ return x.LatestMessage
+ }
+ return ""
+}
+
+func (x *CompileSuggestionResponse) GetContextSize() int32 {
+ if x != nil {
+ return x.ContextSize
+ }
+ return 0
+}
+
+// Response messages from an automated agent.
+type ResponseMessage struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The rich response message.
+ //
+ // Types that are assignable to Message:
+ //
+ // *ResponseMessage_Text_
+ // *ResponseMessage_Payload
+ // *ResponseMessage_LiveAgentHandoff_
+ // *ResponseMessage_EndInteraction_
+ // *ResponseMessage_MixedAudio_
+ // *ResponseMessage_TelephonyTransferCall_
+ Message isResponseMessage_Message `protobuf_oneof:"message"`
+}
+
+func (x *ResponseMessage) Reset() {
+ *x = ResponseMessage{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[35]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage) ProtoMessage() {}
+
+func (x *ResponseMessage) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[35]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage.ProtoReflect.Descriptor instead.
+func (*ResponseMessage) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35}
+}
+
+func (m *ResponseMessage) GetMessage() isResponseMessage_Message {
+ if m != nil {
+ return m.Message
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetText() *ResponseMessage_Text {
+ if x, ok := x.GetMessage().(*ResponseMessage_Text_); ok {
+ return x.Text
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetPayload() *structpb.Struct {
+ if x, ok := x.GetMessage().(*ResponseMessage_Payload); ok {
+ return x.Payload
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetLiveAgentHandoff() *ResponseMessage_LiveAgentHandoff {
+ if x, ok := x.GetMessage().(*ResponseMessage_LiveAgentHandoff_); ok {
+ return x.LiveAgentHandoff
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetEndInteraction() *ResponseMessage_EndInteraction {
+ if x, ok := x.GetMessage().(*ResponseMessage_EndInteraction_); ok {
+ return x.EndInteraction
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetMixedAudio() *ResponseMessage_MixedAudio {
+ if x, ok := x.GetMessage().(*ResponseMessage_MixedAudio_); ok {
+ return x.MixedAudio
+ }
+ return nil
+}
+
+func (x *ResponseMessage) GetTelephonyTransferCall() *ResponseMessage_TelephonyTransferCall {
+ if x, ok := x.GetMessage().(*ResponseMessage_TelephonyTransferCall_); ok {
+ return x.TelephonyTransferCall
+ }
+ return nil
+}
+
+type isResponseMessage_Message interface {
+ isResponseMessage_Message()
+}
+
+type ResponseMessage_Text_ struct {
+ // Returns a text response.
+ Text *ResponseMessage_Text `protobuf:"bytes,1,opt,name=text,proto3,oneof"`
+}
+
+type ResponseMessage_Payload struct {
+ // Returns a response containing a custom, platform-specific payload.
+ Payload *structpb.Struct `protobuf:"bytes,2,opt,name=payload,proto3,oneof"`
+}
+
+type ResponseMessage_LiveAgentHandoff_ struct {
+ // Hands off conversation to a live agent.
+ LiveAgentHandoff *ResponseMessage_LiveAgentHandoff `protobuf:"bytes,3,opt,name=live_agent_handoff,json=liveAgentHandoff,proto3,oneof"`
+}
+
+type ResponseMessage_EndInteraction_ struct {
+ // A signal that indicates the interaction with the Dialogflow agent has
+ // ended.
+ EndInteraction *ResponseMessage_EndInteraction `protobuf:"bytes,4,opt,name=end_interaction,json=endInteraction,proto3,oneof"`
+}
+
+type ResponseMessage_MixedAudio_ struct {
+ // An audio response message composed of both the synthesized Dialogflow
+ // agent responses and the audios hosted in places known to the client.
+ MixedAudio *ResponseMessage_MixedAudio `protobuf:"bytes,5,opt,name=mixed_audio,json=mixedAudio,proto3,oneof"`
+}
+
+type ResponseMessage_TelephonyTransferCall_ struct {
+ // A signal that the client should transfer the phone call connected to
+ // this agent to a third-party endpoint.
+ TelephonyTransferCall *ResponseMessage_TelephonyTransferCall `protobuf:"bytes,6,opt,name=telephony_transfer_call,json=telephonyTransferCall,proto3,oneof"`
+}
+
+func (*ResponseMessage_Text_) isResponseMessage_Message() {}
+
+func (*ResponseMessage_Payload) isResponseMessage_Message() {}
+
+func (*ResponseMessage_LiveAgentHandoff_) isResponseMessage_Message() {}
+
+func (*ResponseMessage_EndInteraction_) isResponseMessage_Message() {}
+
+func (*ResponseMessage_MixedAudio_) isResponseMessage_Message() {}
+
+func (*ResponseMessage_TelephonyTransferCall_) isResponseMessage_Message() {}
+
+// Represents suggested article.
+type Suggestion_Article struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The article title.
+ Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
+ // Output only. The article URI.
+ Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
+ // Output only. Article snippets.
+ Snippets []string `protobuf:"bytes,3,rep,name=snippets,proto3" json:"snippets,omitempty"`
+ // Output only. A map that contains metadata about the answer and the
+ // document from which it originates.
+ Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Output only. The name of answer record, in the format of
+ // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer
+ // Record ID>"
+ AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *Suggestion_Article) Reset() {
+ *x = Suggestion_Article{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[40]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Suggestion_Article) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Suggestion_Article) ProtoMessage() {}
+
+func (x *Suggestion_Article) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[40]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Suggestion_Article.ProtoReflect.Descriptor instead.
+func (*Suggestion_Article) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{30, 0}
+}
+
+func (x *Suggestion_Article) GetTitle() string {
+ if x != nil {
+ return x.Title
+ }
+ return ""
+}
+
+func (x *Suggestion_Article) GetUri() string {
+ if x != nil {
+ return x.Uri
+ }
+ return ""
+}
+
+func (x *Suggestion_Article) GetSnippets() []string {
+ if x != nil {
+ return x.Snippets
+ }
+ return nil
+}
+
+func (x *Suggestion_Article) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *Suggestion_Article) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+// Represents suggested answer from "frequently asked questions".
+type Suggestion_FaqAnswer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The piece of text from the `source` knowledge base document.
+ Answer string `protobuf:"bytes,1,opt,name=answer,proto3" json:"answer,omitempty"`
+ // The system's confidence score that this Knowledge answer is a good match
+ // for this conversational query, range from 0.0 (completely uncertain)
+ // to 1.0 (completely certain).
+ Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
+ // Output only. The corresponding FAQ question.
+ Question string `protobuf:"bytes,3,opt,name=question,proto3" json:"question,omitempty"`
+ // Output only. Indicates which Knowledge Document this answer was extracted
+ // from.
+ // Format: `projects/<Project ID>/locations/<Location
+ // ID>/agent/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
+ Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"`
+ // Output only. A map that contains metadata about the answer and the
+ // document from which it originates.
+ Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // Output only. The name of answer record, in the format of
+ // "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer
+ // Record ID>"
+ AnswerRecord string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
+}
+
+func (x *Suggestion_FaqAnswer) Reset() {
+ *x = Suggestion_FaqAnswer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[41]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Suggestion_FaqAnswer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Suggestion_FaqAnswer) ProtoMessage() {}
+
+func (x *Suggestion_FaqAnswer) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[41]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Suggestion_FaqAnswer.ProtoReflect.Descriptor instead.
+func (*Suggestion_FaqAnswer) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{30, 1}
+}
+
+func (x *Suggestion_FaqAnswer) GetAnswer() string {
+ if x != nil {
+ return x.Answer
+ }
+ return ""
+}
+
+func (x *Suggestion_FaqAnswer) GetConfidence() float32 {
+ if x != nil {
+ return x.Confidence
+ }
+ return 0
+}
+
+func (x *Suggestion_FaqAnswer) GetQuestion() string {
+ if x != nil {
+ return x.Question
+ }
+ return ""
+}
+
+func (x *Suggestion_FaqAnswer) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *Suggestion_FaqAnswer) GetMetadata() map[string]string {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+func (x *Suggestion_FaqAnswer) GetAnswerRecord() string {
+ if x != nil {
+ return x.AnswerRecord
+ }
+ return ""
+}
+
+// The text response message.
+type ResponseMessage_Text struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A collection of text responses.
+ Text []string `protobuf:"bytes,1,rep,name=text,proto3" json:"text,omitempty"`
+}
+
+func (x *ResponseMessage_Text) Reset() {
+ *x = ResponseMessage_Text{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[44]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_Text) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_Text) ProtoMessage() {}
+
+func (x *ResponseMessage_Text) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[44]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_Text.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_Text) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 0}
+}
+
+func (x *ResponseMessage_Text) GetText() []string {
+ if x != nil {
+ return x.Text
+ }
+ return nil
+}
+
+// Indicates that the conversation should be handed off to a human agent.
+//
+// Dialogflow only uses this to determine which conversations were handed off
+// to a human agent for measurement purposes. What else to do with this signal
+// is up to you and your handoff procedures.
+//
+// You may set this, for example:
+// - In the entry fulfillment of a CX Page if entering the page indicates
+// something went extremely wrong in the conversation.
+// - In a webhook response when you determine that the customer issue can only
+// be handled by a human.
+type ResponseMessage_LiveAgentHandoff struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Custom metadata for your handoff procedure. Dialogflow doesn't impose
+ // any structure on this.
+ Metadata *structpb.Struct `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"`
+}
+
+func (x *ResponseMessage_LiveAgentHandoff) Reset() {
+ *x = ResponseMessage_LiveAgentHandoff{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[45]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_LiveAgentHandoff) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_LiveAgentHandoff) ProtoMessage() {}
+
+func (x *ResponseMessage_LiveAgentHandoff) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[45]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_LiveAgentHandoff.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_LiveAgentHandoff) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 1}
+}
+
+func (x *ResponseMessage_LiveAgentHandoff) GetMetadata() *structpb.Struct {
+ if x != nil {
+ return x.Metadata
+ }
+ return nil
+}
+
+// Indicates that interaction with the Dialogflow agent has ended.
+type ResponseMessage_EndInteraction struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+}
+
+func (x *ResponseMessage_EndInteraction) Reset() {
+ *x = ResponseMessage_EndInteraction{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[46]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_EndInteraction) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_EndInteraction) ProtoMessage() {}
+
+func (x *ResponseMessage_EndInteraction) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[46]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_EndInteraction.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_EndInteraction) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 2}
+}
+
+// Represents an audio message that is composed of both segments
+// synthesized from the Dialogflow agent prompts and ones hosted externally
+// at the specified URIs.
+type ResponseMessage_MixedAudio struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Segments this audio response is composed of.
+ Segments []*ResponseMessage_MixedAudio_Segment `protobuf:"bytes,1,rep,name=segments,proto3" json:"segments,omitempty"`
+}
+
+func (x *ResponseMessage_MixedAudio) Reset() {
+ *x = ResponseMessage_MixedAudio{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[47]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_MixedAudio) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_MixedAudio) ProtoMessage() {}
+
+func (x *ResponseMessage_MixedAudio) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[47]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_MixedAudio.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_MixedAudio) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 3}
+}
+
+func (x *ResponseMessage_MixedAudio) GetSegments() []*ResponseMessage_MixedAudio_Segment {
+ if x != nil {
+ return x.Segments
+ }
+ return nil
+}
+
+// Represents the signal that telles the client to transfer the phone call
+// connected to the agent to a third-party endpoint.
+type ResponseMessage_TelephonyTransferCall struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Endpoint to transfer the call to.
+ //
+ // Types that are assignable to Endpoint:
+ //
+ // *ResponseMessage_TelephonyTransferCall_PhoneNumber
+ // *ResponseMessage_TelephonyTransferCall_SipUri
+ Endpoint isResponseMessage_TelephonyTransferCall_Endpoint `protobuf_oneof:"endpoint"`
+}
+
+func (x *ResponseMessage_TelephonyTransferCall) Reset() {
+ *x = ResponseMessage_TelephonyTransferCall{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[48]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_TelephonyTransferCall) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_TelephonyTransferCall) ProtoMessage() {}
+
+func (x *ResponseMessage_TelephonyTransferCall) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[48]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_TelephonyTransferCall.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_TelephonyTransferCall) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 4}
+}
+
+func (m *ResponseMessage_TelephonyTransferCall) GetEndpoint() isResponseMessage_TelephonyTransferCall_Endpoint {
+ if m != nil {
+ return m.Endpoint
+ }
+ return nil
+}
+
+func (x *ResponseMessage_TelephonyTransferCall) GetPhoneNumber() string {
+ if x, ok := x.GetEndpoint().(*ResponseMessage_TelephonyTransferCall_PhoneNumber); ok {
+ return x.PhoneNumber
+ }
+ return ""
+}
+
+func (x *ResponseMessage_TelephonyTransferCall) GetSipUri() string {
+ if x, ok := x.GetEndpoint().(*ResponseMessage_TelephonyTransferCall_SipUri); ok {
+ return x.SipUri
+ }
+ return ""
+}
+
+type isResponseMessage_TelephonyTransferCall_Endpoint interface {
+ isResponseMessage_TelephonyTransferCall_Endpoint()
+}
+
+type ResponseMessage_TelephonyTransferCall_PhoneNumber struct {
+ // Transfer the call to a phone number
+ // in [E.164 format](https://en.wikipedia.org/wiki/E.164).
+ PhoneNumber string `protobuf:"bytes,1,opt,name=phone_number,json=phoneNumber,proto3,oneof"`
+}
+
+type ResponseMessage_TelephonyTransferCall_SipUri struct {
+ // Transfer the call to a SIP endpoint.
+ SipUri string `protobuf:"bytes,2,opt,name=sip_uri,json=sipUri,proto3,oneof"`
+}
+
+func (*ResponseMessage_TelephonyTransferCall_PhoneNumber) isResponseMessage_TelephonyTransferCall_Endpoint() {
+}
+
+func (*ResponseMessage_TelephonyTransferCall_SipUri) isResponseMessage_TelephonyTransferCall_Endpoint() {
+}
+
+// Represents one segment of audio.
+type ResponseMessage_MixedAudio_Segment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Content of the segment.
+ //
+ // Types that are assignable to Content:
+ //
+ // *ResponseMessage_MixedAudio_Segment_Audio
+ // *ResponseMessage_MixedAudio_Segment_Uri
+ Content isResponseMessage_MixedAudio_Segment_Content `protobuf_oneof:"content"`
+ // Whether the playback of this segment can be interrupted by the end
+ // user's speech and the client should then start the next Dialogflow
+ // request.
+ AllowPlaybackInterruption bool `protobuf:"varint,3,opt,name=allow_playback_interruption,json=allowPlaybackInterruption,proto3" json:"allow_playback_interruption,omitempty"`
+}
+
+func (x *ResponseMessage_MixedAudio_Segment) Reset() {
+ *x = ResponseMessage_MixedAudio_Segment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[49]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ResponseMessage_MixedAudio_Segment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ResponseMessage_MixedAudio_Segment) ProtoMessage() {}
+
+func (x *ResponseMessage_MixedAudio_Segment) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[49]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ResponseMessage_MixedAudio_Segment.ProtoReflect.Descriptor instead.
+func (*ResponseMessage_MixedAudio_Segment) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP(), []int{35, 3, 0}
+}
+
+func (m *ResponseMessage_MixedAudio_Segment) GetContent() isResponseMessage_MixedAudio_Segment_Content {
+ if m != nil {
+ return m.Content
+ }
+ return nil
+}
+
+func (x *ResponseMessage_MixedAudio_Segment) GetAudio() []byte {
+ if x, ok := x.GetContent().(*ResponseMessage_MixedAudio_Segment_Audio); ok {
+ return x.Audio
+ }
+ return nil
+}
+
+func (x *ResponseMessage_MixedAudio_Segment) GetUri() string {
+ if x, ok := x.GetContent().(*ResponseMessage_MixedAudio_Segment_Uri); ok {
+ return x.Uri
+ }
+ return ""
+}
+
+func (x *ResponseMessage_MixedAudio_Segment) GetAllowPlaybackInterruption() bool {
+ if x != nil {
+ return x.AllowPlaybackInterruption
+ }
+ return false
+}
+
+type isResponseMessage_MixedAudio_Segment_Content interface {
+ isResponseMessage_MixedAudio_Segment_Content()
+}
+
+type ResponseMessage_MixedAudio_Segment_Audio struct {
+ // Raw audio synthesized from the Dialogflow agent's response using
+ // the output config specified in the request.
+ Audio []byte `protobuf:"bytes,1,opt,name=audio,proto3,oneof"`
+}
+
+type ResponseMessage_MixedAudio_Segment_Uri struct {
+ // Client-specific URI that points to an audio clip accessible to the
+ // client.
+ Uri string `protobuf:"bytes,2,opt,name=uri,proto3,oneof"`
+}
+
+func (*ResponseMessage_MixedAudio_Segment_Audio) isResponseMessage_MixedAudio_Segment_Content() {}
+
+func (*ResponseMessage_MixedAudio_Segment_Uri) isResponseMessage_MixedAudio_Segment_Content() {}
+
+var File_google_cloud_dialogflow_v2beta1_participant_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_participant_proto_rawDesc = []byte{
+ 0x0a, 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63,
+ 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65,
+ 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c,
+ 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74,
+ 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65,
+ 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x22, 0xc0, 0x05, 0x0a, 0x0b, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+ 0x70, 0x61, 0x6e, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4a, 0x0a,
+ 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03,
+ 0xe0, 0x41, 0x05, 0x52, 0x04, 0x72, 0x6f, 0x6c, 0x65, 0x12, 0x42, 0x0a, 0x1b, 0x6f, 0x62, 0x66,
+ 0x75, 0x73, 0x63, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x65, 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c,
+ 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x69, 0x64, 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x18, 0x6f, 0x62, 0x66, 0x75, 0x73, 0x63, 0x61, 0x74, 0x65, 0x64, 0x45,
+ 0x78, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x55, 0x73, 0x65, 0x72, 0x49, 0x64, 0x12, 0x8d, 0x01,
+ 0x0a, 0x1a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x08, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x4a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x42, 0x03,
+ 0xe0, 0x41, 0x01, 0x52, 0x18, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65,
+ 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x1a, 0x4b, 0x0a,
+ 0x1d, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10,
+ 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79,
+ 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22, 0x50, 0x0a, 0x04, 0x52, 0x6f,
+ 0x6c, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x52, 0x4f, 0x4c, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45,
+ 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x48, 0x55, 0x4d, 0x41,
+ 0x4e, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x01, 0x12, 0x13, 0x0a, 0x0f, 0x41, 0x55, 0x54,
+ 0x4f, 0x4d, 0x41, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x12, 0x0c,
+ 0x0a, 0x08, 0x45, 0x4e, 0x44, 0x5f, 0x55, 0x53, 0x45, 0x52, 0x10, 0x03, 0x3a, 0xd8, 0x01, 0xea,
+ 0x41, 0xd4, 0x01, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x4a, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f,
+ 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
+ 0x69, 0x70, 0x61, 0x6e, 0x74, 0x7d, 0x12, 0x5f, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x7d, 0x22, 0x92, 0x06, 0x0a, 0x07, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x07,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x07, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x28, 0x0a, 0x0d, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67,
+ 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+ 0x70, 0x61, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52,
+ 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x61, 0x0a, 0x10,
+ 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5f, 0x72, 0x6f, 0x6c, 0x65,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+ 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x52, 0x6f, 0x6c, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0f,
+ 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x6f, 0x6c, 0x65, 0x12,
+ 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x06,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d,
+ 0x65, 0x12, 0x3c, 0x0a, 0x09, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x73, 0x65, 0x6e, 0x64, 0x54, 0x69, 0x6d, 0x65, 0x12,
+ 0x66, 0x0a, 0x12, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x61, 0x6e, 0x6e, 0x6f, 0x74,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x42,
+ 0x03, 0xe0, 0x41, 0x03, 0x52, 0x11, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e, 0x6e,
+ 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x6c, 0x0a, 0x12, 0x73, 0x65, 0x6e, 0x74, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41,
+ 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x11, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x3a, 0xc4, 0x01, 0xea, 0x41, 0xc0, 0x01, 0x0a, 0x21, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
+ 0x42, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x7d, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d,
+ 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x2f, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x7d, 0x12, 0x57, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x73, 0x2f, 0x7b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x7d, 0x22, 0xb6, 0x01, 0x0a,
+ 0x18, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x27, 0x12, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x12, 0x53, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63,
+ 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0x5a, 0x0a, 0x15, 0x47, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x04, 0x6e, 0x61, 0x6d,
+ 0x65, 0x22, 0xa6, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63,
+ 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x27, 0x12, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61,
+ 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74,
+ 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x94, 0x01, 0x0a, 0x18, 0x4c,
+ 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x50, 0x0a, 0x0c, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0c, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78,
+ 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x22, 0xb1, 0x01, 0x0a, 0x18, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x53,
+ 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61,
+ 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64,
+ 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x6d, 0x0a, 0x0a, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x49, 0x6e,
+ 0x70, 0x75, 0x74, 0x12, 0x49, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x14,
+ 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05, 0x61,
+ 0x75, 0x64, 0x69, 0x6f, 0x22, 0x6f, 0x0a, 0x0b, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x12, 0x4a, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12,
+ 0x14, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x05,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x22, 0xc8, 0x06, 0x0a, 0x13, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61,
+ 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x6d, 0x0a,
+ 0x16, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x72,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70,
+ 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x14, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x5d, 0x0a, 0x11,
+ 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x10, 0x72, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x3f, 0x0a, 0x06, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x42, 0x25, 0xfa, 0x41, 0x22,
+ 0x0a, 0x20, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x49, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x48, 0x01, 0x52, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x16, 0x0a, 0x05,
+ 0x65, 0x76, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x05, 0x65,
+ 0x76, 0x65, 0x6e, 0x74, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0f,
+ 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12,
+ 0x37, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0a, 0x70, 0x61,
+ 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x4f, 0x0a, 0x15, 0x63, 0x78, 0x5f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
+ 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
+ 0x42, 0x02, 0x18, 0x01, 0x52, 0x13, 0x63, 0x78, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x50,
+ 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x89, 0x01, 0x0a, 0x1a, 0x61, 0x75,
+ 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65,
+ 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x4c,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x70, 0x6c, 0x79, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x17, 0x61, 0x75,
+ 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2d, 0x0a, 0x12, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x63,
+ 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x11, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x43, 0x61, 0x6e, 0x63, 0x65, 0x6c, 0x6c, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x78, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63,
+ 0x78, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x67, 0x65, 0x22, 0x5d, 0x0a, 0x17,
+ 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x70, 0x6c, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x2a, 0x0a, 0x26, 0x41, 0x55, 0x54, 0x4f, 0x4d,
+ 0x41, 0x54, 0x45, 0x44, 0x5f, 0x41, 0x47, 0x45, 0x4e, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c, 0x59,
+ 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x0b, 0x0a, 0x07, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x10, 0x01,
+ 0x12, 0x09, 0x0a, 0x05, 0x46, 0x49, 0x4e, 0x41, 0x4c, 0x10, 0x02, 0x42, 0x0a, 0x0a, 0x08, 0x72,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42, 0x07, 0x0a, 0x05, 0x6d, 0x61, 0x74, 0x63, 0x68,
+ 0x22, 0xd0, 0x01, 0x0a, 0x11, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x46,
+ 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x12, 0x4b, 0x0a, 0x04, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0e, 0x32, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x46, 0x65, 0x61, 0x74, 0x75, 0x72, 0x65, 0x2e, 0x54, 0x79, 0x70, 0x65, 0x52, 0x04, 0x74,
+ 0x79, 0x70, 0x65, 0x22, 0x6e, 0x0a, 0x04, 0x54, 0x79, 0x70, 0x65, 0x12, 0x14, 0x0a, 0x10, 0x54,
+ 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x16, 0x0a, 0x12, 0x41, 0x52, 0x54, 0x49, 0x43, 0x4c, 0x45, 0x5f, 0x53, 0x55, 0x47,
+ 0x47, 0x45, 0x53, 0x54, 0x49, 0x4f, 0x4e, 0x10, 0x01, 0x12, 0x07, 0x0a, 0x03, 0x46, 0x41, 0x51,
+ 0x10, 0x02, 0x12, 0x0f, 0x0a, 0x0b, 0x53, 0x4d, 0x41, 0x52, 0x54, 0x5f, 0x52, 0x45, 0x50, 0x4c,
+ 0x59, 0x10, 0x03, 0x12, 0x1e, 0x0a, 0x1a, 0x43, 0x4f, 0x4e, 0x56, 0x45, 0x52, 0x53, 0x41, 0x54,
+ 0x49, 0x4f, 0x4e, 0x5f, 0x53, 0x55, 0x4d, 0x4d, 0x41, 0x52, 0x49, 0x5a, 0x41, 0x54, 0x49, 0x4f,
+ 0x4e, 0x10, 0x08, 0x22, 0xf9, 0x01, 0x0a, 0x15, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75,
+ 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x92, 0x01,
+ 0x0a, 0x1a, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x5f, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x5f, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x54, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x44, 0x6f, 0x63, 0x75, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74,
+ 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x18, 0x64, 0x6f, 0x63, 0x75, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65,
+ 0x72, 0x73, 0x1a, 0x4b, 0x0a, 0x1d, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x4d,
+ 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x46, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x73, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
+ 0xca, 0x06, 0x0a, 0x15, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d,
+ 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0b, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x4b, 0x0a, 0x0a, 0x74, 0x65,
+ 0x78, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x09, 0x74, 0x65,
+ 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x4e, 0x0a, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f,
+ 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41,
+ 0x75, 0x64, 0x69, 0x6f, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x61, 0x75, 0x64,
+ 0x69, 0x6f, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x4e, 0x0a, 0x0b, 0x65, 0x76, 0x65, 0x6e, 0x74,
+ 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45,
+ 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x0a, 0x65, 0x76, 0x65,
+ 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x60, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79,
+ 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x10, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x0c, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
+ 0x73, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x66,
+ 0x0a, 0x13, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70,
+ 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x0e, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73,
+ 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
+ 0x65, 0x72, 0x73, 0x52, 0x11, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79,
+ 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x3c, 0x0a, 0x0d, 0x63, 0x78, 0x5f, 0x70, 0x61, 0x72,
+ 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0c, 0x63, 0x78, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
+ 0x74, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x78, 0x5f, 0x63, 0x75, 0x72, 0x72, 0x65,
+ 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x18, 0x14, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x63,
+ 0x78, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x67, 0x65, 0x12, 0x46, 0x0a, 0x11,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x65, 0x6e, 0x64, 0x5f, 0x74, 0x69, 0x6d,
+ 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74,
+ 0x61, 0x6d, 0x70, 0x52, 0x0f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x53, 0x65, 0x6e, 0x64,
+ 0x54, 0x69, 0x6d, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f,
+ 0x69, 0x64, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x49, 0x64, 0x42, 0x07, 0x0a, 0x05, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x22, 0x3e, 0x0a, 0x0e,
+ 0x44, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x2c,
+ 0x0a, 0x12, 0x61, 0x63, 0x63, 0x65, 0x70, 0x74, 0x73, 0x5f, 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x69,
+ 0x6e, 0x70, 0x75, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10, 0x61, 0x63, 0x63, 0x65,
+ 0x70, 0x74, 0x73, 0x44, 0x74, 0x6d, 0x66, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x22, 0xf8, 0x04, 0x0a,
+ 0x16, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79,
+ 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x70,
+ 0x6c, 0x79, 0x54, 0x65, 0x78, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75,
+ 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79,
+ 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x68, 0x0a, 0x15, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74,
+ 0x65, 0x64, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64,
+ 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x13, 0x61, 0x75, 0x74, 0x6f,
+ 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12,
+ 0x42, 0x0a, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x12, 0x76, 0x0a, 0x1e, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65,
+ 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x06, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x1b,
+ 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x70, 0x0a, 0x1b, 0x65,
+ 0x6e, 0x64, 0x5f, 0x75, 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x52, 0x18, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x67, 0x67,
+ 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x58, 0x0a,
+ 0x0f, 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
+ 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x0e, 0x64, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x22, 0x36, 0x0a, 0x0f, 0x49, 0x6e, 0x70, 0x75, 0x74,
+ 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61,
+ 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x22,
+ 0xa1, 0x07, 0x0a, 0x1e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x4f, 0x0a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a,
+ 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x12, 0x56, 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70, 0x75,
+ 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0b,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x0b, 0x74,
+ 0x65, 0x78, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x48, 0x00, 0x52, 0x0a, 0x74, 0x65, 0x78, 0x74, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x12, 0x60, 0x0a, 0x12, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f,
+ 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x52, 0x10, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0x21, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69,
+ 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0c, 0x48, 0x01, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74,
+ 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x1f, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x74,
+ 0x65, 0x78, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x70,
+ 0x75, 0x74, 0x54, 0x65, 0x78, 0x74, 0x12, 0x55, 0x0a, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,
+ 0x64, 0x74, 0x6d, 0x66, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6c,
+ 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x44, 0x74, 0x6d, 0x66, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73,
+ 0x48, 0x01, 0x52, 0x09, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x44, 0x74, 0x6d, 0x66, 0x12, 0x53, 0x0a,
+ 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61,
+ 0x6d, 0x73, 0x12, 0x66, 0x0a, 0x13, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x11, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x3c, 0x0a, 0x0d, 0x63, 0x78,
+ 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0d, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0c, 0x63, 0x78, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x63, 0x78, 0x5f, 0x63,
+ 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0d, 0x63, 0x78, 0x43, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x50, 0x61, 0x67, 0x65,
+ 0x12, 0x4e, 0x0a, 0x24, 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x5f, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x61, 0x6c, 0x5f, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x08, 0x52, 0x20,
+ 0x65, 0x6e, 0x61, 0x62, 0x6c, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x61, 0x6c, 0x41, 0x75, 0x74,
+ 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79,
+ 0x42, 0x08, 0x0a, 0x06, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x42, 0x07, 0x0a, 0x05, 0x69, 0x6e,
+ 0x70, 0x75, 0x74, 0x22, 0xed, 0x05, 0x0a, 0x1f, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
+ 0x67, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x6a, 0x0a, 0x12, 0x72, 0x65, 0x63, 0x6f, 0x67,
+ 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x52,
+ 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x52, 0x11, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x74, 0x65, 0x78,
+ 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x54, 0x65,
+ 0x78, 0x74, 0x12, 0x4d, 0x0a, 0x0b, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f, 0x61, 0x75, 0x64, 0x69,
+ 0x6f, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74,
+ 0x41, 0x75, 0x64, 0x69, 0x6f, 0x52, 0x0a, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x12, 0x68, 0x0a, 0x15, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x5f, 0x61,
+ 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x41, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65, 0x64, 0x41, 0x67, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x52, 0x13, 0x61, 0x75, 0x74, 0x6f, 0x6d, 0x61, 0x74, 0x65,
+ 0x64, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x12, 0x42, 0x0a, 0x07, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x07, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12,
+ 0x76, 0x0a, 0x1e, 0x68, 0x75, 0x6d, 0x61, 0x6e, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x73,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x1b, 0x68, 0x75, 0x6d, 0x61,
+ 0x6e, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x70, 0x0a, 0x1b, 0x65, 0x6e, 0x64, 0x5f, 0x75,
+ 0x73, 0x65, 0x72, 0x5f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72,
+ 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x08, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52,
+ 0x18, 0x65, 0x6e, 0x64, 0x55, 0x73, 0x65, 0x72, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x58, 0x0a, 0x0f, 0x64, 0x74, 0x6d,
+ 0x66, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x18, 0x0a, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
+ 0x65, 0x72, 0x73, 0x52, 0x0e, 0x64, 0x74, 0x6d, 0x66, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74,
+ 0x65, 0x72, 0x73, 0x22, 0x8c, 0x01, 0x0a, 0x14, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x65,
+ 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x12, 0x12, 0x0a, 0x04,
+ 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74,
+ 0x12, 0x1f, 0x0a, 0x0b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x12, 0x3f, 0x0a, 0x0f, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x5f, 0x76,
+ 0x61, 0x6c, 0x75, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x16, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x56, 0x61, 0x6c,
+ 0x75, 0x65, 0x52, 0x0e, 0x66, 0x6f, 0x72, 0x6d, 0x61, 0x74, 0x74, 0x65, 0x64, 0x56, 0x61, 0x6c,
+ 0x75, 0x65, 0x22, 0x8b, 0x01, 0x0a, 0x11, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x41, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x4b, 0x0a, 0x05, 0x70, 0x61, 0x72, 0x74,
+ 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61,
+ 0x74, 0x65, 0x64, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x50, 0x61, 0x72, 0x74, 0x52, 0x05,
+ 0x70, 0x61, 0x72, 0x74, 0x73, 0x12, 0x29, 0x0a, 0x10, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e,
+ 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x08, 0x52,
+ 0x0f, 0x63, 0x6f, 0x6e, 0x74, 0x61, 0x69, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73,
+ 0x22, 0x8f, 0x02, 0x0a, 0x0d, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e,
+ 0x69, 0x70, 0x70, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e,
+ 0x69, 0x70, 0x70, 0x65, 0x74, 0x73, 0x12, 0x58, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63,
+ 0x6c, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72,
+ 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52,
+ 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75,
+ 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02,
+ 0x38, 0x01, 0x22, 0xaf, 0x02, 0x0a, 0x09, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66,
+ 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x54, 0x0a, 0x08,
+ 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63,
+ 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65,
+ 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64,
+ 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61,
+ 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65,
+ 0x3a, 0x02, 0x38, 0x01, 0x22, 0x9a, 0x01, 0x0a, 0x10, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52, 0x65,
+ 0x70, 0x6c, 0x79, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x14, 0x0a, 0x05, 0x72, 0x65, 0x70,
+ 0x6c, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x12,
+ 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20,
+ 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12,
+ 0x50, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x72, 0x64,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2b, 0xfa, 0x41, 0x28, 0x0a, 0x26, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63,
+ 0x6f, 0x72, 0x64, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72,
+ 0x64, 0x22, 0xd2, 0x03, 0x0a, 0x10, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x2a, 0x0a, 0x05, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72,
+ 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x48, 0x00, 0x52, 0x05, 0x65, 0x72, 0x72,
+ 0x6f, 0x72, 0x12, 0x76, 0x0a, 0x19, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41,
+ 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48,
+ 0x00, 0x52, 0x17, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c,
+ 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x7d, 0x0a, 0x1c, 0x73, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x66, 0x61, 0x71, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x48, 0x00, 0x52, 0x19,
+ 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x83, 0x01, 0x0a, 0x1e, 0x73, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x5f, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c,
+ 0x69, 0x65, 0x73, 0x5f, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x18, 0x04, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72,
+ 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x48, 0x00, 0x52, 0x1b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74,
+ 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x42,
+ 0x15, 0x0a, 0x13, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc6, 0x02, 0x0a, 0x16, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65,
+ 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09,
+ 0x42, 0x29, 0xe0, 0x41, 0x01, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74,
+ 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05,
+ 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69,
+ 0x7a, 0x65, 0x12, 0x6b, 0x0a, 0x13, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x71, 0x75, 0x65,
+ 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x61, 0x73,
+ 0x73, 0x69, 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22,
+ 0xbc, 0x01, 0x0a, 0x17, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63,
+ 0x6c, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x57, 0x0a, 0x0f, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x01,
+ 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x52, 0x0e, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61,
+ 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xc8,
+ 0x02, 0x0a, 0x18, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0, 0x41, 0x02,
+ 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x50,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0x50, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x01, 0xfa,
+ 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x12, 0x26, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f,
+ 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52,
+ 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x6b, 0x0a, 0x13,
+ 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72,
+ 0x61, 0x6d, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x73, 0x73, 0x69,
+ 0x73, 0x74, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72,
+ 0x73, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x11, 0x61, 0x73, 0x73, 0x69, 0x73, 0x74, 0x51, 0x75,
+ 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x22, 0xb2, 0x01, 0x0a, 0x19, 0x53, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0b, 0x66, 0x61, 0x71, 0x5f, 0x61,
+ 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x46,
+ 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x0a, 0x66, 0x61, 0x71, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61,
+ 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xaf,
+ 0x02, 0x0a, 0x1a, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52,
+ 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x45, 0x0a,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x2d, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x27, 0x0a, 0x25, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0x58, 0x0a, 0x12, 0x63, 0x75, 0x72, 0x72, 0x65, 0x6e, 0x74, 0x5f,
+ 0x74, 0x65, 0x78, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x10, 0x63, 0x75,
+ 0x72, 0x72, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x4d,
+ 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70,
+ 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x0d,
+ 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a,
+ 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20,
+ 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65,
+ 0x22, 0xf2, 0x01, 0x0a, 0x1b, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72,
+ 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x12, 0x61, 0x0a, 0x13, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x5f, 0x72, 0x65, 0x70, 0x6c, 0x79, 0x5f,
+ 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x31, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x11, 0x73, 0x6d, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x79, 0x41, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x73, 0x12, 0x4d, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x26, 0xfa, 0x41, 0x23,
+ 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x4d, 0x65, 0x73, 0x73,
+ 0x61, 0x67, 0x65, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61,
+ 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69,
+ 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78,
+ 0x74, 0x53, 0x69, 0x7a, 0x65, 0x22, 0xff, 0x06, 0x0a, 0x0a, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x4f, 0x0a, 0x08, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x6c, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x33, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x52,
+ 0x08, 0x61, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x56, 0x0a, 0x0b, 0x66, 0x61, 0x71,
+ 0x5f, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x35,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x46, 0x61, 0x71, 0x41,
+ 0x6e, 0x73, 0x77, 0x65, 0x72, 0x52, 0x0a, 0x66, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x73, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65,
+ 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61,
+ 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x25,
+ 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x07, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x1a, 0x8e, 0x02, 0x0a, 0x07, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c,
+ 0x65, 0x12, 0x14, 0x0a, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x05, 0x74, 0x69, 0x74, 0x6c, 0x65, 0x12, 0x10, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x1a, 0x0a, 0x08, 0x73, 0x6e, 0x69,
+ 0x70, 0x70, 0x65, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x08, 0x73, 0x6e, 0x69,
+ 0x70, 0x70, 0x65, 0x74, 0x73, 0x12, 0x5d, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73,
+ 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x2e, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72,
+ 0x65, 0x63, 0x6f, 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74,
+ 0x61, 0x64, 0x61, 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65,
+ 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05,
+ 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x1a, 0xba, 0x02, 0x0a, 0x09, 0x46, 0x61, 0x71, 0x41, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x12, 0x1e, 0x0a, 0x0a,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02,
+ 0x52, 0x0a, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1a, 0x0a, 0x08,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65,
+ 0x12, 0x5f, 0x0a, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x05, 0x20, 0x03,
+ 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x2e,
+ 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x2e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74,
+ 0x61, 0x12, 0x23, 0x0a, 0x0d, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x5f, 0x72, 0x65, 0x63, 0x6f,
+ 0x72, 0x64, 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x65, 0x63, 0x6f, 0x72, 0x64, 0x1a, 0x3b, 0x0a, 0x0d, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
+ 0x02, 0x38, 0x01, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x88, 0x01, 0x0a, 0x16, 0x4c, 0x69, 0x73, 0x74,
+ 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61,
+ 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70,
+ 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f,
+ 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67,
+ 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x66, 0x69, 0x6c, 0x74, 0x65, 0x72, 0x3a, 0x02,
+ 0x18, 0x01, 0x22, 0x94, 0x01, 0x0a, 0x17, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4d,
+ 0x0a, 0x0b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x0b, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a,
+ 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x3a, 0x02, 0x18, 0x01, 0x22, 0x80, 0x01, 0x0a, 0x18, 0x43, 0x6f,
+ 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x16, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x25,
+ 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65,
+ 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74,
+ 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e,
+ 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a, 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xb6, 0x01, 0x0a,
+ 0x19, 0x43, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x4b, 0x0a, 0x0a, 0x73, 0x75,
+ 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0a, 0x73, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x25, 0x0a, 0x0e, 0x6c, 0x61, 0x74, 0x65, 0x73,
+ 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x0d, 0x6c, 0x61, 0x74, 0x65, 0x73, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x21,
+ 0x0a, 0x0c, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x05, 0x52, 0x0b, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x53, 0x69, 0x7a,
+ 0x65, 0x3a, 0x02, 0x18, 0x01, 0x22, 0xaf, 0x08, 0x0a, 0x0f, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x12, 0x4b, 0x0a, 0x04, 0x74, 0x65, 0x78,
+ 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x48, 0x00,
+ 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x33, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61,
+ 0x64, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74,
+ 0x48, 0x00, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x71, 0x0a, 0x12, 0x6c,
+ 0x69, 0x76, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x66,
+ 0x66, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x41, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4c, 0x69, 0x76, 0x65, 0x41, 0x67,
+ 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x48, 0x00, 0x52, 0x10, 0x6c, 0x69,
+ 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x12, 0x6a,
+ 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f,
+ 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x45, 0x6e, 0x64, 0x49, 0x6e, 0x74,
+ 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x48, 0x00, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x49,
+ 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x5e, 0x0a, 0x0b, 0x6d, 0x69,
+ 0x78, 0x65, 0x64, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x2e, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x48, 0x00, 0x52, 0x0a,
+ 0x6d, 0x69, 0x78, 0x65, 0x64, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x80, 0x01, 0x0a, 0x17, 0x74,
+ 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x5f, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65,
+ 0x72, 0x5f, 0x63, 0x61, 0x6c, 0x6c, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x46, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x54,
+ 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72,
+ 0x43, 0x61, 0x6c, 0x6c, 0x48, 0x00, 0x52, 0x15, 0x74, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e,
+ 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c, 0x1a, 0x1a, 0x0a,
+ 0x04, 0x54, 0x65, 0x78, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20,
+ 0x03, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x1a, 0x47, 0x0a, 0x10, 0x4c, 0x69, 0x76,
+ 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x12, 0x33, 0x0a,
+ 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x08, 0x6d, 0x65, 0x74, 0x61, 0x64, 0x61,
+ 0x74, 0x61, 0x1a, 0x10, 0x0a, 0x0e, 0x45, 0x6e, 0x64, 0x49, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x1a, 0xf0, 0x01, 0x0a, 0x0a, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x12, 0x5f, 0x0a, 0x08, 0x73, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x18,
+ 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x43, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x2e, 0x4d, 0x69, 0x78, 0x65, 0x64, 0x41, 0x75, 0x64,
+ 0x69, 0x6f, 0x2e, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x08, 0x73, 0x65, 0x67, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x1a, 0x80, 0x01, 0x0a, 0x07, 0x53, 0x65, 0x67, 0x6d, 0x65, 0x6e, 0x74,
+ 0x12, 0x16, 0x0a, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0c, 0x48,
+ 0x00, 0x52, 0x05, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x12, 0x12, 0x0a, 0x03, 0x75, 0x72, 0x69, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x03, 0x75, 0x72, 0x69, 0x12, 0x3e, 0x0a, 0x1b,
+ 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x5f, 0x70, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b, 0x5f, 0x69,
+ 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28,
+ 0x08, 0x52, 0x19, 0x61, 0x6c, 0x6c, 0x6f, 0x77, 0x50, 0x6c, 0x61, 0x79, 0x62, 0x61, 0x63, 0x6b,
+ 0x49, 0x6e, 0x74, 0x65, 0x72, 0x72, 0x75, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x09, 0x0a, 0x07,
+ 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x1a, 0x63, 0x0a, 0x15, 0x54, 0x65, 0x6c, 0x65, 0x70,
+ 0x68, 0x6f, 0x6e, 0x79, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, 0x65, 0x72, 0x43, 0x61, 0x6c, 0x6c,
+ 0x12, 0x23, 0x0a, 0x0c, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65, 0x72,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x0b, 0x70, 0x68, 0x6f, 0x6e, 0x65, 0x4e,
+ 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x19, 0x0a, 0x07, 0x73, 0x69, 0x70, 0x5f, 0x75, 0x72, 0x69,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x48, 0x00, 0x52, 0x06, 0x73, 0x69, 0x70, 0x55, 0x72, 0x69,
+ 0x42, 0x0a, 0x0a, 0x08, 0x65, 0x6e, 0x64, 0x70, 0x6f, 0x69, 0x6e, 0x74, 0x42, 0x09, 0x0a, 0x07,
+ 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x32, 0x87, 0x1b, 0x0a, 0x0c, 0x50, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0xb9, 0x02, 0x0a, 0x11, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x39,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0xba, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x9e,
+ 0x01, 0x22, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x3a, 0x0b, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x5a, 0x54, 0x22, 0x45, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x73, 0x3a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0xda,
+ 0x41, 0x12, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69,
+ 0x70, 0x61, 0x6e, 0x74, 0x12, 0x8b, 0x02, 0x0a, 0x0e, 0x47, 0x65, 0x74, 0x50, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x22, 0x92, 0x01,
+ 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x84, 0x01, 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x5a, 0x47, 0x12, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76,
+ 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x9e, 0x02, 0x0a, 0x10, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x12, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x94, 0x01, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x84, 0x01, 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x73, 0x5a, 0x47, 0x12, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x12, 0xd6, 0x02, 0x0a, 0x11, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61,
+ 0x74, 0x65, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x50, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0x22, 0xd7, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xb6, 0x01, 0x32, 0x45, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70,
+ 0x61, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x5a, 0x60, 0x32, 0x51, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x0b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0x8e, 0x03, 0x0a,
+ 0x0e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12,
+ 0x36, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a,
+ 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65,
+ 0x22, 0x8a, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xb6, 0x01, 0x22, 0x4f, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e,
+ 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72,
+ 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x61, 0x6e, 0x61,
+ 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x60,
+ 0x22, 0x5b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63,
+ 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70,
+ 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x61,
+ 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a,
+ 0xda, 0x41, 0x16, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2c, 0x74,
+ 0x65, 0x78, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x74,
+ 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x2c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x69, 0x6e,
+ 0x70, 0x75, 0x74, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e,
+ 0x74, 0x2c, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x12, 0xa2, 0x01,
+ 0x0a, 0x17, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x61, 0x6c, 0x79,
+ 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x40, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72,
+ 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x43, 0x6f, 0x6e,
+ 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28, 0x01,
+ 0x30, 0x01, 0x12, 0xdd, 0x02, 0x0a, 0x0f, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72,
+ 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a,
+ 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65,
+ 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xd6, 0x01, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0xc6, 0x01, 0x22, 0x57, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67,
+ 0x67, 0x65, 0x73, 0x74, 0x41, 0x72, 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x5a,
+ 0x68, 0x22, 0x63, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65,
+ 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x41, 0x72,
+ 0x74, 0x69, 0x63, 0x6c, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65,
+ 0x6e, 0x74, 0x12, 0xe7, 0x02, 0x0a, 0x11, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61,
+ 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71,
+ 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0xda, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xca, 0x01, 0x22, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 0x6a, 0x22, 0x65, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x73,
+ 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x46, 0x61, 0x71, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73,
+ 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0xf1, 0x02, 0x0a,
+ 0x13, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70,
+ 0x6c, 0x69, 0x65, 0x73, 0x12, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d,
+ 0x61, 0x72, 0x74, 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74,
+ 0x52, 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22,
+ 0xde, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xce, 0x01, 0x22, 0x5b, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61,
+ 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52,
+ 0x65, 0x70, 0x6c, 0x69, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0x5a, 0x6c, 0x22, 0x67, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x3a, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x53, 0x6d, 0x61, 0x72, 0x74, 0x52, 0x65, 0x70,
+ 0x6c, 0x69, 0x65, 0x73, 0x3a, 0x01, 0x2a, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x12, 0xd8, 0x01, 0x0a, 0x0f, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x37, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x38, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x4c, 0x69, 0x73, 0x74, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x52, 0x88, 0x02, 0x01, 0x82, 0xd3, 0xe4, 0x93,
+ 0x02, 0x49, 0x12, 0x47, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d, 0x2f,
+ 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xe9, 0x01, 0x0a, 0x11,
+ 0x43, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f,
+ 0x6e, 0x12, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43,
+ 0x6f, 0x6d, 0x70, 0x69, 0x6c, 0x65, 0x53, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x5d, 0x88, 0x02, 0x01, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x54, 0x22, 0x4f, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x63, 0x6f, 0x6e, 0x76, 0x65, 0x72, 0x73, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x70, 0x61, 0x72, 0x74, 0x69, 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x2f, 0x73, 0x75, 0x67, 0x67, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x63, 0x6f, 0x6d,
+ 0x70, 0x69, 0x6c, 0x65, 0x3a, 0x01, 0x2a, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f,
+ 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c,
+ 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77,
+ 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x42, 0xa8, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x10, 0x50, 0x61, 0x72, 0x74, 0x69,
+ 0x63, 0x69, 0x70, 0x61, 0x6e, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70,
+ 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_participant_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_participant_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
+var file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes = make([]protoimpl.MessageInfo, 50)
+var file_google_cloud_dialogflow_v2beta1_participant_proto_goTypes = []interface{}{
+ (Participant_Role)(0), // 0: google.cloud.dialogflow.v2beta1.Participant.Role
+ (AutomatedAgentReply_AutomatedAgentReplyType)(0), // 1: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.AutomatedAgentReplyType
+ (SuggestionFeature_Type)(0), // 2: google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ (*Participant)(nil), // 3: google.cloud.dialogflow.v2beta1.Participant
+ (*Message)(nil), // 4: google.cloud.dialogflow.v2beta1.Message
+ (*CreateParticipantRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.CreateParticipantRequest
+ (*GetParticipantRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.GetParticipantRequest
+ (*ListParticipantsRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.ListParticipantsRequest
+ (*ListParticipantsResponse)(nil), // 8: google.cloud.dialogflow.v2beta1.ListParticipantsResponse
+ (*UpdateParticipantRequest)(nil), // 9: google.cloud.dialogflow.v2beta1.UpdateParticipantRequest
+ (*AudioInput)(nil), // 10: google.cloud.dialogflow.v2beta1.AudioInput
+ (*OutputAudio)(nil), // 11: google.cloud.dialogflow.v2beta1.OutputAudio
+ (*AutomatedAgentReply)(nil), // 12: google.cloud.dialogflow.v2beta1.AutomatedAgentReply
+ (*SuggestionFeature)(nil), // 13: google.cloud.dialogflow.v2beta1.SuggestionFeature
+ (*AssistQueryParameters)(nil), // 14: google.cloud.dialogflow.v2beta1.AssistQueryParameters
+ (*AnalyzeContentRequest)(nil), // 15: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest
+ (*DtmfParameters)(nil), // 16: google.cloud.dialogflow.v2beta1.DtmfParameters
+ (*AnalyzeContentResponse)(nil), // 17: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse
+ (*InputTextConfig)(nil), // 18: google.cloud.dialogflow.v2beta1.InputTextConfig
+ (*StreamingAnalyzeContentRequest)(nil), // 19: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest
+ (*StreamingAnalyzeContentResponse)(nil), // 20: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse
+ (*AnnotatedMessagePart)(nil), // 21: google.cloud.dialogflow.v2beta1.AnnotatedMessagePart
+ (*MessageAnnotation)(nil), // 22: google.cloud.dialogflow.v2beta1.MessageAnnotation
+ (*ArticleAnswer)(nil), // 23: google.cloud.dialogflow.v2beta1.ArticleAnswer
+ (*FaqAnswer)(nil), // 24: google.cloud.dialogflow.v2beta1.FaqAnswer
+ (*SmartReplyAnswer)(nil), // 25: google.cloud.dialogflow.v2beta1.SmartReplyAnswer
+ (*SuggestionResult)(nil), // 26: google.cloud.dialogflow.v2beta1.SuggestionResult
+ (*SuggestArticlesRequest)(nil), // 27: google.cloud.dialogflow.v2beta1.SuggestArticlesRequest
+ (*SuggestArticlesResponse)(nil), // 28: google.cloud.dialogflow.v2beta1.SuggestArticlesResponse
+ (*SuggestFaqAnswersRequest)(nil), // 29: google.cloud.dialogflow.v2beta1.SuggestFaqAnswersRequest
+ (*SuggestFaqAnswersResponse)(nil), // 30: google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse
+ (*SuggestSmartRepliesRequest)(nil), // 31: google.cloud.dialogflow.v2beta1.SuggestSmartRepliesRequest
+ (*SuggestSmartRepliesResponse)(nil), // 32: google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse
+ (*Suggestion)(nil), // 33: google.cloud.dialogflow.v2beta1.Suggestion
+ (*ListSuggestionsRequest)(nil), // 34: google.cloud.dialogflow.v2beta1.ListSuggestionsRequest
+ (*ListSuggestionsResponse)(nil), // 35: google.cloud.dialogflow.v2beta1.ListSuggestionsResponse
+ (*CompileSuggestionRequest)(nil), // 36: google.cloud.dialogflow.v2beta1.CompileSuggestionRequest
+ (*CompileSuggestionResponse)(nil), // 37: google.cloud.dialogflow.v2beta1.CompileSuggestionResponse
+ (*ResponseMessage)(nil), // 38: google.cloud.dialogflow.v2beta1.ResponseMessage
+ nil, // 39: google.cloud.dialogflow.v2beta1.Participant.DocumentsMetadataFiltersEntry
+ nil, // 40: google.cloud.dialogflow.v2beta1.AssistQueryParameters.DocumentsMetadataFiltersEntry
+ nil, // 41: google.cloud.dialogflow.v2beta1.ArticleAnswer.MetadataEntry
+ nil, // 42: google.cloud.dialogflow.v2beta1.FaqAnswer.MetadataEntry
+ (*Suggestion_Article)(nil), // 43: google.cloud.dialogflow.v2beta1.Suggestion.Article
+ (*Suggestion_FaqAnswer)(nil), // 44: google.cloud.dialogflow.v2beta1.Suggestion.FaqAnswer
+ nil, // 45: google.cloud.dialogflow.v2beta1.Suggestion.Article.MetadataEntry
+ nil, // 46: google.cloud.dialogflow.v2beta1.Suggestion.FaqAnswer.MetadataEntry
+ (*ResponseMessage_Text)(nil), // 47: google.cloud.dialogflow.v2beta1.ResponseMessage.Text
+ (*ResponseMessage_LiveAgentHandoff)(nil), // 48: google.cloud.dialogflow.v2beta1.ResponseMessage.LiveAgentHandoff
+ (*ResponseMessage_EndInteraction)(nil), // 49: google.cloud.dialogflow.v2beta1.ResponseMessage.EndInteraction
+ (*ResponseMessage_MixedAudio)(nil), // 50: google.cloud.dialogflow.v2beta1.ResponseMessage.MixedAudio
+ (*ResponseMessage_TelephonyTransferCall)(nil), // 51: google.cloud.dialogflow.v2beta1.ResponseMessage.TelephonyTransferCall
+ (*ResponseMessage_MixedAudio_Segment)(nil), // 52: google.cloud.dialogflow.v2beta1.ResponseMessage.MixedAudio.Segment
+ (*timestamppb.Timestamp)(nil), // 53: google.protobuf.Timestamp
+ (*SentimentAnalysisResult)(nil), // 54: google.cloud.dialogflow.v2beta1.SentimentAnalysisResult
+ (*fieldmaskpb.FieldMask)(nil), // 55: google.protobuf.FieldMask
+ (*InputAudioConfig)(nil), // 56: google.cloud.dialogflow.v2beta1.InputAudioConfig
+ (*OutputAudioConfig)(nil), // 57: google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ (*DetectIntentResponse)(nil), // 58: google.cloud.dialogflow.v2beta1.DetectIntentResponse
+ (*structpb.Struct)(nil), // 59: google.protobuf.Struct
+ (*TextInput)(nil), // 60: google.cloud.dialogflow.v2beta1.TextInput
+ (*EventInput)(nil), // 61: google.cloud.dialogflow.v2beta1.EventInput
+ (*QueryParameters)(nil), // 62: google.cloud.dialogflow.v2beta1.QueryParameters
+ (*TelephonyDtmfEvents)(nil), // 63: google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ (*StreamingRecognitionResult)(nil), // 64: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult
+ (*structpb.Value)(nil), // 65: google.protobuf.Value
+ (*status.Status)(nil), // 66: google.rpc.Status
+}
+var file_google_cloud_dialogflow_v2beta1_participant_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.Participant.role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 39, // 1: google.cloud.dialogflow.v2beta1.Participant.documents_metadata_filters:type_name -> google.cloud.dialogflow.v2beta1.Participant.DocumentsMetadataFiltersEntry
+ 0, // 2: google.cloud.dialogflow.v2beta1.Message.participant_role:type_name -> google.cloud.dialogflow.v2beta1.Participant.Role
+ 53, // 3: google.cloud.dialogflow.v2beta1.Message.create_time:type_name -> google.protobuf.Timestamp
+ 53, // 4: google.cloud.dialogflow.v2beta1.Message.send_time:type_name -> google.protobuf.Timestamp
+ 22, // 5: google.cloud.dialogflow.v2beta1.Message.message_annotation:type_name -> google.cloud.dialogflow.v2beta1.MessageAnnotation
+ 54, // 6: google.cloud.dialogflow.v2beta1.Message.sentiment_analysis:type_name -> google.cloud.dialogflow.v2beta1.SentimentAnalysisResult
+ 3, // 7: google.cloud.dialogflow.v2beta1.CreateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2beta1.Participant
+ 3, // 8: google.cloud.dialogflow.v2beta1.ListParticipantsResponse.participants:type_name -> google.cloud.dialogflow.v2beta1.Participant
+ 3, // 9: google.cloud.dialogflow.v2beta1.UpdateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2beta1.Participant
+ 55, // 10: google.cloud.dialogflow.v2beta1.UpdateParticipantRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 56, // 11: google.cloud.dialogflow.v2beta1.AudioInput.config:type_name -> google.cloud.dialogflow.v2beta1.InputAudioConfig
+ 57, // 12: google.cloud.dialogflow.v2beta1.OutputAudio.config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 58, // 13: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.detect_intent_response:type_name -> google.cloud.dialogflow.v2beta1.DetectIntentResponse
+ 38, // 14: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.response_messages:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage
+ 59, // 15: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.parameters:type_name -> google.protobuf.Struct
+ 59, // 16: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.cx_session_parameters:type_name -> google.protobuf.Struct
+ 1, // 17: google.cloud.dialogflow.v2beta1.AutomatedAgentReply.automated_agent_reply_type:type_name -> google.cloud.dialogflow.v2beta1.AutomatedAgentReply.AutomatedAgentReplyType
+ 2, // 18: google.cloud.dialogflow.v2beta1.SuggestionFeature.type:type_name -> google.cloud.dialogflow.v2beta1.SuggestionFeature.Type
+ 40, // 19: google.cloud.dialogflow.v2beta1.AssistQueryParameters.documents_metadata_filters:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters.DocumentsMetadataFiltersEntry
+ 60, // 20: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.text_input:type_name -> google.cloud.dialogflow.v2beta1.TextInput
+ 10, // 21: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.audio_input:type_name -> google.cloud.dialogflow.v2beta1.AudioInput
+ 61, // 22: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.event_input:type_name -> google.cloud.dialogflow.v2beta1.EventInput
+ 57, // 23: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.reply_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 62, // 24: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.query_params:type_name -> google.cloud.dialogflow.v2beta1.QueryParameters
+ 14, // 25: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters
+ 59, // 26: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.cx_parameters:type_name -> google.protobuf.Struct
+ 53, // 27: google.cloud.dialogflow.v2beta1.AnalyzeContentRequest.message_send_time:type_name -> google.protobuf.Timestamp
+ 11, // 28: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.reply_audio:type_name -> google.cloud.dialogflow.v2beta1.OutputAudio
+ 12, // 29: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.automated_agent_reply:type_name -> google.cloud.dialogflow.v2beta1.AutomatedAgentReply
+ 4, // 30: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.message:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 26, // 31: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.human_agent_suggestion_results:type_name -> google.cloud.dialogflow.v2beta1.SuggestionResult
+ 26, // 32: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.end_user_suggestion_results:type_name -> google.cloud.dialogflow.v2beta1.SuggestionResult
+ 16, // 33: google.cloud.dialogflow.v2beta1.AnalyzeContentResponse.dtmf_parameters:type_name -> google.cloud.dialogflow.v2beta1.DtmfParameters
+ 56, // 34: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.audio_config:type_name -> google.cloud.dialogflow.v2beta1.InputAudioConfig
+ 18, // 35: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.text_config:type_name -> google.cloud.dialogflow.v2beta1.InputTextConfig
+ 57, // 36: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.reply_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 63, // 37: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.input_dtmf:type_name -> google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ 62, // 38: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.query_params:type_name -> google.cloud.dialogflow.v2beta1.QueryParameters
+ 14, // 39: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters
+ 59, // 40: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest.cx_parameters:type_name -> google.protobuf.Struct
+ 64, // 41: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.recognition_result:type_name -> google.cloud.dialogflow.v2beta1.StreamingRecognitionResult
+ 11, // 42: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.reply_audio:type_name -> google.cloud.dialogflow.v2beta1.OutputAudio
+ 12, // 43: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.automated_agent_reply:type_name -> google.cloud.dialogflow.v2beta1.AutomatedAgentReply
+ 4, // 44: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.message:type_name -> google.cloud.dialogflow.v2beta1.Message
+ 26, // 45: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.human_agent_suggestion_results:type_name -> google.cloud.dialogflow.v2beta1.SuggestionResult
+ 26, // 46: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.end_user_suggestion_results:type_name -> google.cloud.dialogflow.v2beta1.SuggestionResult
+ 16, // 47: google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse.dtmf_parameters:type_name -> google.cloud.dialogflow.v2beta1.DtmfParameters
+ 65, // 48: google.cloud.dialogflow.v2beta1.AnnotatedMessagePart.formatted_value:type_name -> google.protobuf.Value
+ 21, // 49: google.cloud.dialogflow.v2beta1.MessageAnnotation.parts:type_name -> google.cloud.dialogflow.v2beta1.AnnotatedMessagePart
+ 41, // 50: google.cloud.dialogflow.v2beta1.ArticleAnswer.metadata:type_name -> google.cloud.dialogflow.v2beta1.ArticleAnswer.MetadataEntry
+ 42, // 51: google.cloud.dialogflow.v2beta1.FaqAnswer.metadata:type_name -> google.cloud.dialogflow.v2beta1.FaqAnswer.MetadataEntry
+ 66, // 52: google.cloud.dialogflow.v2beta1.SuggestionResult.error:type_name -> google.rpc.Status
+ 28, // 53: google.cloud.dialogflow.v2beta1.SuggestionResult.suggest_articles_response:type_name -> google.cloud.dialogflow.v2beta1.SuggestArticlesResponse
+ 30, // 54: google.cloud.dialogflow.v2beta1.SuggestionResult.suggest_faq_answers_response:type_name -> google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse
+ 32, // 55: google.cloud.dialogflow.v2beta1.SuggestionResult.suggest_smart_replies_response:type_name -> google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse
+ 14, // 56: google.cloud.dialogflow.v2beta1.SuggestArticlesRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters
+ 23, // 57: google.cloud.dialogflow.v2beta1.SuggestArticlesResponse.article_answers:type_name -> google.cloud.dialogflow.v2beta1.ArticleAnswer
+ 14, // 58: google.cloud.dialogflow.v2beta1.SuggestFaqAnswersRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2beta1.AssistQueryParameters
+ 24, // 59: google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse.faq_answers:type_name -> google.cloud.dialogflow.v2beta1.FaqAnswer
+ 60, // 60: google.cloud.dialogflow.v2beta1.SuggestSmartRepliesRequest.current_text_input:type_name -> google.cloud.dialogflow.v2beta1.TextInput
+ 25, // 61: google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse.smart_reply_answers:type_name -> google.cloud.dialogflow.v2beta1.SmartReplyAnswer
+ 43, // 62: google.cloud.dialogflow.v2beta1.Suggestion.articles:type_name -> google.cloud.dialogflow.v2beta1.Suggestion.Article
+ 44, // 63: google.cloud.dialogflow.v2beta1.Suggestion.faq_answers:type_name -> google.cloud.dialogflow.v2beta1.Suggestion.FaqAnswer
+ 53, // 64: google.cloud.dialogflow.v2beta1.Suggestion.create_time:type_name -> google.protobuf.Timestamp
+ 33, // 65: google.cloud.dialogflow.v2beta1.ListSuggestionsResponse.suggestions:type_name -> google.cloud.dialogflow.v2beta1.Suggestion
+ 33, // 66: google.cloud.dialogflow.v2beta1.CompileSuggestionResponse.suggestion:type_name -> google.cloud.dialogflow.v2beta1.Suggestion
+ 47, // 67: google.cloud.dialogflow.v2beta1.ResponseMessage.text:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.Text
+ 59, // 68: google.cloud.dialogflow.v2beta1.ResponseMessage.payload:type_name -> google.protobuf.Struct
+ 48, // 69: google.cloud.dialogflow.v2beta1.ResponseMessage.live_agent_handoff:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.LiveAgentHandoff
+ 49, // 70: google.cloud.dialogflow.v2beta1.ResponseMessage.end_interaction:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.EndInteraction
+ 50, // 71: google.cloud.dialogflow.v2beta1.ResponseMessage.mixed_audio:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.MixedAudio
+ 51, // 72: google.cloud.dialogflow.v2beta1.ResponseMessage.telephony_transfer_call:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.TelephonyTransferCall
+ 45, // 73: google.cloud.dialogflow.v2beta1.Suggestion.Article.metadata:type_name -> google.cloud.dialogflow.v2beta1.Suggestion.Article.MetadataEntry
+ 46, // 74: google.cloud.dialogflow.v2beta1.Suggestion.FaqAnswer.metadata:type_name -> google.cloud.dialogflow.v2beta1.Suggestion.FaqAnswer.MetadataEntry
+ 59, // 75: google.cloud.dialogflow.v2beta1.ResponseMessage.LiveAgentHandoff.metadata:type_name -> google.protobuf.Struct
+ 52, // 76: google.cloud.dialogflow.v2beta1.ResponseMessage.MixedAudio.segments:type_name -> google.cloud.dialogflow.v2beta1.ResponseMessage.MixedAudio.Segment
+ 5, // 77: google.cloud.dialogflow.v2beta1.Participants.CreateParticipant:input_type -> google.cloud.dialogflow.v2beta1.CreateParticipantRequest
+ 6, // 78: google.cloud.dialogflow.v2beta1.Participants.GetParticipant:input_type -> google.cloud.dialogflow.v2beta1.GetParticipantRequest
+ 7, // 79: google.cloud.dialogflow.v2beta1.Participants.ListParticipants:input_type -> google.cloud.dialogflow.v2beta1.ListParticipantsRequest
+ 9, // 80: google.cloud.dialogflow.v2beta1.Participants.UpdateParticipant:input_type -> google.cloud.dialogflow.v2beta1.UpdateParticipantRequest
+ 15, // 81: google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent:input_type -> google.cloud.dialogflow.v2beta1.AnalyzeContentRequest
+ 19, // 82: google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent:input_type -> google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest
+ 27, // 83: google.cloud.dialogflow.v2beta1.Participants.SuggestArticles:input_type -> google.cloud.dialogflow.v2beta1.SuggestArticlesRequest
+ 29, // 84: google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers:input_type -> google.cloud.dialogflow.v2beta1.SuggestFaqAnswersRequest
+ 31, // 85: google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies:input_type -> google.cloud.dialogflow.v2beta1.SuggestSmartRepliesRequest
+ 34, // 86: google.cloud.dialogflow.v2beta1.Participants.ListSuggestions:input_type -> google.cloud.dialogflow.v2beta1.ListSuggestionsRequest
+ 36, // 87: google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion:input_type -> google.cloud.dialogflow.v2beta1.CompileSuggestionRequest
+ 3, // 88: google.cloud.dialogflow.v2beta1.Participants.CreateParticipant:output_type -> google.cloud.dialogflow.v2beta1.Participant
+ 3, // 89: google.cloud.dialogflow.v2beta1.Participants.GetParticipant:output_type -> google.cloud.dialogflow.v2beta1.Participant
+ 8, // 90: google.cloud.dialogflow.v2beta1.Participants.ListParticipants:output_type -> google.cloud.dialogflow.v2beta1.ListParticipantsResponse
+ 3, // 91: google.cloud.dialogflow.v2beta1.Participants.UpdateParticipant:output_type -> google.cloud.dialogflow.v2beta1.Participant
+ 17, // 92: google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent:output_type -> google.cloud.dialogflow.v2beta1.AnalyzeContentResponse
+ 20, // 93: google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent:output_type -> google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse
+ 28, // 94: google.cloud.dialogflow.v2beta1.Participants.SuggestArticles:output_type -> google.cloud.dialogflow.v2beta1.SuggestArticlesResponse
+ 30, // 95: google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers:output_type -> google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse
+ 32, // 96: google.cloud.dialogflow.v2beta1.Participants.SuggestSmartReplies:output_type -> google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse
+ 35, // 97: google.cloud.dialogflow.v2beta1.Participants.ListSuggestions:output_type -> google.cloud.dialogflow.v2beta1.ListSuggestionsResponse
+ 37, // 98: google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion:output_type -> google.cloud.dialogflow.v2beta1.CompileSuggestionResponse
+ 88, // [88:99] is the sub-list for method output_type
+ 77, // [77:88] is the sub-list for method input_type
+ 77, // [77:77] is the sub-list for extension type_name
+ 77, // [77:77] is the sub-list for extension extendee
+ 0, // [0:77] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_participant_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_participant_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_participant_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_init()
+ file_google_cloud_dialogflow_v2beta1_session_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Participant); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Message); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateParticipantRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetParticipantRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListParticipantsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListParticipantsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateParticipantRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AudioInput); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OutputAudio); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AutomatedAgentReply); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestionFeature); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AssistQueryParameters); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AnalyzeContentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DtmfParameters); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[14].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AnalyzeContentResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*InputTextConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[16].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamingAnalyzeContentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[17].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamingAnalyzeContentResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[18].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*AnnotatedMessagePart); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[19].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*MessageAnnotation); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[20].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ArticleAnswer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[21].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*FaqAnswer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[22].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SmartReplyAnswer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[23].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestionResult); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[24].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestArticlesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[25].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestArticlesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[26].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestFaqAnswersRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[27].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestFaqAnswersResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[28].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestSmartRepliesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[29].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SuggestSmartRepliesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[30].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Suggestion); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[31].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListSuggestionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[32].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListSuggestionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[33].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CompileSuggestionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[34].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CompileSuggestionResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[35].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[40].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Suggestion_Article); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[41].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Suggestion_FaqAnswer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[44].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_Text); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[45].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_LiveAgentHandoff); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[46].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_EndInteraction); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[47].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_MixedAudio); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[48].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_TelephonyTransferCall); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[49].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ResponseMessage_MixedAudio_Segment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[9].OneofWrappers = []interface{}{
+ (*AutomatedAgentReply_DetectIntentResponse)(nil),
+ (*AutomatedAgentReply_Intent)(nil),
+ (*AutomatedAgentReply_Event)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[12].OneofWrappers = []interface{}{
+ (*AnalyzeContentRequest_TextInput)(nil),
+ (*AnalyzeContentRequest_AudioInput)(nil),
+ (*AnalyzeContentRequest_EventInput)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[16].OneofWrappers = []interface{}{
+ (*StreamingAnalyzeContentRequest_AudioConfig)(nil),
+ (*StreamingAnalyzeContentRequest_TextConfig)(nil),
+ (*StreamingAnalyzeContentRequest_InputAudio)(nil),
+ (*StreamingAnalyzeContentRequest_InputText)(nil),
+ (*StreamingAnalyzeContentRequest_InputDtmf)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[23].OneofWrappers = []interface{}{
+ (*SuggestionResult_Error)(nil),
+ (*SuggestionResult_SuggestArticlesResponse)(nil),
+ (*SuggestionResult_SuggestFaqAnswersResponse)(nil),
+ (*SuggestionResult_SuggestSmartRepliesResponse)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[35].OneofWrappers = []interface{}{
+ (*ResponseMessage_Text_)(nil),
+ (*ResponseMessage_Payload)(nil),
+ (*ResponseMessage_LiveAgentHandoff_)(nil),
+ (*ResponseMessage_EndInteraction_)(nil),
+ (*ResponseMessage_MixedAudio_)(nil),
+ (*ResponseMessage_TelephonyTransferCall_)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[48].OneofWrappers = []interface{}{
+ (*ResponseMessage_TelephonyTransferCall_PhoneNumber)(nil),
+ (*ResponseMessage_TelephonyTransferCall_SipUri)(nil),
+ }
+ file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes[49].OneofWrappers = []interface{}{
+ (*ResponseMessage_MixedAudio_Segment_Audio)(nil),
+ (*ResponseMessage_MixedAudio_Segment_Uri)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_participant_proto_rawDesc,
+ NumEnums: 3,
+ NumMessages: 50,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_participant_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_participant_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_participant_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_participant_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_participant_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_participant_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_participant_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_participant_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// ParticipantsClient is the client API for Participants service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type ParticipantsClient interface {
+ // Creates a new participant in a conversation.
+ CreateParticipant(ctx context.Context, in *CreateParticipantRequest, opts ...grpc.CallOption) (*Participant, error)
+ // Retrieves a conversation participant.
+ GetParticipant(ctx context.Context, in *GetParticipantRequest, opts ...grpc.CallOption) (*Participant, error)
+ // Returns the list of all participants in the specified conversation.
+ ListParticipants(ctx context.Context, in *ListParticipantsRequest, opts ...grpc.CallOption) (*ListParticipantsResponse, error)
+ // Updates the specified participant.
+ UpdateParticipant(ctx context.Context, in *UpdateParticipantRequest, opts ...grpc.CallOption) (*Participant, error)
+ // Adds a text (chat, for example), or audio (phone recording, for example)
+ // message from a participant into the conversation.
+ //
+ // Note: Always use agent versions for production traffic
+ // sent to virtual agents. See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ AnalyzeContent(ctx context.Context, in *AnalyzeContentRequest, opts ...grpc.CallOption) (*AnalyzeContentResponse, error)
+ // Adds a text (e.g., chat) or audio (e.g., phone recording) message from a
+ // participant into the conversation.
+ // Note: This method is only available through the gRPC API (not REST).
+ //
+ // The top-level message sent to the client by the server is
+ // `StreamingAnalyzeContentResponse`. Multiple response messages can be
+ // returned in order. The first one or more messages contain the
+ // `recognition_result` field. Each result represents a more complete
+ // transcript of what the user said. The next message contains the
+ // `reply_text` field, and potentially the `reply_audio` and/or the
+ // `automated_agent_reply` fields.
+ //
+ // Note: Always use agent versions for production traffic
+ // sent to virtual agents. See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ StreamingAnalyzeContent(ctx context.Context, opts ...grpc.CallOption) (Participants_StreamingAnalyzeContentClient, error)
+ // Gets suggested articles for a participant based on specific historical
+ // messages.
+ //
+ // Note that
+ // [ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions]
+ // will only list the auto-generated suggestions, while
+ // [CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion]
+ // will try to compile suggestion based on the provided conversation context
+ // in the real time.
+ SuggestArticles(ctx context.Context, in *SuggestArticlesRequest, opts ...grpc.CallOption) (*SuggestArticlesResponse, error)
+ // Gets suggested faq answers for a participant based on specific historical
+ // messages.
+ SuggestFaqAnswers(ctx context.Context, in *SuggestFaqAnswersRequest, opts ...grpc.CallOption) (*SuggestFaqAnswersResponse, error)
+ // Gets smart replies for a participant based on specific historical
+ // messages.
+ SuggestSmartReplies(ctx context.Context, in *SuggestSmartRepliesRequest, opts ...grpc.CallOption) (*SuggestSmartRepliesResponse, error)
+ // Deprecated: Do not use.
+ // Deprecated: Use inline suggestion, event based suggestion or
+ // Suggestion* API instead.
+ // See
+ // [HumanAgentAssistantConfig.name][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.name]
+ // for more details. Removal Date: 2020-09-01.
+ //
+ // Retrieves suggestions for live agents.
+ //
+ // This method should be used by human agent client software to fetch auto
+ // generated suggestions in real-time, while the conversation with an end user
+ // is in progress. The functionality is implemented in terms of the
+ // [list
+ // pagination](https://cloud.google.com/apis/design/design_patterns#list_pagination)
+ // design pattern. The client app should use the `next_page_token` field
+ // to fetch the next batch of suggestions. `suggestions` are sorted by
+ // `create_time` in descending order.
+ // To fetch latest suggestion, just set `page_size` to 1.
+ // To fetch new suggestions without duplication, send request with filter
+ // `create_time_epoch_microseconds > [first item's create_time of previous
+ // request]` and empty page_token.
+ ListSuggestions(ctx context.Context, in *ListSuggestionsRequest, opts ...grpc.CallOption) (*ListSuggestionsResponse, error)
+ // Deprecated: Do not use.
+ // Deprecated. use
+ // [SuggestArticles][google.cloud.dialogflow.v2beta1.Participants.SuggestArticles]
+ // and
+ // [SuggestFaqAnswers][google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers]
+ // instead.
+ //
+ // Gets suggestions for a participant based on specific historical
+ // messages.
+ //
+ // Note that
+ // [ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions]
+ // will only list the auto-generated suggestions, while
+ // [CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion]
+ // will try to compile suggestion based on the provided conversation context
+ // in the real time.
+ CompileSuggestion(ctx context.Context, in *CompileSuggestionRequest, opts ...grpc.CallOption) (*CompileSuggestionResponse, error)
+}
+
+type participantsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewParticipantsClient(cc grpc.ClientConnInterface) ParticipantsClient {
+ return &participantsClient{cc}
+}
+
+func (c *participantsClient) CreateParticipant(ctx context.Context, in *CreateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) {
+ out := new(Participant)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/CreateParticipant", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) GetParticipant(ctx context.Context, in *GetParticipantRequest, opts ...grpc.CallOption) (*Participant, error) {
+ out := new(Participant)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/GetParticipant", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) ListParticipants(ctx context.Context, in *ListParticipantsRequest, opts ...grpc.CallOption) (*ListParticipantsResponse, error) {
+ out := new(ListParticipantsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/ListParticipants", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) UpdateParticipant(ctx context.Context, in *UpdateParticipantRequest, opts ...grpc.CallOption) (*Participant, error) {
+ out := new(Participant)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/UpdateParticipant", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) AnalyzeContent(ctx context.Context, in *AnalyzeContentRequest, opts ...grpc.CallOption) (*AnalyzeContentResponse, error) {
+ out := new(AnalyzeContentResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/AnalyzeContent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) StreamingAnalyzeContent(ctx context.Context, opts ...grpc.CallOption) (Participants_StreamingAnalyzeContentClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_Participants_serviceDesc.Streams[0], "/google.cloud.dialogflow.v2beta1.Participants/StreamingAnalyzeContent", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &participantsStreamingAnalyzeContentClient{stream}
+ return x, nil
+}
+
+type Participants_StreamingAnalyzeContentClient interface {
+ Send(*StreamingAnalyzeContentRequest) error
+ Recv() (*StreamingAnalyzeContentResponse, error)
+ grpc.ClientStream
+}
+
+type participantsStreamingAnalyzeContentClient struct {
+ grpc.ClientStream
+}
+
+func (x *participantsStreamingAnalyzeContentClient) Send(m *StreamingAnalyzeContentRequest) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *participantsStreamingAnalyzeContentClient) Recv() (*StreamingAnalyzeContentResponse, error) {
+ m := new(StreamingAnalyzeContentResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func (c *participantsClient) SuggestArticles(ctx context.Context, in *SuggestArticlesRequest, opts ...grpc.CallOption) (*SuggestArticlesResponse, error) {
+ out := new(SuggestArticlesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/SuggestArticles", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) SuggestFaqAnswers(ctx context.Context, in *SuggestFaqAnswersRequest, opts ...grpc.CallOption) (*SuggestFaqAnswersResponse, error) {
+ out := new(SuggestFaqAnswersResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/SuggestFaqAnswers", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *participantsClient) SuggestSmartReplies(ctx context.Context, in *SuggestSmartRepliesRequest, opts ...grpc.CallOption) (*SuggestSmartRepliesResponse, error) {
+ out := new(SuggestSmartRepliesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/SuggestSmartReplies", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// Deprecated: Do not use.
+func (c *participantsClient) ListSuggestions(ctx context.Context, in *ListSuggestionsRequest, opts ...grpc.CallOption) (*ListSuggestionsResponse, error) {
+ out := new(ListSuggestionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/ListSuggestions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// Deprecated: Do not use.
+func (c *participantsClient) CompileSuggestion(ctx context.Context, in *CompileSuggestionRequest, opts ...grpc.CallOption) (*CompileSuggestionResponse, error) {
+ out := new(CompileSuggestionResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Participants/CompileSuggestion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// ParticipantsServer is the server API for Participants service.
+type ParticipantsServer interface {
+ // Creates a new participant in a conversation.
+ CreateParticipant(context.Context, *CreateParticipantRequest) (*Participant, error)
+ // Retrieves a conversation participant.
+ GetParticipant(context.Context, *GetParticipantRequest) (*Participant, error)
+ // Returns the list of all participants in the specified conversation.
+ ListParticipants(context.Context, *ListParticipantsRequest) (*ListParticipantsResponse, error)
+ // Updates the specified participant.
+ UpdateParticipant(context.Context, *UpdateParticipantRequest) (*Participant, error)
+ // Adds a text (chat, for example), or audio (phone recording, for example)
+ // message from a participant into the conversation.
+ //
+ // Note: Always use agent versions for production traffic
+ // sent to virtual agents. See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ AnalyzeContent(context.Context, *AnalyzeContentRequest) (*AnalyzeContentResponse, error)
+ // Adds a text (e.g., chat) or audio (e.g., phone recording) message from a
+ // participant into the conversation.
+ // Note: This method is only available through the gRPC API (not REST).
+ //
+ // The top-level message sent to the client by the server is
+ // `StreamingAnalyzeContentResponse`. Multiple response messages can be
+ // returned in order. The first one or more messages contain the
+ // `recognition_result` field. Each result represents a more complete
+ // transcript of what the user said. The next message contains the
+ // `reply_text` field, and potentially the `reply_audio` and/or the
+ // `automated_agent_reply` fields.
+ //
+ // Note: Always use agent versions for production traffic
+ // sent to virtual agents. See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ StreamingAnalyzeContent(Participants_StreamingAnalyzeContentServer) error
+ // Gets suggested articles for a participant based on specific historical
+ // messages.
+ //
+ // Note that
+ // [ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions]
+ // will only list the auto-generated suggestions, while
+ // [CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion]
+ // will try to compile suggestion based on the provided conversation context
+ // in the real time.
+ SuggestArticles(context.Context, *SuggestArticlesRequest) (*SuggestArticlesResponse, error)
+ // Gets suggested faq answers for a participant based on specific historical
+ // messages.
+ SuggestFaqAnswers(context.Context, *SuggestFaqAnswersRequest) (*SuggestFaqAnswersResponse, error)
+ // Gets smart replies for a participant based on specific historical
+ // messages.
+ SuggestSmartReplies(context.Context, *SuggestSmartRepliesRequest) (*SuggestSmartRepliesResponse, error)
+ // Deprecated: Do not use.
+ // Deprecated: Use inline suggestion, event based suggestion or
+ // Suggestion* API instead.
+ // See
+ // [HumanAgentAssistantConfig.name][google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.name]
+ // for more details. Removal Date: 2020-09-01.
+ //
+ // Retrieves suggestions for live agents.
+ //
+ // This method should be used by human agent client software to fetch auto
+ // generated suggestions in real-time, while the conversation with an end user
+ // is in progress. The functionality is implemented in terms of the
+ // [list
+ // pagination](https://cloud.google.com/apis/design/design_patterns#list_pagination)
+ // design pattern. The client app should use the `next_page_token` field
+ // to fetch the next batch of suggestions. `suggestions` are sorted by
+ // `create_time` in descending order.
+ // To fetch latest suggestion, just set `page_size` to 1.
+ // To fetch new suggestions without duplication, send request with filter
+ // `create_time_epoch_microseconds > [first item's create_time of previous
+ // request]` and empty page_token.
+ ListSuggestions(context.Context, *ListSuggestionsRequest) (*ListSuggestionsResponse, error)
+ // Deprecated: Do not use.
+ // Deprecated. use
+ // [SuggestArticles][google.cloud.dialogflow.v2beta1.Participants.SuggestArticles]
+ // and
+ // [SuggestFaqAnswers][google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers]
+ // instead.
+ //
+ // Gets suggestions for a participant based on specific historical
+ // messages.
+ //
+ // Note that
+ // [ListSuggestions][google.cloud.dialogflow.v2beta1.Participants.ListSuggestions]
+ // will only list the auto-generated suggestions, while
+ // [CompileSuggestion][google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion]
+ // will try to compile suggestion based on the provided conversation context
+ // in the real time.
+ CompileSuggestion(context.Context, *CompileSuggestionRequest) (*CompileSuggestionResponse, error)
+}
+
+// UnimplementedParticipantsServer can be embedded to have forward compatible implementations.
+type UnimplementedParticipantsServer struct {
+}
+
+func (*UnimplementedParticipantsServer) CreateParticipant(context.Context, *CreateParticipantRequest) (*Participant, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method CreateParticipant not implemented")
+}
+func (*UnimplementedParticipantsServer) GetParticipant(context.Context, *GetParticipantRequest) (*Participant, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method GetParticipant not implemented")
+}
+func (*UnimplementedParticipantsServer) ListParticipants(context.Context, *ListParticipantsRequest) (*ListParticipantsResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method ListParticipants not implemented")
+}
+func (*UnimplementedParticipantsServer) UpdateParticipant(context.Context, *UpdateParticipantRequest) (*Participant, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method UpdateParticipant not implemented")
+}
+func (*UnimplementedParticipantsServer) AnalyzeContent(context.Context, *AnalyzeContentRequest) (*AnalyzeContentResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method AnalyzeContent not implemented")
+}
+func (*UnimplementedParticipantsServer) StreamingAnalyzeContent(Participants_StreamingAnalyzeContentServer) error {
+ return status1.Errorf(codes.Unimplemented, "method StreamingAnalyzeContent not implemented")
+}
+func (*UnimplementedParticipantsServer) SuggestArticles(context.Context, *SuggestArticlesRequest) (*SuggestArticlesResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method SuggestArticles not implemented")
+}
+func (*UnimplementedParticipantsServer) SuggestFaqAnswers(context.Context, *SuggestFaqAnswersRequest) (*SuggestFaqAnswersResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method SuggestFaqAnswers not implemented")
+}
+func (*UnimplementedParticipantsServer) SuggestSmartReplies(context.Context, *SuggestSmartRepliesRequest) (*SuggestSmartRepliesResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method SuggestSmartReplies not implemented")
+}
+func (*UnimplementedParticipantsServer) ListSuggestions(context.Context, *ListSuggestionsRequest) (*ListSuggestionsResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method ListSuggestions not implemented")
+}
+func (*UnimplementedParticipantsServer) CompileSuggestion(context.Context, *CompileSuggestionRequest) (*CompileSuggestionResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method CompileSuggestion not implemented")
+}
+
+func RegisterParticipantsServer(s *grpc.Server, srv ParticipantsServer) {
+ s.RegisterService(&_Participants_serviceDesc, srv)
+}
+
+func _Participants_CreateParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateParticipantRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).CreateParticipant(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/CreateParticipant",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).CreateParticipant(ctx, req.(*CreateParticipantRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_GetParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetParticipantRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).GetParticipant(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/GetParticipant",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).GetParticipant(ctx, req.(*GetParticipantRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_ListParticipants_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListParticipantsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).ListParticipants(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/ListParticipants",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).ListParticipants(ctx, req.(*ListParticipantsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_UpdateParticipant_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateParticipantRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).UpdateParticipant(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/UpdateParticipant",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).UpdateParticipant(ctx, req.(*UpdateParticipantRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_AnalyzeContent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(AnalyzeContentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).AnalyzeContent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/AnalyzeContent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).AnalyzeContent(ctx, req.(*AnalyzeContentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_StreamingAnalyzeContent_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(ParticipantsServer).StreamingAnalyzeContent(&participantsStreamingAnalyzeContentServer{stream})
+}
+
+type Participants_StreamingAnalyzeContentServer interface {
+ Send(*StreamingAnalyzeContentResponse) error
+ Recv() (*StreamingAnalyzeContentRequest, error)
+ grpc.ServerStream
+}
+
+type participantsStreamingAnalyzeContentServer struct {
+ grpc.ServerStream
+}
+
+func (x *participantsStreamingAnalyzeContentServer) Send(m *StreamingAnalyzeContentResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *participantsStreamingAnalyzeContentServer) Recv() (*StreamingAnalyzeContentRequest, error) {
+ m := new(StreamingAnalyzeContentRequest)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+func _Participants_SuggestArticles_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SuggestArticlesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).SuggestArticles(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/SuggestArticles",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).SuggestArticles(ctx, req.(*SuggestArticlesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_SuggestFaqAnswers_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SuggestFaqAnswersRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).SuggestFaqAnswers(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/SuggestFaqAnswers",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).SuggestFaqAnswers(ctx, req.(*SuggestFaqAnswersRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_SuggestSmartReplies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(SuggestSmartRepliesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).SuggestSmartReplies(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/SuggestSmartReplies",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).SuggestSmartReplies(ctx, req.(*SuggestSmartRepliesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_ListSuggestions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListSuggestionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).ListSuggestions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/ListSuggestions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).ListSuggestions(ctx, req.(*ListSuggestionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Participants_CompileSuggestion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CompileSuggestionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(ParticipantsServer).CompileSuggestion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Participants/CompileSuggestion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(ParticipantsServer).CompileSuggestion(ctx, req.(*CompileSuggestionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Participants_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Participants",
+ HandlerType: (*ParticipantsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "CreateParticipant",
+ Handler: _Participants_CreateParticipant_Handler,
+ },
+ {
+ MethodName: "GetParticipant",
+ Handler: _Participants_GetParticipant_Handler,
+ },
+ {
+ MethodName: "ListParticipants",
+ Handler: _Participants_ListParticipants_Handler,
+ },
+ {
+ MethodName: "UpdateParticipant",
+ Handler: _Participants_UpdateParticipant_Handler,
+ },
+ {
+ MethodName: "AnalyzeContent",
+ Handler: _Participants_AnalyzeContent_Handler,
+ },
+ {
+ MethodName: "SuggestArticles",
+ Handler: _Participants_SuggestArticles_Handler,
+ },
+ {
+ MethodName: "SuggestFaqAnswers",
+ Handler: _Participants_SuggestFaqAnswers_Handler,
+ },
+ {
+ MethodName: "SuggestSmartReplies",
+ Handler: _Participants_SuggestSmartReplies_Handler,
+ },
+ {
+ MethodName: "ListSuggestions",
+ Handler: _Participants_ListSuggestions_Handler,
+ },
+ {
+ MethodName: "CompileSuggestion",
+ Handler: _Participants_CompileSuggestion_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "StreamingAnalyzeContent",
+ Handler: _Participants_StreamingAnalyzeContent_Handler,
+ ServerStreams: true,
+ ClientStreams: true,
+ },
+ },
+ Metadata: "google/cloud/dialogflow/v2beta1/participant.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/session.pb.go b/dialogflow/apiv2beta1/dialogflowpb/session.pb.go
new file mode 100644
index 0000000..d7fa56b
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/session.pb.go
@@ -0,0 +1,2972 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/session.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ status "google.golang.org/genproto/googleapis/rpc/status"
+ latlng "google.golang.org/genproto/googleapis/type/latlng"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status1 "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ durationpb "google.golang.org/protobuf/types/known/durationpb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ structpb "google.golang.org/protobuf/types/known/structpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Represents the system's confidence that this knowledge answer is a good
+// match for this conversational query.
+type KnowledgeAnswers_Answer_MatchConfidenceLevel int32
+
+const (
+ // Not specified.
+ KnowledgeAnswers_Answer_MATCH_CONFIDENCE_LEVEL_UNSPECIFIED KnowledgeAnswers_Answer_MatchConfidenceLevel = 0
+ // Indicates that the confidence is low.
+ KnowledgeAnswers_Answer_LOW KnowledgeAnswers_Answer_MatchConfidenceLevel = 1
+ // Indicates our confidence is medium.
+ KnowledgeAnswers_Answer_MEDIUM KnowledgeAnswers_Answer_MatchConfidenceLevel = 2
+ // Indicates our confidence is high.
+ KnowledgeAnswers_Answer_HIGH KnowledgeAnswers_Answer_MatchConfidenceLevel = 3
+)
+
+// Enum value maps for KnowledgeAnswers_Answer_MatchConfidenceLevel.
+var (
+ KnowledgeAnswers_Answer_MatchConfidenceLevel_name = map[int32]string{
+ 0: "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED",
+ 1: "LOW",
+ 2: "MEDIUM",
+ 3: "HIGH",
+ }
+ KnowledgeAnswers_Answer_MatchConfidenceLevel_value = map[string]int32{
+ "MATCH_CONFIDENCE_LEVEL_UNSPECIFIED": 0,
+ "LOW": 1,
+ "MEDIUM": 2,
+ "HIGH": 3,
+ }
+)
+
+func (x KnowledgeAnswers_Answer_MatchConfidenceLevel) Enum() *KnowledgeAnswers_Answer_MatchConfidenceLevel {
+ p := new(KnowledgeAnswers_Answer_MatchConfidenceLevel)
+ *p = x
+ return p
+}
+
+func (x KnowledgeAnswers_Answer_MatchConfidenceLevel) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (KnowledgeAnswers_Answer_MatchConfidenceLevel) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes[0].Descriptor()
+}
+
+func (KnowledgeAnswers_Answer_MatchConfidenceLevel) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes[0]
+}
+
+func (x KnowledgeAnswers_Answer_MatchConfidenceLevel) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use KnowledgeAnswers_Answer_MatchConfidenceLevel.Descriptor instead.
+func (KnowledgeAnswers_Answer_MatchConfidenceLevel) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{5, 0, 0}
+}
+
+// Type of the response message.
+type StreamingRecognitionResult_MessageType int32
+
+const (
+ // Not specified. Should never be used.
+ StreamingRecognitionResult_MESSAGE_TYPE_UNSPECIFIED StreamingRecognitionResult_MessageType = 0
+ // Message contains a (possibly partial) transcript.
+ StreamingRecognitionResult_TRANSCRIPT StreamingRecognitionResult_MessageType = 1
+ // Message contains DTMF digits. When the client gets the message, it
+ // should stop sending additional data, half-close the gRPC connection, and
+ // wait for any additional results until the server closes the gRPC.
+ // connection.
+ StreamingRecognitionResult_DTMF_DIGITS StreamingRecognitionResult_MessageType = 3
+ // Event indicates that the server has detected the end of the user's speech
+ // utterance and expects no additional speech. Therefore, the server will
+ // not process additional audio (although it may subsequently return
+ // additional results). The client should stop sending additional audio
+ // data, half-close the gRPC connection, and wait for any additional results
+ // until the server closes the gRPC connection. This message is only sent if
+ // `single_utterance` was set to `true`, and is not used otherwise.
+ StreamingRecognitionResult_END_OF_SINGLE_UTTERANCE StreamingRecognitionResult_MessageType = 2
+ // Message contains DTMF digits. Before a message with DTMF_DIGITS is sent,
+ // a message with PARTIAL_DTMF_DIGITS may be sent with DTMF digits collected
+ // up to the time of sending, which represents an intermediate result.
+ StreamingRecognitionResult_PARTIAL_DTMF_DIGITS StreamingRecognitionResult_MessageType = 4
+)
+
+// Enum value maps for StreamingRecognitionResult_MessageType.
+var (
+ StreamingRecognitionResult_MessageType_name = map[int32]string{
+ 0: "MESSAGE_TYPE_UNSPECIFIED",
+ 1: "TRANSCRIPT",
+ 3: "DTMF_DIGITS",
+ 2: "END_OF_SINGLE_UTTERANCE",
+ 4: "PARTIAL_DTMF_DIGITS",
+ }
+ StreamingRecognitionResult_MessageType_value = map[string]int32{
+ "MESSAGE_TYPE_UNSPECIFIED": 0,
+ "TRANSCRIPT": 1,
+ "DTMF_DIGITS": 3,
+ "END_OF_SINGLE_UTTERANCE": 2,
+ "PARTIAL_DTMF_DIGITS": 4,
+ }
+)
+
+func (x StreamingRecognitionResult_MessageType) Enum() *StreamingRecognitionResult_MessageType {
+ p := new(StreamingRecognitionResult_MessageType)
+ *p = x
+ return p
+}
+
+func (x StreamingRecognitionResult_MessageType) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (StreamingRecognitionResult_MessageType) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes[1].Descriptor()
+}
+
+func (StreamingRecognitionResult_MessageType) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes[1]
+}
+
+func (x StreamingRecognitionResult_MessageType) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use StreamingRecognitionResult_MessageType.Descriptor instead.
+func (StreamingRecognitionResult_MessageType) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{8, 0}
+}
+
+// The request to detect user's intent.
+type DetectIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the session this query is sent to. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment
+ // (`Environment ID` might be referred to as environment name at some places).
+ // If `User ID` is not specified, we are using "-". It's up to the API caller
+ // to choose an appropriate `Session ID` and `User Id`. They can be a random
+ // number or some type of user and session identifiers (preferably hashed).
+ // The length of the `Session ID` and `User ID` must not exceed 36 characters.
+ // For more information, see the [API interactions
+ // guide](https://cloud.google.com/dialogflow/docs/api-overview).
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
+ // The parameters of this query.
+ QueryParams *QueryParameters `protobuf:"bytes,2,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
+ // Required. The input specification. It can be set to:
+ //
+ // 1. an audio config
+ // which instructs the speech recognizer how to process the speech audio,
+ //
+ // 2. a conversational query in the form of text, or
+ //
+ // 3. an event that specifies which intent to trigger.
+ QueryInput *QueryInput `protobuf:"bytes,3,opt,name=query_input,json=queryInput,proto3" json:"query_input,omitempty"`
+ // Instructs the speech synthesizer how to generate the output
+ // audio. If this field is not set and agent-level speech synthesizer is not
+ // configured, no output audio is generated.
+ OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,4,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
+ // Mask for
+ // [output_audio_config][google.cloud.dialogflow.v2beta1.DetectIntentRequest.output_audio_config]
+ // indicating which settings in this request-level config should override
+ // speech synthesizer settings defined at agent-level.
+ //
+ // If unspecified or empty,
+ // [output_audio_config][google.cloud.dialogflow.v2beta1.DetectIntentRequest.output_audio_config]
+ // replaces the agent-level config in its entirety.
+ OutputAudioConfigMask *fieldmaskpb.FieldMask `protobuf:"bytes,7,opt,name=output_audio_config_mask,json=outputAudioConfigMask,proto3" json:"output_audio_config_mask,omitempty"`
+ // The natural language speech audio to be processed. This field
+ // should be populated iff `query_input` is set to an input audio config.
+ // A single request can contain up to 1 minute of speech audio data.
+ InputAudio []byte `protobuf:"bytes,5,opt,name=input_audio,json=inputAudio,proto3" json:"input_audio,omitempty"`
+}
+
+func (x *DetectIntentRequest) Reset() {
+ *x = DetectIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DetectIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DetectIntentRequest) ProtoMessage() {}
+
+func (x *DetectIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DetectIntentRequest.ProtoReflect.Descriptor instead.
+func (*DetectIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *DetectIntentRequest) GetSession() string {
+ if x != nil {
+ return x.Session
+ }
+ return ""
+}
+
+func (x *DetectIntentRequest) GetQueryParams() *QueryParameters {
+ if x != nil {
+ return x.QueryParams
+ }
+ return nil
+}
+
+func (x *DetectIntentRequest) GetQueryInput() *QueryInput {
+ if x != nil {
+ return x.QueryInput
+ }
+ return nil
+}
+
+func (x *DetectIntentRequest) GetOutputAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.OutputAudioConfig
+ }
+ return nil
+}
+
+func (x *DetectIntentRequest) GetOutputAudioConfigMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.OutputAudioConfigMask
+ }
+ return nil
+}
+
+func (x *DetectIntentRequest) GetInputAudio() []byte {
+ if x != nil {
+ return x.InputAudio
+ }
+ return nil
+}
+
+// The message returned from the DetectIntent method.
+type DetectIntentResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of the response. It can be used to
+ // locate a response in the training example set or for reporting issues.
+ ResponseId string `protobuf:"bytes,1,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"`
+ // The selected results of the conversational query or event processing.
+ // See `alternative_query_results` for additional potential results.
+ QueryResult *QueryResult `protobuf:"bytes,2,opt,name=query_result,json=queryResult,proto3" json:"query_result,omitempty"`
+ // If Knowledge Connectors are enabled, there could be more than one result
+ // returned for a given query or event, and this field will contain all
+ // results except for the top one, which is captured in query_result. The
+ // alternative results are ordered by decreasing
+ // `QueryResult.intent_detection_confidence`. If Knowledge Connectors are
+ // disabled, this field will be empty until multiple responses for regular
+ // intents are supported, at which point those additional results will be
+ // surfaced here.
+ AlternativeQueryResults []*QueryResult `protobuf:"bytes,5,rep,name=alternative_query_results,json=alternativeQueryResults,proto3" json:"alternative_query_results,omitempty"`
+ // Specifies the status of the webhook request.
+ WebhookStatus *status.Status `protobuf:"bytes,3,opt,name=webhook_status,json=webhookStatus,proto3" json:"webhook_status,omitempty"`
+ // The audio data bytes encoded as specified in the request.
+ // Note: The output audio is generated based on the values of default platform
+ // text responses found in the `query_result.fulfillment_messages` field. If
+ // multiple default text responses exist, they will be concatenated when
+ // generating audio. If no default platform text responses exist, the
+ // generated audio content will be empty.
+ //
+ // In some scenarios, multiple output audio fields may be present in the
+ // response structure. In these cases, only the top-most-level audio output
+ // has content.
+ OutputAudio []byte `protobuf:"bytes,4,opt,name=output_audio,json=outputAudio,proto3" json:"output_audio,omitempty"`
+ // The config used by the speech synthesizer to generate the output audio.
+ OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,6,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
+}
+
+func (x *DetectIntentResponse) Reset() {
+ *x = DetectIntentResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DetectIntentResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DetectIntentResponse) ProtoMessage() {}
+
+func (x *DetectIntentResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DetectIntentResponse.ProtoReflect.Descriptor instead.
+func (*DetectIntentResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *DetectIntentResponse) GetResponseId() string {
+ if x != nil {
+ return x.ResponseId
+ }
+ return ""
+}
+
+func (x *DetectIntentResponse) GetQueryResult() *QueryResult {
+ if x != nil {
+ return x.QueryResult
+ }
+ return nil
+}
+
+func (x *DetectIntentResponse) GetAlternativeQueryResults() []*QueryResult {
+ if x != nil {
+ return x.AlternativeQueryResults
+ }
+ return nil
+}
+
+func (x *DetectIntentResponse) GetWebhookStatus() *status.Status {
+ if x != nil {
+ return x.WebhookStatus
+ }
+ return nil
+}
+
+func (x *DetectIntentResponse) GetOutputAudio() []byte {
+ if x != nil {
+ return x.OutputAudio
+ }
+ return nil
+}
+
+func (x *DetectIntentResponse) GetOutputAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.OutputAudioConfig
+ }
+ return nil
+}
+
+// Represents the parameters of the conversational query.
+type QueryParameters struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The time zone of this conversational query from the
+ // [time zone database](https://www.iana.org/time-zones), e.g.,
+ // America/New_York, Europe/Paris. If not provided, the time zone specified in
+ // agent settings is used.
+ TimeZone string `protobuf:"bytes,1,opt,name=time_zone,json=timeZone,proto3" json:"time_zone,omitempty"`
+ // The geo location of this conversational query.
+ GeoLocation *latlng.LatLng `protobuf:"bytes,2,opt,name=geo_location,json=geoLocation,proto3" json:"geo_location,omitempty"`
+ // The collection of contexts to be activated before this query is
+ // executed.
+ Contexts []*Context `protobuf:"bytes,3,rep,name=contexts,proto3" json:"contexts,omitempty"`
+ // Specifies whether to delete all contexts in the current session
+ // before the new ones are activated.
+ ResetContexts bool `protobuf:"varint,4,opt,name=reset_contexts,json=resetContexts,proto3" json:"reset_contexts,omitempty"`
+ // Additional session entity types to replace or extend developer
+ // entity types with. The entity synonyms apply to all languages and persist
+ // for the session of this query.
+ SessionEntityTypes []*SessionEntityType `protobuf:"bytes,5,rep,name=session_entity_types,json=sessionEntityTypes,proto3" json:"session_entity_types,omitempty"`
+ // This field can be used to pass custom data to your webhook.
+ // Arbitrary JSON objects are supported.
+ // If supplied, the value is used to populate the
+ // `WebhookRequest.original_detect_intent_request.payload`
+ // field sent to your webhook.
+ Payload *structpb.Struct `protobuf:"bytes,6,opt,name=payload,proto3" json:"payload,omitempty"`
+ // KnowledgeBases to get alternative results from. If not set, the
+ // KnowledgeBases enabled in the agent (through UI) will be used.
+ // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`.
+ KnowledgeBaseNames []string `protobuf:"bytes,12,rep,name=knowledge_base_names,json=knowledgeBaseNames,proto3" json:"knowledge_base_names,omitempty"`
+ // Configures the type of sentiment analysis to perform. If not
+ // provided, sentiment analysis is not performed.
+ // Note: Sentiment Analysis is only currently available for Essentials Edition
+ // agents.
+ SentimentAnalysisRequestConfig *SentimentAnalysisRequestConfig `protobuf:"bytes,10,opt,name=sentiment_analysis_request_config,json=sentimentAnalysisRequestConfig,proto3" json:"sentiment_analysis_request_config,omitempty"`
+ // For mega agent query, directly specify which sub agents to query.
+ // If any specified sub agent is not linked to the mega agent, an error will
+ // be returned. If empty, Dialogflow will decide which sub agents to query.
+ // If specified for a non-mega-agent query, will be silently ignored.
+ SubAgents []*SubAgent `protobuf:"bytes,13,rep,name=sub_agents,json=subAgents,proto3" json:"sub_agents,omitempty"`
+ // This field can be used to pass HTTP headers for a webhook
+ // call. These headers will be sent to webhook along with the headers that
+ // have been configured through Dialogflow web console. The headers defined
+ // within this field will overwrite the headers configured through Dialogflow
+ // console if there is a conflict. Header names are case-insensitive.
+ // Google's specified headers are not allowed. Including: "Host",
+ // "Content-Length", "Connection", "From", "User-Agent", "Accept-Encoding",
+ // "If-Modified-Since", "If-None-Match", "X-Forwarded-For", etc.
+ WebhookHeaders map[string]string `protobuf:"bytes,14,rep,name=webhook_headers,json=webhookHeaders,proto3" json:"webhook_headers,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+}
+
+func (x *QueryParameters) Reset() {
+ *x = QueryParameters{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryParameters) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryParameters) ProtoMessage() {}
+
+func (x *QueryParameters) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use QueryParameters.ProtoReflect.Descriptor instead.
+func (*QueryParameters) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *QueryParameters) GetTimeZone() string {
+ if x != nil {
+ return x.TimeZone
+ }
+ return ""
+}
+
+func (x *QueryParameters) GetGeoLocation() *latlng.LatLng {
+ if x != nil {
+ return x.GeoLocation
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetContexts() []*Context {
+ if x != nil {
+ return x.Contexts
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetResetContexts() bool {
+ if x != nil {
+ return x.ResetContexts
+ }
+ return false
+}
+
+func (x *QueryParameters) GetSessionEntityTypes() []*SessionEntityType {
+ if x != nil {
+ return x.SessionEntityTypes
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetPayload() *structpb.Struct {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetKnowledgeBaseNames() []string {
+ if x != nil {
+ return x.KnowledgeBaseNames
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetSentimentAnalysisRequestConfig() *SentimentAnalysisRequestConfig {
+ if x != nil {
+ return x.SentimentAnalysisRequestConfig
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetSubAgents() []*SubAgent {
+ if x != nil {
+ return x.SubAgents
+ }
+ return nil
+}
+
+func (x *QueryParameters) GetWebhookHeaders() map[string]string {
+ if x != nil {
+ return x.WebhookHeaders
+ }
+ return nil
+}
+
+// Represents the query input. It can contain either:
+//
+// 1. An audio config which
+// instructs the speech recognizer how to process the speech audio.
+//
+// 2. A conversational query in the form of text.
+//
+// 3. An event that specifies which intent to trigger.
+type QueryInput struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The input specification.
+ //
+ // Types that are assignable to Input:
+ //
+ // *QueryInput_AudioConfig
+ // *QueryInput_Text
+ // *QueryInput_Event
+ // *QueryInput_Dtmf
+ Input isQueryInput_Input `protobuf_oneof:"input"`
+}
+
+func (x *QueryInput) Reset() {
+ *x = QueryInput{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryInput) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryInput) ProtoMessage() {}
+
+func (x *QueryInput) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use QueryInput.ProtoReflect.Descriptor instead.
+func (*QueryInput) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{3}
+}
+
+func (m *QueryInput) GetInput() isQueryInput_Input {
+ if m != nil {
+ return m.Input
+ }
+ return nil
+}
+
+func (x *QueryInput) GetAudioConfig() *InputAudioConfig {
+ if x, ok := x.GetInput().(*QueryInput_AudioConfig); ok {
+ return x.AudioConfig
+ }
+ return nil
+}
+
+func (x *QueryInput) GetText() *TextInput {
+ if x, ok := x.GetInput().(*QueryInput_Text); ok {
+ return x.Text
+ }
+ return nil
+}
+
+func (x *QueryInput) GetEvent() *EventInput {
+ if x, ok := x.GetInput().(*QueryInput_Event); ok {
+ return x.Event
+ }
+ return nil
+}
+
+func (x *QueryInput) GetDtmf() *TelephonyDtmfEvents {
+ if x, ok := x.GetInput().(*QueryInput_Dtmf); ok {
+ return x.Dtmf
+ }
+ return nil
+}
+
+type isQueryInput_Input interface {
+ isQueryInput_Input()
+}
+
+type QueryInput_AudioConfig struct {
+ // Instructs the speech recognizer how to process the speech audio.
+ AudioConfig *InputAudioConfig `protobuf:"bytes,1,opt,name=audio_config,json=audioConfig,proto3,oneof"`
+}
+
+type QueryInput_Text struct {
+ // The natural language text to be processed.
+ Text *TextInput `protobuf:"bytes,2,opt,name=text,proto3,oneof"`
+}
+
+type QueryInput_Event struct {
+ // The event to be processed.
+ Event *EventInput `protobuf:"bytes,3,opt,name=event,proto3,oneof"`
+}
+
+type QueryInput_Dtmf struct {
+ // The DTMF digits used to invoke intent and fill in parameter value.
+ Dtmf *TelephonyDtmfEvents `protobuf:"bytes,4,opt,name=dtmf,proto3,oneof"`
+}
+
+func (*QueryInput_AudioConfig) isQueryInput_Input() {}
+
+func (*QueryInput_Text) isQueryInput_Input() {}
+
+func (*QueryInput_Event) isQueryInput_Input() {}
+
+func (*QueryInput_Dtmf) isQueryInput_Input() {}
+
+// Represents the result of conversational query or event processing.
+type QueryResult struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The original conversational query text:
+ //
+ // - If natural language text was provided as input, `query_text` contains
+ // a copy of the input.
+ // - If natural language speech audio was provided as input, `query_text`
+ // contains the speech recognition result. If speech recognizer produced
+ // multiple alternatives, a particular one is picked.
+ // - If automatic spell correction is enabled, `query_text` will contain the
+ // corrected user input.
+ QueryText string `protobuf:"bytes,1,opt,name=query_text,json=queryText,proto3" json:"query_text,omitempty"`
+ // The language that was triggered during intent detection.
+ // See [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes.
+ LanguageCode string `protobuf:"bytes,15,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // The Speech recognition confidence between 0.0 and 1.0. A higher number
+ // indicates an estimated greater likelihood that the recognized words are
+ // correct. The default of 0.0 is a sentinel value indicating that confidence
+ // was not set.
+ //
+ // This field is not guaranteed to be accurate or set. In particular this
+ // field isn't set for StreamingDetectIntent since the streaming endpoint has
+ // separate confidence estimates per portion of the audio in
+ // StreamingRecognitionResult.
+ SpeechRecognitionConfidence float32 `protobuf:"fixed32,2,opt,name=speech_recognition_confidence,json=speechRecognitionConfidence,proto3" json:"speech_recognition_confidence,omitempty"`
+ // The action name from the matched intent.
+ Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"`
+ // The collection of extracted parameters.
+ //
+ // Depending on your protocol or client library language, this is a
+ // map, associative array, symbol table, dictionary, or JSON object
+ // composed of a collection of (MapKey, MapValue) pairs:
+ //
+ // - MapKey type: string
+ // - MapKey value: parameter name
+ // - MapValue type:
+ // - If parameter's entity type is a composite entity: map
+ // - Else: depending on parameter value type, could be one of string,
+ // number, boolean, null, list or map
+ //
+ // - MapValue value:
+ // - If parameter's entity type is a composite entity:
+ // map from composite entity property names to property values
+ // - Else: parameter value
+ Parameters *structpb.Struct `protobuf:"bytes,4,opt,name=parameters,proto3" json:"parameters,omitempty"`
+ // This field is set to:
+ //
+ // - `false` if the matched intent has required parameters and not all of
+ // the required parameter values have been collected.
+ // - `true` if all required parameter values have been collected, or if the
+ // matched intent doesn't contain any required parameters.
+ AllRequiredParamsPresent bool `protobuf:"varint,5,opt,name=all_required_params_present,json=allRequiredParamsPresent,proto3" json:"all_required_params_present,omitempty"`
+ // Indicates whether the conversational query triggers a cancellation for slot
+ // filling. For more information, see the [cancel slot filling
+ // documentation](https://cloud.google.com/dialogflow/es/docs/intents-actions-parameters#cancel).
+ CancelsSlotFilling bool `protobuf:"varint,21,opt,name=cancels_slot_filling,json=cancelsSlotFilling,proto3" json:"cancels_slot_filling,omitempty"`
+ // The text to be pronounced to the user or shown on the screen.
+ // Note: This is a legacy field, `fulfillment_messages` should be preferred.
+ FulfillmentText string `protobuf:"bytes,6,opt,name=fulfillment_text,json=fulfillmentText,proto3" json:"fulfillment_text,omitempty"`
+ // The collection of rich messages to present to the user.
+ FulfillmentMessages []*Intent_Message `protobuf:"bytes,7,rep,name=fulfillment_messages,json=fulfillmentMessages,proto3" json:"fulfillment_messages,omitempty"`
+ // If the query was fulfilled by a webhook call, this field is set to the
+ // value of the `source` field returned in the webhook response.
+ WebhookSource string `protobuf:"bytes,8,opt,name=webhook_source,json=webhookSource,proto3" json:"webhook_source,omitempty"`
+ // If the query was fulfilled by a webhook call, this field is set to the
+ // value of the `payload` field returned in the webhook response.
+ WebhookPayload *structpb.Struct `protobuf:"bytes,9,opt,name=webhook_payload,json=webhookPayload,proto3" json:"webhook_payload,omitempty"`
+ // The collection of output contexts. If applicable,
+ // `output_contexts.parameters` contains entries with name
+ // `<parameter name>.original` containing the original parameter values
+ // before the query.
+ OutputContexts []*Context `protobuf:"bytes,10,rep,name=output_contexts,json=outputContexts,proto3" json:"output_contexts,omitempty"`
+ // The intent that matched the conversational query. Some, not
+ // all fields are filled in this message, including but not limited to:
+ // `name`, `display_name`, `end_interaction` and `is_fallback`.
+ Intent *Intent `protobuf:"bytes,11,opt,name=intent,proto3" json:"intent,omitempty"`
+ // The intent detection confidence. Values range from 0.0
+ // (completely uncertain) to 1.0 (completely certain).
+ // This value is for informational purpose only and is only used to
+ // help match the best intent within the classification threshold.
+ // This value may change for the same end-user expression at any time due to a
+ // model retraining or change in implementation.
+ // If there are `multiple knowledge_answers` messages, this value is set to
+ // the greatest `knowledgeAnswers.match_confidence` value in the list.
+ IntentDetectionConfidence float32 `protobuf:"fixed32,12,opt,name=intent_detection_confidence,json=intentDetectionConfidence,proto3" json:"intent_detection_confidence,omitempty"`
+ // Free-form diagnostic information for the associated detect intent request.
+ // The fields of this data can change without notice, so you should not write
+ // code that depends on its structure.
+ // The data may contain:
+ //
+ // - webhook call latency
+ // - webhook errors
+ DiagnosticInfo *structpb.Struct `protobuf:"bytes,14,opt,name=diagnostic_info,json=diagnosticInfo,proto3" json:"diagnostic_info,omitempty"`
+ // The sentiment analysis result, which depends on the
+ // `sentiment_analysis_request_config` specified in the request.
+ SentimentAnalysisResult *SentimentAnalysisResult `protobuf:"bytes,17,opt,name=sentiment_analysis_result,json=sentimentAnalysisResult,proto3" json:"sentiment_analysis_result,omitempty"`
+ // The result from Knowledge Connector (if any), ordered by decreasing
+ // `KnowledgeAnswers.match_confidence`.
+ KnowledgeAnswers *KnowledgeAnswers `protobuf:"bytes,18,opt,name=knowledge_answers,json=knowledgeAnswers,proto3" json:"knowledge_answers,omitempty"`
+}
+
+func (x *QueryResult) Reset() {
+ *x = QueryResult{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *QueryResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*QueryResult) ProtoMessage() {}
+
+func (x *QueryResult) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use QueryResult.ProtoReflect.Descriptor instead.
+func (*QueryResult) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *QueryResult) GetQueryText() string {
+ if x != nil {
+ return x.QueryText
+ }
+ return ""
+}
+
+func (x *QueryResult) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *QueryResult) GetSpeechRecognitionConfidence() float32 {
+ if x != nil {
+ return x.SpeechRecognitionConfidence
+ }
+ return 0
+}
+
+func (x *QueryResult) GetAction() string {
+ if x != nil {
+ return x.Action
+ }
+ return ""
+}
+
+func (x *QueryResult) GetParameters() *structpb.Struct {
+ if x != nil {
+ return x.Parameters
+ }
+ return nil
+}
+
+func (x *QueryResult) GetAllRequiredParamsPresent() bool {
+ if x != nil {
+ return x.AllRequiredParamsPresent
+ }
+ return false
+}
+
+func (x *QueryResult) GetCancelsSlotFilling() bool {
+ if x != nil {
+ return x.CancelsSlotFilling
+ }
+ return false
+}
+
+func (x *QueryResult) GetFulfillmentText() string {
+ if x != nil {
+ return x.FulfillmentText
+ }
+ return ""
+}
+
+func (x *QueryResult) GetFulfillmentMessages() []*Intent_Message {
+ if x != nil {
+ return x.FulfillmentMessages
+ }
+ return nil
+}
+
+func (x *QueryResult) GetWebhookSource() string {
+ if x != nil {
+ return x.WebhookSource
+ }
+ return ""
+}
+
+func (x *QueryResult) GetWebhookPayload() *structpb.Struct {
+ if x != nil {
+ return x.WebhookPayload
+ }
+ return nil
+}
+
+func (x *QueryResult) GetOutputContexts() []*Context {
+ if x != nil {
+ return x.OutputContexts
+ }
+ return nil
+}
+
+func (x *QueryResult) GetIntent() *Intent {
+ if x != nil {
+ return x.Intent
+ }
+ return nil
+}
+
+func (x *QueryResult) GetIntentDetectionConfidence() float32 {
+ if x != nil {
+ return x.IntentDetectionConfidence
+ }
+ return 0
+}
+
+func (x *QueryResult) GetDiagnosticInfo() *structpb.Struct {
+ if x != nil {
+ return x.DiagnosticInfo
+ }
+ return nil
+}
+
+func (x *QueryResult) GetSentimentAnalysisResult() *SentimentAnalysisResult {
+ if x != nil {
+ return x.SentimentAnalysisResult
+ }
+ return nil
+}
+
+func (x *QueryResult) GetKnowledgeAnswers() *KnowledgeAnswers {
+ if x != nil {
+ return x.KnowledgeAnswers
+ }
+ return nil
+}
+
+// Represents the result of querying a Knowledge base.
+type KnowledgeAnswers struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // A list of answers from Knowledge Connector.
+ Answers []*KnowledgeAnswers_Answer `protobuf:"bytes,1,rep,name=answers,proto3" json:"answers,omitempty"`
+}
+
+func (x *KnowledgeAnswers) Reset() {
+ *x = KnowledgeAnswers{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KnowledgeAnswers) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KnowledgeAnswers) ProtoMessage() {}
+
+func (x *KnowledgeAnswers) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KnowledgeAnswers.ProtoReflect.Descriptor instead.
+func (*KnowledgeAnswers) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *KnowledgeAnswers) GetAnswers() []*KnowledgeAnswers_Answer {
+ if x != nil {
+ return x.Answers
+ }
+ return nil
+}
+
+// The top-level message sent by the client to the
+// [Sessions.StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]
+// method.
+//
+// Multiple request messages should be sent in order:
+//
+// 1. The first message must contain
+// [session][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.session],
+//
+// [query_input][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_input]
+// plus optionally
+// [query_params][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_params].
+// If the client wants to receive an audio response, it should also contain
+// [output_audio_config][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.output_audio_config].
+// The message must not contain
+// [input_audio][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.input_audio].
+//
+// 2. If
+// [query_input][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_input]
+// was set to
+//
+// [query_input.audio_config][google.cloud.dialogflow.v2beta1.InputAudioConfig],
+// all subsequent messages must contain
+// [input_audio][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.input_audio]
+// to continue with Speech recognition. If you decide to rather detect an
+// intent from text input after you already started Speech recognition,
+// please send a message with
+// [query_input.text][google.cloud.dialogflow.v2beta1.QueryInput.text].
+//
+// However, note that:
+//
+// * Dialogflow will bill you for the audio duration so far.
+// * Dialogflow discards all Speech recognition results in favor of the
+// input text.
+// * Dialogflow will use the language code from the first message.
+//
+// After you sent all input, you must half-close or abort the request stream.
+type StreamingDetectIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the session the query is sent to.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we are using "-". It's up to the API caller
+ // to choose an appropriate `Session ID` and `User Id`. They can be a random
+ // number or some type of user and session identifiers (preferably hashed).
+ // The length of the `Session ID` and `User ID` must not exceed 36 characters.
+ //
+ // For more information, see the [API interactions
+ // guide](https://cloud.google.com/dialogflow/docs/api-overview).
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
+ // The parameters of this query.
+ QueryParams *QueryParameters `protobuf:"bytes,2,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
+ // Required. The input specification. It can be set to:
+ //
+ // 1. an audio config which instructs the speech recognizer how to process
+ // the speech audio,
+ //
+ // 2. a conversational query in the form of text, or
+ //
+ // 3. an event that specifies which intent to trigger.
+ QueryInput *QueryInput `protobuf:"bytes,3,opt,name=query_input,json=queryInput,proto3" json:"query_input,omitempty"`
+ // DEPRECATED. Please use
+ // [InputAudioConfig.single_utterance][google.cloud.dialogflow.v2beta1.InputAudioConfig.single_utterance]
+ // instead. If `false` (default), recognition does not cease until the client
+ // closes the stream. If `true`, the recognizer will detect a single spoken
+ // utterance in input audio. Recognition ceases when it detects the audio's
+ // voice has stopped or paused. In this case, once a detected intent is
+ // received, the client should close the stream and start a new request with a
+ // new stream as needed. This setting is ignored when `query_input` is a piece
+ // of text or an event.
+ //
+ // Deprecated: Do not use.
+ SingleUtterance bool `protobuf:"varint,4,opt,name=single_utterance,json=singleUtterance,proto3" json:"single_utterance,omitempty"`
+ // Instructs the speech synthesizer how to generate the output
+ // audio. If this field is not set and agent-level speech synthesizer is not
+ // configured, no output audio is generated.
+ OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,5,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
+ // Mask for
+ // [output_audio_config][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.output_audio_config]
+ // indicating which settings in this request-level config should override
+ // speech synthesizer settings defined at agent-level.
+ //
+ // If unspecified or empty,
+ // [output_audio_config][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.output_audio_config]
+ // replaces the agent-level config in its entirety.
+ OutputAudioConfigMask *fieldmaskpb.FieldMask `protobuf:"bytes,7,opt,name=output_audio_config_mask,json=outputAudioConfigMask,proto3" json:"output_audio_config_mask,omitempty"`
+ // The input audio content to be recognized. Must be sent if
+ // `query_input` was set to a streaming input audio config. The complete audio
+ // over all streaming messages must not exceed 1 minute.
+ InputAudio []byte `protobuf:"bytes,6,opt,name=input_audio,json=inputAudio,proto3" json:"input_audio,omitempty"`
+}
+
+func (x *StreamingDetectIntentRequest) Reset() {
+ *x = StreamingDetectIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamingDetectIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingDetectIntentRequest) ProtoMessage() {}
+
+func (x *StreamingDetectIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingDetectIntentRequest.ProtoReflect.Descriptor instead.
+func (*StreamingDetectIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *StreamingDetectIntentRequest) GetSession() string {
+ if x != nil {
+ return x.Session
+ }
+ return ""
+}
+
+func (x *StreamingDetectIntentRequest) GetQueryParams() *QueryParameters {
+ if x != nil {
+ return x.QueryParams
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentRequest) GetQueryInput() *QueryInput {
+ if x != nil {
+ return x.QueryInput
+ }
+ return nil
+}
+
+// Deprecated: Do not use.
+func (x *StreamingDetectIntentRequest) GetSingleUtterance() bool {
+ if x != nil {
+ return x.SingleUtterance
+ }
+ return false
+}
+
+func (x *StreamingDetectIntentRequest) GetOutputAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.OutputAudioConfig
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentRequest) GetOutputAudioConfigMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.OutputAudioConfigMask
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentRequest) GetInputAudio() []byte {
+ if x != nil {
+ return x.InputAudio
+ }
+ return nil
+}
+
+// The top-level message returned from the
+// `StreamingDetectIntent` method.
+//
+// Multiple response messages can be returned in order:
+//
+// 1. If the `StreamingDetectIntentRequest.input_audio` field was
+// set, the `recognition_result` field is populated for one
+// or more messages.
+// See the
+// [StreamingRecognitionResult][google.cloud.dialogflow.v2beta1.StreamingRecognitionResult]
+// message for details about the result message sequence.
+//
+// 2. The next message contains `response_id`, `query_result`,
+// `alternative_query_results` and optionally `webhook_status` if a WebHook
+// was called.
+//
+// 3. If `output_audio_config` was specified in the request or agent-level
+// speech synthesizer is configured, all subsequent messages contain
+// `output_audio` and `output_audio_config`.
+type StreamingDetectIntentResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of the response. It can be used to
+ // locate a response in the training example set or for reporting issues.
+ ResponseId string `protobuf:"bytes,1,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"`
+ // The result of speech recognition.
+ RecognitionResult *StreamingRecognitionResult `protobuf:"bytes,2,opt,name=recognition_result,json=recognitionResult,proto3" json:"recognition_result,omitempty"`
+ // The selected results of the conversational query or event processing.
+ // See `alternative_query_results` for additional potential results.
+ QueryResult *QueryResult `protobuf:"bytes,3,opt,name=query_result,json=queryResult,proto3" json:"query_result,omitempty"`
+ // If Knowledge Connectors are enabled, there could be more than one result
+ // returned for a given query or event, and this field will contain all
+ // results except for the top one, which is captured in query_result. The
+ // alternative results are ordered by decreasing
+ // `QueryResult.intent_detection_confidence`. If Knowledge Connectors are
+ // disabled, this field will be empty until multiple responses for regular
+ // intents are supported, at which point those additional results will be
+ // surfaced here.
+ AlternativeQueryResults []*QueryResult `protobuf:"bytes,7,rep,name=alternative_query_results,json=alternativeQueryResults,proto3" json:"alternative_query_results,omitempty"`
+ // Specifies the status of the webhook request.
+ WebhookStatus *status.Status `protobuf:"bytes,4,opt,name=webhook_status,json=webhookStatus,proto3" json:"webhook_status,omitempty"`
+ // The audio data bytes encoded as specified in the request.
+ // Note: The output audio is generated based on the values of default platform
+ // text responses found in the `query_result.fulfillment_messages` field. If
+ // multiple default text responses exist, they will be concatenated when
+ // generating audio. If no default platform text responses exist, the
+ // generated audio content will be empty.
+ //
+ // In some scenarios, multiple output audio fields may be present in the
+ // response structure. In these cases, only the top-most-level audio output
+ // has content.
+ OutputAudio []byte `protobuf:"bytes,5,opt,name=output_audio,json=outputAudio,proto3" json:"output_audio,omitempty"`
+ // The config used by the speech synthesizer to generate the output audio.
+ OutputAudioConfig *OutputAudioConfig `protobuf:"bytes,6,opt,name=output_audio_config,json=outputAudioConfig,proto3" json:"output_audio_config,omitempty"`
+}
+
+func (x *StreamingDetectIntentResponse) Reset() {
+ *x = StreamingDetectIntentResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamingDetectIntentResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingDetectIntentResponse) ProtoMessage() {}
+
+func (x *StreamingDetectIntentResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingDetectIntentResponse.ProtoReflect.Descriptor instead.
+func (*StreamingDetectIntentResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *StreamingDetectIntentResponse) GetResponseId() string {
+ if x != nil {
+ return x.ResponseId
+ }
+ return ""
+}
+
+func (x *StreamingDetectIntentResponse) GetRecognitionResult() *StreamingRecognitionResult {
+ if x != nil {
+ return x.RecognitionResult
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentResponse) GetQueryResult() *QueryResult {
+ if x != nil {
+ return x.QueryResult
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentResponse) GetAlternativeQueryResults() []*QueryResult {
+ if x != nil {
+ return x.AlternativeQueryResults
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentResponse) GetWebhookStatus() *status.Status {
+ if x != nil {
+ return x.WebhookStatus
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentResponse) GetOutputAudio() []byte {
+ if x != nil {
+ return x.OutputAudio
+ }
+ return nil
+}
+
+func (x *StreamingDetectIntentResponse) GetOutputAudioConfig() *OutputAudioConfig {
+ if x != nil {
+ return x.OutputAudioConfig
+ }
+ return nil
+}
+
+// Contains a speech recognition result corresponding to a portion of the audio
+// that is currently being processed or an indication that this is the end
+// of the single requested utterance.
+//
+// While end-user audio is being processed, Dialogflow sends a series of
+// results. Each result may contain a `transcript` value. A transcript
+// represents a portion of the utterance. While the recognizer is processing
+// audio, transcript values may be interim values or finalized values.
+// Once a transcript is finalized, the `is_final` value is set to true and
+// processing continues for the next transcript.
+//
+// If `StreamingDetectIntentRequest.query_input.audio_config.single_utterance`
+// was true, and the recognizer has completed processing audio,
+// the `message_type` value is set to `END_OF_SINGLE_UTTERANCE and the
+// following (last) result contains the last finalized transcript.
+//
+// The complete end-user utterance is determined by concatenating the
+// finalized transcript values received for the series of results.
+//
+// In the following example, single utterance is enabled. In the case where
+// single utterance is not enabled, result 7 would not occur.
+//
+// ```
+// Num | transcript | message_type | is_final
+// --- | ----------------------- | ----------------------- | --------
+// 1 | "tube" | TRANSCRIPT | false
+// 2 | "to be a" | TRANSCRIPT | false
+// 3 | "to be" | TRANSCRIPT | false
+// 4 | "to be or not to be" | TRANSCRIPT | true
+// 5 | "that's" | TRANSCRIPT | false
+// 6 | "that is | TRANSCRIPT | false
+// 7 | unset | END_OF_SINGLE_UTTERANCE | unset
+// 8 | " that is the question" | TRANSCRIPT | true
+// ```
+//
+// Concatenating the finalized transcripts with `is_final` set to true,
+// the complete utterance becomes "to be or not to be that is the question".
+type StreamingRecognitionResult struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Type of the result message.
+ MessageType StreamingRecognitionResult_MessageType `protobuf:"varint,1,opt,name=message_type,json=messageType,proto3,enum=google.cloud.dialogflow.v2beta1.StreamingRecognitionResult_MessageType" json:"message_type,omitempty"`
+ // Transcript text representing the words that the user spoke.
+ // Populated if and only if `message_type` = `TRANSCRIPT`.
+ Transcript string `protobuf:"bytes,2,opt,name=transcript,proto3" json:"transcript,omitempty"`
+ // If `false`, the `StreamingRecognitionResult` represents an
+ // interim result that may change. If `true`, the recognizer will not return
+ // any further hypotheses about this piece of the audio. May only be populated
+ // for `message_type` = `TRANSCRIPT`.
+ IsFinal bool `protobuf:"varint,3,opt,name=is_final,json=isFinal,proto3" json:"is_final,omitempty"`
+ // The Speech confidence between 0.0 and 1.0 for the current portion of audio.
+ // A higher number indicates an estimated greater likelihood that the
+ // recognized words are correct. The default of 0.0 is a sentinel value
+ // indicating that confidence was not set.
+ //
+ // This field is typically only provided if `is_final` is true and you should
+ // not rely on it being accurate or even set.
+ Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
+ // An estimate of the likelihood that the speech recognizer will
+ // not change its guess about this interim recognition result:
+ //
+ // - If the value is unspecified or 0.0, Dialogflow didn't compute the
+ // stability. In particular, Dialogflow will only provide stability for
+ // `TRANSCRIPT` results with `is_final = false`.
+ // - Otherwise, the value is in (0.0, 1.0] where 0.0 means completely
+ // unstable and 1.0 means completely stable.
+ Stability float32 `protobuf:"fixed32,6,opt,name=stability,proto3" json:"stability,omitempty"`
+ // Word-specific information for the words recognized by Speech in
+ // [transcript][google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.transcript].
+ // Populated if and only if `message_type` = `TRANSCRIPT` and
+ // [InputAudioConfig.enable_word_info] is set.
+ SpeechWordInfo []*SpeechWordInfo `protobuf:"bytes,7,rep,name=speech_word_info,json=speechWordInfo,proto3" json:"speech_word_info,omitempty"`
+ // Time offset of the end of this Speech recognition result relative to the
+ // beginning of the audio. Only populated for `message_type` = `TRANSCRIPT`.
+ SpeechEndOffset *durationpb.Duration `protobuf:"bytes,8,opt,name=speech_end_offset,json=speechEndOffset,proto3" json:"speech_end_offset,omitempty"`
+ // Detected language code for the transcript.
+ LanguageCode string `protobuf:"bytes,10,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+ // DTMF digits. Populated if and only if `message_type` = `DTMF_DIGITS`.
+ DtmfDigits *TelephonyDtmfEvents `protobuf:"bytes,5,opt,name=dtmf_digits,json=dtmfDigits,proto3" json:"dtmf_digits,omitempty"`
+}
+
+func (x *StreamingRecognitionResult) Reset() {
+ *x = StreamingRecognitionResult{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *StreamingRecognitionResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*StreamingRecognitionResult) ProtoMessage() {}
+
+func (x *StreamingRecognitionResult) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use StreamingRecognitionResult.ProtoReflect.Descriptor instead.
+func (*StreamingRecognitionResult) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *StreamingRecognitionResult) GetMessageType() StreamingRecognitionResult_MessageType {
+ if x != nil {
+ return x.MessageType
+ }
+ return StreamingRecognitionResult_MESSAGE_TYPE_UNSPECIFIED
+}
+
+func (x *StreamingRecognitionResult) GetTranscript() string {
+ if x != nil {
+ return x.Transcript
+ }
+ return ""
+}
+
+func (x *StreamingRecognitionResult) GetIsFinal() bool {
+ if x != nil {
+ return x.IsFinal
+ }
+ return false
+}
+
+func (x *StreamingRecognitionResult) GetConfidence() float32 {
+ if x != nil {
+ return x.Confidence
+ }
+ return 0
+}
+
+func (x *StreamingRecognitionResult) GetStability() float32 {
+ if x != nil {
+ return x.Stability
+ }
+ return 0
+}
+
+func (x *StreamingRecognitionResult) GetSpeechWordInfo() []*SpeechWordInfo {
+ if x != nil {
+ return x.SpeechWordInfo
+ }
+ return nil
+}
+
+func (x *StreamingRecognitionResult) GetSpeechEndOffset() *durationpb.Duration {
+ if x != nil {
+ return x.SpeechEndOffset
+ }
+ return nil
+}
+
+func (x *StreamingRecognitionResult) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+func (x *StreamingRecognitionResult) GetDtmfDigits() *TelephonyDtmfEvents {
+ if x != nil {
+ return x.DtmfDigits
+ }
+ return nil
+}
+
+// Represents the natural language text to be processed.
+type TextInput struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The UTF-8 encoded natural language text to be processed.
+ // Text length must not exceed 256 characters for virtual agent interactions.
+ Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
+ // Required. The language of this conversational query. See [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes. Note that queries in
+ // the same session do not necessarily need to specify the same language.
+ LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *TextInput) Reset() {
+ *x = TextInput{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[9]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *TextInput) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*TextInput) ProtoMessage() {}
+
+func (x *TextInput) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[9]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use TextInput.ProtoReflect.Descriptor instead.
+func (*TextInput) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{9}
+}
+
+func (x *TextInput) GetText() string {
+ if x != nil {
+ return x.Text
+ }
+ return ""
+}
+
+func (x *TextInput) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// Events allow for matching intents by event name instead of the natural
+// language input. For instance, input `<event: { name: "welcome_event",
+// parameters: { name: "Sam" } }>` can trigger a personalized welcome response.
+// The parameter `name` may be used by the agent in the response:
+// `"Hello #welcome_event.name! What can I do for you today?"`.
+type EventInput struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The unique identifier of the event.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // The collection of parameters associated with the event.
+ //
+ // Depending on your protocol or client library language, this is a
+ // map, associative array, symbol table, dictionary, or JSON object
+ // composed of a collection of (MapKey, MapValue) pairs:
+ //
+ // - MapKey type: string
+ // - MapKey value: parameter name
+ // - MapValue type:
+ // - If parameter's entity type is a composite entity: map
+ // - Else: depending on parameter value type, could be one of string,
+ // number, boolean, null, list or map
+ //
+ // - MapValue value:
+ // - If parameter's entity type is a composite entity:
+ // map from composite entity property names to property values
+ // - Else: parameter value
+ Parameters *structpb.Struct `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"`
+ // Required. The language of this query. See [Language
+ // Support](https://cloud.google.com/dialogflow/docs/reference/language)
+ // for a list of the currently supported language codes. Note that queries in
+ // the same session do not necessarily need to specify the same language.
+ //
+ // This field is ignored when used in the context of a
+ // [WebhookResponse.followup_event_input][google.cloud.dialogflow.v2beta1.WebhookResponse.followup_event_input]
+ // field, because the language was already defined in the originating detect
+ // intent request.
+ LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
+}
+
+func (x *EventInput) Reset() {
+ *x = EventInput{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[10]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *EventInput) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*EventInput) ProtoMessage() {}
+
+func (x *EventInput) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[10]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use EventInput.ProtoReflect.Descriptor instead.
+func (*EventInput) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{10}
+}
+
+func (x *EventInput) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *EventInput) GetParameters() *structpb.Struct {
+ if x != nil {
+ return x.Parameters
+ }
+ return nil
+}
+
+func (x *EventInput) GetLanguageCode() string {
+ if x != nil {
+ return x.LanguageCode
+ }
+ return ""
+}
+
+// Configures the types of sentiment analysis to perform.
+type SentimentAnalysisRequestConfig struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Instructs the service to perform sentiment analysis on
+ // `query_text`. If not provided, sentiment analysis is not performed on
+ // `query_text`.
+ AnalyzeQueryTextSentiment bool `protobuf:"varint,1,opt,name=analyze_query_text_sentiment,json=analyzeQueryTextSentiment,proto3" json:"analyze_query_text_sentiment,omitempty"`
+}
+
+func (x *SentimentAnalysisRequestConfig) Reset() {
+ *x = SentimentAnalysisRequestConfig{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[11]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SentimentAnalysisRequestConfig) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SentimentAnalysisRequestConfig) ProtoMessage() {}
+
+func (x *SentimentAnalysisRequestConfig) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[11]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SentimentAnalysisRequestConfig.ProtoReflect.Descriptor instead.
+func (*SentimentAnalysisRequestConfig) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{11}
+}
+
+func (x *SentimentAnalysisRequestConfig) GetAnalyzeQueryTextSentiment() bool {
+ if x != nil {
+ return x.AnalyzeQueryTextSentiment
+ }
+ return false
+}
+
+// The result of sentiment analysis. Sentiment analysis inspects user input
+// and identifies the prevailing subjective opinion, especially to determine a
+// user's attitude as positive, negative, or neutral.
+// For [Participants.DetectIntent][], it needs to be configured in
+// [DetectIntentRequest.query_params][google.cloud.dialogflow.v2beta1.DetectIntentRequest.query_params].
+// For [Participants.StreamingDetectIntent][], it needs to be configured in
+// [StreamingDetectIntentRequest.query_params][google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_params].
+// And for
+// [Participants.AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+// and
+// [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent],
+// it needs to be configured in
+// [ConversationProfile.human_agent_assistant_config][google.cloud.dialogflow.v2beta1.ConversationProfile.human_agent_assistant_config]
+type SentimentAnalysisResult struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The sentiment analysis result for `query_text`.
+ QueryTextSentiment *Sentiment `protobuf:"bytes,1,opt,name=query_text_sentiment,json=queryTextSentiment,proto3" json:"query_text_sentiment,omitempty"`
+}
+
+func (x *SentimentAnalysisResult) Reset() {
+ *x = SentimentAnalysisResult{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[12]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SentimentAnalysisResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SentimentAnalysisResult) ProtoMessage() {}
+
+func (x *SentimentAnalysisResult) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[12]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SentimentAnalysisResult.ProtoReflect.Descriptor instead.
+func (*SentimentAnalysisResult) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{12}
+}
+
+func (x *SentimentAnalysisResult) GetQueryTextSentiment() *Sentiment {
+ if x != nil {
+ return x.QueryTextSentiment
+ }
+ return nil
+}
+
+// The sentiment, such as positive/negative feeling or association, for a unit
+// of analysis, such as the query text. See:
+// https://cloud.google.com/natural-language/docs/basics#interpreting_sentiment_analysis_values
+// for how to interpret the result.
+type Sentiment struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Sentiment score between -1.0 (negative sentiment) and 1.0 (positive
+ // sentiment).
+ Score float32 `protobuf:"fixed32,1,opt,name=score,proto3" json:"score,omitempty"`
+ // A non-negative number in the [0, +inf) range, which represents the absolute
+ // magnitude of sentiment, regardless of score (positive or negative).
+ Magnitude float32 `protobuf:"fixed32,2,opt,name=magnitude,proto3" json:"magnitude,omitempty"`
+}
+
+func (x *Sentiment) Reset() {
+ *x = Sentiment{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[13]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Sentiment) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Sentiment) ProtoMessage() {}
+
+func (x *Sentiment) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[13]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Sentiment.ProtoReflect.Descriptor instead.
+func (*Sentiment) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{13}
+}
+
+func (x *Sentiment) GetScore() float32 {
+ if x != nil {
+ return x.Score
+ }
+ return 0
+}
+
+func (x *Sentiment) GetMagnitude() float32 {
+ if x != nil {
+ return x.Magnitude
+ }
+ return 0
+}
+
+// An answer from Knowledge Connector.
+type KnowledgeAnswers_Answer struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Indicates which Knowledge Document this answer was extracted from.
+ // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base
+ // ID>/documents/<Document ID>`.
+ Source string `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
+ // The corresponding FAQ question if the answer was extracted from a FAQ
+ // Document, empty otherwise.
+ FaqQuestion string `protobuf:"bytes,2,opt,name=faq_question,json=faqQuestion,proto3" json:"faq_question,omitempty"`
+ // The piece of text from the `source` knowledge base document that answers
+ // this conversational query.
+ Answer string `protobuf:"bytes,3,opt,name=answer,proto3" json:"answer,omitempty"`
+ // The system's confidence level that this knowledge answer is a good match
+ // for this conversational query.
+ // NOTE: The confidence level for a given `<query, answer>` pair may change
+ // without notice, as it depends on models that are constantly being
+ // improved. However, it will change less frequently than the confidence
+ // score below, and should be preferred for referencing the quality of an
+ // answer.
+ MatchConfidenceLevel KnowledgeAnswers_Answer_MatchConfidenceLevel `protobuf:"varint,4,opt,name=match_confidence_level,json=matchConfidenceLevel,proto3,enum=google.cloud.dialogflow.v2beta1.KnowledgeAnswers_Answer_MatchConfidenceLevel" json:"match_confidence_level,omitempty"`
+ // The system's confidence score that this Knowledge answer is a good match
+ // for this conversational query.
+ // The range is from 0.0 (completely uncertain) to 1.0 (completely certain).
+ // Note: The confidence score is likely to vary somewhat (possibly even for
+ // identical requests), as the underlying model is under constant
+ // improvement. It may be deprecated in the future. We recommend using
+ // `match_confidence_level` which should be generally more stable.
+ MatchConfidence float32 `protobuf:"fixed32,5,opt,name=match_confidence,json=matchConfidence,proto3" json:"match_confidence,omitempty"`
+}
+
+func (x *KnowledgeAnswers_Answer) Reset() {
+ *x = KnowledgeAnswers_Answer{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[15]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *KnowledgeAnswers_Answer) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*KnowledgeAnswers_Answer) ProtoMessage() {}
+
+func (x *KnowledgeAnswers_Answer) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[15]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use KnowledgeAnswers_Answer.ProtoReflect.Descriptor instead.
+func (*KnowledgeAnswers_Answer) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP(), []int{5, 0}
+}
+
+func (x *KnowledgeAnswers_Answer) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *KnowledgeAnswers_Answer) GetFaqQuestion() string {
+ if x != nil {
+ return x.FaqQuestion
+ }
+ return ""
+}
+
+func (x *KnowledgeAnswers_Answer) GetAnswer() string {
+ if x != nil {
+ return x.Answer
+ }
+ return ""
+}
+
+func (x *KnowledgeAnswers_Answer) GetMatchConfidenceLevel() KnowledgeAnswers_Answer_MatchConfidenceLevel {
+ if x != nil {
+ return x.MatchConfidenceLevel
+ }
+ return KnowledgeAnswers_Answer_MATCH_CONFIDENCE_LEVEL_UNSPECIFIED
+}
+
+func (x *KnowledgeAnswers_Answer) GetMatchConfidence() float32 {
+ if x != nil {
+ return x.MatchConfidence
+ }
+ return 0
+}
+
+var File_google_cloud_dialogflow_v2beta1_session_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_session_proto_rawDesc = []byte{
+ 0x0a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e,
+ 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69,
+ 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x2b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x32, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x1a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x20, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x66, 0x69,
+ 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f,
+ 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x72, 0x70, 0x63, 0x2f, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x74, 0x79,
+ 0x70, 0x65, 0x2f, 0x6c, 0x61, 0x74, 0x6c, 0x6e, 0x67, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22,
+ 0xdc, 0x03, 0x0a, 0x13, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x43, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23,
+ 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x0c,
+ 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65,
+ 0x74, 0x65, 0x72, 0x73, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d,
+ 0x73, 0x12, 0x51, 0x0a, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74,
+ 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x49, 0x6e,
+ 0x70, 0x75, 0x74, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x49,
+ 0x6e, 0x70, 0x75, 0x74, 0x12, 0x62, 0x0a, 0x13, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61,
+ 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64,
+ 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x53, 0x0a, 0x18, 0x6f, 0x75, 0x74, 0x70,
+ 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f,
+ 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65,
+ 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x15, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75,
+ 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x1f, 0x0a,
+ 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x0a, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x22, 0xb4,
+ 0x03, 0x0a, 0x14, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52,
+ 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x6f,
+ 0x6e, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72,
+ 0x79, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0b, 0x71, 0x75,
+ 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x68, 0x0a, 0x19, 0x61, 0x6c, 0x74,
+ 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x72,
+ 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x17, 0x61, 0x6c, 0x74, 0x65,
+ 0x72, 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75,
+ 0x6c, 0x74, 0x73, 0x12, 0x39, 0x0a, 0x0e, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x73,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52,
+ 0x0d, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21,
+ 0x0a, 0x0c, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x04,
+ 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x12, 0x62, 0x0a, 0x13, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69,
+ 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x4f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x52, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43,
+ 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x22, 0xa7, 0x06, 0x0a, 0x0f, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50,
+ 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x1b, 0x0a, 0x09, 0x74, 0x69, 0x6d,
+ 0x65, 0x5f, 0x7a, 0x6f, 0x6e, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x08, 0x74, 0x69,
+ 0x6d, 0x65, 0x5a, 0x6f, 0x6e, 0x65, 0x12, 0x36, 0x0a, 0x0c, 0x67, 0x65, 0x6f, 0x5f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x13, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x4c, 0x61, 0x74, 0x4c, 0x6e,
+ 0x67, 0x52, 0x0b, 0x67, 0x65, 0x6f, 0x4c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x44,
+ 0x0a, 0x08, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x08, 0x63, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x72, 0x65, 0x73, 0x65, 0x74, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0d, 0x72, 0x65,
+ 0x73, 0x65, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x64, 0x0a, 0x14, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x07, 0x70, 0x61, 0x79,
+ 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x30, 0x0a, 0x14, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67,
+ 0x65, 0x5f, 0x62, 0x61, 0x73, 0x65, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x73, 0x18, 0x0c, 0x20, 0x03,
+ 0x28, 0x09, 0x52, 0x12, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x42, 0x61, 0x73,
+ 0x65, 0x4e, 0x61, 0x6d, 0x65, 0x73, 0x12, 0x8a, 0x01, 0x0a, 0x21, 0x73, 0x65, 0x6e, 0x74, 0x69,
+ 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x5f, 0x72, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x0a, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x52, 0x1e, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e,
+ 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x12, 0x48, 0x0a, 0x0a, 0x73, 0x75, 0x62, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x73, 0x18, 0x0d, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x29, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x75, 0x62, 0x41, 0x67, 0x65,
+ 0x6e, 0x74, 0x52, 0x09, 0x73, 0x75, 0x62, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x6d, 0x0a,
+ 0x0f, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x68, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73,
+ 0x18, 0x0e, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x44, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61,
+ 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x2e, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b,
+ 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0e, 0x77, 0x65,
+ 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x1a, 0x41, 0x0a, 0x13,
+ 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x48, 0x65, 0x61, 0x64, 0x65, 0x72, 0x73, 0x45, 0x6e,
+ 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a, 0x02, 0x38, 0x01, 0x22,
+ 0xc0, 0x02, 0x0a, 0x0a, 0x51, 0x75, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x56,
+ 0x0a, 0x0c, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69,
+ 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x48, 0x00, 0x52, 0x0b, 0x61, 0x75, 0x64, 0x69, 0x6f,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x12, 0x40, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74,
+ 0x48, 0x00, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x43, 0x0a, 0x05, 0x65, 0x76, 0x65, 0x6e,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49,
+ 0x6e, 0x70, 0x75, 0x74, 0x48, 0x00, 0x52, 0x05, 0x65, 0x76, 0x65, 0x6e, 0x74, 0x12, 0x4a, 0x0a,
+ 0x04, 0x64, 0x74, 0x6d, 0x66, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65,
+ 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x44, 0x74, 0x6d, 0x66, 0x45, 0x76, 0x65, 0x6e, 0x74,
+ 0x73, 0x48, 0x00, 0x52, 0x04, 0x64, 0x74, 0x6d, 0x66, 0x42, 0x07, 0x0a, 0x05, 0x69, 0x6e, 0x70,
+ 0x75, 0x74, 0x22, 0xbb, 0x08, 0x0a, 0x0b, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75,
+ 0x6c, 0x74, 0x12, 0x1d, 0x0a, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x71, 0x75, 0x65, 0x72, 0x79, 0x54, 0x65, 0x78,
+ 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f,
+ 0x64, 0x65, 0x18, 0x0f, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61,
+ 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x42, 0x0a, 0x1d, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
+ 0x5f, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x02, 0x52, 0x1b, 0x73,
+ 0x70, 0x65, 0x65, 0x63, 0x68, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
+ 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x63,
+ 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x63, 0x74, 0x69,
+ 0x6f, 0x6e, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52,
+ 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x3d, 0x0a, 0x1b, 0x61,
+ 0x6c, 0x6c, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x5f, 0x70, 0x61, 0x72, 0x61,
+ 0x6d, 0x73, 0x5f, 0x70, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x18, 0x05, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x18, 0x61, 0x6c, 0x6c, 0x52, 0x65, 0x71, 0x75, 0x69, 0x72, 0x65, 0x64, 0x50, 0x61, 0x72,
+ 0x61, 0x6d, 0x73, 0x50, 0x72, 0x65, 0x73, 0x65, 0x6e, 0x74, 0x12, 0x30, 0x0a, 0x14, 0x63, 0x61,
+ 0x6e, 0x63, 0x65, 0x6c, 0x73, 0x5f, 0x73, 0x6c, 0x6f, 0x74, 0x5f, 0x66, 0x69, 0x6c, 0x6c, 0x69,
+ 0x6e, 0x67, 0x18, 0x15, 0x20, 0x01, 0x28, 0x08, 0x52, 0x12, 0x63, 0x61, 0x6e, 0x63, 0x65, 0x6c,
+ 0x73, 0x53, 0x6c, 0x6f, 0x74, 0x46, 0x69, 0x6c, 0x6c, 0x69, 0x6e, 0x67, 0x12, 0x29, 0x0a, 0x10,
+ 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x78, 0x74,
+ 0x18, 0x06, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x54, 0x65, 0x78, 0x74, 0x12, 0x62, 0x0a, 0x14, 0x66, 0x75, 0x6c, 0x66, 0x69,
+ 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18,
+ 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d,
+ 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x52, 0x13, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d,
+ 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x25, 0x0a, 0x0e, 0x77,
+ 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x08, 0x20,
+ 0x01, 0x28, 0x09, 0x52, 0x0d, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x53, 0x6f, 0x75, 0x72,
+ 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0f, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x70, 0x61,
+ 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x09, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74,
+ 0x72, 0x75, 0x63, 0x74, 0x52, 0x0e, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x50, 0x61, 0x79,
+ 0x6c, 0x6f, 0x61, 0x64, 0x12, 0x51, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x43, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43,
+ 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x73, 0x12, 0x3f, 0x0a, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x27, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x52, 0x06, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x3e, 0x0a, 0x1b, 0x69, 0x6e, 0x74, 0x65,
+ 0x6e, 0x74, 0x5f, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x0c, 0x20, 0x01, 0x28, 0x02, 0x52, 0x19, 0x69,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x43, 0x6f,
+ 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x40, 0x0a, 0x0f, 0x64, 0x69, 0x61, 0x67,
+ 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x0e, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x0e, 0x64, 0x69, 0x61, 0x67,
+ 0x6e, 0x6f, 0x73, 0x74, 0x69, 0x63, 0x49, 0x6e, 0x66, 0x6f, 0x12, 0x74, 0x0a, 0x19, 0x73, 0x65,
+ 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73,
+ 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x11, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x38, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69,
+ 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x17, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65,
+ 0x6e, 0x74, 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x12, 0x5e, 0x0a, 0x11, 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x5f, 0x61, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x73, 0x18, 0x12, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x31, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e,
+ 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x52, 0x10,
+ 0x6b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73,
+ 0x22, 0xfd, 0x03, 0x0a, 0x10, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x41, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x73, 0x12, 0x52, 0x0a, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73,
+ 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x38, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64,
+ 0x67, 0x65, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x52, 0x07, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x73, 0x1a, 0x94, 0x03, 0x0a, 0x06, 0x41, 0x6e,
+ 0x73, 0x77, 0x65, 0x72, 0x12, 0x3f, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x27, 0xfa, 0x41, 0x24, 0x0a, 0x22, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x44, 0x6f, 0x63, 0x75, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x06, 0x73,
+ 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x21, 0x0a, 0x0c, 0x66, 0x61, 0x71, 0x5f, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x66, 0x61, 0x71,
+ 0x51, 0x75, 0x65, 0x73, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x16, 0x0a, 0x06, 0x61, 0x6e, 0x73, 0x77,
+ 0x65, 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x61, 0x6e, 0x73, 0x77, 0x65, 0x72,
+ 0x12, 0x83, 0x01, 0x0a, 0x16, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69,
+ 0x64, 0x65, 0x6e, 0x63, 0x65, 0x5f, 0x6c, 0x65, 0x76, 0x65, 0x6c, 0x18, 0x04, 0x20, 0x01, 0x28,
+ 0x0e, 0x32, 0x4d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x4b, 0x6e, 0x6f, 0x77, 0x6c, 0x65, 0x64, 0x67, 0x65, 0x41, 0x6e, 0x73,
+ 0x77, 0x65, 0x72, 0x73, 0x2e, 0x41, 0x6e, 0x73, 0x77, 0x65, 0x72, 0x2e, 0x4d, 0x61, 0x74, 0x63,
+ 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c,
+ 0x52, 0x14, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
+ 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x29, 0x0a, 0x10, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x5f,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x05, 0x20, 0x01, 0x28, 0x02,
+ 0x52, 0x0f, 0x6d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63,
+ 0x65, 0x22, 0x5d, 0x0a, 0x14, 0x4d, 0x61, 0x74, 0x63, 0x68, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x64,
+ 0x65, 0x6e, 0x63, 0x65, 0x4c, 0x65, 0x76, 0x65, 0x6c, 0x12, 0x26, 0x0a, 0x22, 0x4d, 0x41, 0x54,
+ 0x43, 0x48, 0x5f, 0x43, 0x4f, 0x4e, 0x46, 0x49, 0x44, 0x45, 0x4e, 0x43, 0x45, 0x5f, 0x4c, 0x45,
+ 0x56, 0x45, 0x4c, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x07, 0x0a, 0x03, 0x4c, 0x4f, 0x57, 0x10, 0x01, 0x12, 0x0a, 0x0a, 0x06, 0x4d, 0x45,
+ 0x44, 0x49, 0x55, 0x4d, 0x10, 0x02, 0x12, 0x08, 0x0a, 0x04, 0x48, 0x49, 0x47, 0x48, 0x10, 0x03,
+ 0x22, 0x94, 0x04, 0x0a, 0x1c, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x44, 0x65,
+ 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x43, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69,
+ 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x07, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x53, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f,
+ 0x70, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x52, 0x0b,
+ 0x71, 0x75, 0x65, 0x72, 0x79, 0x50, 0x61, 0x72, 0x61, 0x6d, 0x73, 0x12, 0x51, 0x0a, 0x0b, 0x71,
+ 0x75, 0x65, 0x72, 0x79, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x42, 0x03, 0xe0,
+ 0x41, 0x02, 0x52, 0x0a, 0x71, 0x75, 0x65, 0x72, 0x79, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x2d,
+ 0x0a, 0x10, 0x73, 0x69, 0x6e, 0x67, 0x6c, 0x65, 0x5f, 0x75, 0x74, 0x74, 0x65, 0x72, 0x61, 0x6e,
+ 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x08, 0x42, 0x02, 0x18, 0x01, 0x52, 0x0f, 0x73, 0x69,
+ 0x6e, 0x67, 0x6c, 0x65, 0x55, 0x74, 0x74, 0x65, 0x72, 0x61, 0x6e, 0x63, 0x65, 0x12, 0x62, 0x0a,
+ 0x13, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f, 0x63, 0x6f,
+ 0x6e, 0x66, 0x69, 0x67, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x75, 0x74,
+ 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x52, 0x11,
+ 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69,
+ 0x67, 0x12, 0x53, 0x0a, 0x18, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69,
+ 0x6f, 0x5f, 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x07, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52,
+ 0x15, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x4d, 0x61, 0x73, 0x6b, 0x12, 0x1f, 0x0a, 0x0b, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x5f,
+ 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0c, 0x52, 0x0a, 0x69, 0x6e, 0x70,
+ 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x22, 0xa9, 0x04, 0x0a, 0x1d, 0x53, 0x74, 0x72, 0x65,
+ 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e,
+ 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73,
+ 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x69, 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a,
+ 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x49, 0x64, 0x12, 0x6a, 0x0a, 0x12, 0x72, 0x65,
+ 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
+ 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x52, 0x11, 0x72, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x4f, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f,
+ 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51,
+ 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72,
+ 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x68, 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72,
+ 0x6e, 0x61, 0x74, 0x69, 0x76, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x73, 0x18, 0x07, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65,
+ 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e,
+ 0x61, 0x74, 0x69, 0x76, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x73, 0x12, 0x39, 0x0a, 0x0e, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x5f, 0x73, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x12, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x72, 0x70, 0x63, 0x2e, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x52, 0x0d, 0x77,
+ 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x53, 0x74, 0x61, 0x74, 0x75, 0x73, 0x12, 0x21, 0x0a, 0x0c,
+ 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x18, 0x05, 0x20, 0x01,
+ 0x28, 0x0c, 0x52, 0x0b, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x12,
+ 0x62, 0x0a, 0x13, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x61, 0x75, 0x64, 0x69, 0x6f, 0x5f,
+ 0x63, 0x6f, 0x6e, 0x66, 0x69, 0x67, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f,
+ 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e, 0x66, 0x69, 0x67,
+ 0x52, 0x11, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x41, 0x75, 0x64, 0x69, 0x6f, 0x43, 0x6f, 0x6e,
+ 0x66, 0x69, 0x67, 0x22, 0xa4, 0x05, 0x0a, 0x1a, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e,
+ 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75,
+ 0x6c, 0x74, 0x12, 0x6a, 0x0a, 0x0c, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x47, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61,
+ 0x6d, 0x69, 0x6e, 0x67, 0x52, 0x65, 0x63, 0x6f, 0x67, 0x6e, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x52,
+ 0x65, 0x73, 0x75, 0x6c, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x0b, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1e,
+ 0x0a, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0a, 0x74, 0x72, 0x61, 0x6e, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x12, 0x19,
+ 0x0a, 0x08, 0x69, 0x73, 0x5f, 0x66, 0x69, 0x6e, 0x61, 0x6c, 0x18, 0x03, 0x20, 0x01, 0x28, 0x08,
+ 0x52, 0x07, 0x69, 0x73, 0x46, 0x69, 0x6e, 0x61, 0x6c, 0x12, 0x1e, 0x0a, 0x0a, 0x63, 0x6f, 0x6e,
+ 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x02, 0x52, 0x0a, 0x63,
+ 0x6f, 0x6e, 0x66, 0x69, 0x64, 0x65, 0x6e, 0x63, 0x65, 0x12, 0x1c, 0x0a, 0x09, 0x73, 0x74, 0x61,
+ 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x18, 0x06, 0x20, 0x01, 0x28, 0x02, 0x52, 0x09, 0x73, 0x74,
+ 0x61, 0x62, 0x69, 0x6c, 0x69, 0x74, 0x79, 0x12, 0x59, 0x0a, 0x10, 0x73, 0x70, 0x65, 0x65, 0x63,
+ 0x68, 0x5f, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x69, 0x6e, 0x66, 0x6f, 0x18, 0x07, 0x20, 0x03, 0x28,
+ 0x0b, 0x32, 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x53, 0x70, 0x65, 0x65, 0x63, 0x68, 0x57, 0x6f, 0x72, 0x64, 0x49, 0x6e,
+ 0x66, 0x6f, 0x52, 0x0e, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x57, 0x6f, 0x72, 0x64, 0x49, 0x6e,
+ 0x66, 0x6f, 0x12, 0x45, 0x0a, 0x11, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68, 0x5f, 0x65, 0x6e, 0x64,
+ 0x5f, 0x6f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x19, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x44, 0x75, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x0f, 0x73, 0x70, 0x65, 0x65, 0x63, 0x68,
+ 0x45, 0x6e, 0x64, 0x4f, 0x66, 0x66, 0x73, 0x65, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6c, 0x61, 0x6e,
+ 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x0a, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65, 0x12, 0x55,
+ 0x0a, 0x0b, 0x64, 0x74, 0x6d, 0x66, 0x5f, 0x64, 0x69, 0x67, 0x69, 0x74, 0x73, 0x18, 0x05, 0x20,
+ 0x01, 0x28, 0x0b, 0x32, 0x34, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x54, 0x65, 0x6c, 0x65, 0x70, 0x68, 0x6f, 0x6e, 0x79, 0x44,
+ 0x74, 0x6d, 0x66, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x73, 0x52, 0x0a, 0x64, 0x74, 0x6d, 0x66, 0x44,
+ 0x69, 0x67, 0x69, 0x74, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x0b, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67,
+ 0x65, 0x54, 0x79, 0x70, 0x65, 0x12, 0x1c, 0x0a, 0x18, 0x4d, 0x45, 0x53, 0x53, 0x41, 0x47, 0x45,
+ 0x5f, 0x54, 0x59, 0x50, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x0e, 0x0a, 0x0a, 0x54, 0x52, 0x41, 0x4e, 0x53, 0x43, 0x52, 0x49, 0x50,
+ 0x54, 0x10, 0x01, 0x12, 0x0f, 0x0a, 0x0b, 0x44, 0x54, 0x4d, 0x46, 0x5f, 0x44, 0x49, 0x47, 0x49,
+ 0x54, 0x53, 0x10, 0x03, 0x12, 0x1b, 0x0a, 0x17, 0x45, 0x4e, 0x44, 0x5f, 0x4f, 0x46, 0x5f, 0x53,
+ 0x49, 0x4e, 0x47, 0x4c, 0x45, 0x5f, 0x55, 0x54, 0x54, 0x45, 0x52, 0x41, 0x4e, 0x43, 0x45, 0x10,
+ 0x02, 0x12, 0x17, 0x0a, 0x13, 0x50, 0x41, 0x52, 0x54, 0x49, 0x41, 0x4c, 0x5f, 0x44, 0x54, 0x4d,
+ 0x46, 0x5f, 0x44, 0x49, 0x47, 0x49, 0x54, 0x53, 0x10, 0x04, 0x22, 0x44, 0x0a, 0x09, 0x54, 0x65,
+ 0x78, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12, 0x0a, 0x04, 0x74, 0x65, 0x78, 0x74, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x74, 0x65, 0x78, 0x74, 0x12, 0x23, 0x0a, 0x0d, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65,
+ 0x22, 0x7e, 0x0a, 0x0a, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x12, 0x12,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x12, 0x37, 0x0a, 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52,
+ 0x0a, 0x70, 0x61, 0x72, 0x61, 0x6d, 0x65, 0x74, 0x65, 0x72, 0x73, 0x12, 0x23, 0x0a, 0x0d, 0x6c,
+ 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x5f, 0x63, 0x6f, 0x64, 0x65, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x0c, 0x6c, 0x61, 0x6e, 0x67, 0x75, 0x61, 0x67, 0x65, 0x43, 0x6f, 0x64, 0x65,
+ 0x22, 0x61, 0x0a, 0x1e, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x41, 0x6e, 0x61,
+ 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x43, 0x6f, 0x6e, 0x66,
+ 0x69, 0x67, 0x12, 0x3f, 0x0a, 0x1c, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x7a, 0x65, 0x5f, 0x71, 0x75,
+ 0x65, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65,
+ 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x08, 0x52, 0x19, 0x61, 0x6e, 0x61, 0x6c, 0x79, 0x7a,
+ 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x54, 0x65, 0x78, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d,
+ 0x65, 0x6e, 0x74, 0x22, 0x77, 0x0a, 0x17, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74,
+ 0x41, 0x6e, 0x61, 0x6c, 0x79, 0x73, 0x69, 0x73, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x5c,
+ 0x0a, 0x14, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x5f, 0x73, 0x65, 0x6e,
+ 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53,
+ 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x52, 0x12, 0x71, 0x75, 0x65, 0x72, 0x79, 0x54,
+ 0x65, 0x78, 0x74, 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x22, 0x3f, 0x0a, 0x09,
+ 0x53, 0x65, 0x6e, 0x74, 0x69, 0x6d, 0x65, 0x6e, 0x74, 0x12, 0x14, 0x0a, 0x05, 0x73, 0x63, 0x6f,
+ 0x72, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x02, 0x52, 0x05, 0x73, 0x63, 0x6f, 0x72, 0x65, 0x12,
+ 0x1c, 0x0a, 0x09, 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x74, 0x75, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x02, 0x52, 0x09, 0x6d, 0x61, 0x67, 0x6e, 0x69, 0x74, 0x75, 0x64, 0x65, 0x32, 0x8d, 0x06,
+ 0x0a, 0x08, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xe7, 0x03, 0x0a, 0x0c, 0x44,
+ 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x34, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65,
+ 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xe9, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0xcc, 0x02, 0x22, 0x3b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a,
+ 0x01, 0x2a, 0x5a, 0x57, 0x22, 0x52, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x74, 0x65,
+ 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x4c, 0x22, 0x47, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64, 0x65, 0x74, 0x65, 0x63, 0x74,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0x5a, 0x63, 0x22, 0x5e, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69,
+ 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x64,
+ 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x3a, 0x01, 0x2a, 0xda, 0x41,
+ 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x69,
+ 0x6e, 0x70, 0x75, 0x74, 0x12, 0x9c, 0x01, 0x0a, 0x15, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69,
+ 0x6e, 0x67, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x12, 0x3d,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74,
+ 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3e, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x53, 0x74, 0x72, 0x65, 0x61, 0x6d, 0x69, 0x6e, 0x67, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49,
+ 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x00, 0x28,
+ 0x01, 0x30, 0x01, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f,
+ 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
+ 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f,
+ 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75,
+ 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xf9, 0x03,
+ 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0c, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02,
+ 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0xea, 0x41, 0xd1, 0x02, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x70, 0x72, 0x6f,
+ 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x12, 0x53, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x75, 0x73,
+ 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x12, 0x40, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63,
+ 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x12,
+ 0x68, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x6c,
+ 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65,
+ 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x76,
+ 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f,
+ 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_session_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_session_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_session_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_session_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_session_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_session_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_session_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_session_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes = make([]protoimpl.EnumInfo, 2)
+var file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes = make([]protoimpl.MessageInfo, 16)
+var file_google_cloud_dialogflow_v2beta1_session_proto_goTypes = []interface{}{
+ (KnowledgeAnswers_Answer_MatchConfidenceLevel)(0), // 0: google.cloud.dialogflow.v2beta1.KnowledgeAnswers.Answer.MatchConfidenceLevel
+ (StreamingRecognitionResult_MessageType)(0), // 1: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.MessageType
+ (*DetectIntentRequest)(nil), // 2: google.cloud.dialogflow.v2beta1.DetectIntentRequest
+ (*DetectIntentResponse)(nil), // 3: google.cloud.dialogflow.v2beta1.DetectIntentResponse
+ (*QueryParameters)(nil), // 4: google.cloud.dialogflow.v2beta1.QueryParameters
+ (*QueryInput)(nil), // 5: google.cloud.dialogflow.v2beta1.QueryInput
+ (*QueryResult)(nil), // 6: google.cloud.dialogflow.v2beta1.QueryResult
+ (*KnowledgeAnswers)(nil), // 7: google.cloud.dialogflow.v2beta1.KnowledgeAnswers
+ (*StreamingDetectIntentRequest)(nil), // 8: google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest
+ (*StreamingDetectIntentResponse)(nil), // 9: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse
+ (*StreamingRecognitionResult)(nil), // 10: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult
+ (*TextInput)(nil), // 11: google.cloud.dialogflow.v2beta1.TextInput
+ (*EventInput)(nil), // 12: google.cloud.dialogflow.v2beta1.EventInput
+ (*SentimentAnalysisRequestConfig)(nil), // 13: google.cloud.dialogflow.v2beta1.SentimentAnalysisRequestConfig
+ (*SentimentAnalysisResult)(nil), // 14: google.cloud.dialogflow.v2beta1.SentimentAnalysisResult
+ (*Sentiment)(nil), // 15: google.cloud.dialogflow.v2beta1.Sentiment
+ nil, // 16: google.cloud.dialogflow.v2beta1.QueryParameters.WebhookHeadersEntry
+ (*KnowledgeAnswers_Answer)(nil), // 17: google.cloud.dialogflow.v2beta1.KnowledgeAnswers.Answer
+ (*OutputAudioConfig)(nil), // 18: google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ (*fieldmaskpb.FieldMask)(nil), // 19: google.protobuf.FieldMask
+ (*status.Status)(nil), // 20: google.rpc.Status
+ (*latlng.LatLng)(nil), // 21: google.type.LatLng
+ (*Context)(nil), // 22: google.cloud.dialogflow.v2beta1.Context
+ (*SessionEntityType)(nil), // 23: google.cloud.dialogflow.v2beta1.SessionEntityType
+ (*structpb.Struct)(nil), // 24: google.protobuf.Struct
+ (*SubAgent)(nil), // 25: google.cloud.dialogflow.v2beta1.SubAgent
+ (*InputAudioConfig)(nil), // 26: google.cloud.dialogflow.v2beta1.InputAudioConfig
+ (*TelephonyDtmfEvents)(nil), // 27: google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ (*Intent_Message)(nil), // 28: google.cloud.dialogflow.v2beta1.Intent.Message
+ (*Intent)(nil), // 29: google.cloud.dialogflow.v2beta1.Intent
+ (*SpeechWordInfo)(nil), // 30: google.cloud.dialogflow.v2beta1.SpeechWordInfo
+ (*durationpb.Duration)(nil), // 31: google.protobuf.Duration
+}
+var file_google_cloud_dialogflow_v2beta1_session_proto_depIdxs = []int32{
+ 4, // 0: google.cloud.dialogflow.v2beta1.DetectIntentRequest.query_params:type_name -> google.cloud.dialogflow.v2beta1.QueryParameters
+ 5, // 1: google.cloud.dialogflow.v2beta1.DetectIntentRequest.query_input:type_name -> google.cloud.dialogflow.v2beta1.QueryInput
+ 18, // 2: google.cloud.dialogflow.v2beta1.DetectIntentRequest.output_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 19, // 3: google.cloud.dialogflow.v2beta1.DetectIntentRequest.output_audio_config_mask:type_name -> google.protobuf.FieldMask
+ 6, // 4: google.cloud.dialogflow.v2beta1.DetectIntentResponse.query_result:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 6, // 5: google.cloud.dialogflow.v2beta1.DetectIntentResponse.alternative_query_results:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 20, // 6: google.cloud.dialogflow.v2beta1.DetectIntentResponse.webhook_status:type_name -> google.rpc.Status
+ 18, // 7: google.cloud.dialogflow.v2beta1.DetectIntentResponse.output_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 21, // 8: google.cloud.dialogflow.v2beta1.QueryParameters.geo_location:type_name -> google.type.LatLng
+ 22, // 9: google.cloud.dialogflow.v2beta1.QueryParameters.contexts:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 23, // 10: google.cloud.dialogflow.v2beta1.QueryParameters.session_entity_types:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 24, // 11: google.cloud.dialogflow.v2beta1.QueryParameters.payload:type_name -> google.protobuf.Struct
+ 13, // 12: google.cloud.dialogflow.v2beta1.QueryParameters.sentiment_analysis_request_config:type_name -> google.cloud.dialogflow.v2beta1.SentimentAnalysisRequestConfig
+ 25, // 13: google.cloud.dialogflow.v2beta1.QueryParameters.sub_agents:type_name -> google.cloud.dialogflow.v2beta1.SubAgent
+ 16, // 14: google.cloud.dialogflow.v2beta1.QueryParameters.webhook_headers:type_name -> google.cloud.dialogflow.v2beta1.QueryParameters.WebhookHeadersEntry
+ 26, // 15: google.cloud.dialogflow.v2beta1.QueryInput.audio_config:type_name -> google.cloud.dialogflow.v2beta1.InputAudioConfig
+ 11, // 16: google.cloud.dialogflow.v2beta1.QueryInput.text:type_name -> google.cloud.dialogflow.v2beta1.TextInput
+ 12, // 17: google.cloud.dialogflow.v2beta1.QueryInput.event:type_name -> google.cloud.dialogflow.v2beta1.EventInput
+ 27, // 18: google.cloud.dialogflow.v2beta1.QueryInput.dtmf:type_name -> google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ 24, // 19: google.cloud.dialogflow.v2beta1.QueryResult.parameters:type_name -> google.protobuf.Struct
+ 28, // 20: google.cloud.dialogflow.v2beta1.QueryResult.fulfillment_messages:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message
+ 24, // 21: google.cloud.dialogflow.v2beta1.QueryResult.webhook_payload:type_name -> google.protobuf.Struct
+ 22, // 22: google.cloud.dialogflow.v2beta1.QueryResult.output_contexts:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 29, // 23: google.cloud.dialogflow.v2beta1.QueryResult.intent:type_name -> google.cloud.dialogflow.v2beta1.Intent
+ 24, // 24: google.cloud.dialogflow.v2beta1.QueryResult.diagnostic_info:type_name -> google.protobuf.Struct
+ 14, // 25: google.cloud.dialogflow.v2beta1.QueryResult.sentiment_analysis_result:type_name -> google.cloud.dialogflow.v2beta1.SentimentAnalysisResult
+ 7, // 26: google.cloud.dialogflow.v2beta1.QueryResult.knowledge_answers:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeAnswers
+ 17, // 27: google.cloud.dialogflow.v2beta1.KnowledgeAnswers.answers:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeAnswers.Answer
+ 4, // 28: google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_params:type_name -> google.cloud.dialogflow.v2beta1.QueryParameters
+ 5, // 29: google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.query_input:type_name -> google.cloud.dialogflow.v2beta1.QueryInput
+ 18, // 30: google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.output_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 19, // 31: google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest.output_audio_config_mask:type_name -> google.protobuf.FieldMask
+ 10, // 32: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse.recognition_result:type_name -> google.cloud.dialogflow.v2beta1.StreamingRecognitionResult
+ 6, // 33: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse.query_result:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 6, // 34: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse.alternative_query_results:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 20, // 35: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse.webhook_status:type_name -> google.rpc.Status
+ 18, // 36: google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse.output_audio_config:type_name -> google.cloud.dialogflow.v2beta1.OutputAudioConfig
+ 1, // 37: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.message_type:type_name -> google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.MessageType
+ 30, // 38: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.speech_word_info:type_name -> google.cloud.dialogflow.v2beta1.SpeechWordInfo
+ 31, // 39: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.speech_end_offset:type_name -> google.protobuf.Duration
+ 27, // 40: google.cloud.dialogflow.v2beta1.StreamingRecognitionResult.dtmf_digits:type_name -> google.cloud.dialogflow.v2beta1.TelephonyDtmfEvents
+ 24, // 41: google.cloud.dialogflow.v2beta1.EventInput.parameters:type_name -> google.protobuf.Struct
+ 15, // 42: google.cloud.dialogflow.v2beta1.SentimentAnalysisResult.query_text_sentiment:type_name -> google.cloud.dialogflow.v2beta1.Sentiment
+ 0, // 43: google.cloud.dialogflow.v2beta1.KnowledgeAnswers.Answer.match_confidence_level:type_name -> google.cloud.dialogflow.v2beta1.KnowledgeAnswers.Answer.MatchConfidenceLevel
+ 2, // 44: google.cloud.dialogflow.v2beta1.Sessions.DetectIntent:input_type -> google.cloud.dialogflow.v2beta1.DetectIntentRequest
+ 8, // 45: google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent:input_type -> google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest
+ 3, // 46: google.cloud.dialogflow.v2beta1.Sessions.DetectIntent:output_type -> google.cloud.dialogflow.v2beta1.DetectIntentResponse
+ 9, // 47: google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent:output_type -> google.cloud.dialogflow.v2beta1.StreamingDetectIntentResponse
+ 46, // [46:48] is the sub-list for method output_type
+ 44, // [44:46] is the sub-list for method input_type
+ 44, // [44:44] is the sub-list for extension type_name
+ 44, // [44:44] is the sub-list for extension extendee
+ 0, // [0:44] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_session_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_session_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_session_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_agent_proto_init()
+ file_google_cloud_dialogflow_v2beta1_audio_config_proto_init()
+ file_google_cloud_dialogflow_v2beta1_context_proto_init()
+ file_google_cloud_dialogflow_v2beta1_intent_proto_init()
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DetectIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DetectIntentResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryParameters); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryInput); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*QueryResult); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KnowledgeAnswers); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamingDetectIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamingDetectIntentResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*StreamingRecognitionResult); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*TextInput); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*EventInput); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SentimentAnalysisRequestConfig); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SentimentAnalysisResult); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Sentiment); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[15].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*KnowledgeAnswers_Answer); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes[3].OneofWrappers = []interface{}{
+ (*QueryInput_AudioConfig)(nil),
+ (*QueryInput_Text)(nil),
+ (*QueryInput_Event)(nil),
+ (*QueryInput_Dtmf)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_session_proto_rawDesc,
+ NumEnums: 2,
+ NumMessages: 16,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_session_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_session_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_session_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_session_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_session_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_session_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_session_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_session_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// SessionsClient is the client API for Sessions service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type SessionsClient interface {
+ // Processes a natural language query and returns structured, actionable data
+ // as a result. This method is not idempotent, because it may cause contexts
+ // and session entity types to be updated, which in turn might affect
+ // results of future queries.
+ //
+ // If you might use
+ // [Agent Assist](https://cloud.google.com/dialogflow/docs/#aa)
+ // or other CCAI products now or in the future, consider using
+ // [AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+ // instead of `DetectIntent`. `AnalyzeContent` has additional
+ // functionality for Agent Assist and other CCAI products.
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ DetectIntent(ctx context.Context, in *DetectIntentRequest, opts ...grpc.CallOption) (*DetectIntentResponse, error)
+ // Processes a natural language query in audio format in a streaming fashion
+ // and returns structured, actionable data as a result. This method is only
+ // available via the gRPC API (not REST).
+ //
+ // If you might use
+ // [Agent Assist](https://cloud.google.com/dialogflow/docs/#aa)
+ // or other CCAI products now or in the future, consider using
+ // [StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent]
+ // instead of `StreamingDetectIntent`. `StreamingAnalyzeContent` has
+ // additional functionality for Agent Assist and other CCAI products.
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ StreamingDetectIntent(ctx context.Context, opts ...grpc.CallOption) (Sessions_StreamingDetectIntentClient, error)
+}
+
+type sessionsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewSessionsClient(cc grpc.ClientConnInterface) SessionsClient {
+ return &sessionsClient{cc}
+}
+
+func (c *sessionsClient) DetectIntent(ctx context.Context, in *DetectIntentRequest, opts ...grpc.CallOption) (*DetectIntentResponse, error) {
+ out := new(DetectIntentResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Sessions/DetectIntent", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *sessionsClient) StreamingDetectIntent(ctx context.Context, opts ...grpc.CallOption) (Sessions_StreamingDetectIntentClient, error) {
+ stream, err := c.cc.NewStream(ctx, &_Sessions_serviceDesc.Streams[0], "/google.cloud.dialogflow.v2beta1.Sessions/StreamingDetectIntent", opts...)
+ if err != nil {
+ return nil, err
+ }
+ x := &sessionsStreamingDetectIntentClient{stream}
+ return x, nil
+}
+
+type Sessions_StreamingDetectIntentClient interface {
+ Send(*StreamingDetectIntentRequest) error
+ Recv() (*StreamingDetectIntentResponse, error)
+ grpc.ClientStream
+}
+
+type sessionsStreamingDetectIntentClient struct {
+ grpc.ClientStream
+}
+
+func (x *sessionsStreamingDetectIntentClient) Send(m *StreamingDetectIntentRequest) error {
+ return x.ClientStream.SendMsg(m)
+}
+
+func (x *sessionsStreamingDetectIntentClient) Recv() (*StreamingDetectIntentResponse, error) {
+ m := new(StreamingDetectIntentResponse)
+ if err := x.ClientStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+// SessionsServer is the server API for Sessions service.
+type SessionsServer interface {
+ // Processes a natural language query and returns structured, actionable data
+ // as a result. This method is not idempotent, because it may cause contexts
+ // and session entity types to be updated, which in turn might affect
+ // results of future queries.
+ //
+ // If you might use
+ // [Agent Assist](https://cloud.google.com/dialogflow/docs/#aa)
+ // or other CCAI products now or in the future, consider using
+ // [AnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.AnalyzeContent]
+ // instead of `DetectIntent`. `AnalyzeContent` has additional
+ // functionality for Agent Assist and other CCAI products.
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ DetectIntent(context.Context, *DetectIntentRequest) (*DetectIntentResponse, error)
+ // Processes a natural language query in audio format in a streaming fashion
+ // and returns structured, actionable data as a result. This method is only
+ // available via the gRPC API (not REST).
+ //
+ // If you might use
+ // [Agent Assist](https://cloud.google.com/dialogflow/docs/#aa)
+ // or other CCAI products now or in the future, consider using
+ // [StreamingAnalyzeContent][google.cloud.dialogflow.v2beta1.Participants.StreamingAnalyzeContent]
+ // instead of `StreamingDetectIntent`. `StreamingAnalyzeContent` has
+ // additional functionality for Agent Assist and other CCAI products.
+ //
+ // Note: Always use agent versions for production traffic.
+ // See [Versions and
+ // environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
+ StreamingDetectIntent(Sessions_StreamingDetectIntentServer) error
+}
+
+// UnimplementedSessionsServer can be embedded to have forward compatible implementations.
+type UnimplementedSessionsServer struct {
+}
+
+func (*UnimplementedSessionsServer) DetectIntent(context.Context, *DetectIntentRequest) (*DetectIntentResponse, error) {
+ return nil, status1.Errorf(codes.Unimplemented, "method DetectIntent not implemented")
+}
+func (*UnimplementedSessionsServer) StreamingDetectIntent(Sessions_StreamingDetectIntentServer) error {
+ return status1.Errorf(codes.Unimplemented, "method StreamingDetectIntent not implemented")
+}
+
+func RegisterSessionsServer(s *grpc.Server, srv SessionsServer) {
+ s.RegisterService(&_Sessions_serviceDesc, srv)
+}
+
+func _Sessions_DetectIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DetectIntentRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionsServer).DetectIntent(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Sessions/DetectIntent",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionsServer).DetectIntent(ctx, req.(*DetectIntentRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Sessions_StreamingDetectIntent_Handler(srv interface{}, stream grpc.ServerStream) error {
+ return srv.(SessionsServer).StreamingDetectIntent(&sessionsStreamingDetectIntentServer{stream})
+}
+
+type Sessions_StreamingDetectIntentServer interface {
+ Send(*StreamingDetectIntentResponse) error
+ Recv() (*StreamingDetectIntentRequest, error)
+ grpc.ServerStream
+}
+
+type sessionsStreamingDetectIntentServer struct {
+ grpc.ServerStream
+}
+
+func (x *sessionsStreamingDetectIntentServer) Send(m *StreamingDetectIntentResponse) error {
+ return x.ServerStream.SendMsg(m)
+}
+
+func (x *sessionsStreamingDetectIntentServer) Recv() (*StreamingDetectIntentRequest, error) {
+ m := new(StreamingDetectIntentRequest)
+ if err := x.ServerStream.RecvMsg(m); err != nil {
+ return nil, err
+ }
+ return m, nil
+}
+
+var _Sessions_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Sessions",
+ HandlerType: (*SessionsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "DetectIntent",
+ Handler: _Sessions_DetectIntent_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{
+ {
+ StreamName: "StreamingDetectIntent",
+ Handler: _Sessions_StreamingDetectIntent_Handler,
+ ServerStreams: true,
+ ClientStreams: true,
+ },
+ },
+ Metadata: "google/cloud/dialogflow/v2beta1/session.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/session_entity_type.pb.go b/dialogflow/apiv2beta1/dialogflowpb/session_entity_type.pb.go
new file mode 100644
index 0000000..005ce96
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/session_entity_type.pb.go
@@ -0,0 +1,1369 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/session_entity_type.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The types of modifications for a session entity type.
+type SessionEntityType_EntityOverrideMode int32
+
+const (
+ // Not specified. This value should be never used.
+ SessionEntityType_ENTITY_OVERRIDE_MODE_UNSPECIFIED SessionEntityType_EntityOverrideMode = 0
+ // The collection of session entities overrides the collection of entities
+ // in the corresponding custom entity type.
+ SessionEntityType_ENTITY_OVERRIDE_MODE_OVERRIDE SessionEntityType_EntityOverrideMode = 1
+ // The collection of session entities extends the collection of entities in
+ // the corresponding custom entity type.
+ //
+ // Note: Even in this override mode calls to `ListSessionEntityTypes`,
+ // `GetSessionEntityType`, `CreateSessionEntityType` and
+ // `UpdateSessionEntityType` only return the additional entities added in
+ // this session entity type. If you want to get the supplemented list,
+ // please call
+ // [EntityTypes.GetEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType]
+ // on the custom entity type and merge.
+ SessionEntityType_ENTITY_OVERRIDE_MODE_SUPPLEMENT SessionEntityType_EntityOverrideMode = 2
+)
+
+// Enum value maps for SessionEntityType_EntityOverrideMode.
+var (
+ SessionEntityType_EntityOverrideMode_name = map[int32]string{
+ 0: "ENTITY_OVERRIDE_MODE_UNSPECIFIED",
+ 1: "ENTITY_OVERRIDE_MODE_OVERRIDE",
+ 2: "ENTITY_OVERRIDE_MODE_SUPPLEMENT",
+ }
+ SessionEntityType_EntityOverrideMode_value = map[string]int32{
+ "ENTITY_OVERRIDE_MODE_UNSPECIFIED": 0,
+ "ENTITY_OVERRIDE_MODE_OVERRIDE": 1,
+ "ENTITY_OVERRIDE_MODE_SUPPLEMENT": 2,
+ }
+)
+
+func (x SessionEntityType_EntityOverrideMode) Enum() *SessionEntityType_EntityOverrideMode {
+ p := new(SessionEntityType_EntityOverrideMode)
+ *p = x
+ return p
+}
+
+func (x SessionEntityType_EntityOverrideMode) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (SessionEntityType_EntityOverrideMode) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_enumTypes[0].Descriptor()
+}
+
+func (SessionEntityType_EntityOverrideMode) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_enumTypes[0]
+}
+
+func (x SessionEntityType_EntityOverrideMode) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use SessionEntityType_EntityOverrideMode.Descriptor instead.
+func (SessionEntityType_EntityOverrideMode) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// A session represents a conversation between a Dialogflow agent and an
+// end-user. You can create special entities, called session entities, during a
+// session. Session entities can extend or replace custom entity types and only
+// exist during the session that they were created for. All session data,
+// including session entities, is stored by Dialogflow for 20 minutes.
+//
+// For more information, see the [session entity
+// guide](https://cloud.google.com/dialogflow/docs/entities-session).
+type SessionEntityType struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The unique identifier of this session entity type. Supported
+ // formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity
+ // Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/environments/
+ // <Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ // `<Entity Type Display Name>` must be the display name of an existing entity
+ // type in the same agent that will be overridden or supplemented.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Required. Indicates whether the additional data should override or
+ // supplement the custom entity type definition.
+ EntityOverrideMode SessionEntityType_EntityOverrideMode `protobuf:"varint,2,opt,name=entity_override_mode,json=entityOverrideMode,proto3,enum=google.cloud.dialogflow.v2beta1.SessionEntityType_EntityOverrideMode" json:"entity_override_mode,omitempty"`
+ // Required. The collection of entities associated with this session entity
+ // type.
+ Entities []*EntityType_Entity `protobuf:"bytes,3,rep,name=entities,proto3" json:"entities,omitempty"`
+}
+
+func (x *SessionEntityType) Reset() {
+ *x = SessionEntityType{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *SessionEntityType) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*SessionEntityType) ProtoMessage() {}
+
+func (x *SessionEntityType) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use SessionEntityType.ProtoReflect.Descriptor instead.
+func (*SessionEntityType) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *SessionEntityType) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *SessionEntityType) GetEntityOverrideMode() SessionEntityType_EntityOverrideMode {
+ if x != nil {
+ return x.EntityOverrideMode
+ }
+ return SessionEntityType_ENTITY_OVERRIDE_MODE_UNSPECIFIED
+}
+
+func (x *SessionEntityType) GetEntities() []*EntityType_Entity {
+ if x != nil {
+ return x.Entities
+ }
+ return nil
+}
+
+// The request message for
+// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes].
+type ListSessionEntityTypesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The session to list all session entity types from.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListSessionEntityTypesRequest) Reset() {
+ *x = ListSessionEntityTypesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListSessionEntityTypesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListSessionEntityTypesRequest) ProtoMessage() {}
+
+func (x *ListSessionEntityTypesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListSessionEntityTypesRequest.ProtoReflect.Descriptor instead.
+func (*ListSessionEntityTypesRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListSessionEntityTypesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListSessionEntityTypesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListSessionEntityTypesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes].
+type ListSessionEntityTypesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of session entity types. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ SessionEntityTypes []*SessionEntityType `protobuf:"bytes,1,rep,name=session_entity_types,json=sessionEntityTypes,proto3" json:"session_entity_types,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListSessionEntityTypesResponse) Reset() {
+ *x = ListSessionEntityTypesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListSessionEntityTypesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListSessionEntityTypesResponse) ProtoMessage() {}
+
+func (x *ListSessionEntityTypesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListSessionEntityTypesResponse.ProtoReflect.Descriptor instead.
+func (*ListSessionEntityTypesResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListSessionEntityTypesResponse) GetSessionEntityTypes() []*SessionEntityType {
+ if x != nil {
+ return x.SessionEntityTypes
+ }
+ return nil
+}
+
+func (x *ListSessionEntityTypesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [SessionEntityTypes.GetSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType].
+type GetSessionEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the session entity type. Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity
+ // Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/environments/
+ // <Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetSessionEntityTypeRequest) Reset() {
+ *x = GetSessionEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetSessionEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetSessionEntityTypeRequest) ProtoMessage() {}
+
+func (x *GetSessionEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetSessionEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*GetSessionEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetSessionEntityTypeRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [SessionEntityTypes.CreateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType].
+type CreateSessionEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The session to create a session entity type for.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The session entity type to create.
+ SessionEntityType *SessionEntityType `protobuf:"bytes,2,opt,name=session_entity_type,json=sessionEntityType,proto3" json:"session_entity_type,omitempty"`
+}
+
+func (x *CreateSessionEntityTypeRequest) Reset() {
+ *x = CreateSessionEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateSessionEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateSessionEntityTypeRequest) ProtoMessage() {}
+
+func (x *CreateSessionEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateSessionEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*CreateSessionEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateSessionEntityTypeRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateSessionEntityTypeRequest) GetSessionEntityType() *SessionEntityType {
+ if x != nil {
+ return x.SessionEntityType
+ }
+ return nil
+}
+
+// The request message for
+// [SessionEntityTypes.UpdateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType].
+type UpdateSessionEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The session entity type to update.
+ SessionEntityType *SessionEntityType `protobuf:"bytes,1,opt,name=session_entity_type,json=sessionEntityType,proto3" json:"session_entity_type,omitempty"`
+ // Optional. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateSessionEntityTypeRequest) Reset() {
+ *x = UpdateSessionEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateSessionEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateSessionEntityTypeRequest) ProtoMessage() {}
+
+func (x *UpdateSessionEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateSessionEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*UpdateSessionEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *UpdateSessionEntityTypeRequest) GetSessionEntityType() *SessionEntityType {
+ if x != nil {
+ return x.SessionEntityType
+ }
+ return nil
+}
+
+func (x *UpdateSessionEntityTypeRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [SessionEntityTypes.DeleteSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType].
+type DeleteSessionEntityTypeRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the entity type to delete.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity
+ // Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/environments/
+ // <Environment ID>/users/<User ID>/sessions/<Session
+ // ID>/entityTypes/<Entity Type Display Name>`
+ //
+ // If `Location ID` is not specified we assume default 'us' location. If
+ // `Environment ID` is not specified, we assume default 'draft' environment.
+ // If `User ID` is not specified, we assume default '-' user.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteSessionEntityTypeRequest) Reset() {
+ *x = DeleteSessionEntityTypeRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteSessionEntityTypeRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteSessionEntityTypeRequest) ProtoMessage() {}
+
+func (x *DeleteSessionEntityTypeRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteSessionEntityTypeRequest.ProtoReflect.Descriptor instead.
+func (*DeleteSessionEntityTypeRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *DeleteSessionEntityTypeRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_session_entity_type_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDesc = []byte{
+ 0x0a, 0x39, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x1a, 0x1c, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f,
+ 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69,
+ 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x31, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x22, 0xc0, 0x06, 0x0a, 0x11, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x12, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18,
+ 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x77, 0x0a, 0x14, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x6f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x5f, 0x6d,
+ 0x6f, 0x64, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x45, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x4d, 0x6f, 0x64, 0x65,
+ 0x52, 0x12, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4f, 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65,
+ 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x4e, 0x0a, 0x08, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x69, 0x65, 0x73,
+ 0x18, 0x03, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x2e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x52, 0x08, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x69, 0x65, 0x73, 0x22, 0x82, 0x01, 0x0a, 0x12, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x4f,
+ 0x76, 0x65, 0x72, 0x72, 0x69, 0x64, 0x65, 0x4d, 0x6f, 0x64, 0x65, 0x12, 0x24, 0x0a, 0x20, 0x45,
+ 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x45, 0x5f, 0x4d,
+ 0x4f, 0x44, 0x45, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10,
+ 0x00, 0x12, 0x21, 0x0a, 0x1d, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x4f, 0x56, 0x45, 0x52,
+ 0x52, 0x49, 0x44, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x4f, 0x56, 0x45, 0x52, 0x52, 0x49,
+ 0x44, 0x45, 0x10, 0x01, 0x12, 0x23, 0x0a, 0x1f, 0x45, 0x4e, 0x54, 0x49, 0x54, 0x59, 0x5f, 0x4f,
+ 0x56, 0x45, 0x52, 0x52, 0x49, 0x44, 0x45, 0x5f, 0x4d, 0x4f, 0x44, 0x45, 0x5f, 0x53, 0x55, 0x50,
+ 0x50, 0x4c, 0x45, 0x4d, 0x45, 0x4e, 0x54, 0x10, 0x02, 0x3a, 0xc8, 0x03, 0xea, 0x41, 0xc4, 0x03,
+ 0x0a, 0x2b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x45, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0x7d, 0x12, 0x5a, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67,
+ 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x7d,
+ 0x12, 0x6d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x7b, 0x75, 0x73, 0x65,
+ 0x72, 0x7d, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x7d, 0x12,
+ 0x82, 0x01, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x7b, 0x65, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73,
+ 0x2f, 0x7b, 0x75, 0x73, 0x65, 0x72, 0x7d, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x7b, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0x7d, 0x22, 0xa8, 0x01, 0x0a, 0x1d, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x12, 0x2b,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65,
+ 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a, 0x65,
+ 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x03,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22,
+ 0xae, 0x01, 0x0a, 0x1e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e,
+ 0x73, 0x65, 0x12, 0x64, 0x0a, 0x14, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74,
+ 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28,
+ 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e,
+ 0x22, 0x66, 0x0a, 0x1b, 0x47, 0x65, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x47, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0,
+ 0x41, 0x02, 0xfa, 0x41, 0x2d, 0x0a, 0x2b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79,
+ 0x70, 0x65, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x22, 0xd6, 0x01, 0x0a, 0x1e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x4b, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02,
+ 0xfa, 0x41, 0x2d, 0x12, 0x2b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x67, 0x0a, 0x13, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18,
+ 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63,
+ 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x22, 0xc6, 0x01, 0x0a, 0x1e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x12, 0x67, 0x0a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x11, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3b, 0x0a,
+ 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46, 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x52, 0x0a,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x69, 0x0a, 0x1e, 0x44, 0x65,
+ 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47, 0x0a, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x33, 0xe0, 0x41, 0x02, 0xfa,
+ 0x41, 0x2d, 0x0a, 0x2b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x53, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52,
+ 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x32, 0xfb, 0x15, 0x0a, 0x12, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0xe4, 0x03, 0x0a,
+ 0x16, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x12, 0x3e, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x53, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0xc8, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0xb8, 0x02, 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x5a, 0x52, 0x12,
+ 0x50, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x5a, 0x47, 0x12, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65,
+ 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x5a, 0x5e, 0x12, 0x5c, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69,
+ 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x12, 0xd1, 0x03, 0x0a, 0x14, 0x47, 0x65, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3c, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47,
+ 0x65, 0x74, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xc6,
+ 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xb8, 0x02, 0x12, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73,
+ 0x2f, 0x2a, 0x7d, 0x5a, 0x52, 0x12, 0x50, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65,
+ 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x47, 0x12, 0x45, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
+ 0x5a, 0x5e, 0x12, 0x5c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61,
+ 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f,
+ 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75,
+ 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d,
+ 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xc1, 0x04, 0x0a, 0x17, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0xb0, 0x03, 0x82, 0xd3, 0xe4, 0x93, 0x02,
+ 0x8c, 0x03, 0x22, 0x39, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x13, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79,
+ 0x70, 0x65, 0x5a, 0x67, 0x22, 0x50, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d,
+ 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x5c, 0x22, 0x45, 0x2f,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d,
+ 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54,
+ 0x79, 0x70, 0x65, 0x73, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x73, 0x22, 0x5c, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72,
+ 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x2f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41,
+ 0x1a, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x12, 0xad, 0x05, 0x0a, 0x17,
+ 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x22, 0x9c, 0x04, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0xdd, 0x03, 0x32, 0x4d, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79,
+ 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65,
+ 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x7b, 0x32, 0x64, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69,
+ 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x70, 0x32, 0x59, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65,
+ 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x5a, 0x87, 0x01, 0x32, 0x70, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61,
+ 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e,
+ 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65,
+ 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x13,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74,
+ 0x79, 0x70, 0x65, 0xda, 0x41, 0x13, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e,
+ 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0xda, 0x41, 0x1f, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65, 0x2c,
+ 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xbb, 0x03, 0x0a, 0x17,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74,
+ 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x12, 0x3f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65,
+ 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79,
+ 0x22, 0xc6, 0x02, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0xb8, 0x02, 0x2a, 0x39, 0x2f, 0x76, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65,
+ 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70,
+ 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x52, 0x2a, 0x50, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e,
+ 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74,
+ 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x47, 0x2a, 0x45, 0x2f, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a,
+ 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x5a, 0x5e, 0x2a, 0x5c, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x65, 0x6e, 0x76, 0x69, 0x72, 0x6f, 0x6e, 0x6d, 0x65, 0x6e, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x75, 0x73, 0x65, 0x72, 0x73, 0x2f, 0x2a, 0x2f, 0x73, 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x2f,
+ 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
+ 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f,
+ 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e,
+ 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x42, 0xae, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x16, 0x53, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x50, 0x72,
+ 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02,
+ 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75,
+ 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62,
+ 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
+var file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_goTypes = []interface{}{
+ (SessionEntityType_EntityOverrideMode)(0), // 0: google.cloud.dialogflow.v2beta1.SessionEntityType.EntityOverrideMode
+ (*SessionEntityType)(nil), // 1: google.cloud.dialogflow.v2beta1.SessionEntityType
+ (*ListSessionEntityTypesRequest)(nil), // 2: google.cloud.dialogflow.v2beta1.ListSessionEntityTypesRequest
+ (*ListSessionEntityTypesResponse)(nil), // 3: google.cloud.dialogflow.v2beta1.ListSessionEntityTypesResponse
+ (*GetSessionEntityTypeRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.GetSessionEntityTypeRequest
+ (*CreateSessionEntityTypeRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.CreateSessionEntityTypeRequest
+ (*UpdateSessionEntityTypeRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.UpdateSessionEntityTypeRequest
+ (*DeleteSessionEntityTypeRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.DeleteSessionEntityTypeRequest
+ (*EntityType_Entity)(nil), // 8: google.cloud.dialogflow.v2beta1.EntityType.Entity
+ (*fieldmaskpb.FieldMask)(nil), // 9: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 10: google.protobuf.Empty
+}
+var file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.SessionEntityType.entity_override_mode:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType.EntityOverrideMode
+ 8, // 1: google.cloud.dialogflow.v2beta1.SessionEntityType.entities:type_name -> google.cloud.dialogflow.v2beta1.EntityType.Entity
+ 1, // 2: google.cloud.dialogflow.v2beta1.ListSessionEntityTypesResponse.session_entity_types:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 1, // 3: google.cloud.dialogflow.v2beta1.CreateSessionEntityTypeRequest.session_entity_type:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 1, // 4: google.cloud.dialogflow.v2beta1.UpdateSessionEntityTypeRequest.session_entity_type:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 9, // 5: google.cloud.dialogflow.v2beta1.UpdateSessionEntityTypeRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 2, // 6: google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes:input_type -> google.cloud.dialogflow.v2beta1.ListSessionEntityTypesRequest
+ 4, // 7: google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType:input_type -> google.cloud.dialogflow.v2beta1.GetSessionEntityTypeRequest
+ 5, // 8: google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType:input_type -> google.cloud.dialogflow.v2beta1.CreateSessionEntityTypeRequest
+ 6, // 9: google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType:input_type -> google.cloud.dialogflow.v2beta1.UpdateSessionEntityTypeRequest
+ 7, // 10: google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType:input_type -> google.cloud.dialogflow.v2beta1.DeleteSessionEntityTypeRequest
+ 3, // 11: google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes:output_type -> google.cloud.dialogflow.v2beta1.ListSessionEntityTypesResponse
+ 1, // 12: google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType:output_type -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 1, // 13: google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType:output_type -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 1, // 14: google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType:output_type -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 10, // 15: google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType:output_type -> google.protobuf.Empty
+ 11, // [11:16] is the sub-list for method output_type
+ 6, // [6:11] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_session_entity_type_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_entity_type_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*SessionEntityType); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListSessionEntityTypesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListSessionEntityTypesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetSessionEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateSessionEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateSessionEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteSessionEntityTypeRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 7,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_session_entity_type_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// SessionEntityTypesClient is the client API for SessionEntityTypes service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type SessionEntityTypesClient interface {
+ // Returns the list of all session entity types in the specified session.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ ListSessionEntityTypes(ctx context.Context, in *ListSessionEntityTypesRequest, opts ...grpc.CallOption) (*ListSessionEntityTypesResponse, error)
+ // Retrieves the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ GetSessionEntityType(ctx context.Context, in *GetSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error)
+ // Creates a session entity type.
+ //
+ // If the specified session entity type already exists, overrides the
+ // session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ CreateSessionEntityType(ctx context.Context, in *CreateSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error)
+ // Updates the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ UpdateSessionEntityType(ctx context.Context, in *UpdateSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error)
+ // Deletes the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ DeleteSessionEntityType(ctx context.Context, in *DeleteSessionEntityTypeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+}
+
+type sessionEntityTypesClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewSessionEntityTypesClient(cc grpc.ClientConnInterface) SessionEntityTypesClient {
+ return &sessionEntityTypesClient{cc}
+}
+
+func (c *sessionEntityTypesClient) ListSessionEntityTypes(ctx context.Context, in *ListSessionEntityTypesRequest, opts ...grpc.CallOption) (*ListSessionEntityTypesResponse, error) {
+ out := new(ListSessionEntityTypesResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/ListSessionEntityTypes", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *sessionEntityTypesClient) GetSessionEntityType(ctx context.Context, in *GetSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error) {
+ out := new(SessionEntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/GetSessionEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *sessionEntityTypesClient) CreateSessionEntityType(ctx context.Context, in *CreateSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error) {
+ out := new(SessionEntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/CreateSessionEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *sessionEntityTypesClient) UpdateSessionEntityType(ctx context.Context, in *UpdateSessionEntityTypeRequest, opts ...grpc.CallOption) (*SessionEntityType, error) {
+ out := new(SessionEntityType)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/UpdateSessionEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *sessionEntityTypesClient) DeleteSessionEntityType(ctx context.Context, in *DeleteSessionEntityTypeRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/DeleteSessionEntityType", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// SessionEntityTypesServer is the server API for SessionEntityTypes service.
+type SessionEntityTypesServer interface {
+ // Returns the list of all session entity types in the specified session.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ ListSessionEntityTypes(context.Context, *ListSessionEntityTypesRequest) (*ListSessionEntityTypesResponse, error)
+ // Retrieves the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ GetSessionEntityType(context.Context, *GetSessionEntityTypeRequest) (*SessionEntityType, error)
+ // Creates a session entity type.
+ //
+ // If the specified session entity type already exists, overrides the
+ // session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ CreateSessionEntityType(context.Context, *CreateSessionEntityTypeRequest) (*SessionEntityType, error)
+ // Updates the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ UpdateSessionEntityType(context.Context, *UpdateSessionEntityTypeRequest) (*SessionEntityType, error)
+ // Deletes the specified session entity type.
+ //
+ // This method doesn't work with Google Assistant integration.
+ // Contact Dialogflow support if you need to use session entities
+ // with Google Assistant integration.
+ DeleteSessionEntityType(context.Context, *DeleteSessionEntityTypeRequest) (*emptypb.Empty, error)
+}
+
+// UnimplementedSessionEntityTypesServer can be embedded to have forward compatible implementations.
+type UnimplementedSessionEntityTypesServer struct {
+}
+
+func (*UnimplementedSessionEntityTypesServer) ListSessionEntityTypes(context.Context, *ListSessionEntityTypesRequest) (*ListSessionEntityTypesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListSessionEntityTypes not implemented")
+}
+func (*UnimplementedSessionEntityTypesServer) GetSessionEntityType(context.Context, *GetSessionEntityTypeRequest) (*SessionEntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetSessionEntityType not implemented")
+}
+func (*UnimplementedSessionEntityTypesServer) CreateSessionEntityType(context.Context, *CreateSessionEntityTypeRequest) (*SessionEntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateSessionEntityType not implemented")
+}
+func (*UnimplementedSessionEntityTypesServer) UpdateSessionEntityType(context.Context, *UpdateSessionEntityTypeRequest) (*SessionEntityType, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateSessionEntityType not implemented")
+}
+func (*UnimplementedSessionEntityTypesServer) DeleteSessionEntityType(context.Context, *DeleteSessionEntityTypeRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteSessionEntityType not implemented")
+}
+
+func RegisterSessionEntityTypesServer(s *grpc.Server, srv SessionEntityTypesServer) {
+ s.RegisterService(&_SessionEntityTypes_serviceDesc, srv)
+}
+
+func _SessionEntityTypes_ListSessionEntityTypes_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListSessionEntityTypesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionEntityTypesServer).ListSessionEntityTypes(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/ListSessionEntityTypes",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionEntityTypesServer).ListSessionEntityTypes(ctx, req.(*ListSessionEntityTypesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _SessionEntityTypes_GetSessionEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetSessionEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionEntityTypesServer).GetSessionEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/GetSessionEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionEntityTypesServer).GetSessionEntityType(ctx, req.(*GetSessionEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _SessionEntityTypes_CreateSessionEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateSessionEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionEntityTypesServer).CreateSessionEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/CreateSessionEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionEntityTypesServer).CreateSessionEntityType(ctx, req.(*CreateSessionEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _SessionEntityTypes_UpdateSessionEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateSessionEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionEntityTypesServer).UpdateSessionEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/UpdateSessionEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionEntityTypesServer).UpdateSessionEntityType(ctx, req.(*UpdateSessionEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _SessionEntityTypes_DeleteSessionEntityType_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteSessionEntityTypeRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(SessionEntityTypesServer).DeleteSessionEntityType(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.SessionEntityTypes/DeleteSessionEntityType",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(SessionEntityTypesServer).DeleteSessionEntityType(ctx, req.(*DeleteSessionEntityTypeRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _SessionEntityTypes_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.SessionEntityTypes",
+ HandlerType: (*SessionEntityTypesServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListSessionEntityTypes",
+ Handler: _SessionEntityTypes_ListSessionEntityTypes_Handler,
+ },
+ {
+ MethodName: "GetSessionEntityType",
+ Handler: _SessionEntityTypes_GetSessionEntityType_Handler,
+ },
+ {
+ MethodName: "CreateSessionEntityType",
+ Handler: _SessionEntityTypes_CreateSessionEntityType_Handler,
+ },
+ {
+ MethodName: "UpdateSessionEntityType",
+ Handler: _SessionEntityTypes_UpdateSessionEntityType_Handler,
+ },
+ {
+ MethodName: "DeleteSessionEntityType",
+ Handler: _SessionEntityTypes_DeleteSessionEntityType_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/session_entity_type.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/validation_result.pb.go b/dialogflow/apiv2beta1/dialogflowpb/validation_result.pb.go
new file mode 100644
index 0000000..c3d59a1
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/validation_result.pb.go
@@ -0,0 +1,353 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/validation_result.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Represents a level of severity.
+type ValidationError_Severity int32
+
+const (
+ // Not specified. This value should never be used.
+ ValidationError_SEVERITY_UNSPECIFIED ValidationError_Severity = 0
+ // The agent doesn't follow Dialogflow best practices.
+ ValidationError_INFO ValidationError_Severity = 1
+ // The agent may not behave as expected.
+ ValidationError_WARNING ValidationError_Severity = 2
+ // The agent may experience partial failures.
+ ValidationError_ERROR ValidationError_Severity = 3
+ // The agent may completely fail.
+ ValidationError_CRITICAL ValidationError_Severity = 4
+)
+
+// Enum value maps for ValidationError_Severity.
+var (
+ ValidationError_Severity_name = map[int32]string{
+ 0: "SEVERITY_UNSPECIFIED",
+ 1: "INFO",
+ 2: "WARNING",
+ 3: "ERROR",
+ 4: "CRITICAL",
+ }
+ ValidationError_Severity_value = map[string]int32{
+ "SEVERITY_UNSPECIFIED": 0,
+ "INFO": 1,
+ "WARNING": 2,
+ "ERROR": 3,
+ "CRITICAL": 4,
+ }
+)
+
+func (x ValidationError_Severity) Enum() *ValidationError_Severity {
+ p := new(ValidationError_Severity)
+ *p = x
+ return p
+}
+
+func (x ValidationError_Severity) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (ValidationError_Severity) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_validation_result_proto_enumTypes[0].Descriptor()
+}
+
+func (ValidationError_Severity) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_validation_result_proto_enumTypes[0]
+}
+
+func (x ValidationError_Severity) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use ValidationError_Severity.Descriptor instead.
+func (ValidationError_Severity) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// Represents a single validation error.
+type ValidationError struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The severity of the error.
+ Severity ValidationError_Severity `protobuf:"varint,1,opt,name=severity,proto3,enum=google.cloud.dialogflow.v2beta1.ValidationError_Severity" json:"severity,omitempty"`
+ // The names of the entries that the error is associated with.
+ // Format:
+ //
+ // - "projects/<Project ID>/agent", if the error is associated with the entire
+ // agent.
+ // - "projects/<Project ID>/agent/intents/<Intent ID>", if the error is
+ // associated with certain intents.
+ // - "projects/<Project
+ // ID>/agent/intents/<Intent Id>/trainingPhrases/<Training Phrase ID>", if the
+ // error is associated with certain intent training phrases.
+ // - "projects/<Project ID>/agent/intents/<Intent Id>/parameters/<Parameter
+ // ID>", if the error is associated with certain intent parameters.
+ // - "projects/<Project ID>/agent/entities/<Entity ID>", if the error is
+ // associated with certain entities.
+ Entries []string `protobuf:"bytes,3,rep,name=entries,proto3" json:"entries,omitempty"`
+ // The detailed error message.
+ ErrorMessage string `protobuf:"bytes,4,opt,name=error_message,json=errorMessage,proto3" json:"error_message,omitempty"`
+}
+
+func (x *ValidationError) Reset() {
+ *x = ValidationError{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidationError) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidationError) ProtoMessage() {}
+
+func (x *ValidationError) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ValidationError.ProtoReflect.Descriptor instead.
+func (*ValidationError) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *ValidationError) GetSeverity() ValidationError_Severity {
+ if x != nil {
+ return x.Severity
+ }
+ return ValidationError_SEVERITY_UNSPECIFIED
+}
+
+func (x *ValidationError) GetEntries() []string {
+ if x != nil {
+ return x.Entries
+ }
+ return nil
+}
+
+func (x *ValidationError) GetErrorMessage() string {
+ if x != nil {
+ return x.ErrorMessage
+ }
+ return ""
+}
+
+// Represents the output of agent validation.
+type ValidationResult struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Contains all validation errors.
+ ValidationErrors []*ValidationError `protobuf:"bytes,1,rep,name=validation_errors,json=validationErrors,proto3" json:"validation_errors,omitempty"`
+}
+
+func (x *ValidationResult) Reset() {
+ *x = ValidationResult{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ValidationResult) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ValidationResult) ProtoMessage() {}
+
+func (x *ValidationResult) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ValidationResult.ProtoReflect.Descriptor instead.
+func (*ValidationResult) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ValidationResult) GetValidationErrors() []*ValidationError {
+ if x != nil {
+ return x.ValidationErrors
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_validation_result_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDesc = []byte{
+ 0x0a, 0x37, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x72, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x22, 0xfd, 0x01, 0x0a, 0x0f, 0x56,
+ 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x12, 0x55,
+ 0x0a, 0x08, 0x73, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0e,
+ 0x32, 0x39, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72,
+ 0x6f, 0x72, 0x2e, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79, 0x52, 0x08, 0x73, 0x65, 0x76,
+ 0x65, 0x72, 0x69, 0x74, 0x79, 0x12, 0x18, 0x0a, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73,
+ 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x07, 0x65, 0x6e, 0x74, 0x72, 0x69, 0x65, 0x73, 0x12,
+ 0x23, 0x0a, 0x0d, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0c, 0x65, 0x72, 0x72, 0x6f, 0x72, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x22, 0x54, 0x0a, 0x08, 0x53, 0x65, 0x76, 0x65, 0x72, 0x69, 0x74, 0x79,
+ 0x12, 0x18, 0x0a, 0x14, 0x53, 0x45, 0x56, 0x45, 0x52, 0x49, 0x54, 0x59, 0x5f, 0x55, 0x4e, 0x53,
+ 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45, 0x44, 0x10, 0x00, 0x12, 0x08, 0x0a, 0x04, 0x49, 0x4e,
+ 0x46, 0x4f, 0x10, 0x01, 0x12, 0x0b, 0x0a, 0x07, 0x57, 0x41, 0x52, 0x4e, 0x49, 0x4e, 0x47, 0x10,
+ 0x02, 0x12, 0x09, 0x0a, 0x05, 0x45, 0x52, 0x52, 0x4f, 0x52, 0x10, 0x03, 0x12, 0x0c, 0x0a, 0x08,
+ 0x43, 0x52, 0x49, 0x54, 0x49, 0x43, 0x41, 0x4c, 0x10, 0x04, 0x22, 0x71, 0x0a, 0x10, 0x56, 0x61,
+ 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x12, 0x5d,
+ 0x0a, 0x11, 0x76, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x72, 0x72,
+ 0x6f, 0x72, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x30, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x61, 0x6c, 0x69,
+ 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x52, 0x10, 0x76, 0x61, 0x6c,
+ 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x45, 0x72, 0x72, 0x6f, 0x72, 0x73, 0x42, 0xad, 0x01,
+ 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x15, 0x56, 0x61, 0x6c, 0x69, 0x64, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43,
+ 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d,
+ 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61,
+ 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_validation_result_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes = make([]protoimpl.MessageInfo, 2)
+var file_google_cloud_dialogflow_v2beta1_validation_result_proto_goTypes = []interface{}{
+ (ValidationError_Severity)(0), // 0: google.cloud.dialogflow.v2beta1.ValidationError.Severity
+ (*ValidationError)(nil), // 1: google.cloud.dialogflow.v2beta1.ValidationError
+ (*ValidationResult)(nil), // 2: google.cloud.dialogflow.v2beta1.ValidationResult
+}
+var file_google_cloud_dialogflow_v2beta1_validation_result_proto_depIdxs = []int32{
+ 0, // 0: google.cloud.dialogflow.v2beta1.ValidationError.severity:type_name -> google.cloud.dialogflow.v2beta1.ValidationError.Severity
+ 1, // 1: google.cloud.dialogflow.v2beta1.ValidationResult.validation_errors:type_name -> google.cloud.dialogflow.v2beta1.ValidationError
+ 2, // [2:2] is the sub-list for method output_type
+ 2, // [2:2] is the sub-list for method input_type
+ 2, // [2:2] is the sub-list for extension type_name
+ 2, // [2:2] is the sub-list for extension extendee
+ 0, // [0:2] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_validation_result_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_validation_result_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_validation_result_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidationError); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ValidationResult); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 2,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_validation_result_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_validation_result_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_validation_result_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_validation_result_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_validation_result_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_validation_result_proto_depIdxs = nil
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/version.pb.go b/dialogflow/apiv2beta1/dialogflowpb/version.pb.go
new file mode 100644
index 0000000..ff582d8
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/version.pb.go
@@ -0,0 +1,1187 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/version.proto
+
+package dialogflowpb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ emptypb "google.golang.org/protobuf/types/known/emptypb"
+ fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The status of a version.
+type Version_VersionStatus int32
+
+const (
+ // Not specified. This value is not used.
+ Version_VERSION_STATUS_UNSPECIFIED Version_VersionStatus = 0
+ // Version is not ready to serve (e.g. training is in progress).
+ Version_IN_PROGRESS Version_VersionStatus = 1
+ // Version is ready to serve.
+ Version_READY Version_VersionStatus = 2
+ // Version training failed.
+ Version_FAILED Version_VersionStatus = 3
+)
+
+// Enum value maps for Version_VersionStatus.
+var (
+ Version_VersionStatus_name = map[int32]string{
+ 0: "VERSION_STATUS_UNSPECIFIED",
+ 1: "IN_PROGRESS",
+ 2: "READY",
+ 3: "FAILED",
+ }
+ Version_VersionStatus_value = map[string]int32{
+ "VERSION_STATUS_UNSPECIFIED": 0,
+ "IN_PROGRESS": 1,
+ "READY": 2,
+ "FAILED": 3,
+ }
+)
+
+func (x Version_VersionStatus) Enum() *Version_VersionStatus {
+ p := new(Version_VersionStatus)
+ *p = x
+ return p
+}
+
+func (x Version_VersionStatus) String() string {
+ return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
+}
+
+func (Version_VersionStatus) Descriptor() protoreflect.EnumDescriptor {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_enumTypes[0].Descriptor()
+}
+
+func (Version_VersionStatus) Type() protoreflect.EnumType {
+ return &file_google_cloud_dialogflow_v2beta1_version_proto_enumTypes[0]
+}
+
+func (x Version_VersionStatus) Number() protoreflect.EnumNumber {
+ return protoreflect.EnumNumber(x)
+}
+
+// Deprecated: Use Version_VersionStatus.Descriptor instead.
+func (Version_VersionStatus) EnumDescriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{0, 0}
+}
+
+// You can create multiple versions of your agent and publish them to separate
+// environments.
+//
+// When you edit an agent, you are editing the draft agent. At any point, you
+// can save the draft agent as an agent version, which is an immutable snapshot
+// of your agent.
+//
+// When you save the draft agent, it is published to the default environment.
+// When you create agent versions, you can publish them to custom environments.
+// You can create a variety of custom environments for:
+//
+// - testing
+// - development
+// - production
+// - etc.
+//
+// For more information, see the [versions and environments
+// guide](https://cloud.google.com/dialogflow/docs/agents-versions).
+type Version struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Output only. The unique identifier of this agent version.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/versions/<Version ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
+ // ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The developer-provided description of this version.
+ Description string `protobuf:"bytes,2,opt,name=description,proto3" json:"description,omitempty"`
+ // Output only. The sequential number of this version. This field is read-only
+ // which means it cannot be set by create and update methods.
+ VersionNumber int32 `protobuf:"varint,3,opt,name=version_number,json=versionNumber,proto3" json:"version_number,omitempty"`
+ // Output only. The creation time of this version. This field is read-only,
+ // i.e., it cannot be set by create and update methods.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. The status of this version. This field is read-only and cannot
+ // be set by create and update methods.
+ Status Version_VersionStatus `protobuf:"varint,6,opt,name=status,proto3,enum=google.cloud.dialogflow.v2beta1.Version_VersionStatus" json:"status,omitempty"`
+}
+
+func (x *Version) Reset() {
+ *x = Version{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Version) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Version) ProtoMessage() {}
+
+func (x *Version) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Version.ProtoReflect.Descriptor instead.
+func (*Version) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Version) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Version) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+func (x *Version) GetVersionNumber() int32 {
+ if x != nil {
+ return x.VersionNumber
+ }
+ return 0
+}
+
+func (x *Version) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Version) GetStatus() Version_VersionStatus {
+ if x != nil {
+ return x.Status
+ }
+ return Version_VERSION_STATUS_UNSPECIFIED
+}
+
+// The request message for
+// [Versions.ListVersions][google.cloud.dialogflow.v2beta1.Versions.ListVersions].
+type ListVersionsRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to list all versions from.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Optional. The maximum number of items to return in a single page. By
+ // default 100 and at most 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // Optional. The next_page_token value returned from a previous list request.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListVersionsRequest) Reset() {
+ *x = ListVersionsRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListVersionsRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListVersionsRequest) ProtoMessage() {}
+
+func (x *ListVersionsRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListVersionsRequest.ProtoReflect.Descriptor instead.
+func (*ListVersionsRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *ListVersionsRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListVersionsRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListVersionsRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// The response message for
+// [Versions.ListVersions][google.cloud.dialogflow.v2beta1.Versions.ListVersions].
+type ListVersionsResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The list of agent versions. There will be a maximum number of items
+ // returned based on the page_size field in the request.
+ Versions []*Version `protobuf:"bytes,1,rep,name=versions,proto3" json:"versions,omitempty"`
+ // Token to retrieve the next page of results, or empty if there are no
+ // more results in the list.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListVersionsResponse) Reset() {
+ *x = ListVersionsResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListVersionsResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListVersionsResponse) ProtoMessage() {}
+
+func (x *ListVersionsResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListVersionsResponse.ProtoReflect.Descriptor instead.
+func (*ListVersionsResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListVersionsResponse) GetVersions() []*Version {
+ if x != nil {
+ return x.Versions
+ }
+ return nil
+}
+
+func (x *ListVersionsResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// The request message for
+// [Versions.GetVersion][google.cloud.dialogflow.v2beta1.Versions.GetVersion].
+type GetVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the version.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/versions/<Version ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
+ // ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetVersionRequest) Reset() {
+ *x = GetVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetVersionRequest) ProtoMessage() {}
+
+func (x *GetVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetVersionRequest.ProtoReflect.Descriptor instead.
+func (*GetVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *GetVersionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// The request message for
+// [Versions.CreateVersion][google.cloud.dialogflow.v2beta1.Versions.CreateVersion].
+type CreateVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The agent to create a version for.
+ // Supported formats:
+ // - `projects/<Project ID>/agent`
+ // - `projects/<Project ID>/locations/<Location ID>/agent`
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The version to create.
+ Version *Version `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
+}
+
+func (x *CreateVersionRequest) Reset() {
+ *x = CreateVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreateVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreateVersionRequest) ProtoMessage() {}
+
+func (x *CreateVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreateVersionRequest.ProtoReflect.Descriptor instead.
+func (*CreateVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *CreateVersionRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreateVersionRequest) GetVersion() *Version {
+ if x != nil {
+ return x.Version
+ }
+ return nil
+}
+
+// The request message for
+// [Versions.UpdateVersion][google.cloud.dialogflow.v2beta1.Versions.UpdateVersion].
+type UpdateVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The version to update.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/versions/<Version ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
+ // ID>`
+ Version *Version `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
+ // Required. The mask to control which fields get updated.
+ UpdateMask *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
+}
+
+func (x *UpdateVersionRequest) Reset() {
+ *x = UpdateVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdateVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdateVersionRequest) ProtoMessage() {}
+
+func (x *UpdateVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdateVersionRequest.ProtoReflect.Descriptor instead.
+func (*UpdateVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *UpdateVersionRequest) GetVersion() *Version {
+ if x != nil {
+ return x.Version
+ }
+ return nil
+}
+
+func (x *UpdateVersionRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
+ if x != nil {
+ return x.UpdateMask
+ }
+ return nil
+}
+
+// The request message for
+// [Versions.DeleteVersion][google.cloud.dialogflow.v2beta1.Versions.DeleteVersion].
+type DeleteVersionRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The name of the version to delete.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/versions/<Version ID>`
+ // - `projects/<Project ID>/locations/<Location ID>/agent/versions/<Version
+ // ID>`
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *DeleteVersionRequest) Reset() {
+ *x = DeleteVersionRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeleteVersionRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeleteVersionRequest) ProtoMessage() {}
+
+func (x *DeleteVersionRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeleteVersionRequest.ProtoReflect.Descriptor instead.
+func (*DeleteVersionRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *DeleteVersionRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+var File_google_cloud_dialogflow_v2beta1_version_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_version_proto_rawDesc = []byte{
+ 0x0a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e,
+ 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e,
+ 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x61, 0x70, 0x69, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69,
+ 0x6f, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x19, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x72, 0x65, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x1a, 0x20, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2f, 0x66, 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0xfe, 0x03, 0x0a, 0x07, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
+ 0x17, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x25, 0x0a, 0x0b, 0x64, 0x65, 0x73, 0x63,
+ 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0,
+ 0x41, 0x01, 0x52, 0x0b, 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x12,
+ 0x2a, 0x0a, 0x0e, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x6e, 0x75, 0x6d, 0x62, 0x65,
+ 0x72, 0x18, 0x03, 0x20, 0x01, 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0d, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x4e, 0x75, 0x6d, 0x62, 0x65, 0x72, 0x12, 0x40, 0x0a, 0x0b, 0x63,
+ 0x72, 0x65, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62,
+ 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x53, 0x0a,
+ 0x06, 0x73, 0x74, 0x61, 0x74, 0x75, 0x73, 0x18, 0x06, 0x20, 0x01, 0x28, 0x0e, 0x32, 0x36, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53,
+ 0x74, 0x61, 0x74, 0x75, 0x73, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x06, 0x73, 0x74, 0x61, 0x74,
+ 0x75, 0x73, 0x22, 0x57, 0x0a, 0x0d, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x53, 0x74, 0x61,
+ 0x74, 0x75, 0x73, 0x12, 0x1e, 0x0a, 0x1a, 0x56, 0x45, 0x52, 0x53, 0x49, 0x4f, 0x4e, 0x5f, 0x53,
+ 0x54, 0x41, 0x54, 0x55, 0x53, 0x5f, 0x55, 0x4e, 0x53, 0x50, 0x45, 0x43, 0x49, 0x46, 0x49, 0x45,
+ 0x44, 0x10, 0x00, 0x12, 0x0f, 0x0a, 0x0b, 0x49, 0x4e, 0x5f, 0x50, 0x52, 0x4f, 0x47, 0x52, 0x45,
+ 0x53, 0x53, 0x10, 0x01, 0x12, 0x09, 0x0a, 0x05, 0x52, 0x45, 0x41, 0x44, 0x59, 0x10, 0x02, 0x12,
+ 0x0a, 0x0a, 0x06, 0x46, 0x41, 0x49, 0x4c, 0x45, 0x44, 0x10, 0x03, 0x3a, 0x96, 0x01, 0xea, 0x41,
+ 0x92, 0x01, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x56, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x2b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x7b, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x7d, 0x12, 0x40, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x7b, 0x70, 0x72,
+ 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x7d, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73,
+ 0x2f, 0x7b, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x7d, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x7d, 0x22, 0x9e, 0x01, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41,
+ 0x02, 0xfa, 0x41, 0x23, 0x12, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12,
+ 0x20, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x05, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65, 0x53, 0x69, 0x7a,
+ 0x65, 0x12, 0x22, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65,
+ 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x84, 0x01, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x44,
+ 0x0a, 0x08, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b,
+ 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e,
+ 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x08, 0x76, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x26, 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67,
+ 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e,
+ 0x65, 0x78, 0x74, 0x50, 0x61, 0x67, 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x52, 0x0a, 0x11,
+ 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x22, 0xa2, 0x01, 0x0a, 0x14, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x41, 0x0a, 0x06, 0x70, 0x61, 0x72,
+ 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41,
+ 0x23, 0x12, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x47, 0x0a, 0x07,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x28, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61,
+ 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07, 0x76, 0x65,
+ 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0xa1, 0x01, 0x0a, 0x14, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65,
+ 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x47,
+ 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x07,
+ 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70, 0x64, 0x61, 0x74,
+ 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x46,
+ 0x69, 0x65, 0x6c, 0x64, 0x4d, 0x61, 0x73, 0x6b, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x0a, 0x75,
+ 0x70, 0x64, 0x61, 0x74, 0x65, 0x4d, 0x61, 0x73, 0x6b, 0x22, 0x55, 0x0a, 0x14, 0x44, 0x65, 0x6c,
+ 0x65, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x12, 0x3d, 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42,
+ 0x29, 0xe0, 0x41, 0x02, 0xfa, 0x41, 0x23, 0x0a, 0x21, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0x2f, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65,
+ 0x32, 0xdb, 0x0a, 0x0a, 0x08, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0xf4, 0x01,
+ 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x34,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x71,
+ 0x75, 0x65, 0x73, 0x74, 0x1a, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x77, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x68, 0x12, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73,
+ 0x5a, 0x39, 0x12, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0xda, 0x41, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x12, 0xe1, 0x01, 0x0a, 0x0a, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73,
+ 0x69, 0x6f, 0x6e, 0x12, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x47, 0x65, 0x74, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x22, 0x75, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x68, 0x12, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63,
+ 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x5a, 0x39, 0x12, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74,
+ 0x61, 0x31, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74,
+ 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x84, 0x02, 0x0a, 0x0d, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x72, 0x65,
+ 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x22, 0x91, 0x01, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x7a, 0x22, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f,
+ 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x73, 0x3a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5a, 0x42, 0x22, 0x37, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x3d, 0x70,
+ 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x7d, 0x2f, 0x76, 0x65, 0x72,
+ 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x3a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0xda, 0x41,
+ 0x0e, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12,
+ 0x9a, 0x02, 0x0a, 0x0d, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x12, 0x35, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x56, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x22, 0xa7, 0x01, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x8a, 0x01, 0x32, 0x33, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a,
+ 0x7d, 0x3a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x5a, 0x4a, 0x32, 0x3f, 0x2f, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x2e,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0x3a, 0x07, 0x76,
+ 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0xda, 0x41, 0x13, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e,
+ 0x2c, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x6d, 0x61, 0x73, 0x6b, 0x12, 0xd5, 0x01, 0x0a,
+ 0x0d, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x12, 0x35,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2e, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x16, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70,
+ 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x45, 0x6d, 0x70, 0x74, 0x79, 0x22, 0x75, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x68, 0x2a, 0x2b, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x61, 0x67, 0x65, 0x6e, 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f,
+ 0x2a, 0x7d, 0x5a, 0x39, 0x2a, 0x37, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x7b,
+ 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x72, 0x6f, 0x6a, 0x65, 0x63, 0x74, 0x73, 0x2f, 0x2a, 0x2f,
+ 0x6c, 0x6f, 0x63, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x2f, 0x61, 0x67, 0x65, 0x6e,
+ 0x74, 0x2f, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x1a, 0x78, 0xca, 0x41, 0x19, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63,
+ 0x6f, 0x6d, 0xd2, 0x41, 0x59, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f,
+ 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d, 0x70, 0x6c, 0x61, 0x74, 0x66,
+ 0x6f, 0x72, 0x6d, 0x2c, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a, 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61,
+ 0x75, 0x74, 0x68, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x42, 0xa4,
+ 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76,
+ 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0c, 0x56, 0x65, 0x72, 0x73, 0x69, 0x6f, 0x6e, 0x50,
+ 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67, 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70, 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02,
+ 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f,
+ 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32,
+ 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_version_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_version_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_version_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_version_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_version_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_version_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_version_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_version_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_version_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
+var file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes = make([]protoimpl.MessageInfo, 7)
+var file_google_cloud_dialogflow_v2beta1_version_proto_goTypes = []interface{}{
+ (Version_VersionStatus)(0), // 0: google.cloud.dialogflow.v2beta1.Version.VersionStatus
+ (*Version)(nil), // 1: google.cloud.dialogflow.v2beta1.Version
+ (*ListVersionsRequest)(nil), // 2: google.cloud.dialogflow.v2beta1.ListVersionsRequest
+ (*ListVersionsResponse)(nil), // 3: google.cloud.dialogflow.v2beta1.ListVersionsResponse
+ (*GetVersionRequest)(nil), // 4: google.cloud.dialogflow.v2beta1.GetVersionRequest
+ (*CreateVersionRequest)(nil), // 5: google.cloud.dialogflow.v2beta1.CreateVersionRequest
+ (*UpdateVersionRequest)(nil), // 6: google.cloud.dialogflow.v2beta1.UpdateVersionRequest
+ (*DeleteVersionRequest)(nil), // 7: google.cloud.dialogflow.v2beta1.DeleteVersionRequest
+ (*timestamppb.Timestamp)(nil), // 8: google.protobuf.Timestamp
+ (*fieldmaskpb.FieldMask)(nil), // 9: google.protobuf.FieldMask
+ (*emptypb.Empty)(nil), // 10: google.protobuf.Empty
+}
+var file_google_cloud_dialogflow_v2beta1_version_proto_depIdxs = []int32{
+ 8, // 0: google.cloud.dialogflow.v2beta1.Version.create_time:type_name -> google.protobuf.Timestamp
+ 0, // 1: google.cloud.dialogflow.v2beta1.Version.status:type_name -> google.cloud.dialogflow.v2beta1.Version.VersionStatus
+ 1, // 2: google.cloud.dialogflow.v2beta1.ListVersionsResponse.versions:type_name -> google.cloud.dialogflow.v2beta1.Version
+ 1, // 3: google.cloud.dialogflow.v2beta1.CreateVersionRequest.version:type_name -> google.cloud.dialogflow.v2beta1.Version
+ 1, // 4: google.cloud.dialogflow.v2beta1.UpdateVersionRequest.version:type_name -> google.cloud.dialogflow.v2beta1.Version
+ 9, // 5: google.cloud.dialogflow.v2beta1.UpdateVersionRequest.update_mask:type_name -> google.protobuf.FieldMask
+ 2, // 6: google.cloud.dialogflow.v2beta1.Versions.ListVersions:input_type -> google.cloud.dialogflow.v2beta1.ListVersionsRequest
+ 4, // 7: google.cloud.dialogflow.v2beta1.Versions.GetVersion:input_type -> google.cloud.dialogflow.v2beta1.GetVersionRequest
+ 5, // 8: google.cloud.dialogflow.v2beta1.Versions.CreateVersion:input_type -> google.cloud.dialogflow.v2beta1.CreateVersionRequest
+ 6, // 9: google.cloud.dialogflow.v2beta1.Versions.UpdateVersion:input_type -> google.cloud.dialogflow.v2beta1.UpdateVersionRequest
+ 7, // 10: google.cloud.dialogflow.v2beta1.Versions.DeleteVersion:input_type -> google.cloud.dialogflow.v2beta1.DeleteVersionRequest
+ 3, // 11: google.cloud.dialogflow.v2beta1.Versions.ListVersions:output_type -> google.cloud.dialogflow.v2beta1.ListVersionsResponse
+ 1, // 12: google.cloud.dialogflow.v2beta1.Versions.GetVersion:output_type -> google.cloud.dialogflow.v2beta1.Version
+ 1, // 13: google.cloud.dialogflow.v2beta1.Versions.CreateVersion:output_type -> google.cloud.dialogflow.v2beta1.Version
+ 1, // 14: google.cloud.dialogflow.v2beta1.Versions.UpdateVersion:output_type -> google.cloud.dialogflow.v2beta1.Version
+ 10, // 15: google.cloud.dialogflow.v2beta1.Versions.DeleteVersion:output_type -> google.protobuf.Empty
+ 11, // [11:16] is the sub-list for method output_type
+ 6, // [6:11] is the sub-list for method input_type
+ 6, // [6:6] is the sub-list for extension type_name
+ 6, // [6:6] is the sub-list for extension extendee
+ 0, // [0:6] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_version_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_version_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_version_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Version); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListVersionsRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListVersionsResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreateVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdateVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeleteVersionRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_version_proto_rawDesc,
+ NumEnums: 1,
+ NumMessages: 7,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_version_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_version_proto_depIdxs,
+ EnumInfos: file_google_cloud_dialogflow_v2beta1_version_proto_enumTypes,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_version_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_version_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_version_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_version_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_version_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// VersionsClient is the client API for Versions service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type VersionsClient interface {
+ // Returns the list of all versions of the specified agent.
+ ListVersions(ctx context.Context, in *ListVersionsRequest, opts ...grpc.CallOption) (*ListVersionsResponse, error)
+ // Retrieves the specified agent version.
+ GetVersion(ctx context.Context, in *GetVersionRequest, opts ...grpc.CallOption) (*Version, error)
+ // Creates an agent version.
+ //
+ // The new version points to the agent instance in the "default" environment.
+ CreateVersion(ctx context.Context, in *CreateVersionRequest, opts ...grpc.CallOption) (*Version, error)
+ // Updates the specified agent version.
+ //
+ // Note that this method does not allow you to update the state of the agent
+ // the given version points to. It allows you to update only mutable
+ // properties of the version resource.
+ UpdateVersion(ctx context.Context, in *UpdateVersionRequest, opts ...grpc.CallOption) (*Version, error)
+ // Delete the specified agent version.
+ DeleteVersion(ctx context.Context, in *DeleteVersionRequest, opts ...grpc.CallOption) (*emptypb.Empty, error)
+}
+
+type versionsClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewVersionsClient(cc grpc.ClientConnInterface) VersionsClient {
+ return &versionsClient{cc}
+}
+
+func (c *versionsClient) ListVersions(ctx context.Context, in *ListVersionsRequest, opts ...grpc.CallOption) (*ListVersionsResponse, error) {
+ out := new(ListVersionsResponse)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Versions/ListVersions", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *versionsClient) GetVersion(ctx context.Context, in *GetVersionRequest, opts ...grpc.CallOption) (*Version, error) {
+ out := new(Version)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Versions/GetVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *versionsClient) CreateVersion(ctx context.Context, in *CreateVersionRequest, opts ...grpc.CallOption) (*Version, error) {
+ out := new(Version)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Versions/CreateVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *versionsClient) UpdateVersion(ctx context.Context, in *UpdateVersionRequest, opts ...grpc.CallOption) (*Version, error) {
+ out := new(Version)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Versions/UpdateVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *versionsClient) DeleteVersion(ctx context.Context, in *DeleteVersionRequest, opts ...grpc.CallOption) (*emptypb.Empty, error) {
+ out := new(emptypb.Empty)
+ err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2beta1.Versions/DeleteVersion", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// VersionsServer is the server API for Versions service.
+type VersionsServer interface {
+ // Returns the list of all versions of the specified agent.
+ ListVersions(context.Context, *ListVersionsRequest) (*ListVersionsResponse, error)
+ // Retrieves the specified agent version.
+ GetVersion(context.Context, *GetVersionRequest) (*Version, error)
+ // Creates an agent version.
+ //
+ // The new version points to the agent instance in the "default" environment.
+ CreateVersion(context.Context, *CreateVersionRequest) (*Version, error)
+ // Updates the specified agent version.
+ //
+ // Note that this method does not allow you to update the state of the agent
+ // the given version points to. It allows you to update only mutable
+ // properties of the version resource.
+ UpdateVersion(context.Context, *UpdateVersionRequest) (*Version, error)
+ // Delete the specified agent version.
+ DeleteVersion(context.Context, *DeleteVersionRequest) (*emptypb.Empty, error)
+}
+
+// UnimplementedVersionsServer can be embedded to have forward compatible implementations.
+type UnimplementedVersionsServer struct {
+}
+
+func (*UnimplementedVersionsServer) ListVersions(context.Context, *ListVersionsRequest) (*ListVersionsResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListVersions not implemented")
+}
+func (*UnimplementedVersionsServer) GetVersion(context.Context, *GetVersionRequest) (*Version, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetVersion not implemented")
+}
+func (*UnimplementedVersionsServer) CreateVersion(context.Context, *CreateVersionRequest) (*Version, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreateVersion not implemented")
+}
+func (*UnimplementedVersionsServer) UpdateVersion(context.Context, *UpdateVersionRequest) (*Version, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdateVersion not implemented")
+}
+func (*UnimplementedVersionsServer) DeleteVersion(context.Context, *DeleteVersionRequest) (*emptypb.Empty, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeleteVersion not implemented")
+}
+
+func RegisterVersionsServer(s *grpc.Server, srv VersionsServer) {
+ s.RegisterService(&_Versions_serviceDesc, srv)
+}
+
+func _Versions_ListVersions_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListVersionsRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VersionsServer).ListVersions(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Versions/ListVersions",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VersionsServer).ListVersions(ctx, req.(*ListVersionsRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Versions_GetVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VersionsServer).GetVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Versions/GetVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VersionsServer).GetVersion(ctx, req.(*GetVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Versions_CreateVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreateVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VersionsServer).CreateVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Versions/CreateVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VersionsServer).CreateVersion(ctx, req.(*CreateVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Versions_UpdateVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdateVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VersionsServer).UpdateVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Versions/UpdateVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VersionsServer).UpdateVersion(ctx, req.(*UpdateVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Versions_DeleteVersion_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeleteVersionRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(VersionsServer).DeleteVersion(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.cloud.dialogflow.v2beta1.Versions/DeleteVersion",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(VersionsServer).DeleteVersion(ctx, req.(*DeleteVersionRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Versions_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.cloud.dialogflow.v2beta1.Versions",
+ HandlerType: (*VersionsServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListVersions",
+ Handler: _Versions_ListVersions_Handler,
+ },
+ {
+ MethodName: "GetVersion",
+ Handler: _Versions_GetVersion_Handler,
+ },
+ {
+ MethodName: "CreateVersion",
+ Handler: _Versions_CreateVersion_Handler,
+ },
+ {
+ MethodName: "UpdateVersion",
+ Handler: _Versions_UpdateVersion_Handler,
+ },
+ {
+ MethodName: "DeleteVersion",
+ Handler: _Versions_DeleteVersion_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/cloud/dialogflow/v2beta1/version.proto",
+}
diff --git a/dialogflow/apiv2beta1/dialogflowpb/webhook.pb.go b/dialogflow/apiv2beta1/dialogflowpb/webhook.pb.go
new file mode 100644
index 0000000..964c478
--- /dev/null
+++ b/dialogflow/apiv2beta1/dialogflowpb/webhook.pb.go
@@ -0,0 +1,607 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/cloud/dialogflow/v2beta1/webhook.proto
+
+package dialogflowpb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ structpb "google.golang.org/protobuf/types/known/structpb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// The request message for a webhook call.
+type WebhookRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The unique identifier of detectIntent request session.
+ // Can be used to identify end-user inside webhook implementation.
+ // Supported formats:
+ // - `projects/<Project ID>/agent/sessions/<Session ID>,
+ // - `projects/<Project ID>/locations/<Location ID>/agent/sessions/<Session
+ // ID>`,
+ // - `projects/<Project ID>/agent/environments/<Environment ID>/users/<User
+ // ID>/sessions/<Session ID>`,
+ // - `projects/<Project ID>/locations/<Location
+ // ID>/agent/environments/<Environment ID>/users/<User ID>/sessions/<Session
+ // ID>`,
+ Session string `protobuf:"bytes,4,opt,name=session,proto3" json:"session,omitempty"`
+ // The unique identifier of the response. Contains the same value as
+ // `[Streaming]DetectIntentResponse.response_id`.
+ ResponseId string `protobuf:"bytes,1,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"`
+ // The result of the conversational query or event processing. Contains the
+ // same value as `[Streaming]DetectIntentResponse.query_result`.
+ QueryResult *QueryResult `protobuf:"bytes,2,opt,name=query_result,json=queryResult,proto3" json:"query_result,omitempty"`
+ // Alternative query results from KnowledgeService.
+ AlternativeQueryResults []*QueryResult `protobuf:"bytes,5,rep,name=alternative_query_results,json=alternativeQueryResults,proto3" json:"alternative_query_results,omitempty"`
+ // Optional. The contents of the original request that was passed to
+ // `[Streaming]DetectIntent` call.
+ OriginalDetectIntentRequest *OriginalDetectIntentRequest `protobuf:"bytes,3,opt,name=original_detect_intent_request,json=originalDetectIntentRequest,proto3" json:"original_detect_intent_request,omitempty"`
+}
+
+func (x *WebhookRequest) Reset() {
+ *x = WebhookRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WebhookRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WebhookRequest) ProtoMessage() {}
+
+func (x *WebhookRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WebhookRequest.ProtoReflect.Descriptor instead.
+func (*WebhookRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *WebhookRequest) GetSession() string {
+ if x != nil {
+ return x.Session
+ }
+ return ""
+}
+
+func (x *WebhookRequest) GetResponseId() string {
+ if x != nil {
+ return x.ResponseId
+ }
+ return ""
+}
+
+func (x *WebhookRequest) GetQueryResult() *QueryResult {
+ if x != nil {
+ return x.QueryResult
+ }
+ return nil
+}
+
+func (x *WebhookRequest) GetAlternativeQueryResults() []*QueryResult {
+ if x != nil {
+ return x.AlternativeQueryResults
+ }
+ return nil
+}
+
+func (x *WebhookRequest) GetOriginalDetectIntentRequest() *OriginalDetectIntentRequest {
+ if x != nil {
+ return x.OriginalDetectIntentRequest
+ }
+ return nil
+}
+
+// The response message for a webhook call.
+//
+// This response is validated by the Dialogflow server. If validation fails,
+// an error will be returned in the
+// [QueryResult.diagnostic_info][google.cloud.dialogflow.v2beta1.QueryResult.diagnostic_info]
+// field. Setting JSON fields to an empty value with the wrong type is a common
+// error. To avoid this error:
+//
+// - Use `""` for empty strings
+// - Use `{}` or `null` for empty objects
+// - Use `[]` or `null` for empty arrays
+//
+// For more information, see the
+// [Protocol Buffers Language
+// Guide](https://developers.google.com/protocol-buffers/docs/proto3#json).
+type WebhookResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Optional. The text response message intended for the end-user.
+ // It is recommended to use `fulfillment_messages.text.text[0]` instead.
+ // When provided, Dialogflow uses this field to populate
+ // [QueryResult.fulfillment_text][google.cloud.dialogflow.v2beta1.QueryResult.fulfillment_text]
+ // sent to the integration or API caller.
+ FulfillmentText string `protobuf:"bytes,1,opt,name=fulfillment_text,json=fulfillmentText,proto3" json:"fulfillment_text,omitempty"`
+ // Optional. The rich response messages intended for the end-user.
+ // When provided, Dialogflow uses this field to populate
+ // [QueryResult.fulfillment_messages][google.cloud.dialogflow.v2beta1.QueryResult.fulfillment_messages]
+ // sent to the integration or API caller.
+ FulfillmentMessages []*Intent_Message `protobuf:"bytes,2,rep,name=fulfillment_messages,json=fulfillmentMessages,proto3" json:"fulfillment_messages,omitempty"`
+ // Optional. A custom field used to identify the webhook source.
+ // Arbitrary strings are supported.
+ // When provided, Dialogflow uses this field to populate
+ // [QueryResult.webhook_source][google.cloud.dialogflow.v2beta1.QueryResult.webhook_source]
+ // sent to the integration or API caller.
+ Source string `protobuf:"bytes,3,opt,name=source,proto3" json:"source,omitempty"`
+ // Optional. This field can be used to pass custom data from your webhook to
+ // the integration or API caller. Arbitrary JSON objects are supported. When
+ // provided, Dialogflow uses this field to populate
+ // [QueryResult.webhook_payload][google.cloud.dialogflow.v2beta1.QueryResult.webhook_payload]
+ // sent to the integration or API caller. This field is also used by the
+ // [Google Assistant
+ // integration](https://cloud.google.com/dialogflow/docs/integrations/aog)
+ // for rich response messages.
+ // See the format definition at [Google Assistant Dialogflow webhook
+ // format](https://developers.google.com/assistant/actions/build/json/dialogflow-webhook-json)
+ Payload *structpb.Struct `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
+ // Optional. The collection of output contexts that will overwrite currently
+ // active contexts for the session and reset their lifespans.
+ // When provided, Dialogflow uses this field to populate
+ // [QueryResult.output_contexts][google.cloud.dialogflow.v2beta1.QueryResult.output_contexts]
+ // sent to the integration or API caller.
+ OutputContexts []*Context `protobuf:"bytes,5,rep,name=output_contexts,json=outputContexts,proto3" json:"output_contexts,omitempty"`
+ // Optional. Invokes the supplied events.
+ // When this field is set, Dialogflow ignores the `fulfillment_text`,
+ // `fulfillment_messages`, and `payload` fields.
+ FollowupEventInput *EventInput `protobuf:"bytes,6,opt,name=followup_event_input,json=followupEventInput,proto3" json:"followup_event_input,omitempty"`
+ // Indicates that a live agent should be brought in to handle the
+ // interaction with the user. In most cases, when you set this flag to true,
+ // you would also want to set end_interaction to true as well. Default is
+ // false.
+ LiveAgentHandoff bool `protobuf:"varint,7,opt,name=live_agent_handoff,json=liveAgentHandoff,proto3" json:"live_agent_handoff,omitempty"`
+ // Optional. Indicates that this intent ends an interaction. Some integrations
+ // (e.g., Actions on Google or Dialogflow phone gateway) use this information
+ // to close interaction with an end user. Default is false.
+ EndInteraction bool `protobuf:"varint,8,opt,name=end_interaction,json=endInteraction,proto3" json:"end_interaction,omitempty"`
+ // Optional. Additional session entity types to replace or extend developer
+ // entity types with. The entity synonyms apply to all languages and persist
+ // for the session. Setting this data from a webhook overwrites
+ // the session entity types that have been set using `detectIntent`,
+ // `streamingDetectIntent` or
+ // [SessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityType]
+ // management methods.
+ SessionEntityTypes []*SessionEntityType `protobuf:"bytes,10,rep,name=session_entity_types,json=sessionEntityTypes,proto3" json:"session_entity_types,omitempty"`
+}
+
+func (x *WebhookResponse) Reset() {
+ *x = WebhookResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *WebhookResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*WebhookResponse) ProtoMessage() {}
+
+func (x *WebhookResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use WebhookResponse.ProtoReflect.Descriptor instead.
+func (*WebhookResponse) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescGZIP(), []int{1}
+}
+
+func (x *WebhookResponse) GetFulfillmentText() string {
+ if x != nil {
+ return x.FulfillmentText
+ }
+ return ""
+}
+
+func (x *WebhookResponse) GetFulfillmentMessages() []*Intent_Message {
+ if x != nil {
+ return x.FulfillmentMessages
+ }
+ return nil
+}
+
+func (x *WebhookResponse) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *WebhookResponse) GetPayload() *structpb.Struct {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+func (x *WebhookResponse) GetOutputContexts() []*Context {
+ if x != nil {
+ return x.OutputContexts
+ }
+ return nil
+}
+
+func (x *WebhookResponse) GetFollowupEventInput() *EventInput {
+ if x != nil {
+ return x.FollowupEventInput
+ }
+ return nil
+}
+
+func (x *WebhookResponse) GetLiveAgentHandoff() bool {
+ if x != nil {
+ return x.LiveAgentHandoff
+ }
+ return false
+}
+
+func (x *WebhookResponse) GetEndInteraction() bool {
+ if x != nil {
+ return x.EndInteraction
+ }
+ return false
+}
+
+func (x *WebhookResponse) GetSessionEntityTypes() []*SessionEntityType {
+ if x != nil {
+ return x.SessionEntityTypes
+ }
+ return nil
+}
+
+// Represents the contents of the original request that was passed to
+// the `[Streaming]DetectIntent` call.
+type OriginalDetectIntentRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The source of this request, e.g., `google`, `facebook`, `slack`. It is set
+ // by Dialogflow-owned servers.
+ Source string `protobuf:"bytes,1,opt,name=source,proto3" json:"source,omitempty"`
+ // Optional. The version of the protocol used for this request.
+ // This field is AoG-specific.
+ Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"`
+ // Optional. This field is set to the value of the `QueryParameters.payload`
+ // field passed in the request. Some integrations that query a Dialogflow
+ // agent may provide additional information in the payload.
+ //
+ // In particular, for the Dialogflow Phone Gateway integration, this field has
+ // the form:
+ //
+ // <pre>{
+ // "telephony": {
+ // "caller_id": "+18558363987"
+ // }
+ // }</pre>
+ //
+ // Note: The caller ID field (`caller_id`) will be redacted for Trial
+ // Edition agents and populated with the caller ID in [E.164
+ // format](https://en.wikipedia.org/wiki/E.164) for Essentials Edition agents.
+ Payload *structpb.Struct `protobuf:"bytes,3,opt,name=payload,proto3" json:"payload,omitempty"`
+}
+
+func (x *OriginalDetectIntentRequest) Reset() {
+ *x = OriginalDetectIntentRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *OriginalDetectIntentRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*OriginalDetectIntentRequest) ProtoMessage() {}
+
+func (x *OriginalDetectIntentRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use OriginalDetectIntentRequest.ProtoReflect.Descriptor instead.
+func (*OriginalDetectIntentRequest) Descriptor() ([]byte, []int) {
+ return file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *OriginalDetectIntentRequest) GetSource() string {
+ if x != nil {
+ return x.Source
+ }
+ return ""
+}
+
+func (x *OriginalDetectIntentRequest) GetVersion() string {
+ if x != nil {
+ return x.Version
+ }
+ return ""
+}
+
+func (x *OriginalDetectIntentRequest) GetPayload() *structpb.Struct {
+ if x != nil {
+ return x.Payload
+ }
+ return nil
+}
+
+var File_google_cloud_dialogflow_v2beta1_webhook_proto protoreflect.FileDescriptor
+
+var file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDesc = []byte{
+ 0x0a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x77, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12,
+ 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x1a, 0x2d, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2f, 0x63, 0x6f, 0x6e, 0x74, 0x65, 0x78, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a,
+ 0x2c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69,
+ 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31,
+ 0x2f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x2d, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c,
+ 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73,
+ 0x65, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x39, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f,
+ 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x73, 0x65,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70,
+ 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1c, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x73, 0x74, 0x72, 0x75, 0x63, 0x74, 0x2e,
+ 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x22, 0x8a, 0x03, 0x0a, 0x0e, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f,
+ 0x6b, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x18, 0x0a, 0x07, 0x73, 0x65, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x73, 0x65, 0x73, 0x73, 0x69,
+ 0x6f, 0x6e, 0x12, 0x1f, 0x0a, 0x0b, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x5f, 0x69,
+ 0x64, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0a, 0x72, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73,
+ 0x65, 0x49, 0x64, 0x12, 0x4f, 0x0a, 0x0c, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x73,
+ 0x75, 0x6c, 0x74, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72,
+ 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x0b, 0x71, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65,
+ 0x73, 0x75, 0x6c, 0x74, 0x12, 0x68, 0x0a, 0x19, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74,
+ 0x69, 0x76, 0x65, 0x5f, 0x71, 0x75, 0x65, 0x72, 0x79, 0x5f, 0x72, 0x65, 0x73, 0x75, 0x6c, 0x74,
+ 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x2c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52,
+ 0x65, 0x73, 0x75, 0x6c, 0x74, 0x52, 0x17, 0x61, 0x6c, 0x74, 0x65, 0x72, 0x6e, 0x61, 0x74, 0x69,
+ 0x76, 0x65, 0x51, 0x75, 0x65, 0x72, 0x79, 0x52, 0x65, 0x73, 0x75, 0x6c, 0x74, 0x73, 0x12, 0x81,
+ 0x01, 0x0a, 0x1e, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x5f, 0x64, 0x65, 0x74, 0x65,
+ 0x63, 0x74, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x5f, 0x72, 0x65, 0x71, 0x75, 0x65, 0x73,
+ 0x74, 0x18, 0x03, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x3c, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e,
+ 0x61, 0x6c, 0x44, 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65,
+ 0x71, 0x75, 0x65, 0x73, 0x74, 0x52, 0x1b, 0x6f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x44,
+ 0x65, 0x74, 0x65, 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65,
+ 0x73, 0x74, 0x22, 0xda, 0x04, 0x0a, 0x0f, 0x57, 0x65, 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x52, 0x65,
+ 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x29, 0x0a, 0x10, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c,
+ 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x5f, 0x74, 0x65, 0x78, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09,
+ 0x52, 0x0f, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x54, 0x65, 0x78,
+ 0x74, 0x12, 0x62, 0x0a, 0x14, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74,
+ 0x5f, 0x6d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x2f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64,
+ 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61,
+ 0x31, 0x2e, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x2e, 0x4d, 0x65, 0x73, 0x73, 0x61, 0x67, 0x65,
+ 0x52, 0x13, 0x66, 0x75, 0x6c, 0x66, 0x69, 0x6c, 0x6c, 0x6d, 0x65, 0x6e, 0x74, 0x4d, 0x65, 0x73,
+ 0x73, 0x61, 0x67, 0x65, 0x73, 0x12, 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18,
+ 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x31, 0x0a,
+ 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x04, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66,
+ 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64,
+ 0x12, 0x51, 0x0a, 0x0f, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x5f, 0x63, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x28, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x43, 0x6f, 0x6e, 0x74,
+ 0x65, 0x78, 0x74, 0x52, 0x0e, 0x6f, 0x75, 0x74, 0x70, 0x75, 0x74, 0x43, 0x6f, 0x6e, 0x74, 0x65,
+ 0x78, 0x74, 0x73, 0x12, 0x5d, 0x0a, 0x14, 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x5f,
+ 0x65, 0x76, 0x65, 0x6e, 0x74, 0x5f, 0x69, 0x6e, 0x70, 0x75, 0x74, 0x18, 0x06, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x2b, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64,
+ 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65,
+ 0x74, 0x61, 0x31, 0x2e, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70, 0x75, 0x74, 0x52, 0x12,
+ 0x66, 0x6f, 0x6c, 0x6c, 0x6f, 0x77, 0x75, 0x70, 0x45, 0x76, 0x65, 0x6e, 0x74, 0x49, 0x6e, 0x70,
+ 0x75, 0x74, 0x12, 0x2c, 0x0a, 0x12, 0x6c, 0x69, 0x76, 0x65, 0x5f, 0x61, 0x67, 0x65, 0x6e, 0x74,
+ 0x5f, 0x68, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66, 0x18, 0x07, 0x20, 0x01, 0x28, 0x08, 0x52, 0x10,
+ 0x6c, 0x69, 0x76, 0x65, 0x41, 0x67, 0x65, 0x6e, 0x74, 0x48, 0x61, 0x6e, 0x64, 0x6f, 0x66, 0x66,
+ 0x12, 0x27, 0x0a, 0x0f, 0x65, 0x6e, 0x64, 0x5f, 0x69, 0x6e, 0x74, 0x65, 0x72, 0x61, 0x63, 0x74,
+ 0x69, 0x6f, 0x6e, 0x18, 0x08, 0x20, 0x01, 0x28, 0x08, 0x52, 0x0e, 0x65, 0x6e, 0x64, 0x49, 0x6e,
+ 0x74, 0x65, 0x72, 0x61, 0x63, 0x74, 0x69, 0x6f, 0x6e, 0x12, 0x64, 0x0a, 0x14, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x5f, 0x65, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x5f, 0x74, 0x79, 0x70, 0x65,
+ 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x32, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
+ 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2e, 0x53, 0x65, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x52, 0x12, 0x73, 0x65, 0x73,
+ 0x73, 0x69, 0x6f, 0x6e, 0x45, 0x6e, 0x74, 0x69, 0x74, 0x79, 0x54, 0x79, 0x70, 0x65, 0x73, 0x22,
+ 0x82, 0x01, 0x0a, 0x1b, 0x4f, 0x72, 0x69, 0x67, 0x69, 0x6e, 0x61, 0x6c, 0x44, 0x65, 0x74, 0x65,
+ 0x63, 0x74, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12,
+ 0x16, 0x0a, 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x06, 0x73, 0x6f, 0x75, 0x72, 0x63, 0x65, 0x12, 0x18, 0x0a, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69,
+ 0x6f, 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x07, 0x76, 0x65, 0x72, 0x73, 0x69, 0x6f,
+ 0x6e, 0x12, 0x31, 0x0a, 0x07, 0x70, 0x61, 0x79, 0x6c, 0x6f, 0x61, 0x64, 0x18, 0x03, 0x20, 0x01,
+ 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x62, 0x75, 0x66, 0x2e, 0x53, 0x74, 0x72, 0x75, 0x63, 0x74, 0x52, 0x07, 0x70, 0x61, 0x79,
+ 0x6c, 0x6f, 0x61, 0x64, 0x42, 0xa4, 0x01, 0x0a, 0x23, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67,
+ 0x66, 0x6c, 0x6f, 0x77, 0x2e, 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x42, 0x0c, 0x57, 0x65,
+ 0x62, 0x68, 0x6f, 0x6f, 0x6b, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x43, 0x63, 0x6c,
+ 0x6f, 0x75, 0x64, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x67,
+ 0x6f, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x61, 0x70, 0x69,
+ 0x76, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c,
+ 0x6f, 0x77, 0x70, 0x62, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x70,
+ 0x62, 0xf8, 0x01, 0x01, 0xa2, 0x02, 0x02, 0x44, 0x46, 0xaa, 0x02, 0x1f, 0x47, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x44, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66,
+ 0x6c, 0x6f, 0x77, 0x2e, 0x56, 0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescOnce sync.Once
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescData = file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDesc
+)
+
+func file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescGZIP() []byte {
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescOnce.Do(func() {
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescData)
+ })
+ return file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDescData
+}
+
+var file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
+var file_google_cloud_dialogflow_v2beta1_webhook_proto_goTypes = []interface{}{
+ (*WebhookRequest)(nil), // 0: google.cloud.dialogflow.v2beta1.WebhookRequest
+ (*WebhookResponse)(nil), // 1: google.cloud.dialogflow.v2beta1.WebhookResponse
+ (*OriginalDetectIntentRequest)(nil), // 2: google.cloud.dialogflow.v2beta1.OriginalDetectIntentRequest
+ (*QueryResult)(nil), // 3: google.cloud.dialogflow.v2beta1.QueryResult
+ (*Intent_Message)(nil), // 4: google.cloud.dialogflow.v2beta1.Intent.Message
+ (*structpb.Struct)(nil), // 5: google.protobuf.Struct
+ (*Context)(nil), // 6: google.cloud.dialogflow.v2beta1.Context
+ (*EventInput)(nil), // 7: google.cloud.dialogflow.v2beta1.EventInput
+ (*SessionEntityType)(nil), // 8: google.cloud.dialogflow.v2beta1.SessionEntityType
+}
+var file_google_cloud_dialogflow_v2beta1_webhook_proto_depIdxs = []int32{
+ 3, // 0: google.cloud.dialogflow.v2beta1.WebhookRequest.query_result:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 3, // 1: google.cloud.dialogflow.v2beta1.WebhookRequest.alternative_query_results:type_name -> google.cloud.dialogflow.v2beta1.QueryResult
+ 2, // 2: google.cloud.dialogflow.v2beta1.WebhookRequest.original_detect_intent_request:type_name -> google.cloud.dialogflow.v2beta1.OriginalDetectIntentRequest
+ 4, // 3: google.cloud.dialogflow.v2beta1.WebhookResponse.fulfillment_messages:type_name -> google.cloud.dialogflow.v2beta1.Intent.Message
+ 5, // 4: google.cloud.dialogflow.v2beta1.WebhookResponse.payload:type_name -> google.protobuf.Struct
+ 6, // 5: google.cloud.dialogflow.v2beta1.WebhookResponse.output_contexts:type_name -> google.cloud.dialogflow.v2beta1.Context
+ 7, // 6: google.cloud.dialogflow.v2beta1.WebhookResponse.followup_event_input:type_name -> google.cloud.dialogflow.v2beta1.EventInput
+ 8, // 7: google.cloud.dialogflow.v2beta1.WebhookResponse.session_entity_types:type_name -> google.cloud.dialogflow.v2beta1.SessionEntityType
+ 5, // 8: google.cloud.dialogflow.v2beta1.OriginalDetectIntentRequest.payload:type_name -> google.protobuf.Struct
+ 9, // [9:9] is the sub-list for method output_type
+ 9, // [9:9] is the sub-list for method input_type
+ 9, // [9:9] is the sub-list for extension type_name
+ 9, // [9:9] is the sub-list for extension extendee
+ 0, // [0:9] is the sub-list for field type_name
+}
+
+func init() { file_google_cloud_dialogflow_v2beta1_webhook_proto_init() }
+func file_google_cloud_dialogflow_v2beta1_webhook_proto_init() {
+ if File_google_cloud_dialogflow_v2beta1_webhook_proto != nil {
+ return
+ }
+ file_google_cloud_dialogflow_v2beta1_context_proto_init()
+ file_google_cloud_dialogflow_v2beta1_intent_proto_init()
+ file_google_cloud_dialogflow_v2beta1_session_proto_init()
+ file_google_cloud_dialogflow_v2beta1_session_entity_type_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WebhookRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*WebhookResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*OriginalDetectIntentRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 3,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_cloud_dialogflow_v2beta1_webhook_proto_goTypes,
+ DependencyIndexes: file_google_cloud_dialogflow_v2beta1_webhook_proto_depIdxs,
+ MessageInfos: file_google_cloud_dialogflow_v2beta1_webhook_proto_msgTypes,
+ }.Build()
+ File_google_cloud_dialogflow_v2beta1_webhook_proto = out.File
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_rawDesc = nil
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_goTypes = nil
+ file_google_cloud_dialogflow_v2beta1_webhook_proto_depIdxs = nil
+}
diff --git a/iam/apiv2/iampb/deny.pb.go b/iam/apiv2/iampb/deny.pb.go
new file mode 100644
index 0000000..4a39773
--- /dev/null
+++ b/iam/apiv2/iampb/deny.pb.go
@@ -0,0 +1,287 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/iam/v2/deny.proto
+
+package iampb
+
+import (
+ reflect "reflect"
+ sync "sync"
+
+ expr "google.golang.org/genproto/googleapis/type/expr"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// A deny rule in an IAM deny policy.
+type DenyRule struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // The identities that are prevented from using one or more permissions on
+ // Google Cloud resources. This field can contain the following values:
+ //
+ // - `principalSet://goog/public:all`: A special identifier that represents
+ // any principal that is on the internet, even if they do not have a Google
+ // Account or are not logged in.
+ //
+ // - `principal://goog/subject/{email_id}`: A specific Google Account.
+ // Includes Gmail, Cloud Identity, and Google Workspace user accounts. For
+ // example, `principal://goog/subject/alice@example.com`.
+ //
+ // - `deleted:principal://goog/subject/{email_id}?uid={uid}`: A specific
+ // Google Account that was deleted recently. For example,
+ // `deleted:principal://goog/subject/alice@example.com?uid=1234567890`. If
+ // the Google Account is recovered, this identifier reverts to the standard
+ // identifier for a Google Account.
+ //
+ // - `principalSet://goog/group/{group_id}`: A Google group. For example,
+ // `principalSet://goog/group/admins@example.com`.
+ //
+ // - `deleted:principalSet://goog/group/{group_id}?uid={uid}`: A Google group
+ // that was deleted recently. For example,
+ // `deleted:principalSet://goog/group/admins@example.com?uid=1234567890`. If
+ // the Google group is restored, this identifier reverts to the standard
+ // identifier for a Google group.
+ //
+ // - `principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}`:
+ // A Google Cloud service account. For example,
+ // `principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com`.
+ //
+ // - `deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}?uid={uid}`:
+ // A Google Cloud service account that was deleted recently. For example,
+ // `deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com?uid=1234567890`.
+ // If the service account is undeleted, this identifier reverts to the
+ // standard identifier for a service account.
+ //
+ // - `principalSet://goog/cloudIdentityCustomerId/{customer_id}`: All of the
+ // principals associated with the specified Google Workspace or Cloud
+ // Identity customer ID. For example,
+ // `principalSet://goog/cloudIdentityCustomerId/C01Abc35`.
+ DeniedPrincipals []string `protobuf:"bytes,1,rep,name=denied_principals,json=deniedPrincipals,proto3" json:"denied_principals,omitempty"`
+ // The identities that are excluded from the deny rule, even if they are
+ // listed in the `denied_principals`. For example, you could add a Google
+ // group to the `denied_principals`, then exclude specific users who belong to
+ // that group.
+ //
+ // This field can contain the same values as the `denied_principals` field,
+ // excluding `principalSet://goog/public:all`, which represents all users on
+ // the internet.
+ ExceptionPrincipals []string `protobuf:"bytes,2,rep,name=exception_principals,json=exceptionPrincipals,proto3" json:"exception_principals,omitempty"`
+ // The permissions that are explicitly denied by this rule. Each permission
+ // uses the format `{service_fqdn}/{resource}.{verb}`, where `{service_fqdn}`
+ // is the fully qualified domain name for the service. For example,
+ // `iam.googleapis.com/roles.list`.
+ DeniedPermissions []string `protobuf:"bytes,3,rep,name=denied_permissions,json=deniedPermissions,proto3" json:"denied_permissions,omitempty"`
+ // Specifies the permissions that this rule excludes from the set of denied
+ // permissions given by `denied_permissions`. If a permission appears in
+ // `denied_permissions` _and_ in `exception_permissions` then it will _not_ be
+ // denied.
+ //
+ // The excluded permissions can be specified using the same syntax as
+ // `denied_permissions`.
+ ExceptionPermissions []string `protobuf:"bytes,4,rep,name=exception_permissions,json=exceptionPermissions,proto3" json:"exception_permissions,omitempty"`
+ // The condition that determines whether this deny rule applies to a request.
+ // If the condition expression evaluates to `true`, then the deny rule is
+ // applied; otherwise, the deny rule is not applied.
+ //
+ // Each deny rule is evaluated independently. If this deny rule does not apply
+ // to a request, other deny rules might still apply.
+ //
+ // The condition can use CEL functions that evaluate
+ // [resource
+ // tags](https://cloud.google.com/iam/help/conditions/resource-tags). Other
+ // functions and operators are not supported.
+ DenialCondition *expr.Expr `protobuf:"bytes,5,opt,name=denial_condition,json=denialCondition,proto3" json:"denial_condition,omitempty"`
+}
+
+func (x *DenyRule) Reset() {
+ *x = DenyRule{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_deny_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DenyRule) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DenyRule) ProtoMessage() {}
+
+func (x *DenyRule) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_deny_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DenyRule.ProtoReflect.Descriptor instead.
+func (*DenyRule) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_deny_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *DenyRule) GetDeniedPrincipals() []string {
+ if x != nil {
+ return x.DeniedPrincipals
+ }
+ return nil
+}
+
+func (x *DenyRule) GetExceptionPrincipals() []string {
+ if x != nil {
+ return x.ExceptionPrincipals
+ }
+ return nil
+}
+
+func (x *DenyRule) GetDeniedPermissions() []string {
+ if x != nil {
+ return x.DeniedPermissions
+ }
+ return nil
+}
+
+func (x *DenyRule) GetExceptionPermissions() []string {
+ if x != nil {
+ return x.ExceptionPermissions
+ }
+ return nil
+}
+
+func (x *DenyRule) GetDenialCondition() *expr.Expr {
+ if x != nil {
+ return x.DenialCondition
+ }
+ return nil
+}
+
+var File_google_iam_v2_deny_proto protoreflect.FileDescriptor
+
+var file_google_iam_v2_deny_proto_rawDesc = []byte{
+ 0x0a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x76, 0x32, 0x2f,
+ 0x64, 0x65, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0d, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x1a, 0x16, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x74, 0x79, 0x70, 0x65, 0x2f, 0x65, 0x78, 0x70, 0x72, 0x2e, 0x70, 0x72, 0x6f, 0x74,
+ 0x6f, 0x22, 0x8c, 0x02, 0x0a, 0x08, 0x44, 0x65, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x2b,
+ 0x0a, 0x11, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
+ 0x61, 0x6c, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x09, 0x52, 0x10, 0x64, 0x65, 0x6e, 0x69, 0x65,
+ 0x64, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x12, 0x31, 0x0a, 0x14, 0x65,
+ 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70,
+ 0x61, 0x6c, 0x73, 0x18, 0x02, 0x20, 0x03, 0x28, 0x09, 0x52, 0x13, 0x65, 0x78, 0x63, 0x65, 0x70,
+ 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x72, 0x69, 0x6e, 0x63, 0x69, 0x70, 0x61, 0x6c, 0x73, 0x12, 0x2d,
+ 0x0a, 0x12, 0x64, 0x65, 0x6e, 0x69, 0x65, 0x64, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73,
+ 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x03, 0x20, 0x03, 0x28, 0x09, 0x52, 0x11, 0x64, 0x65, 0x6e, 0x69,
+ 0x65, 0x64, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x33, 0x0a,
+ 0x15, 0x65, 0x78, 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x5f, 0x70, 0x65, 0x72, 0x6d, 0x69,
+ 0x73, 0x73, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x04, 0x20, 0x03, 0x28, 0x09, 0x52, 0x14, 0x65, 0x78,
+ 0x63, 0x65, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x50, 0x65, 0x72, 0x6d, 0x69, 0x73, 0x73, 0x69, 0x6f,
+ 0x6e, 0x73, 0x12, 0x3c, 0x0a, 0x10, 0x64, 0x65, 0x6e, 0x69, 0x61, 0x6c, 0x5f, 0x63, 0x6f, 0x6e,
+ 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x05, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x11, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x74, 0x79, 0x70, 0x65, 0x2e, 0x45, 0x78, 0x70, 0x72, 0x52,
+ 0x0f, 0x64, 0x65, 0x6e, 0x69, 0x61, 0x6c, 0x43, 0x6f, 0x6e, 0x64, 0x69, 0x74, 0x69, 0x6f, 0x6e,
+ 0x42, 0x82, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x42, 0x0d, 0x44, 0x65, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65,
+ 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x30, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67, 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73, 0x2f, 0x69,
+ 0x61, 0x6d, 0x2f, 0x76, 0x32, 0x3b, 0x69, 0x61, 0x6d, 0xaa, 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x49, 0x61, 0x6d, 0x2e, 0x56, 0x32, 0xca,
+ 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x49,
+ 0x61, 0x6d, 0x5c, 0x56, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_iam_v2_deny_proto_rawDescOnce sync.Once
+ file_google_iam_v2_deny_proto_rawDescData = file_google_iam_v2_deny_proto_rawDesc
+)
+
+func file_google_iam_v2_deny_proto_rawDescGZIP() []byte {
+ file_google_iam_v2_deny_proto_rawDescOnce.Do(func() {
+ file_google_iam_v2_deny_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_iam_v2_deny_proto_rawDescData)
+ })
+ return file_google_iam_v2_deny_proto_rawDescData
+}
+
+var file_google_iam_v2_deny_proto_msgTypes = make([]protoimpl.MessageInfo, 1)
+var file_google_iam_v2_deny_proto_goTypes = []interface{}{
+ (*DenyRule)(nil), // 0: google.iam.v2.DenyRule
+ (*expr.Expr)(nil), // 1: google.type.Expr
+}
+var file_google_iam_v2_deny_proto_depIdxs = []int32{
+ 1, // 0: google.iam.v2.DenyRule.denial_condition:type_name -> google.type.Expr
+ 1, // [1:1] is the sub-list for method output_type
+ 1, // [1:1] is the sub-list for method input_type
+ 1, // [1:1] is the sub-list for extension type_name
+ 1, // [1:1] is the sub-list for extension extendee
+ 0, // [0:1] is the sub-list for field type_name
+}
+
+func init() { file_google_iam_v2_deny_proto_init() }
+func file_google_iam_v2_deny_proto_init() {
+ if File_google_iam_v2_deny_proto != nil {
+ return
+ }
+ if !protoimpl.UnsafeEnabled {
+ file_google_iam_v2_deny_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DenyRule); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_iam_v2_deny_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 1,
+ NumExtensions: 0,
+ NumServices: 0,
+ },
+ GoTypes: file_google_iam_v2_deny_proto_goTypes,
+ DependencyIndexes: file_google_iam_v2_deny_proto_depIdxs,
+ MessageInfos: file_google_iam_v2_deny_proto_msgTypes,
+ }.Build()
+ File_google_iam_v2_deny_proto = out.File
+ file_google_iam_v2_deny_proto_rawDesc = nil
+ file_google_iam_v2_deny_proto_goTypes = nil
+ file_google_iam_v2_deny_proto_depIdxs = nil
+}
diff --git a/iam/apiv2/iampb/policy.pb.go b/iam/apiv2/iampb/policy.pb.go
new file mode 100644
index 0000000..65126b3
--- /dev/null
+++ b/iam/apiv2/iampb/policy.pb.go
@@ -0,0 +1,1350 @@
+// Copyright 2022 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// Code generated by protoc-gen-go. DO NOT EDIT.
+// versions:
+// protoc-gen-go v1.26.0
+// protoc v3.21.12
+// source: google/iam/v2/policy.proto
+
+package iampb
+
+import (
+ context "context"
+ reflect "reflect"
+ sync "sync"
+
+ _ "google.golang.org/genproto/googleapis/api/annotations"
+ longrunning "google.golang.org/genproto/googleapis/longrunning"
+ grpc "google.golang.org/grpc"
+ codes "google.golang.org/grpc/codes"
+ status "google.golang.org/grpc/status"
+ protoreflect "google.golang.org/protobuf/reflect/protoreflect"
+ protoimpl "google.golang.org/protobuf/runtime/protoimpl"
+ timestamppb "google.golang.org/protobuf/types/known/timestamppb"
+)
+
+const (
+ // Verify that this generated code is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
+ // Verify that runtime/protoimpl is sufficiently up-to-date.
+ _ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
+)
+
+// Data for an IAM policy.
+type Policy struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Immutable. The resource name of the `Policy`, which must be unique. Format:
+ // `policies/{attachment_point}/denypolicies/{policy_id}`
+ //
+ // The attachment point is identified by its URL-encoded full resource name,
+ // which means that the forward-slash character, `/`, must be written as
+ // `%2F`. For example,
+ // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-deny-policy`.
+ //
+ // For organizations and folders, use the numeric ID in the full resource
+ // name. For projects, requests can use the alphanumeric or the numeric ID.
+ // Responses always contain the numeric ID.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Immutable. The globally unique ID of the `Policy`. Assigned automatically when the
+ // `Policy` is created.
+ Uid string `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty"`
+ // Output only. The kind of the `Policy`. Always contains the value `DenyPolicy`.
+ Kind string `protobuf:"bytes,3,opt,name=kind,proto3" json:"kind,omitempty"`
+ // A user-specified description of the `Policy`. This value can be up to 63
+ // characters.
+ DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
+ // A key-value map to store arbitrary metadata for the `Policy`. Keys
+ // can be up to 63 characters. Values can be up to 255 characters.
+ Annotations map[string]string `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"`
+ // An opaque tag that identifies the current version of the `Policy`. IAM uses
+ // this value to help manage concurrent updates, so they do not cause one
+ // update to be overwritten by another.
+ //
+ // If this field is present in a [CreatePolicy][] request, the value is
+ // ignored.
+ Etag string `protobuf:"bytes,6,opt,name=etag,proto3" json:"etag,omitempty"`
+ // Output only. The time when the `Policy` was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+ // Output only. The time when the `Policy` was last updated.
+ UpdateTime *timestamppb.Timestamp `protobuf:"bytes,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
+ // Output only. The time when the `Policy` was deleted. Empty if the policy is not deleted.
+ DeleteTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"`
+ // A list of rules that specify the behavior of the `Policy`. All of the rules
+ // should be of the `kind` specified in the `Policy`.
+ Rules []*PolicyRule `protobuf:"bytes,10,rep,name=rules,proto3" json:"rules,omitempty"`
+ // Immutable. Specifies that this policy is managed by an authority and can only be
+ // modified by that authority. Usage is restricted.
+ ManagingAuthority string `protobuf:"bytes,11,opt,name=managing_authority,json=managingAuthority,proto3" json:"managing_authority,omitempty"`
+}
+
+func (x *Policy) Reset() {
+ *x = Policy{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[0]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *Policy) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*Policy) ProtoMessage() {}
+
+func (x *Policy) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[0]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use Policy.ProtoReflect.Descriptor instead.
+func (*Policy) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{0}
+}
+
+func (x *Policy) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *Policy) GetUid() string {
+ if x != nil {
+ return x.Uid
+ }
+ return ""
+}
+
+func (x *Policy) GetKind() string {
+ if x != nil {
+ return x.Kind
+ }
+ return ""
+}
+
+func (x *Policy) GetDisplayName() string {
+ if x != nil {
+ return x.DisplayName
+ }
+ return ""
+}
+
+func (x *Policy) GetAnnotations() map[string]string {
+ if x != nil {
+ return x.Annotations
+ }
+ return nil
+}
+
+func (x *Policy) GetEtag() string {
+ if x != nil {
+ return x.Etag
+ }
+ return ""
+}
+
+func (x *Policy) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+func (x *Policy) GetUpdateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.UpdateTime
+ }
+ return nil
+}
+
+func (x *Policy) GetDeleteTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.DeleteTime
+ }
+ return nil
+}
+
+func (x *Policy) GetRules() []*PolicyRule {
+ if x != nil {
+ return x.Rules
+ }
+ return nil
+}
+
+func (x *Policy) GetManagingAuthority() string {
+ if x != nil {
+ return x.ManagingAuthority
+ }
+ return ""
+}
+
+// A single rule in a `Policy`.
+type PolicyRule struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Types that are assignable to Kind:
+ //
+ // *PolicyRule_DenyRule
+ Kind isPolicyRule_Kind `protobuf_oneof:"kind"`
+ // A user-specified description of the rule. This value can be up to 256
+ // characters.
+ Description string `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"`
+}
+
+func (x *PolicyRule) Reset() {
+ *x = PolicyRule{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[1]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PolicyRule) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PolicyRule) ProtoMessage() {}
+
+func (x *PolicyRule) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[1]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PolicyRule.ProtoReflect.Descriptor instead.
+func (*PolicyRule) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{1}
+}
+
+func (m *PolicyRule) GetKind() isPolicyRule_Kind {
+ if m != nil {
+ return m.Kind
+ }
+ return nil
+}
+
+func (x *PolicyRule) GetDenyRule() *DenyRule {
+ if x, ok := x.GetKind().(*PolicyRule_DenyRule); ok {
+ return x.DenyRule
+ }
+ return nil
+}
+
+func (x *PolicyRule) GetDescription() string {
+ if x != nil {
+ return x.Description
+ }
+ return ""
+}
+
+type isPolicyRule_Kind interface {
+ isPolicyRule_Kind()
+}
+
+type PolicyRule_DenyRule struct {
+ // A rule for a deny policy.
+ DenyRule *DenyRule `protobuf:"bytes,2,opt,name=deny_rule,json=denyRule,proto3,oneof"`
+}
+
+func (*PolicyRule_DenyRule) isPolicyRule_Kind() {}
+
+// Request message for `ListPolicies`.
+type ListPoliciesRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource that the policy is attached to, along with the kind of policy
+ // to list. Format:
+ // `policies/{attachment_point}/denypolicies`
+ //
+ // The attachment point is identified by its URL-encoded full resource name,
+ // which means that the forward-slash character, `/`, must be written as
+ // `%2F`. For example,
+ // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies`.
+ //
+ // For organizations and folders, use the numeric ID in the full resource
+ // name. For projects, you can use the alphanumeric or the numeric ID.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // The maximum number of policies to return. IAM ignores this value and uses
+ // the value 1000.
+ PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
+ // A page token received in a [ListPoliciesResponse][google.iam.v2.ListPoliciesResponse]. Provide this token to
+ // retrieve the next page.
+ PageToken string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
+}
+
+func (x *ListPoliciesRequest) Reset() {
+ *x = ListPoliciesRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[2]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListPoliciesRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListPoliciesRequest) ProtoMessage() {}
+
+func (x *ListPoliciesRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[2]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListPoliciesRequest.ProtoReflect.Descriptor instead.
+func (*ListPoliciesRequest) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{2}
+}
+
+func (x *ListPoliciesRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *ListPoliciesRequest) GetPageSize() int32 {
+ if x != nil {
+ return x.PageSize
+ }
+ return 0
+}
+
+func (x *ListPoliciesRequest) GetPageToken() string {
+ if x != nil {
+ return x.PageToken
+ }
+ return ""
+}
+
+// Response message for `ListPolicies`.
+type ListPoliciesResponse struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Metadata for the policies that are attached to the resource.
+ Policies []*Policy `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"`
+ // A page token that you can use in a [ListPoliciesRequest][google.iam.v2.ListPoliciesRequest] to retrieve the
+ // next page. If this field is omitted, there are no additional pages.
+ NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
+}
+
+func (x *ListPoliciesResponse) Reset() {
+ *x = ListPoliciesResponse{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[3]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *ListPoliciesResponse) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*ListPoliciesResponse) ProtoMessage() {}
+
+func (x *ListPoliciesResponse) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[3]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use ListPoliciesResponse.ProtoReflect.Descriptor instead.
+func (*ListPoliciesResponse) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{3}
+}
+
+func (x *ListPoliciesResponse) GetPolicies() []*Policy {
+ if x != nil {
+ return x.Policies
+ }
+ return nil
+}
+
+func (x *ListPoliciesResponse) GetNextPageToken() string {
+ if x != nil {
+ return x.NextPageToken
+ }
+ return ""
+}
+
+// Request message for `GetPolicy`.
+type GetPolicyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the policy to retrieve. Format:
+ // `policies/{attachment_point}/denypolicies/{policy_id}`
+ //
+ // Use the URL-encoded full resource name, which means that the forward-slash
+ // character, `/`, must be written as `%2F`. For example,
+ // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-policy`.
+ //
+ // For organizations and folders, use the numeric ID in the full resource
+ // name. For projects, you can use the alphanumeric or the numeric ID.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+}
+
+func (x *GetPolicyRequest) Reset() {
+ *x = GetPolicyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[4]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *GetPolicyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*GetPolicyRequest) ProtoMessage() {}
+
+func (x *GetPolicyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[4]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use GetPolicyRequest.ProtoReflect.Descriptor instead.
+func (*GetPolicyRequest) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{4}
+}
+
+func (x *GetPolicyRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+// Request message for `CreatePolicy`.
+type CreatePolicyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource that the policy is attached to, along with the kind of policy
+ // to create. Format: `policies/{attachment_point}/denypolicies`
+ //
+ // The attachment point is identified by its URL-encoded full resource name,
+ // which means that the forward-slash character, `/`, must be written as
+ // `%2F`. For example,
+ // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies`.
+ //
+ // For organizations and folders, use the numeric ID in the full resource
+ // name. For projects, you can use the alphanumeric or the numeric ID.
+ Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
+ // Required. The policy to create.
+ Policy *Policy `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"`
+ // The ID to use for this policy, which will become the final component of
+ // the policy's resource name. The ID must contain 3 to 63 characters. It can
+ // contain lowercase letters and numbers, as well as dashes (`-`) and periods
+ // (`.`). The first character must be a lowercase letter.
+ PolicyId string `protobuf:"bytes,3,opt,name=policy_id,json=policyId,proto3" json:"policy_id,omitempty"`
+}
+
+func (x *CreatePolicyRequest) Reset() {
+ *x = CreatePolicyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[5]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *CreatePolicyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*CreatePolicyRequest) ProtoMessage() {}
+
+func (x *CreatePolicyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[5]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use CreatePolicyRequest.ProtoReflect.Descriptor instead.
+func (*CreatePolicyRequest) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{5}
+}
+
+func (x *CreatePolicyRequest) GetParent() string {
+ if x != nil {
+ return x.Parent
+ }
+ return ""
+}
+
+func (x *CreatePolicyRequest) GetPolicy() *Policy {
+ if x != nil {
+ return x.Policy
+ }
+ return nil
+}
+
+func (x *CreatePolicyRequest) GetPolicyId() string {
+ if x != nil {
+ return x.PolicyId
+ }
+ return ""
+}
+
+// Request message for `UpdatePolicy`.
+type UpdatePolicyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The policy to update.
+ //
+ // To prevent conflicting updates, the `etag` value must match the value that
+ // is stored in IAM. If the `etag` values do not match, the request fails with
+ // a `409` error code and `ABORTED` status.
+ Policy *Policy `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"`
+}
+
+func (x *UpdatePolicyRequest) Reset() {
+ *x = UpdatePolicyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[6]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *UpdatePolicyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*UpdatePolicyRequest) ProtoMessage() {}
+
+func (x *UpdatePolicyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[6]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use UpdatePolicyRequest.ProtoReflect.Descriptor instead.
+func (*UpdatePolicyRequest) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{6}
+}
+
+func (x *UpdatePolicyRequest) GetPolicy() *Policy {
+ if x != nil {
+ return x.Policy
+ }
+ return nil
+}
+
+// Request message for `DeletePolicy`.
+type DeletePolicyRequest struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Required. The resource name of the policy to delete. Format:
+ // `policies/{attachment_point}/denypolicies/{policy_id}`
+ //
+ // Use the URL-encoded full resource name, which means that the forward-slash
+ // character, `/`, must be written as `%2F`. For example,
+ // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-policy`.
+ //
+ // For organizations and folders, use the numeric ID in the full resource
+ // name. For projects, you can use the alphanumeric or the numeric ID.
+ Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
+ // Optional. The expected `etag` of the policy to delete. If the value does not match
+ // the value that is stored in IAM, the request fails with a `409` error code
+ // and `ABORTED` status.
+ //
+ // If you omit this field, the policy is deleted regardless of its current
+ // `etag`.
+ Etag string `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"`
+}
+
+func (x *DeletePolicyRequest) Reset() {
+ *x = DeletePolicyRequest{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[7]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *DeletePolicyRequest) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*DeletePolicyRequest) ProtoMessage() {}
+
+func (x *DeletePolicyRequest) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[7]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use DeletePolicyRequest.ProtoReflect.Descriptor instead.
+func (*DeletePolicyRequest) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{7}
+}
+
+func (x *DeletePolicyRequest) GetName() string {
+ if x != nil {
+ return x.Name
+ }
+ return ""
+}
+
+func (x *DeletePolicyRequest) GetEtag() string {
+ if x != nil {
+ return x.Etag
+ }
+ return ""
+}
+
+// Metadata for long-running `Policy` operations.
+type PolicyOperationMetadata struct {
+ state protoimpl.MessageState
+ sizeCache protoimpl.SizeCache
+ unknownFields protoimpl.UnknownFields
+
+ // Timestamp when the `google.longrunning.Operation` was created.
+ CreateTime *timestamppb.Timestamp `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
+}
+
+func (x *PolicyOperationMetadata) Reset() {
+ *x = PolicyOperationMetadata{}
+ if protoimpl.UnsafeEnabled {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[8]
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ ms.StoreMessageInfo(mi)
+ }
+}
+
+func (x *PolicyOperationMetadata) String() string {
+ return protoimpl.X.MessageStringOf(x)
+}
+
+func (*PolicyOperationMetadata) ProtoMessage() {}
+
+func (x *PolicyOperationMetadata) ProtoReflect() protoreflect.Message {
+ mi := &file_google_iam_v2_policy_proto_msgTypes[8]
+ if protoimpl.UnsafeEnabled && x != nil {
+ ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
+ if ms.LoadMessageInfo() == nil {
+ ms.StoreMessageInfo(mi)
+ }
+ return ms
+ }
+ return mi.MessageOf(x)
+}
+
+// Deprecated: Use PolicyOperationMetadata.ProtoReflect.Descriptor instead.
+func (*PolicyOperationMetadata) Descriptor() ([]byte, []int) {
+ return file_google_iam_v2_policy_proto_rawDescGZIP(), []int{8}
+}
+
+func (x *PolicyOperationMetadata) GetCreateTime() *timestamppb.Timestamp {
+ if x != nil {
+ return x.CreateTime
+ }
+ return nil
+}
+
+var File_google_iam_v2_policy_proto protoreflect.FileDescriptor
+
+var file_google_iam_v2_policy_proto_rawDesc = []byte{
+ 0x0a, 0x1a, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x76, 0x32, 0x2f,
+ 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x12, 0x0d, 0x67, 0x6f,
+ 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x1a, 0x1c, 0x67, 0x6f, 0x6f,
+ 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x17, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x63, 0x6c, 0x69, 0x65, 0x6e, 0x74, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x61, 0x70, 0x69, 0x2f, 0x66,
+ 0x69, 0x65, 0x6c, 0x64, 0x5f, 0x62, 0x65, 0x68, 0x61, 0x76, 0x69, 0x6f, 0x72, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x1a, 0x18, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x69, 0x61, 0x6d, 0x2f,
+ 0x76, 0x32, 0x2f, 0x64, 0x65, 0x6e, 0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x23, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e,
+ 0x67, 0x2f, 0x6f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x2e, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x1a, 0x1f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2f, 0x74, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x2e, 0x70, 0x72,
+ 0x6f, 0x74, 0x6f, 0x22, 0xbd, 0x04, 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x17,
+ 0x0a, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x05, 0x52, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x15, 0x0a, 0x03, 0x75, 0x69, 0x64, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05, 0x52, 0x03, 0x75, 0x69, 0x64, 0x12, 0x17,
+ 0x0a, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41,
+ 0x03, 0x52, 0x04, 0x6b, 0x69, 0x6e, 0x64, 0x12, 0x21, 0x0a, 0x0c, 0x64, 0x69, 0x73, 0x70, 0x6c,
+ 0x61, 0x79, 0x5f, 0x6e, 0x61, 0x6d, 0x65, 0x18, 0x04, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b, 0x64,
+ 0x69, 0x73, 0x70, 0x6c, 0x61, 0x79, 0x4e, 0x61, 0x6d, 0x65, 0x12, 0x48, 0x0a, 0x0b, 0x61, 0x6e,
+ 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x73, 0x18, 0x05, 0x20, 0x03, 0x28, 0x0b, 0x32,
+ 0x26, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e,
+ 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x52, 0x0b, 0x61, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74,
+ 0x69, 0x6f, 0x6e, 0x73, 0x12, 0x12, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x06, 0x20, 0x01,
+ 0x28, 0x09, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x12, 0x40, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x07, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03, 0x52, 0x0a,
+ 0x63, 0x72, 0x65, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b, 0x75, 0x70,
+ 0x64, 0x61, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x08, 0x20, 0x01, 0x28, 0x0b, 0x32,
+ 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75,
+ 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0, 0x41, 0x03,
+ 0x52, 0x0a, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x40, 0x0a, 0x0b,
+ 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x09, 0x20, 0x01, 0x28,
+ 0x0b, 0x32, 0x1a, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f,
+ 0x62, 0x75, 0x66, 0x2e, 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x42, 0x03, 0xe0,
+ 0x41, 0x03, 0x52, 0x0a, 0x64, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x54, 0x69, 0x6d, 0x65, 0x12, 0x2f,
+ 0x0a, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x18, 0x0a, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x19, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x6f,
+ 0x6c, 0x69, 0x63, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x52, 0x05, 0x72, 0x75, 0x6c, 0x65, 0x73, 0x12,
+ 0x32, 0x0a, 0x12, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x5f, 0x61, 0x75, 0x74, 0x68,
+ 0x6f, 0x72, 0x69, 0x74, 0x79, 0x18, 0x0b, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x05,
+ 0x52, 0x11, 0x6d, 0x61, 0x6e, 0x61, 0x67, 0x69, 0x6e, 0x67, 0x41, 0x75, 0x74, 0x68, 0x6f, 0x72,
+ 0x69, 0x74, 0x79, 0x1a, 0x3e, 0x0a, 0x10, 0x41, 0x6e, 0x6e, 0x6f, 0x74, 0x61, 0x74, 0x69, 0x6f,
+ 0x6e, 0x73, 0x45, 0x6e, 0x74, 0x72, 0x79, 0x12, 0x10, 0x0a, 0x03, 0x6b, 0x65, 0x79, 0x18, 0x01,
+ 0x20, 0x01, 0x28, 0x09, 0x52, 0x03, 0x6b, 0x65, 0x79, 0x12, 0x14, 0x0a, 0x05, 0x76, 0x61, 0x6c,
+ 0x75, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x05, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x3a,
+ 0x02, 0x38, 0x01, 0x22, 0x6e, 0x0a, 0x0a, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x75, 0x6c,
+ 0x65, 0x12, 0x36, 0x0a, 0x09, 0x64, 0x65, 0x6e, 0x79, 0x5f, 0x72, 0x75, 0x6c, 0x65, 0x18, 0x02,
+ 0x20, 0x01, 0x28, 0x0b, 0x32, 0x17, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61,
+ 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x44, 0x65, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x48, 0x00, 0x52,
+ 0x08, 0x64, 0x65, 0x6e, 0x79, 0x52, 0x75, 0x6c, 0x65, 0x12, 0x20, 0x0a, 0x0b, 0x64, 0x65, 0x73,
+ 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0b,
+ 0x64, 0x65, 0x73, 0x63, 0x72, 0x69, 0x70, 0x74, 0x69, 0x6f, 0x6e, 0x42, 0x06, 0x0a, 0x04, 0x6b,
+ 0x69, 0x6e, 0x64, 0x22, 0x6e, 0x0a, 0x13, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63,
+ 0x69, 0x65, 0x73, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70, 0x61,
+ 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52,
+ 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x1b, 0x0a, 0x09, 0x70, 0x61, 0x67, 0x65, 0x5f,
+ 0x73, 0x69, 0x7a, 0x65, 0x18, 0x02, 0x20, 0x01, 0x28, 0x05, 0x52, 0x08, 0x70, 0x61, 0x67, 0x65,
+ 0x53, 0x69, 0x7a, 0x65, 0x12, 0x1d, 0x0a, 0x0a, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b,
+ 0x65, 0x6e, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52, 0x09, 0x70, 0x61, 0x67, 0x65, 0x54, 0x6f,
+ 0x6b, 0x65, 0x6e, 0x22, 0x71, 0x0a, 0x14, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63,
+ 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x12, 0x31, 0x0a, 0x08, 0x70,
+ 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x18, 0x01, 0x20, 0x03, 0x28, 0x0b, 0x32, 0x15, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x6f,
+ 0x6c, 0x69, 0x63, 0x79, 0x52, 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x12, 0x26,
+ 0x0a, 0x0f, 0x6e, 0x65, 0x78, 0x74, 0x5f, 0x70, 0x61, 0x67, 0x65, 0x5f, 0x74, 0x6f, 0x6b, 0x65,
+ 0x6e, 0x18, 0x02, 0x20, 0x01, 0x28, 0x09, 0x52, 0x0d, 0x6e, 0x65, 0x78, 0x74, 0x50, 0x61, 0x67,
+ 0x65, 0x54, 0x6f, 0x6b, 0x65, 0x6e, 0x22, 0x2b, 0x0a, 0x10, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x6c,
+ 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e, 0x61,
+ 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x22, 0x83, 0x01, 0x0a, 0x13, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50, 0x6f,
+ 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x1b, 0x0a, 0x06, 0x70,
+ 0x61, 0x72, 0x65, 0x6e, 0x74, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02,
+ 0x52, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x32, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69,
+ 0x63, 0x79, 0x18, 0x02, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42,
+ 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1b, 0x0a, 0x09,
+ 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64, 0x18, 0x03, 0x20, 0x01, 0x28, 0x09, 0x52,
+ 0x08, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x49, 0x64, 0x22, 0x49, 0x0a, 0x13, 0x55, 0x70, 0x64,
+ 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74,
+ 0x12, 0x32, 0x0a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b,
+ 0x32, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32,
+ 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x06, 0x70, 0x6f,
+ 0x6c, 0x69, 0x63, 0x79, 0x22, 0x47, 0x0a, 0x13, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f,
+ 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x17, 0x0a, 0x04, 0x6e,
+ 0x61, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x02, 0x52, 0x04,
+ 0x6e, 0x61, 0x6d, 0x65, 0x12, 0x17, 0x0a, 0x04, 0x65, 0x74, 0x61, 0x67, 0x18, 0x02, 0x20, 0x01,
+ 0x28, 0x09, 0x42, 0x03, 0xe0, 0x41, 0x01, 0x52, 0x04, 0x65, 0x74, 0x61, 0x67, 0x22, 0x56, 0x0a,
+ 0x17, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e,
+ 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x3b, 0x0a, 0x0b, 0x63, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x5f, 0x74, 0x69, 0x6d, 0x65, 0x18, 0x01, 0x20, 0x01, 0x28, 0x0b, 0x32, 0x1a, 0x2e,
+ 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2e,
+ 0x54, 0x69, 0x6d, 0x65, 0x73, 0x74, 0x61, 0x6d, 0x70, 0x52, 0x0a, 0x63, 0x72, 0x65, 0x61, 0x74,
+ 0x65, 0x54, 0x69, 0x6d, 0x65, 0x32, 0xd0, 0x06, 0x0a, 0x08, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69,
+ 0x65, 0x73, 0x12, 0x83, 0x01, 0x0a, 0x0c, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63,
+ 0x69, 0x65, 0x73, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d,
+ 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73,
+ 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x23, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x4c, 0x69, 0x73, 0x74, 0x50, 0x6f, 0x6c, 0x69,
+ 0x63, 0x69, 0x65, 0x73, 0x52, 0x65, 0x73, 0x70, 0x6f, 0x6e, 0x73, 0x65, 0x22, 0x2a, 0x82, 0xd3,
+ 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e,
+ 0x74, 0x3d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x7d, 0xda,
+ 0x41, 0x06, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x12, 0x6d, 0x0a, 0x09, 0x47, 0x65, 0x74, 0x50,
+ 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x1f, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69,
+ 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x47, 0x65, 0x74, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52,
+ 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x15, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e,
+ 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x22, 0x28, 0x82,
+ 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x12, 0x19, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x6e, 0x61, 0x6d, 0x65,
+ 0x3d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2f, 0x2a, 0x7d,
+ 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0x12, 0xba, 0x01, 0x0a, 0x0c, 0x43, 0x72, 0x65, 0x61,
+ 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c,
+ 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x43, 0x72, 0x65, 0x61, 0x74, 0x65, 0x50,
+ 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e,
+ 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x67, 0x82, 0xd3, 0xe4,
+ 0x93, 0x02, 0x23, 0x22, 0x19, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74,
+ 0x3d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x7d, 0x3a, 0x06,
+ 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0xda, 0x41, 0x17, 0x70, 0x61, 0x72, 0x65, 0x6e, 0x74, 0x2c,
+ 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2c, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x5f, 0x69, 0x64,
+ 0xca, 0x41, 0x21, 0x0a, 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x17, 0x50, 0x6f, 0x6c,
+ 0x69, 0x63, 0x79, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61,
+ 0x64, 0x61, 0x74, 0x61, 0x12, 0xa7, 0x01, 0x0a, 0x0c, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50,
+ 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69,
+ 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69,
+ 0x63, 0x79, 0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67,
+ 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e, 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f,
+ 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x22, 0x54, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x2a,
+ 0x1a, 0x20, 0x2f, 0x76, 0x32, 0x2f, 0x7b, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x2e, 0x6e, 0x61,
+ 0x6d, 0x65, 0x3d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a, 0x2f, 0x2a, 0x2f,
+ 0x2a, 0x7d, 0x3a, 0x06, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0xca, 0x41, 0x21, 0x0a, 0x06, 0x50,
+ 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x17, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4f, 0x70, 0x65,
+ 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61, 0x12, 0x9f,
+ 0x01, 0x0a, 0x0c, 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12,
+ 0x22, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x2e,
+ 0x44, 0x65, 0x6c, 0x65, 0x74, 0x65, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x52, 0x65, 0x71, 0x75,
+ 0x65, 0x73, 0x74, 0x1a, 0x1d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x6c, 0x6f, 0x6e,
+ 0x67, 0x72, 0x75, 0x6e, 0x6e, 0x69, 0x6e, 0x67, 0x2e, 0x4f, 0x70, 0x65, 0x72, 0x61, 0x74, 0x69,
+ 0x6f, 0x6e, 0x22, 0x4c, 0x82, 0xd3, 0xe4, 0x93, 0x02, 0x1b, 0x2a, 0x19, 0x2f, 0x76, 0x32, 0x2f,
+ 0x7b, 0x6e, 0x61, 0x6d, 0x65, 0x3d, 0x70, 0x6f, 0x6c, 0x69, 0x63, 0x69, 0x65, 0x73, 0x2f, 0x2a,
+ 0x2f, 0x2a, 0x2f, 0x2a, 0x7d, 0xda, 0x41, 0x04, 0x6e, 0x61, 0x6d, 0x65, 0xca, 0x41, 0x21, 0x0a,
+ 0x06, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x12, 0x17, 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x4f,
+ 0x70, 0x65, 0x72, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4d, 0x65, 0x74, 0x61, 0x64, 0x61, 0x74, 0x61,
+ 0x1a, 0x46, 0xca, 0x41, 0x12, 0x69, 0x61, 0x6d, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61,
+ 0x70, 0x69, 0x73, 0x2e, 0x63, 0x6f, 0x6d, 0xd2, 0x41, 0x2e, 0x68, 0x74, 0x74, 0x70, 0x73, 0x3a,
+ 0x2f, 0x2f, 0x77, 0x77, 0x77, 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x61, 0x70, 0x69, 0x73,
+ 0x2e, 0x63, 0x6f, 0x6d, 0x2f, 0x61, 0x75, 0x74, 0x68, 0x2f, 0x63, 0x6c, 0x6f, 0x75, 0x64, 0x2d,
+ 0x70, 0x6c, 0x61, 0x74, 0x66, 0x6f, 0x72, 0x6d, 0x42, 0x80, 0x01, 0x0a, 0x11, 0x63, 0x6f, 0x6d,
+ 0x2e, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x69, 0x61, 0x6d, 0x2e, 0x76, 0x32, 0x42, 0x0b,
+ 0x50, 0x6f, 0x6c, 0x69, 0x63, 0x79, 0x50, 0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x30, 0x67,
+ 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x67, 0x6f, 0x6c, 0x61, 0x6e, 0x67, 0x2e, 0x6f, 0x72, 0x67,
+ 0x2f, 0x67, 0x65, 0x6e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x2f, 0x67, 0x6f, 0x6f, 0x67, 0x6c, 0x65,
+ 0x61, 0x70, 0x69, 0x73, 0x2f, 0x69, 0x61, 0x6d, 0x2f, 0x76, 0x32, 0x3b, 0x69, 0x61, 0x6d, 0xaa,
+ 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x2e, 0x43, 0x6c, 0x6f, 0x75, 0x64, 0x2e, 0x49,
+ 0x61, 0x6d, 0x2e, 0x56, 0x32, 0xca, 0x02, 0x13, 0x47, 0x6f, 0x6f, 0x67, 0x6c, 0x65, 0x5c, 0x43,
+ 0x6c, 0x6f, 0x75, 0x64, 0x5c, 0x49, 0x61, 0x6d, 0x5c, 0x56, 0x32, 0x62, 0x06, 0x70, 0x72, 0x6f,
+ 0x74, 0x6f, 0x33,
+}
+
+var (
+ file_google_iam_v2_policy_proto_rawDescOnce sync.Once
+ file_google_iam_v2_policy_proto_rawDescData = file_google_iam_v2_policy_proto_rawDesc
+)
+
+func file_google_iam_v2_policy_proto_rawDescGZIP() []byte {
+ file_google_iam_v2_policy_proto_rawDescOnce.Do(func() {
+ file_google_iam_v2_policy_proto_rawDescData = protoimpl.X.CompressGZIP(file_google_iam_v2_policy_proto_rawDescData)
+ })
+ return file_google_iam_v2_policy_proto_rawDescData
+}
+
+var file_google_iam_v2_policy_proto_msgTypes = make([]protoimpl.MessageInfo, 10)
+var file_google_iam_v2_policy_proto_goTypes = []interface{}{
+ (*Policy)(nil), // 0: google.iam.v2.Policy
+ (*PolicyRule)(nil), // 1: google.iam.v2.PolicyRule
+ (*ListPoliciesRequest)(nil), // 2: google.iam.v2.ListPoliciesRequest
+ (*ListPoliciesResponse)(nil), // 3: google.iam.v2.ListPoliciesResponse
+ (*GetPolicyRequest)(nil), // 4: google.iam.v2.GetPolicyRequest
+ (*CreatePolicyRequest)(nil), // 5: google.iam.v2.CreatePolicyRequest
+ (*UpdatePolicyRequest)(nil), // 6: google.iam.v2.UpdatePolicyRequest
+ (*DeletePolicyRequest)(nil), // 7: google.iam.v2.DeletePolicyRequest
+ (*PolicyOperationMetadata)(nil), // 8: google.iam.v2.PolicyOperationMetadata
+ nil, // 9: google.iam.v2.Policy.AnnotationsEntry
+ (*timestamppb.Timestamp)(nil), // 10: google.protobuf.Timestamp
+ (*DenyRule)(nil), // 11: google.iam.v2.DenyRule
+ (*longrunning.Operation)(nil), // 12: google.longrunning.Operation
+}
+var file_google_iam_v2_policy_proto_depIdxs = []int32{
+ 9, // 0: google.iam.v2.Policy.annotations:type_name -> google.iam.v2.Policy.AnnotationsEntry
+ 10, // 1: google.iam.v2.Policy.create_time:type_name -> google.protobuf.Timestamp
+ 10, // 2: google.iam.v2.Policy.update_time:type_name -> google.protobuf.Timestamp
+ 10, // 3: google.iam.v2.Policy.delete_time:type_name -> google.protobuf.Timestamp
+ 1, // 4: google.iam.v2.Policy.rules:type_name -> google.iam.v2.PolicyRule
+ 11, // 5: google.iam.v2.PolicyRule.deny_rule:type_name -> google.iam.v2.DenyRule
+ 0, // 6: google.iam.v2.ListPoliciesResponse.policies:type_name -> google.iam.v2.Policy
+ 0, // 7: google.iam.v2.CreatePolicyRequest.policy:type_name -> google.iam.v2.Policy
+ 0, // 8: google.iam.v2.UpdatePolicyRequest.policy:type_name -> google.iam.v2.Policy
+ 10, // 9: google.iam.v2.PolicyOperationMetadata.create_time:type_name -> google.protobuf.Timestamp
+ 2, // 10: google.iam.v2.Policies.ListPolicies:input_type -> google.iam.v2.ListPoliciesRequest
+ 4, // 11: google.iam.v2.Policies.GetPolicy:input_type -> google.iam.v2.GetPolicyRequest
+ 5, // 12: google.iam.v2.Policies.CreatePolicy:input_type -> google.iam.v2.CreatePolicyRequest
+ 6, // 13: google.iam.v2.Policies.UpdatePolicy:input_type -> google.iam.v2.UpdatePolicyRequest
+ 7, // 14: google.iam.v2.Policies.DeletePolicy:input_type -> google.iam.v2.DeletePolicyRequest
+ 3, // 15: google.iam.v2.Policies.ListPolicies:output_type -> google.iam.v2.ListPoliciesResponse
+ 0, // 16: google.iam.v2.Policies.GetPolicy:output_type -> google.iam.v2.Policy
+ 12, // 17: google.iam.v2.Policies.CreatePolicy:output_type -> google.longrunning.Operation
+ 12, // 18: google.iam.v2.Policies.UpdatePolicy:output_type -> google.longrunning.Operation
+ 12, // 19: google.iam.v2.Policies.DeletePolicy:output_type -> google.longrunning.Operation
+ 15, // [15:20] is the sub-list for method output_type
+ 10, // [10:15] is the sub-list for method input_type
+ 10, // [10:10] is the sub-list for extension type_name
+ 10, // [10:10] is the sub-list for extension extendee
+ 0, // [0:10] is the sub-list for field type_name
+}
+
+func init() { file_google_iam_v2_policy_proto_init() }
+func file_google_iam_v2_policy_proto_init() {
+ if File_google_iam_v2_policy_proto != nil {
+ return
+ }
+ file_google_iam_v2_deny_proto_init()
+ if !protoimpl.UnsafeEnabled {
+ file_google_iam_v2_policy_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*Policy); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PolicyRule); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListPoliciesRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*ListPoliciesResponse); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*GetPolicyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*CreatePolicyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*UpdatePolicyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*DeletePolicyRequest); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} {
+ switch v := v.(*PolicyOperationMetadata); i {
+ case 0:
+ return &v.state
+ case 1:
+ return &v.sizeCache
+ case 2:
+ return &v.unknownFields
+ default:
+ return nil
+ }
+ }
+ }
+ file_google_iam_v2_policy_proto_msgTypes[1].OneofWrappers = []interface{}{
+ (*PolicyRule_DenyRule)(nil),
+ }
+ type x struct{}
+ out := protoimpl.TypeBuilder{
+ File: protoimpl.DescBuilder{
+ GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
+ RawDescriptor: file_google_iam_v2_policy_proto_rawDesc,
+ NumEnums: 0,
+ NumMessages: 10,
+ NumExtensions: 0,
+ NumServices: 1,
+ },
+ GoTypes: file_google_iam_v2_policy_proto_goTypes,
+ DependencyIndexes: file_google_iam_v2_policy_proto_depIdxs,
+ MessageInfos: file_google_iam_v2_policy_proto_msgTypes,
+ }.Build()
+ File_google_iam_v2_policy_proto = out.File
+ file_google_iam_v2_policy_proto_rawDesc = nil
+ file_google_iam_v2_policy_proto_goTypes = nil
+ file_google_iam_v2_policy_proto_depIdxs = nil
+}
+
+// Reference imports to suppress errors if they are not otherwise used.
+var _ context.Context
+var _ grpc.ClientConnInterface
+
+// This is a compile-time assertion to ensure that this generated file
+// is compatible with the grpc package it is being compiled against.
+const _ = grpc.SupportPackageIsVersion6
+
+// PoliciesClient is the client API for Policies service.
+//
+// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.
+type PoliciesClient interface {
+ // Retrieves the policies of the specified kind that are attached to a
+ // resource.
+ //
+ // The response lists only policy metadata. In particular, policy rules are
+ // omitted.
+ ListPolicies(ctx context.Context, in *ListPoliciesRequest, opts ...grpc.CallOption) (*ListPoliciesResponse, error)
+ // Gets a policy.
+ GetPolicy(ctx context.Context, in *GetPolicyRequest, opts ...grpc.CallOption) (*Policy, error)
+ // Creates a policy.
+ CreatePolicy(ctx context.Context, in *CreatePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Updates the specified policy.
+ //
+ // You can update only the rules and the display name for the policy.
+ //
+ // To update a policy, you should use a read-modify-write loop:
+ //
+ // 1. Use [GetPolicy][google.iam.v2.Policies.GetPolicy] to read the current version of the policy.
+ // 2. Modify the policy as needed.
+ // 3. Use `UpdatePolicy` to write the updated policy.
+ //
+ // This pattern helps prevent conflicts between concurrent updates.
+ UpdatePolicy(ctx context.Context, in *UpdatePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+ // Deletes a policy. This action is permanent.
+ DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
+}
+
+type policiesClient struct {
+ cc grpc.ClientConnInterface
+}
+
+func NewPoliciesClient(cc grpc.ClientConnInterface) PoliciesClient {
+ return &policiesClient{cc}
+}
+
+func (c *policiesClient) ListPolicies(ctx context.Context, in *ListPoliciesRequest, opts ...grpc.CallOption) (*ListPoliciesResponse, error) {
+ out := new(ListPoliciesResponse)
+ err := c.cc.Invoke(ctx, "/google.iam.v2.Policies/ListPolicies", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *policiesClient) GetPolicy(ctx context.Context, in *GetPolicyRequest, opts ...grpc.CallOption) (*Policy, error) {
+ out := new(Policy)
+ err := c.cc.Invoke(ctx, "/google.iam.v2.Policies/GetPolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *policiesClient) CreatePolicy(ctx context.Context, in *CreatePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.iam.v2.Policies/CreatePolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *policiesClient) UpdatePolicy(ctx context.Context, in *UpdatePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.iam.v2.Policies/UpdatePolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+func (c *policiesClient) DeletePolicy(ctx context.Context, in *DeletePolicyRequest, opts ...grpc.CallOption) (*longrunning.Operation, error) {
+ out := new(longrunning.Operation)
+ err := c.cc.Invoke(ctx, "/google.iam.v2.Policies/DeletePolicy", in, out, opts...)
+ if err != nil {
+ return nil, err
+ }
+ return out, nil
+}
+
+// PoliciesServer is the server API for Policies service.
+type PoliciesServer interface {
+ // Retrieves the policies of the specified kind that are attached to a
+ // resource.
+ //
+ // The response lists only policy metadata. In particular, policy rules are
+ // omitted.
+ ListPolicies(context.Context, *ListPoliciesRequest) (*ListPoliciesResponse, error)
+ // Gets a policy.
+ GetPolicy(context.Context, *GetPolicyRequest) (*Policy, error)
+ // Creates a policy.
+ CreatePolicy(context.Context, *CreatePolicyRequest) (*longrunning.Operation, error)
+ // Updates the specified policy.
+ //
+ // You can update only the rules and the display name for the policy.
+ //
+ // To update a policy, you should use a read-modify-write loop:
+ //
+ // 1. Use [GetPolicy][google.iam.v2.Policies.GetPolicy] to read the current version of the policy.
+ // 2. Modify the policy as needed.
+ // 3. Use `UpdatePolicy` to write the updated policy.
+ //
+ // This pattern helps prevent conflicts between concurrent updates.
+ UpdatePolicy(context.Context, *UpdatePolicyRequest) (*longrunning.Operation, error)
+ // Deletes a policy. This action is permanent.
+ DeletePolicy(context.Context, *DeletePolicyRequest) (*longrunning.Operation, error)
+}
+
+// UnimplementedPoliciesServer can be embedded to have forward compatible implementations.
+type UnimplementedPoliciesServer struct {
+}
+
+func (*UnimplementedPoliciesServer) ListPolicies(context.Context, *ListPoliciesRequest) (*ListPoliciesResponse, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method ListPolicies not implemented")
+}
+func (*UnimplementedPoliciesServer) GetPolicy(context.Context, *GetPolicyRequest) (*Policy, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method GetPolicy not implemented")
+}
+func (*UnimplementedPoliciesServer) CreatePolicy(context.Context, *CreatePolicyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method CreatePolicy not implemented")
+}
+func (*UnimplementedPoliciesServer) UpdatePolicy(context.Context, *UpdatePolicyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method UpdatePolicy not implemented")
+}
+func (*UnimplementedPoliciesServer) DeletePolicy(context.Context, *DeletePolicyRequest) (*longrunning.Operation, error) {
+ return nil, status.Errorf(codes.Unimplemented, "method DeletePolicy not implemented")
+}
+
+func RegisterPoliciesServer(s *grpc.Server, srv PoliciesServer) {
+ s.RegisterService(&_Policies_serviceDesc, srv)
+}
+
+func _Policies_ListPolicies_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(ListPoliciesRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PoliciesServer).ListPolicies(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.iam.v2.Policies/ListPolicies",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PoliciesServer).ListPolicies(ctx, req.(*ListPoliciesRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Policies_GetPolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(GetPolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PoliciesServer).GetPolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.iam.v2.Policies/GetPolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PoliciesServer).GetPolicy(ctx, req.(*GetPolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Policies_CreatePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(CreatePolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PoliciesServer).CreatePolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.iam.v2.Policies/CreatePolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PoliciesServer).CreatePolicy(ctx, req.(*CreatePolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Policies_UpdatePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(UpdatePolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PoliciesServer).UpdatePolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.iam.v2.Policies/UpdatePolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PoliciesServer).UpdatePolicy(ctx, req.(*UpdatePolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+func _Policies_DeletePolicy_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) {
+ in := new(DeletePolicyRequest)
+ if err := dec(in); err != nil {
+ return nil, err
+ }
+ if interceptor == nil {
+ return srv.(PoliciesServer).DeletePolicy(ctx, in)
+ }
+ info := &grpc.UnaryServerInfo{
+ Server: srv,
+ FullMethod: "/google.iam.v2.Policies/DeletePolicy",
+ }
+ handler := func(ctx context.Context, req interface{}) (interface{}, error) {
+ return srv.(PoliciesServer).DeletePolicy(ctx, req.(*DeletePolicyRequest))
+ }
+ return interceptor(ctx, in, info, handler)
+}
+
+var _Policies_serviceDesc = grpc.ServiceDesc{
+ ServiceName: "google.iam.v2.Policies",
+ HandlerType: (*PoliciesServer)(nil),
+ Methods: []grpc.MethodDesc{
+ {
+ MethodName: "ListPolicies",
+ Handler: _Policies_ListPolicies_Handler,
+ },
+ {
+ MethodName: "GetPolicy",
+ Handler: _Policies_GetPolicy_Handler,
+ },
+ {
+ MethodName: "CreatePolicy",
+ Handler: _Policies_CreatePolicy_Handler,
+ },
+ {
+ MethodName: "UpdatePolicy",
+ Handler: _Policies_UpdatePolicy_Handler,
+ },
+ {
+ MethodName: "DeletePolicy",
+ Handler: _Policies_DeletePolicy_Handler,
+ },
+ },
+ Streams: []grpc.StreamDesc{},
+ Metadata: "google/iam/v2/policy.proto",
+}
diff --git a/internal/.repo-metadata-full.json b/internal/.repo-metadata-full.json
index 42ce289..2dd0e18 100644
--- a/internal/.repo-metadata-full.json
+++ b/internal/.repo-metadata-full.json
@@ -719,6 +719,15 @@
"release_level": "beta",
"library_type": "GAPIC_AUTO"
},
+ "cloud.google.com/go/discoveryengine/apiv1beta": {
+ "distribution_name": "cloud.google.com/go/discoveryengine/apiv1beta",
+ "description": "Discovery Engine API",
+ "language": "Go",
+ "client_library_type": "generated",
+ "docs_url": "https://cloud.google.com/go/docs/reference/cloud.google.com/go/discoveryengine/latest/apiv1beta",
+ "release_level": "beta",
+ "library_type": "GAPIC_AUTO"
+ },
"cloud.google.com/go/dlp/apiv2": {
"distribution_name": "cloud.google.com/go/dlp/apiv2",
"description": "Cloud Data Loss Prevention (DLP) API",
@@ -1088,6 +1097,15 @@
"release_level": "beta",
"library_type": "GAPIC_AUTO"
},
+ "cloud.google.com/go/maps/mapsplatformdatasets/apiv1alpha": {
+ "distribution_name": "cloud.google.com/go/maps/mapsplatformdatasets/apiv1alpha",
+ "description": "Maps Platform Datasets API",
+ "language": "Go",
+ "client_library_type": "generated",
+ "docs_url": "https://cloud.google.com/go/docs/reference/cloud.google.com/go/maps/latest/mapsplatformdatasets/apiv1alpha",
+ "release_level": "alpha",
+ "library_type": "GAPIC_AUTO"
+ },
"cloud.google.com/go/maps/routing/apiv2": {
"distribution_name": "cloud.google.com/go/maps/routing/apiv2",
"description": "Routes API",
diff --git a/internal/aliasfix/mappings.go b/internal/aliasfix/mappings.go
index 0509504..fd10f62 100644
--- a/internal/aliasfix/mappings.go
+++ b/internal/aliasfix/mappings.go
@@ -862,4 +862,20 @@
ImportPath: "cloud.google.com/go/discoveryengine/apiv1beta/discoveryenginepb",
Status: StatusMigrated,
},
+ "google.golang.org/genproto/googleapis/api/apikeys/v2": {
+ ImportPath: "cloud.google.com/go/apikeys/apiv2/apikeyspb",
+ Status: StatusInProgress,
+ },
+ "google.golang.org/genproto/googleapis/cloud/apigeeregistry/v1": {
+ ImportPath: "cloud.google.com/go/apigeeregistry/apiv1/apigeeregistrypb",
+ Status: StatusInProgress,
+ },
+ "google.golang.org/genproto/googleapis/cloud/dialogflow/v2beta1": {
+ ImportPath: "cloud.google.com/go/dialogflow/apiv2beta1/dialogflowpb",
+ Status: StatusInProgress,
+ },
+ "google.golang.org/genproto/googleapis/iam/v2": {
+ ImportPath: "cloud.google.com/go/iam/apiv2/iampb",
+ Status: StatusInProgress,
+ },
}