// Copyright 2020 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.22.0
// protoc v3.12.2
// source: google/cloud/dialogflow/v2beta1/intent.proto
package dialogflow
import (
context "context"
reflect "reflect"
sync "sync"
proto "github.com/golang/protobuf/proto"
_ "github.com/golang/protobuf/ptypes/duration"
empty "github.com/golang/protobuf/ptypes/empty"
_struct "github.com/golang/protobuf/ptypes/struct"
_ "google.golang.org/genproto/googleapis/api/annotations"
longrunning "google.golang.org/genproto/googleapis/longrunning"
field_mask "google.golang.org/genproto/protobuf/field_mask"
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"
)
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)
)
// This is a compile-time assertion that a sufficiently up-to-date version
// of the legacy proto package is being used.
const _ = proto.ProtoPackageIsVersion4
// 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.
// Template mode has been deprecated. Example mode is the only supported
// way to create new training phrases. If you have existing training
// phrases that you've created in template mode, those will continue to
// work.
//
// 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 .
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}
}
// Represents an intent.
// Intents convert a number of user expressions or patterns into an action. An
// action is an extraction of a user command or sentence semantics.
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.
// Format: `projects//agent/intents/`.
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 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.
// Format: `projects//agent/sessions/-/contexts/`.
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//agent/sessions/-/contexts/`.
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//agent/intents/`.
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//agent/intents/`.
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) 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//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 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.
// Format: `projects//agent/intents/`.
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.
// Format: `projects//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 *field_mask.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() *field_mask.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.
//
// Format: `projects//agent/intents/`.
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.
// Format: `projects//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 *field_mask.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() *field_mask.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. Format:
// `projects//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() *_struct.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 *_struct.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//agent/intents/`.
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//agent/intents/`.
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-@gcp-sa-dialogflow.iam.gserviceaccount.com` service account
// where 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.
//
// For more details about RBM rich cards, please see:
// https://developers.google.com/business-communications/rcs-business-messaging/guides/build/messages/send#rich-cards
// 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.
//
// For more details about RBM rich cards, please see:
// https://developers.google.com/business-communications/rcs-business-messaging/guides/build/messages/send#rich-cards
// 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. (https://goo.gl/NeFCjz).
// 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 (https://goo.gl/ergbB2).
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
// (https://goo.gl/6GLJD2). 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 (https://goo.gl/GXotJW).
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, 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, 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, 0x1e, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x64, 0x75, 0x72, 0x61,
0x74, 0x69, 0x6f, 0x6e, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 0x1b, 0x67, 0x6f, 0x6f, 0x67,
0x6c, 0x65, 0x2f, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x62, 0x75, 0x66, 0x2f, 0x65, 0x6d, 0x70, 0x74,
0x79, 0x2e, 0x70, 0x72, 0x6f, 0x74, 0x6f, 0x1a, 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, 0x87, 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, 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, 0x90, 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, 0x3f, 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, 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,
0x8b, 0x02, 0x0a, 0x13, 0x55, 0x70, 0x64, 0x61, 0x74, 0x65, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74,
0x52, 0x65, 0x71, 0x75, 0x65, 0x73, 0x74, 0x12, 0x3f, 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,
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, 0xa0, 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, 0x41, 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, 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, 0xd2, 0x10, 0x0a, 0x07, 0x49,
0x6e, 0x74, 0x65, 0x6e, 0x74, 0x73, 0x12, 0x87, 0x02, 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, 0x8c, 0x01, 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, 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,
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, 0xd4, 0x02, 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, 0xe2,
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, 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, 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, 0xaf, 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, 0xbd, 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, 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,
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, 0x0b, 0x49, 0x6e, 0x74, 0x65, 0x6e, 0x74, 0x50,
0x72, 0x6f, 0x74, 0x6f, 0x50, 0x01, 0x5a, 0x49, 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, 0x63, 0x6c,
0x6f, 0x75, 0x64, 0x2f, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f, 0x77, 0x2f, 0x76,
0x32, 0x62, 0x65, 0x74, 0x61, 0x31, 0x3b, 0x64, 0x69, 0x61, 0x6c, 0x6f, 0x67, 0x66, 0x6c, 0x6f,
0x77, 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
(*field_mask.FieldMask)(nil), // 70: google.protobuf.FieldMask
(*_struct.Struct)(nil), // 71: google.protobuf.Struct
(*empty.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_audio_config_proto_init()
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.
CreateIntent(ctx context.Context, in *CreateIntentRequest, opts ...grpc.CallOption) (*Intent, error)
// Updates the specified intent.
UpdateIntent(ctx context.Context, in *UpdateIntentRequest, opts ...grpc.CallOption) (*Intent, error)
// Deletes the specified intent and its direct or indirect followup intents.
DeleteIntent(ctx context.Context, in *DeleteIntentRequest, opts ...grpc.CallOption) (*empty.Empty, error)
// Updates/Creates multiple intents in the specified agent.
//
// Operation
BatchUpdateIntents(ctx context.Context, in *BatchUpdateIntentsRequest, opts ...grpc.CallOption) (*longrunning.Operation, error)
// Deletes intents in the specified agent.
//
// Operation
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) (*empty.Empty, error) {
out := new(empty.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.
CreateIntent(context.Context, *CreateIntentRequest) (*Intent, error)
// Updates the specified intent.
UpdateIntent(context.Context, *UpdateIntentRequest) (*Intent, error)
// Deletes the specified intent and its direct or indirect followup intents.
DeleteIntent(context.Context, *DeleteIntentRequest) (*empty.Empty, error)
// Updates/Creates multiple intents in the specified agent.
//
// Operation
BatchUpdateIntents(context.Context, *BatchUpdateIntentsRequest) (*longrunning.Operation, error)
// Deletes intents in the specified agent.
//
// Operation
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) (*empty.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",
}