1// Code generated by protoc-gen-go. DO NOT EDIT. 2// source: google/cloud/dialogflow/v2/session.proto 3 4package dialogflow // import "google.golang.org/genproto/googleapis/cloud/dialogflow/v2" 5 6import proto "github.com/golang/protobuf/proto" 7import fmt "fmt" 8import math "math" 9import _struct "github.com/golang/protobuf/ptypes/struct" 10import _ "google.golang.org/genproto/googleapis/api/annotations" 11import status "google.golang.org/genproto/googleapis/rpc/status" 12import latlng "google.golang.org/genproto/googleapis/type/latlng" 13 14import ( 15 context "golang.org/x/net/context" 16 grpc "google.golang.org/grpc" 17) 18 19// Reference imports to suppress errors if they are not otherwise used. 20var _ = proto.Marshal 21var _ = fmt.Errorf 22var _ = math.Inf 23 24// This is a compile-time assertion to ensure that this generated file 25// is compatible with the proto package it is being compiled against. 26// A compilation error at this line likely means your copy of the 27// proto package needs to be updated. 28const _ = proto.ProtoPackageIsVersion2 // please upgrade the proto package 29 30// Audio encoding of the audio content sent in the conversational query request. 31// Refer to the [Cloud Speech API documentation](/speech/docs/basics) for more 32// details. 33type AudioEncoding int32 34 35const ( 36 // Not specified. 37 AudioEncoding_AUDIO_ENCODING_UNSPECIFIED AudioEncoding = 0 38 // Uncompressed 16-bit signed little-endian samples (Linear PCM). 39 AudioEncoding_AUDIO_ENCODING_LINEAR_16 AudioEncoding = 1 40 // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio 41 // Codec) is the recommended encoding because it is lossless (therefore 42 // recognition is not compromised) and requires only about half the 43 // bandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and 44 // 24-bit samples, however, not all fields in `STREAMINFO` are supported. 45 AudioEncoding_AUDIO_ENCODING_FLAC AudioEncoding = 2 46 // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law. 47 AudioEncoding_AUDIO_ENCODING_MULAW AudioEncoding = 3 48 // Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000. 49 AudioEncoding_AUDIO_ENCODING_AMR AudioEncoding = 4 50 // Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000. 51 AudioEncoding_AUDIO_ENCODING_AMR_WB AudioEncoding = 5 52 // Opus encoded audio frames in Ogg container 53 // ([OggOpus](https://wiki.xiph.org/OggOpus)). 54 // `sample_rate_hertz` must be 16000. 55 AudioEncoding_AUDIO_ENCODING_OGG_OPUS AudioEncoding = 6 56 // Although the use of lossy encodings is not recommended, if a very low 57 // bitrate encoding is required, `OGG_OPUS` is highly preferred over 58 // Speex encoding. The [Speex](https://speex.org/) encoding supported by 59 // Dialogflow API has a header byte in each block, as in MIME type 60 // `audio/x-speex-with-header-byte`. 61 // It is a variant of the RTP Speex encoding defined in 62 // [RFC 5574](https://tools.ietf.org/html/rfc5574). 63 // The stream is a sequence of blocks, one block per RTP packet. Each block 64 // starts with a byte containing the length of the block, in bytes, followed 65 // by one or more frames of Speex data, padded to an integral number of 66 // bytes (octets) as specified in RFC 5574. In other words, each RTP header 67 // is replaced with a single byte containing the block length. Only Speex 68 // wideband is supported. `sample_rate_hertz` must be 16000. 69 AudioEncoding_AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE AudioEncoding = 7 70) 71 72var AudioEncoding_name = map[int32]string{ 73 0: "AUDIO_ENCODING_UNSPECIFIED", 74 1: "AUDIO_ENCODING_LINEAR_16", 75 2: "AUDIO_ENCODING_FLAC", 76 3: "AUDIO_ENCODING_MULAW", 77 4: "AUDIO_ENCODING_AMR", 78 5: "AUDIO_ENCODING_AMR_WB", 79 6: "AUDIO_ENCODING_OGG_OPUS", 80 7: "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE", 81} 82var AudioEncoding_value = map[string]int32{ 83 "AUDIO_ENCODING_UNSPECIFIED": 0, 84 "AUDIO_ENCODING_LINEAR_16": 1, 85 "AUDIO_ENCODING_FLAC": 2, 86 "AUDIO_ENCODING_MULAW": 3, 87 "AUDIO_ENCODING_AMR": 4, 88 "AUDIO_ENCODING_AMR_WB": 5, 89 "AUDIO_ENCODING_OGG_OPUS": 6, 90 "AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE": 7, 91} 92 93func (x AudioEncoding) String() string { 94 return proto.EnumName(AudioEncoding_name, int32(x)) 95} 96func (AudioEncoding) EnumDescriptor() ([]byte, []int) { 97 return fileDescriptor_session_e51df00932adac70, []int{0} 98} 99 100// Type of the response message. 101type StreamingRecognitionResult_MessageType int32 102 103const ( 104 // Not specified. Should never be used. 105 StreamingRecognitionResult_MESSAGE_TYPE_UNSPECIFIED StreamingRecognitionResult_MessageType = 0 106 // Message contains a (possibly partial) transcript. 107 StreamingRecognitionResult_TRANSCRIPT StreamingRecognitionResult_MessageType = 1 108 // Event indicates that the server has detected the end of the user's speech 109 // utterance and expects no additional speech. Therefore, the server will 110 // not process additional audio (although it may subsequently return 111 // additional results). The client should stop sending additional audio 112 // data, half-close the gRPC connection, and wait for any additional results 113 // until the server closes the gRPC connection. This message is only sent if 114 // `single_utterance` was set to `true`, and is not used otherwise. 115 StreamingRecognitionResult_END_OF_SINGLE_UTTERANCE StreamingRecognitionResult_MessageType = 2 116) 117 118var StreamingRecognitionResult_MessageType_name = map[int32]string{ 119 0: "MESSAGE_TYPE_UNSPECIFIED", 120 1: "TRANSCRIPT", 121 2: "END_OF_SINGLE_UTTERANCE", 122} 123var StreamingRecognitionResult_MessageType_value = map[string]int32{ 124 "MESSAGE_TYPE_UNSPECIFIED": 0, 125 "TRANSCRIPT": 1, 126 "END_OF_SINGLE_UTTERANCE": 2, 127} 128 129func (x StreamingRecognitionResult_MessageType) String() string { 130 return proto.EnumName(StreamingRecognitionResult_MessageType_name, int32(x)) 131} 132func (StreamingRecognitionResult_MessageType) EnumDescriptor() ([]byte, []int) { 133 return fileDescriptor_session_e51df00932adac70, []int{7, 0} 134} 135 136// The request to detect user's intent. 137type DetectIntentRequest struct { 138 // Required. The name of the session this query is sent to. Format: 139 // `projects/<Project ID>/agent/sessions/<Session ID>`. It's up to the API 140 // caller to choose an appropriate session ID. It can be a random number or 141 // some type of user identifier (preferably hashed). The length of the session 142 // ID must not exceed 36 bytes. 143 Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"` 144 // Optional. The parameters of this query. 145 QueryParams *QueryParameters `protobuf:"bytes,2,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"` 146 // Required. The input specification. It can be set to: 147 // 148 // 1. an audio config 149 // which instructs the speech recognizer how to process the speech audio, 150 // 151 // 2. a conversational query in the form of text, or 152 // 153 // 3. an event that specifies which intent to trigger. 154 QueryInput *QueryInput `protobuf:"bytes,3,opt,name=query_input,json=queryInput,proto3" json:"query_input,omitempty"` 155 // Optional. The natural language speech audio to be processed. This field 156 // should be populated iff `query_input` is set to an input audio config. 157 // A single request can contain up to 1 minute of speech audio data. 158 InputAudio []byte `protobuf:"bytes,5,opt,name=input_audio,json=inputAudio,proto3" json:"input_audio,omitempty"` 159 XXX_NoUnkeyedLiteral struct{} `json:"-"` 160 XXX_unrecognized []byte `json:"-"` 161 XXX_sizecache int32 `json:"-"` 162} 163 164func (m *DetectIntentRequest) Reset() { *m = DetectIntentRequest{} } 165func (m *DetectIntentRequest) String() string { return proto.CompactTextString(m) } 166func (*DetectIntentRequest) ProtoMessage() {} 167func (*DetectIntentRequest) Descriptor() ([]byte, []int) { 168 return fileDescriptor_session_e51df00932adac70, []int{0} 169} 170func (m *DetectIntentRequest) XXX_Unmarshal(b []byte) error { 171 return xxx_messageInfo_DetectIntentRequest.Unmarshal(m, b) 172} 173func (m *DetectIntentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 174 return xxx_messageInfo_DetectIntentRequest.Marshal(b, m, deterministic) 175} 176func (dst *DetectIntentRequest) XXX_Merge(src proto.Message) { 177 xxx_messageInfo_DetectIntentRequest.Merge(dst, src) 178} 179func (m *DetectIntentRequest) XXX_Size() int { 180 return xxx_messageInfo_DetectIntentRequest.Size(m) 181} 182func (m *DetectIntentRequest) XXX_DiscardUnknown() { 183 xxx_messageInfo_DetectIntentRequest.DiscardUnknown(m) 184} 185 186var xxx_messageInfo_DetectIntentRequest proto.InternalMessageInfo 187 188func (m *DetectIntentRequest) GetSession() string { 189 if m != nil { 190 return m.Session 191 } 192 return "" 193} 194 195func (m *DetectIntentRequest) GetQueryParams() *QueryParameters { 196 if m != nil { 197 return m.QueryParams 198 } 199 return nil 200} 201 202func (m *DetectIntentRequest) GetQueryInput() *QueryInput { 203 if m != nil { 204 return m.QueryInput 205 } 206 return nil 207} 208 209func (m *DetectIntentRequest) GetInputAudio() []byte { 210 if m != nil { 211 return m.InputAudio 212 } 213 return nil 214} 215 216// The message returned from the DetectIntent method. 217type DetectIntentResponse struct { 218 // The unique identifier of the response. It can be used to 219 // locate a response in the training example set or for reporting issues. 220 ResponseId string `protobuf:"bytes,1,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"` 221 // The results of the conversational query or event processing. 222 QueryResult *QueryResult `protobuf:"bytes,2,opt,name=query_result,json=queryResult,proto3" json:"query_result,omitempty"` 223 // Specifies the status of the webhook request. `webhook_status` 224 // is never populated in webhook requests. 225 WebhookStatus *status.Status `protobuf:"bytes,3,opt,name=webhook_status,json=webhookStatus,proto3" json:"webhook_status,omitempty"` 226 XXX_NoUnkeyedLiteral struct{} `json:"-"` 227 XXX_unrecognized []byte `json:"-"` 228 XXX_sizecache int32 `json:"-"` 229} 230 231func (m *DetectIntentResponse) Reset() { *m = DetectIntentResponse{} } 232func (m *DetectIntentResponse) String() string { return proto.CompactTextString(m) } 233func (*DetectIntentResponse) ProtoMessage() {} 234func (*DetectIntentResponse) Descriptor() ([]byte, []int) { 235 return fileDescriptor_session_e51df00932adac70, []int{1} 236} 237func (m *DetectIntentResponse) XXX_Unmarshal(b []byte) error { 238 return xxx_messageInfo_DetectIntentResponse.Unmarshal(m, b) 239} 240func (m *DetectIntentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 241 return xxx_messageInfo_DetectIntentResponse.Marshal(b, m, deterministic) 242} 243func (dst *DetectIntentResponse) XXX_Merge(src proto.Message) { 244 xxx_messageInfo_DetectIntentResponse.Merge(dst, src) 245} 246func (m *DetectIntentResponse) XXX_Size() int { 247 return xxx_messageInfo_DetectIntentResponse.Size(m) 248} 249func (m *DetectIntentResponse) XXX_DiscardUnknown() { 250 xxx_messageInfo_DetectIntentResponse.DiscardUnknown(m) 251} 252 253var xxx_messageInfo_DetectIntentResponse proto.InternalMessageInfo 254 255func (m *DetectIntentResponse) GetResponseId() string { 256 if m != nil { 257 return m.ResponseId 258 } 259 return "" 260} 261 262func (m *DetectIntentResponse) GetQueryResult() *QueryResult { 263 if m != nil { 264 return m.QueryResult 265 } 266 return nil 267} 268 269func (m *DetectIntentResponse) GetWebhookStatus() *status.Status { 270 if m != nil { 271 return m.WebhookStatus 272 } 273 return nil 274} 275 276// Represents the parameters of the conversational query. 277type QueryParameters struct { 278 // Optional. The time zone of this conversational query from the 279 // [time zone database](https://www.iana.org/time-zones), e.g., 280 // America/New_York, Europe/Paris. If not provided, the time zone specified in 281 // agent settings is used. 282 TimeZone string `protobuf:"bytes,1,opt,name=time_zone,json=timeZone,proto3" json:"time_zone,omitempty"` 283 // Optional. The geo location of this conversational query. 284 GeoLocation *latlng.LatLng `protobuf:"bytes,2,opt,name=geo_location,json=geoLocation,proto3" json:"geo_location,omitempty"` 285 // Optional. The collection of contexts to be activated before this query is 286 // executed. 287 Contexts []*Context `protobuf:"bytes,3,rep,name=contexts,proto3" json:"contexts,omitempty"` 288 // Optional. Specifies whether to delete all contexts in the current session 289 // before the new ones are activated. 290 ResetContexts bool `protobuf:"varint,4,opt,name=reset_contexts,json=resetContexts,proto3" json:"reset_contexts,omitempty"` 291 // Optional. The collection of session entity types to replace or extend 292 // developer entities with for this query only. The entity synonyms apply 293 // to all languages. 294 SessionEntityTypes []*SessionEntityType `protobuf:"bytes,5,rep,name=session_entity_types,json=sessionEntityTypes,proto3" json:"session_entity_types,omitempty"` 295 // Optional. This field can be used to pass custom data into the webhook 296 // associated with the agent. Arbitrary JSON objects are supported. 297 Payload *_struct.Struct `protobuf:"bytes,6,opt,name=payload,proto3" json:"payload,omitempty"` 298 XXX_NoUnkeyedLiteral struct{} `json:"-"` 299 XXX_unrecognized []byte `json:"-"` 300 XXX_sizecache int32 `json:"-"` 301} 302 303func (m *QueryParameters) Reset() { *m = QueryParameters{} } 304func (m *QueryParameters) String() string { return proto.CompactTextString(m) } 305func (*QueryParameters) ProtoMessage() {} 306func (*QueryParameters) Descriptor() ([]byte, []int) { 307 return fileDescriptor_session_e51df00932adac70, []int{2} 308} 309func (m *QueryParameters) XXX_Unmarshal(b []byte) error { 310 return xxx_messageInfo_QueryParameters.Unmarshal(m, b) 311} 312func (m *QueryParameters) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 313 return xxx_messageInfo_QueryParameters.Marshal(b, m, deterministic) 314} 315func (dst *QueryParameters) XXX_Merge(src proto.Message) { 316 xxx_messageInfo_QueryParameters.Merge(dst, src) 317} 318func (m *QueryParameters) XXX_Size() int { 319 return xxx_messageInfo_QueryParameters.Size(m) 320} 321func (m *QueryParameters) XXX_DiscardUnknown() { 322 xxx_messageInfo_QueryParameters.DiscardUnknown(m) 323} 324 325var xxx_messageInfo_QueryParameters proto.InternalMessageInfo 326 327func (m *QueryParameters) GetTimeZone() string { 328 if m != nil { 329 return m.TimeZone 330 } 331 return "" 332} 333 334func (m *QueryParameters) GetGeoLocation() *latlng.LatLng { 335 if m != nil { 336 return m.GeoLocation 337 } 338 return nil 339} 340 341func (m *QueryParameters) GetContexts() []*Context { 342 if m != nil { 343 return m.Contexts 344 } 345 return nil 346} 347 348func (m *QueryParameters) GetResetContexts() bool { 349 if m != nil { 350 return m.ResetContexts 351 } 352 return false 353} 354 355func (m *QueryParameters) GetSessionEntityTypes() []*SessionEntityType { 356 if m != nil { 357 return m.SessionEntityTypes 358 } 359 return nil 360} 361 362func (m *QueryParameters) GetPayload() *_struct.Struct { 363 if m != nil { 364 return m.Payload 365 } 366 return nil 367} 368 369// Represents the query input. It can contain either: 370// 371// 1. An audio config which 372// instructs the speech recognizer how to process the speech audio. 373// 374// 2. A conversational query in the form of text,. 375// 376// 3. An event that specifies which intent to trigger. 377type QueryInput struct { 378 // Required. The input specification. 379 // 380 // Types that are valid to be assigned to Input: 381 // *QueryInput_AudioConfig 382 // *QueryInput_Text 383 // *QueryInput_Event 384 Input isQueryInput_Input `protobuf_oneof:"input"` 385 XXX_NoUnkeyedLiteral struct{} `json:"-"` 386 XXX_unrecognized []byte `json:"-"` 387 XXX_sizecache int32 `json:"-"` 388} 389 390func (m *QueryInput) Reset() { *m = QueryInput{} } 391func (m *QueryInput) String() string { return proto.CompactTextString(m) } 392func (*QueryInput) ProtoMessage() {} 393func (*QueryInput) Descriptor() ([]byte, []int) { 394 return fileDescriptor_session_e51df00932adac70, []int{3} 395} 396func (m *QueryInput) XXX_Unmarshal(b []byte) error { 397 return xxx_messageInfo_QueryInput.Unmarshal(m, b) 398} 399func (m *QueryInput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 400 return xxx_messageInfo_QueryInput.Marshal(b, m, deterministic) 401} 402func (dst *QueryInput) XXX_Merge(src proto.Message) { 403 xxx_messageInfo_QueryInput.Merge(dst, src) 404} 405func (m *QueryInput) XXX_Size() int { 406 return xxx_messageInfo_QueryInput.Size(m) 407} 408func (m *QueryInput) XXX_DiscardUnknown() { 409 xxx_messageInfo_QueryInput.DiscardUnknown(m) 410} 411 412var xxx_messageInfo_QueryInput proto.InternalMessageInfo 413 414type isQueryInput_Input interface { 415 isQueryInput_Input() 416} 417 418type QueryInput_AudioConfig struct { 419 AudioConfig *InputAudioConfig `protobuf:"bytes,1,opt,name=audio_config,json=audioConfig,proto3,oneof"` 420} 421 422type QueryInput_Text struct { 423 Text *TextInput `protobuf:"bytes,2,opt,name=text,proto3,oneof"` 424} 425 426type QueryInput_Event struct { 427 Event *EventInput `protobuf:"bytes,3,opt,name=event,proto3,oneof"` 428} 429 430func (*QueryInput_AudioConfig) isQueryInput_Input() {} 431 432func (*QueryInput_Text) isQueryInput_Input() {} 433 434func (*QueryInput_Event) isQueryInput_Input() {} 435 436func (m *QueryInput) GetInput() isQueryInput_Input { 437 if m != nil { 438 return m.Input 439 } 440 return nil 441} 442 443func (m *QueryInput) GetAudioConfig() *InputAudioConfig { 444 if x, ok := m.GetInput().(*QueryInput_AudioConfig); ok { 445 return x.AudioConfig 446 } 447 return nil 448} 449 450func (m *QueryInput) GetText() *TextInput { 451 if x, ok := m.GetInput().(*QueryInput_Text); ok { 452 return x.Text 453 } 454 return nil 455} 456 457func (m *QueryInput) GetEvent() *EventInput { 458 if x, ok := m.GetInput().(*QueryInput_Event); ok { 459 return x.Event 460 } 461 return nil 462} 463 464// XXX_OneofFuncs is for the internal use of the proto package. 465func (*QueryInput) XXX_OneofFuncs() (func(msg proto.Message, b *proto.Buffer) error, func(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error), func(msg proto.Message) (n int), []interface{}) { 466 return _QueryInput_OneofMarshaler, _QueryInput_OneofUnmarshaler, _QueryInput_OneofSizer, []interface{}{ 467 (*QueryInput_AudioConfig)(nil), 468 (*QueryInput_Text)(nil), 469 (*QueryInput_Event)(nil), 470 } 471} 472 473func _QueryInput_OneofMarshaler(msg proto.Message, b *proto.Buffer) error { 474 m := msg.(*QueryInput) 475 // input 476 switch x := m.Input.(type) { 477 case *QueryInput_AudioConfig: 478 b.EncodeVarint(1<<3 | proto.WireBytes) 479 if err := b.EncodeMessage(x.AudioConfig); err != nil { 480 return err 481 } 482 case *QueryInput_Text: 483 b.EncodeVarint(2<<3 | proto.WireBytes) 484 if err := b.EncodeMessage(x.Text); err != nil { 485 return err 486 } 487 case *QueryInput_Event: 488 b.EncodeVarint(3<<3 | proto.WireBytes) 489 if err := b.EncodeMessage(x.Event); err != nil { 490 return err 491 } 492 case nil: 493 default: 494 return fmt.Errorf("QueryInput.Input has unexpected type %T", x) 495 } 496 return nil 497} 498 499func _QueryInput_OneofUnmarshaler(msg proto.Message, tag, wire int, b *proto.Buffer) (bool, error) { 500 m := msg.(*QueryInput) 501 switch tag { 502 case 1: // input.audio_config 503 if wire != proto.WireBytes { 504 return true, proto.ErrInternalBadWireType 505 } 506 msg := new(InputAudioConfig) 507 err := b.DecodeMessage(msg) 508 m.Input = &QueryInput_AudioConfig{msg} 509 return true, err 510 case 2: // input.text 511 if wire != proto.WireBytes { 512 return true, proto.ErrInternalBadWireType 513 } 514 msg := new(TextInput) 515 err := b.DecodeMessage(msg) 516 m.Input = &QueryInput_Text{msg} 517 return true, err 518 case 3: // input.event 519 if wire != proto.WireBytes { 520 return true, proto.ErrInternalBadWireType 521 } 522 msg := new(EventInput) 523 err := b.DecodeMessage(msg) 524 m.Input = &QueryInput_Event{msg} 525 return true, err 526 default: 527 return false, nil 528 } 529} 530 531func _QueryInput_OneofSizer(msg proto.Message) (n int) { 532 m := msg.(*QueryInput) 533 // input 534 switch x := m.Input.(type) { 535 case *QueryInput_AudioConfig: 536 s := proto.Size(x.AudioConfig) 537 n += 1 // tag and wire 538 n += proto.SizeVarint(uint64(s)) 539 n += s 540 case *QueryInput_Text: 541 s := proto.Size(x.Text) 542 n += 1 // tag and wire 543 n += proto.SizeVarint(uint64(s)) 544 n += s 545 case *QueryInput_Event: 546 s := proto.Size(x.Event) 547 n += 1 // tag and wire 548 n += proto.SizeVarint(uint64(s)) 549 n += s 550 case nil: 551 default: 552 panic(fmt.Sprintf("proto: unexpected type %T in oneof", x)) 553 } 554 return n 555} 556 557// Represents the result of conversational query or event processing. 558type QueryResult struct { 559 // The original conversational query text: 560 // - If natural language text was provided as input, `query_text` contains 561 // a copy of the input. 562 // - If natural language speech audio was provided as input, `query_text` 563 // contains the speech recognition result. If speech recognizer produced 564 // multiple alternatives, a particular one is picked. 565 // - If an event was provided as input, `query_text` is not set. 566 QueryText string `protobuf:"bytes,1,opt,name=query_text,json=queryText,proto3" json:"query_text,omitempty"` 567 // The language that was triggered during intent detection. 568 // See [Language Support](https://dialogflow.com/docs/reference/language) 569 // for a list of the currently supported language codes. 570 LanguageCode string `protobuf:"bytes,15,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 571 // The Speech recognition confidence between 0.0 and 1.0. A higher number 572 // indicates an estimated greater likelihood that the recognized words are 573 // correct. The default of 0.0 is a sentinel value indicating that confidence 574 // was not set. 575 // 576 // You should not rely on this field as it isn't guaranteed to be accurate, or 577 // even set. In particular this field isn't set in Webhook calls and for 578 // StreamingDetectIntent since the streaming endpoint has separate confidence 579 // estimates per portion of the audio in StreamingRecognitionResult. 580 SpeechRecognitionConfidence float32 `protobuf:"fixed32,2,opt,name=speech_recognition_confidence,json=speechRecognitionConfidence,proto3" json:"speech_recognition_confidence,omitempty"` 581 // The action name from the matched intent. 582 Action string `protobuf:"bytes,3,opt,name=action,proto3" json:"action,omitempty"` 583 // The collection of extracted parameters. 584 Parameters *_struct.Struct `protobuf:"bytes,4,opt,name=parameters,proto3" json:"parameters,omitempty"` 585 // This field is set to: 586 // - `false` if the matched intent has required parameters and not all of 587 // the required parameter values have been collected. 588 // - `true` if all required parameter values have been collected, or if the 589 // matched intent doesn't contain any required parameters. 590 AllRequiredParamsPresent bool `protobuf:"varint,5,opt,name=all_required_params_present,json=allRequiredParamsPresent,proto3" json:"all_required_params_present,omitempty"` 591 // The text to be pronounced to the user or shown on the screen. 592 FulfillmentText string `protobuf:"bytes,6,opt,name=fulfillment_text,json=fulfillmentText,proto3" json:"fulfillment_text,omitempty"` 593 // The collection of rich messages to present to the user. 594 FulfillmentMessages []*Intent_Message `protobuf:"bytes,7,rep,name=fulfillment_messages,json=fulfillmentMessages,proto3" json:"fulfillment_messages,omitempty"` 595 // If the query was fulfilled by a webhook call, this field is set to the 596 // value of the `source` field returned in the webhook response. 597 WebhookSource string `protobuf:"bytes,8,opt,name=webhook_source,json=webhookSource,proto3" json:"webhook_source,omitempty"` 598 // If the query was fulfilled by a webhook call, this field is set to the 599 // value of the `payload` field returned in the webhook response. 600 WebhookPayload *_struct.Struct `protobuf:"bytes,9,opt,name=webhook_payload,json=webhookPayload,proto3" json:"webhook_payload,omitempty"` 601 // The collection of output contexts. If applicable, 602 // `output_contexts.parameters` contains entries with name 603 // `<parameter name>.original` containing the original parameter values 604 // before the query. 605 OutputContexts []*Context `protobuf:"bytes,10,rep,name=output_contexts,json=outputContexts,proto3" json:"output_contexts,omitempty"` 606 // The intent that matched the conversational query. Some, not 607 // all fields are filled in this message, including but not limited to: 608 // `name`, `display_name` and `webhook_state`. 609 Intent *Intent `protobuf:"bytes,11,opt,name=intent,proto3" json:"intent,omitempty"` 610 // The intent detection confidence. Values range from 0.0 611 // (completely uncertain) to 1.0 (completely certain). 612 IntentDetectionConfidence float32 `protobuf:"fixed32,12,opt,name=intent_detection_confidence,json=intentDetectionConfidence,proto3" json:"intent_detection_confidence,omitempty"` 613 // The free-form diagnostic info. For example, this field 614 // could contain webhook call latency. 615 DiagnosticInfo *_struct.Struct `protobuf:"bytes,14,opt,name=diagnostic_info,json=diagnosticInfo,proto3" json:"diagnostic_info,omitempty"` 616 XXX_NoUnkeyedLiteral struct{} `json:"-"` 617 XXX_unrecognized []byte `json:"-"` 618 XXX_sizecache int32 `json:"-"` 619} 620 621func (m *QueryResult) Reset() { *m = QueryResult{} } 622func (m *QueryResult) String() string { return proto.CompactTextString(m) } 623func (*QueryResult) ProtoMessage() {} 624func (*QueryResult) Descriptor() ([]byte, []int) { 625 return fileDescriptor_session_e51df00932adac70, []int{4} 626} 627func (m *QueryResult) XXX_Unmarshal(b []byte) error { 628 return xxx_messageInfo_QueryResult.Unmarshal(m, b) 629} 630func (m *QueryResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 631 return xxx_messageInfo_QueryResult.Marshal(b, m, deterministic) 632} 633func (dst *QueryResult) XXX_Merge(src proto.Message) { 634 xxx_messageInfo_QueryResult.Merge(dst, src) 635} 636func (m *QueryResult) XXX_Size() int { 637 return xxx_messageInfo_QueryResult.Size(m) 638} 639func (m *QueryResult) XXX_DiscardUnknown() { 640 xxx_messageInfo_QueryResult.DiscardUnknown(m) 641} 642 643var xxx_messageInfo_QueryResult proto.InternalMessageInfo 644 645func (m *QueryResult) GetQueryText() string { 646 if m != nil { 647 return m.QueryText 648 } 649 return "" 650} 651 652func (m *QueryResult) GetLanguageCode() string { 653 if m != nil { 654 return m.LanguageCode 655 } 656 return "" 657} 658 659func (m *QueryResult) GetSpeechRecognitionConfidence() float32 { 660 if m != nil { 661 return m.SpeechRecognitionConfidence 662 } 663 return 0 664} 665 666func (m *QueryResult) GetAction() string { 667 if m != nil { 668 return m.Action 669 } 670 return "" 671} 672 673func (m *QueryResult) GetParameters() *_struct.Struct { 674 if m != nil { 675 return m.Parameters 676 } 677 return nil 678} 679 680func (m *QueryResult) GetAllRequiredParamsPresent() bool { 681 if m != nil { 682 return m.AllRequiredParamsPresent 683 } 684 return false 685} 686 687func (m *QueryResult) GetFulfillmentText() string { 688 if m != nil { 689 return m.FulfillmentText 690 } 691 return "" 692} 693 694func (m *QueryResult) GetFulfillmentMessages() []*Intent_Message { 695 if m != nil { 696 return m.FulfillmentMessages 697 } 698 return nil 699} 700 701func (m *QueryResult) GetWebhookSource() string { 702 if m != nil { 703 return m.WebhookSource 704 } 705 return "" 706} 707 708func (m *QueryResult) GetWebhookPayload() *_struct.Struct { 709 if m != nil { 710 return m.WebhookPayload 711 } 712 return nil 713} 714 715func (m *QueryResult) GetOutputContexts() []*Context { 716 if m != nil { 717 return m.OutputContexts 718 } 719 return nil 720} 721 722func (m *QueryResult) GetIntent() *Intent { 723 if m != nil { 724 return m.Intent 725 } 726 return nil 727} 728 729func (m *QueryResult) GetIntentDetectionConfidence() float32 { 730 if m != nil { 731 return m.IntentDetectionConfidence 732 } 733 return 0 734} 735 736func (m *QueryResult) GetDiagnosticInfo() *_struct.Struct { 737 if m != nil { 738 return m.DiagnosticInfo 739 } 740 return nil 741} 742 743// The top-level message sent by the client to the 744// `StreamingDetectIntent` method. 745// 746// Multiple request messages should be sent in order: 747// 748// 1. The first message must contain `session`, `query_input` plus optionally 749// `query_params` and/or `single_utterance`. The message must not contain `input_audio`. 750// 751// 2. If `query_input` was set to a streaming input audio config, 752// all subsequent messages must contain only `input_audio`. 753// Otherwise, finish the request stream. 754type StreamingDetectIntentRequest struct { 755 // Required. The name of the session the query is sent to. 756 // Format of the session name: 757 // `projects/<Project ID>/agent/sessions/<Session ID>`. It’s up to the API 758 // caller to choose an appropriate <Session ID>. It can be a random number or 759 // some type of user identifier (preferably hashed). The length of the session 760 // ID must not exceed 36 characters. 761 Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"` 762 // Optional. The parameters of this query. 763 QueryParams *QueryParameters `protobuf:"bytes,2,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"` 764 // Required. The input specification. It can be set to: 765 // 766 // 1. an audio config which instructs the speech recognizer how to process 767 // the speech audio, 768 // 769 // 2. a conversational query in the form of text, or 770 // 771 // 3. an event that specifies which intent to trigger. 772 QueryInput *QueryInput `protobuf:"bytes,3,opt,name=query_input,json=queryInput,proto3" json:"query_input,omitempty"` 773 // Optional. If `false` (default), recognition does not cease until the 774 // client closes the stream. 775 // If `true`, the recognizer will detect a single spoken utterance in input 776 // audio. Recognition ceases when it detects the audio's voice has 777 // stopped or paused. In this case, once a detected intent is received, the 778 // client should close the stream and start a new request with a new stream as 779 // needed. 780 // This setting is ignored when `query_input` is a piece of text or an event. 781 SingleUtterance bool `protobuf:"varint,4,opt,name=single_utterance,json=singleUtterance,proto3" json:"single_utterance,omitempty"` 782 // Optional. The input audio content to be recognized. Must be sent if 783 // `query_input` was set to a streaming input audio config. The complete audio 784 // over all streaming messages must not exceed 1 minute. 785 InputAudio []byte `protobuf:"bytes,6,opt,name=input_audio,json=inputAudio,proto3" json:"input_audio,omitempty"` 786 XXX_NoUnkeyedLiteral struct{} `json:"-"` 787 XXX_unrecognized []byte `json:"-"` 788 XXX_sizecache int32 `json:"-"` 789} 790 791func (m *StreamingDetectIntentRequest) Reset() { *m = StreamingDetectIntentRequest{} } 792func (m *StreamingDetectIntentRequest) String() string { return proto.CompactTextString(m) } 793func (*StreamingDetectIntentRequest) ProtoMessage() {} 794func (*StreamingDetectIntentRequest) Descriptor() ([]byte, []int) { 795 return fileDescriptor_session_e51df00932adac70, []int{5} 796} 797func (m *StreamingDetectIntentRequest) XXX_Unmarshal(b []byte) error { 798 return xxx_messageInfo_StreamingDetectIntentRequest.Unmarshal(m, b) 799} 800func (m *StreamingDetectIntentRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 801 return xxx_messageInfo_StreamingDetectIntentRequest.Marshal(b, m, deterministic) 802} 803func (dst *StreamingDetectIntentRequest) XXX_Merge(src proto.Message) { 804 xxx_messageInfo_StreamingDetectIntentRequest.Merge(dst, src) 805} 806func (m *StreamingDetectIntentRequest) XXX_Size() int { 807 return xxx_messageInfo_StreamingDetectIntentRequest.Size(m) 808} 809func (m *StreamingDetectIntentRequest) XXX_DiscardUnknown() { 810 xxx_messageInfo_StreamingDetectIntentRequest.DiscardUnknown(m) 811} 812 813var xxx_messageInfo_StreamingDetectIntentRequest proto.InternalMessageInfo 814 815func (m *StreamingDetectIntentRequest) GetSession() string { 816 if m != nil { 817 return m.Session 818 } 819 return "" 820} 821 822func (m *StreamingDetectIntentRequest) GetQueryParams() *QueryParameters { 823 if m != nil { 824 return m.QueryParams 825 } 826 return nil 827} 828 829func (m *StreamingDetectIntentRequest) GetQueryInput() *QueryInput { 830 if m != nil { 831 return m.QueryInput 832 } 833 return nil 834} 835 836func (m *StreamingDetectIntentRequest) GetSingleUtterance() bool { 837 if m != nil { 838 return m.SingleUtterance 839 } 840 return false 841} 842 843func (m *StreamingDetectIntentRequest) GetInputAudio() []byte { 844 if m != nil { 845 return m.InputAudio 846 } 847 return nil 848} 849 850// The top-level message returned from the 851// `StreamingDetectIntent` method. 852// 853// Multiple response messages can be returned in order: 854// 855// 1. If the input was set to streaming audio, the first one or more messages 856// contain `recognition_result`. Each `recognition_result` represents a more 857// complete transcript of what the user said. The last `recognition_result` 858// has `is_final` set to `true`. 859// 860// 2. The next message contains `response_id`, `query_result` 861// and optionally `webhook_status` if a WebHook was called. 862type StreamingDetectIntentResponse struct { 863 // The unique identifier of the response. It can be used to 864 // locate a response in the training example set or for reporting issues. 865 ResponseId string `protobuf:"bytes,1,opt,name=response_id,json=responseId,proto3" json:"response_id,omitempty"` 866 // The result of speech recognition. 867 RecognitionResult *StreamingRecognitionResult `protobuf:"bytes,2,opt,name=recognition_result,json=recognitionResult,proto3" json:"recognition_result,omitempty"` 868 // The result of the conversational query or event processing. 869 QueryResult *QueryResult `protobuf:"bytes,3,opt,name=query_result,json=queryResult,proto3" json:"query_result,omitempty"` 870 // Specifies the status of the webhook request. 871 WebhookStatus *status.Status `protobuf:"bytes,4,opt,name=webhook_status,json=webhookStatus,proto3" json:"webhook_status,omitempty"` 872 XXX_NoUnkeyedLiteral struct{} `json:"-"` 873 XXX_unrecognized []byte `json:"-"` 874 XXX_sizecache int32 `json:"-"` 875} 876 877func (m *StreamingDetectIntentResponse) Reset() { *m = StreamingDetectIntentResponse{} } 878func (m *StreamingDetectIntentResponse) String() string { return proto.CompactTextString(m) } 879func (*StreamingDetectIntentResponse) ProtoMessage() {} 880func (*StreamingDetectIntentResponse) Descriptor() ([]byte, []int) { 881 return fileDescriptor_session_e51df00932adac70, []int{6} 882} 883func (m *StreamingDetectIntentResponse) XXX_Unmarshal(b []byte) error { 884 return xxx_messageInfo_StreamingDetectIntentResponse.Unmarshal(m, b) 885} 886func (m *StreamingDetectIntentResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 887 return xxx_messageInfo_StreamingDetectIntentResponse.Marshal(b, m, deterministic) 888} 889func (dst *StreamingDetectIntentResponse) XXX_Merge(src proto.Message) { 890 xxx_messageInfo_StreamingDetectIntentResponse.Merge(dst, src) 891} 892func (m *StreamingDetectIntentResponse) XXX_Size() int { 893 return xxx_messageInfo_StreamingDetectIntentResponse.Size(m) 894} 895func (m *StreamingDetectIntentResponse) XXX_DiscardUnknown() { 896 xxx_messageInfo_StreamingDetectIntentResponse.DiscardUnknown(m) 897} 898 899var xxx_messageInfo_StreamingDetectIntentResponse proto.InternalMessageInfo 900 901func (m *StreamingDetectIntentResponse) GetResponseId() string { 902 if m != nil { 903 return m.ResponseId 904 } 905 return "" 906} 907 908func (m *StreamingDetectIntentResponse) GetRecognitionResult() *StreamingRecognitionResult { 909 if m != nil { 910 return m.RecognitionResult 911 } 912 return nil 913} 914 915func (m *StreamingDetectIntentResponse) GetQueryResult() *QueryResult { 916 if m != nil { 917 return m.QueryResult 918 } 919 return nil 920} 921 922func (m *StreamingDetectIntentResponse) GetWebhookStatus() *status.Status { 923 if m != nil { 924 return m.WebhookStatus 925 } 926 return nil 927} 928 929// Contains a speech recognition result corresponding to a portion of the audio 930// that is currently being processed or an indication that this is the end 931// of the single requested utterance. 932// 933// Example: 934// 935// 1. transcript: "tube" 936// 937// 2. transcript: "to be a" 938// 939// 3. transcript: "to be" 940// 941// 4. transcript: "to be or not to be" 942// is_final: true 943// 944// 5. transcript: " that's" 945// 946// 6. transcript: " that is" 947// 948// 7. recognition_event_type: `RECOGNITION_EVENT_END_OF_SINGLE_UTTERANCE` 949// 950// 8. transcript: " that is the question" 951// is_final: true 952// 953// Only two of the responses contain final results (#4 and #8 indicated by 954// `is_final: true`). Concatenating these generates the full transcript: "to be 955// or not to be that is the question". 956// 957// In each response we populate: 958// 959// * for `MESSAGE_TYPE_TRANSCRIPT`: `transcript` and possibly `is_final`. 960// 961// * for `MESSAGE_TYPE_END_OF_SINGLE_UTTERANCE`: only `event_type`. 962type StreamingRecognitionResult struct { 963 // Type of the result message. 964 MessageType StreamingRecognitionResult_MessageType `protobuf:"varint,1,opt,name=message_type,json=messageType,proto3,enum=google.cloud.dialogflow.v2.StreamingRecognitionResult_MessageType" json:"message_type,omitempty"` 965 // Transcript text representing the words that the user spoke. 966 // Populated if and only if `event_type` = `RECOGNITION_EVENT_TRANSCRIPT`. 967 Transcript string `protobuf:"bytes,2,opt,name=transcript,proto3" json:"transcript,omitempty"` 968 // The default of 0.0 is a sentinel value indicating `confidence` was not set. 969 // If `false`, the `StreamingRecognitionResult` represents an 970 // interim result that may change. If `true`, the recognizer will not return 971 // any further hypotheses about this piece of the audio. May only be populated 972 // for `event_type` = `RECOGNITION_EVENT_TRANSCRIPT`. 973 IsFinal bool `protobuf:"varint,3,opt,name=is_final,json=isFinal,proto3" json:"is_final,omitempty"` 974 // The Speech confidence between 0.0 and 1.0 for the current portion of audio. 975 // A higher number indicates an estimated greater likelihood that the 976 // recognized words are correct. The default of 0.0 is a sentinel value 977 // indicating that confidence was not set. 978 // 979 // This field is typically only provided if `is_final` is true and you should 980 // not rely on it being accurate or even set. 981 Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"` 982 XXX_NoUnkeyedLiteral struct{} `json:"-"` 983 XXX_unrecognized []byte `json:"-"` 984 XXX_sizecache int32 `json:"-"` 985} 986 987func (m *StreamingRecognitionResult) Reset() { *m = StreamingRecognitionResult{} } 988func (m *StreamingRecognitionResult) String() string { return proto.CompactTextString(m) } 989func (*StreamingRecognitionResult) ProtoMessage() {} 990func (*StreamingRecognitionResult) Descriptor() ([]byte, []int) { 991 return fileDescriptor_session_e51df00932adac70, []int{7} 992} 993func (m *StreamingRecognitionResult) XXX_Unmarshal(b []byte) error { 994 return xxx_messageInfo_StreamingRecognitionResult.Unmarshal(m, b) 995} 996func (m *StreamingRecognitionResult) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 997 return xxx_messageInfo_StreamingRecognitionResult.Marshal(b, m, deterministic) 998} 999func (dst *StreamingRecognitionResult) XXX_Merge(src proto.Message) { 1000 xxx_messageInfo_StreamingRecognitionResult.Merge(dst, src) 1001} 1002func (m *StreamingRecognitionResult) XXX_Size() int { 1003 return xxx_messageInfo_StreamingRecognitionResult.Size(m) 1004} 1005func (m *StreamingRecognitionResult) XXX_DiscardUnknown() { 1006 xxx_messageInfo_StreamingRecognitionResult.DiscardUnknown(m) 1007} 1008 1009var xxx_messageInfo_StreamingRecognitionResult proto.InternalMessageInfo 1010 1011func (m *StreamingRecognitionResult) GetMessageType() StreamingRecognitionResult_MessageType { 1012 if m != nil { 1013 return m.MessageType 1014 } 1015 return StreamingRecognitionResult_MESSAGE_TYPE_UNSPECIFIED 1016} 1017 1018func (m *StreamingRecognitionResult) GetTranscript() string { 1019 if m != nil { 1020 return m.Transcript 1021 } 1022 return "" 1023} 1024 1025func (m *StreamingRecognitionResult) GetIsFinal() bool { 1026 if m != nil { 1027 return m.IsFinal 1028 } 1029 return false 1030} 1031 1032func (m *StreamingRecognitionResult) GetConfidence() float32 { 1033 if m != nil { 1034 return m.Confidence 1035 } 1036 return 0 1037} 1038 1039// Instructs the speech recognizer how to process the audio content. 1040type InputAudioConfig struct { 1041 // Required. Audio encoding of the audio content to process. 1042 AudioEncoding AudioEncoding `protobuf:"varint,1,opt,name=audio_encoding,json=audioEncoding,proto3,enum=google.cloud.dialogflow.v2.AudioEncoding" json:"audio_encoding,omitempty"` 1043 // Required. Sample rate (in Hertz) of the audio content sent in the query. 1044 // Refer to [Cloud Speech API documentation](/speech/docs/basics) for more 1045 // details. 1046 SampleRateHertz int32 `protobuf:"varint,2,opt,name=sample_rate_hertz,json=sampleRateHertz,proto3" json:"sample_rate_hertz,omitempty"` 1047 // Required. The language of the supplied audio. Dialogflow does not do 1048 // translations. See [Language 1049 // Support](https://dialogflow.com/docs/languages) for a list of the 1050 // currently supported language codes. Note that queries in the same session 1051 // do not necessarily need to specify the same language. 1052 LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 1053 // Optional. The collection of phrase hints which are used to boost accuracy 1054 // of speech recognition. 1055 // Refer to [Cloud Speech API documentation](/speech/docs/basics#phrase-hints) 1056 // for more details. 1057 PhraseHints []string `protobuf:"bytes,4,rep,name=phrase_hints,json=phraseHints,proto3" json:"phrase_hints,omitempty"` 1058 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1059 XXX_unrecognized []byte `json:"-"` 1060 XXX_sizecache int32 `json:"-"` 1061} 1062 1063func (m *InputAudioConfig) Reset() { *m = InputAudioConfig{} } 1064func (m *InputAudioConfig) String() string { return proto.CompactTextString(m) } 1065func (*InputAudioConfig) ProtoMessage() {} 1066func (*InputAudioConfig) Descriptor() ([]byte, []int) { 1067 return fileDescriptor_session_e51df00932adac70, []int{8} 1068} 1069func (m *InputAudioConfig) XXX_Unmarshal(b []byte) error { 1070 return xxx_messageInfo_InputAudioConfig.Unmarshal(m, b) 1071} 1072func (m *InputAudioConfig) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1073 return xxx_messageInfo_InputAudioConfig.Marshal(b, m, deterministic) 1074} 1075func (dst *InputAudioConfig) XXX_Merge(src proto.Message) { 1076 xxx_messageInfo_InputAudioConfig.Merge(dst, src) 1077} 1078func (m *InputAudioConfig) XXX_Size() int { 1079 return xxx_messageInfo_InputAudioConfig.Size(m) 1080} 1081func (m *InputAudioConfig) XXX_DiscardUnknown() { 1082 xxx_messageInfo_InputAudioConfig.DiscardUnknown(m) 1083} 1084 1085var xxx_messageInfo_InputAudioConfig proto.InternalMessageInfo 1086 1087func (m *InputAudioConfig) GetAudioEncoding() AudioEncoding { 1088 if m != nil { 1089 return m.AudioEncoding 1090 } 1091 return AudioEncoding_AUDIO_ENCODING_UNSPECIFIED 1092} 1093 1094func (m *InputAudioConfig) GetSampleRateHertz() int32 { 1095 if m != nil { 1096 return m.SampleRateHertz 1097 } 1098 return 0 1099} 1100 1101func (m *InputAudioConfig) GetLanguageCode() string { 1102 if m != nil { 1103 return m.LanguageCode 1104 } 1105 return "" 1106} 1107 1108func (m *InputAudioConfig) GetPhraseHints() []string { 1109 if m != nil { 1110 return m.PhraseHints 1111 } 1112 return nil 1113} 1114 1115// Represents the natural language text to be processed. 1116type TextInput struct { 1117 // Required. The UTF-8 encoded natural language text to be processed. 1118 // Text length must not exceed 256 bytes. 1119 Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"` 1120 // Required. The language of this conversational query. See [Language 1121 // Support](https://dialogflow.com/docs/languages) for a list of the 1122 // currently supported language codes. Note that queries in the same session 1123 // do not necessarily need to specify the same language. 1124 LanguageCode string `protobuf:"bytes,2,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 1125 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1126 XXX_unrecognized []byte `json:"-"` 1127 XXX_sizecache int32 `json:"-"` 1128} 1129 1130func (m *TextInput) Reset() { *m = TextInput{} } 1131func (m *TextInput) String() string { return proto.CompactTextString(m) } 1132func (*TextInput) ProtoMessage() {} 1133func (*TextInput) Descriptor() ([]byte, []int) { 1134 return fileDescriptor_session_e51df00932adac70, []int{9} 1135} 1136func (m *TextInput) XXX_Unmarshal(b []byte) error { 1137 return xxx_messageInfo_TextInput.Unmarshal(m, b) 1138} 1139func (m *TextInput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1140 return xxx_messageInfo_TextInput.Marshal(b, m, deterministic) 1141} 1142func (dst *TextInput) XXX_Merge(src proto.Message) { 1143 xxx_messageInfo_TextInput.Merge(dst, src) 1144} 1145func (m *TextInput) XXX_Size() int { 1146 return xxx_messageInfo_TextInput.Size(m) 1147} 1148func (m *TextInput) XXX_DiscardUnknown() { 1149 xxx_messageInfo_TextInput.DiscardUnknown(m) 1150} 1151 1152var xxx_messageInfo_TextInput proto.InternalMessageInfo 1153 1154func (m *TextInput) GetText() string { 1155 if m != nil { 1156 return m.Text 1157 } 1158 return "" 1159} 1160 1161func (m *TextInput) GetLanguageCode() string { 1162 if m != nil { 1163 return m.LanguageCode 1164 } 1165 return "" 1166} 1167 1168// Events allow for matching intents by event name instead of the natural 1169// language input. For instance, input `<event: { name: “welcome_event”, 1170// parameters: { name: “Sam” } }>` can trigger a personalized welcome response. 1171// The parameter `name` may be used by the agent in the response: 1172// `“Hello #welcome_event.name! What can I do for you today?”`. 1173type EventInput struct { 1174 // Required. The unique identifier of the event. 1175 Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 1176 // Optional. The collection of parameters associated with the event. 1177 Parameters *_struct.Struct `protobuf:"bytes,2,opt,name=parameters,proto3" json:"parameters,omitempty"` 1178 // Required. The language of this query. See [Language 1179 // Support](https://dialogflow.com/docs/languages) for a list of the 1180 // currently supported language codes. Note that queries in the same session 1181 // do not necessarily need to specify the same language. 1182 LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"` 1183 XXX_NoUnkeyedLiteral struct{} `json:"-"` 1184 XXX_unrecognized []byte `json:"-"` 1185 XXX_sizecache int32 `json:"-"` 1186} 1187 1188func (m *EventInput) Reset() { *m = EventInput{} } 1189func (m *EventInput) String() string { return proto.CompactTextString(m) } 1190func (*EventInput) ProtoMessage() {} 1191func (*EventInput) Descriptor() ([]byte, []int) { 1192 return fileDescriptor_session_e51df00932adac70, []int{10} 1193} 1194func (m *EventInput) XXX_Unmarshal(b []byte) error { 1195 return xxx_messageInfo_EventInput.Unmarshal(m, b) 1196} 1197func (m *EventInput) XXX_Marshal(b []byte, deterministic bool) ([]byte, error) { 1198 return xxx_messageInfo_EventInput.Marshal(b, m, deterministic) 1199} 1200func (dst *EventInput) XXX_Merge(src proto.Message) { 1201 xxx_messageInfo_EventInput.Merge(dst, src) 1202} 1203func (m *EventInput) XXX_Size() int { 1204 return xxx_messageInfo_EventInput.Size(m) 1205} 1206func (m *EventInput) XXX_DiscardUnknown() { 1207 xxx_messageInfo_EventInput.DiscardUnknown(m) 1208} 1209 1210var xxx_messageInfo_EventInput proto.InternalMessageInfo 1211 1212func (m *EventInput) GetName() string { 1213 if m != nil { 1214 return m.Name 1215 } 1216 return "" 1217} 1218 1219func (m *EventInput) GetParameters() *_struct.Struct { 1220 if m != nil { 1221 return m.Parameters 1222 } 1223 return nil 1224} 1225 1226func (m *EventInput) GetLanguageCode() string { 1227 if m != nil { 1228 return m.LanguageCode 1229 } 1230 return "" 1231} 1232 1233func init() { 1234 proto.RegisterType((*DetectIntentRequest)(nil), "google.cloud.dialogflow.v2.DetectIntentRequest") 1235 proto.RegisterType((*DetectIntentResponse)(nil), "google.cloud.dialogflow.v2.DetectIntentResponse") 1236 proto.RegisterType((*QueryParameters)(nil), "google.cloud.dialogflow.v2.QueryParameters") 1237 proto.RegisterType((*QueryInput)(nil), "google.cloud.dialogflow.v2.QueryInput") 1238 proto.RegisterType((*QueryResult)(nil), "google.cloud.dialogflow.v2.QueryResult") 1239 proto.RegisterType((*StreamingDetectIntentRequest)(nil), "google.cloud.dialogflow.v2.StreamingDetectIntentRequest") 1240 proto.RegisterType((*StreamingDetectIntentResponse)(nil), "google.cloud.dialogflow.v2.StreamingDetectIntentResponse") 1241 proto.RegisterType((*StreamingRecognitionResult)(nil), "google.cloud.dialogflow.v2.StreamingRecognitionResult") 1242 proto.RegisterType((*InputAudioConfig)(nil), "google.cloud.dialogflow.v2.InputAudioConfig") 1243 proto.RegisterType((*TextInput)(nil), "google.cloud.dialogflow.v2.TextInput") 1244 proto.RegisterType((*EventInput)(nil), "google.cloud.dialogflow.v2.EventInput") 1245 proto.RegisterEnum("google.cloud.dialogflow.v2.AudioEncoding", AudioEncoding_name, AudioEncoding_value) 1246 proto.RegisterEnum("google.cloud.dialogflow.v2.StreamingRecognitionResult_MessageType", StreamingRecognitionResult_MessageType_name, StreamingRecognitionResult_MessageType_value) 1247} 1248 1249// Reference imports to suppress errors if they are not otherwise used. 1250var _ context.Context 1251var _ grpc.ClientConn 1252 1253// This is a compile-time assertion to ensure that this generated file 1254// is compatible with the grpc package it is being compiled against. 1255const _ = grpc.SupportPackageIsVersion4 1256 1257// SessionsClient is the client API for Sessions service. 1258// 1259// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. 1260type SessionsClient interface { 1261 // Processes a natural language query and returns structured, actionable data 1262 // as a result. This method is not idempotent, because it may cause contexts 1263 // and session entity types to be updated, which in turn might affect 1264 // results of future queries. 1265 DetectIntent(ctx context.Context, in *DetectIntentRequest, opts ...grpc.CallOption) (*DetectIntentResponse, error) 1266 // Processes a natural language query in audio format in a streaming fashion 1267 // and returns structured, actionable data as a result. This method is only 1268 // available via the gRPC API (not REST). 1269 StreamingDetectIntent(ctx context.Context, opts ...grpc.CallOption) (Sessions_StreamingDetectIntentClient, error) 1270} 1271 1272type sessionsClient struct { 1273 cc *grpc.ClientConn 1274} 1275 1276func NewSessionsClient(cc *grpc.ClientConn) SessionsClient { 1277 return &sessionsClient{cc} 1278} 1279 1280func (c *sessionsClient) DetectIntent(ctx context.Context, in *DetectIntentRequest, opts ...grpc.CallOption) (*DetectIntentResponse, error) { 1281 out := new(DetectIntentResponse) 1282 err := c.cc.Invoke(ctx, "/google.cloud.dialogflow.v2.Sessions/DetectIntent", in, out, opts...) 1283 if err != nil { 1284 return nil, err 1285 } 1286 return out, nil 1287} 1288 1289func (c *sessionsClient) StreamingDetectIntent(ctx context.Context, opts ...grpc.CallOption) (Sessions_StreamingDetectIntentClient, error) { 1290 stream, err := c.cc.NewStream(ctx, &_Sessions_serviceDesc.Streams[0], "/google.cloud.dialogflow.v2.Sessions/StreamingDetectIntent", opts...) 1291 if err != nil { 1292 return nil, err 1293 } 1294 x := &sessionsStreamingDetectIntentClient{stream} 1295 return x, nil 1296} 1297 1298type Sessions_StreamingDetectIntentClient interface { 1299 Send(*StreamingDetectIntentRequest) error 1300 Recv() (*StreamingDetectIntentResponse, error) 1301 grpc.ClientStream 1302} 1303 1304type sessionsStreamingDetectIntentClient struct { 1305 grpc.ClientStream 1306} 1307 1308func (x *sessionsStreamingDetectIntentClient) Send(m *StreamingDetectIntentRequest) error { 1309 return x.ClientStream.SendMsg(m) 1310} 1311 1312func (x *sessionsStreamingDetectIntentClient) Recv() (*StreamingDetectIntentResponse, error) { 1313 m := new(StreamingDetectIntentResponse) 1314 if err := x.ClientStream.RecvMsg(m); err != nil { 1315 return nil, err 1316 } 1317 return m, nil 1318} 1319 1320// SessionsServer is the server API for Sessions service. 1321type SessionsServer interface { 1322 // Processes a natural language query and returns structured, actionable data 1323 // as a result. This method is not idempotent, because it may cause contexts 1324 // and session entity types to be updated, which in turn might affect 1325 // results of future queries. 1326 DetectIntent(context.Context, *DetectIntentRequest) (*DetectIntentResponse, error) 1327 // Processes a natural language query in audio format in a streaming fashion 1328 // and returns structured, actionable data as a result. This method is only 1329 // available via the gRPC API (not REST). 1330 StreamingDetectIntent(Sessions_StreamingDetectIntentServer) error 1331} 1332 1333func RegisterSessionsServer(s *grpc.Server, srv SessionsServer) { 1334 s.RegisterService(&_Sessions_serviceDesc, srv) 1335} 1336 1337func _Sessions_DetectIntent_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { 1338 in := new(DetectIntentRequest) 1339 if err := dec(in); err != nil { 1340 return nil, err 1341 } 1342 if interceptor == nil { 1343 return srv.(SessionsServer).DetectIntent(ctx, in) 1344 } 1345 info := &grpc.UnaryServerInfo{ 1346 Server: srv, 1347 FullMethod: "/google.cloud.dialogflow.v2.Sessions/DetectIntent", 1348 } 1349 handler := func(ctx context.Context, req interface{}) (interface{}, error) { 1350 return srv.(SessionsServer).DetectIntent(ctx, req.(*DetectIntentRequest)) 1351 } 1352 return interceptor(ctx, in, info, handler) 1353} 1354 1355func _Sessions_StreamingDetectIntent_Handler(srv interface{}, stream grpc.ServerStream) error { 1356 return srv.(SessionsServer).StreamingDetectIntent(&sessionsStreamingDetectIntentServer{stream}) 1357} 1358 1359type Sessions_StreamingDetectIntentServer interface { 1360 Send(*StreamingDetectIntentResponse) error 1361 Recv() (*StreamingDetectIntentRequest, error) 1362 grpc.ServerStream 1363} 1364 1365type sessionsStreamingDetectIntentServer struct { 1366 grpc.ServerStream 1367} 1368 1369func (x *sessionsStreamingDetectIntentServer) Send(m *StreamingDetectIntentResponse) error { 1370 return x.ServerStream.SendMsg(m) 1371} 1372 1373func (x *sessionsStreamingDetectIntentServer) Recv() (*StreamingDetectIntentRequest, error) { 1374 m := new(StreamingDetectIntentRequest) 1375 if err := x.ServerStream.RecvMsg(m); err != nil { 1376 return nil, err 1377 } 1378 return m, nil 1379} 1380 1381var _Sessions_serviceDesc = grpc.ServiceDesc{ 1382 ServiceName: "google.cloud.dialogflow.v2.Sessions", 1383 HandlerType: (*SessionsServer)(nil), 1384 Methods: []grpc.MethodDesc{ 1385 { 1386 MethodName: "DetectIntent", 1387 Handler: _Sessions_DetectIntent_Handler, 1388 }, 1389 }, 1390 Streams: []grpc.StreamDesc{ 1391 { 1392 StreamName: "StreamingDetectIntent", 1393 Handler: _Sessions_StreamingDetectIntent_Handler, 1394 ServerStreams: true, 1395 ClientStreams: true, 1396 }, 1397 }, 1398 Metadata: "google/cloud/dialogflow/v2/session.proto", 1399} 1400 1401func init() { 1402 proto.RegisterFile("google/cloud/dialogflow/v2/session.proto", fileDescriptor_session_e51df00932adac70) 1403} 1404 1405var fileDescriptor_session_e51df00932adac70 = []byte{ 1406 // 1575 bytes of a gzipped FileDescriptorProto 1407 0x1f, 0x8b, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xdc, 0x57, 0x4f, 0x73, 0x1b, 0x49, 1408 0x15, 0xcf, 0xc8, 0xff, 0xe4, 0x27, 0xd9, 0xd2, 0x76, 0xb2, 0x9b, 0x89, 0x9d, 0x84, 0xa0, 0xad, 1409 0xb0, 0x8a, 0x01, 0x69, 0x57, 0x50, 0x81, 0x4d, 0x6a, 0x97, 0x95, 0xa5, 0xb1, 0x2d, 0x4a, 0x96, 1410 0xb5, 0x2d, 0x99, 0xec, 0x6e, 0x15, 0xd5, 0xd5, 0x19, 0xb5, 0xc6, 0x03, 0xa3, 0xee, 0xf1, 0x74, 1411 0x2b, 0xbb, 0x5e, 0x0a, 0x0e, 0x7c, 0x02, 0xaa, 0x38, 0x52, 0x5c, 0x28, 0x4e, 0x1c, 0x38, 0x71, 1412 0xe0, 0xc4, 0x97, 0x80, 0x03, 0x67, 0x0a, 0x0e, 0x7c, 0x03, 0xaa, 0xb8, 0x50, 0xd3, 0x3d, 0x23, 1413 0x29, 0xb2, 0x23, 0xab, 0x52, 0x9c, 0xf6, 0x36, 0xfd, 0xfa, 0xf7, 0x5e, 0xbf, 0xf7, 0xe6, 0xd7, 1414 0xef, 0x37, 0x03, 0x65, 0x4f, 0x08, 0x2f, 0x60, 0x55, 0x37, 0x10, 0xe3, 0x41, 0x75, 0xe0, 0xd3, 1415 0x40, 0x78, 0xc3, 0x40, 0x7c, 0x5e, 0x7d, 0x51, 0xab, 0x4a, 0x26, 0xa5, 0x2f, 0x78, 0x25, 0x8c, 1416 0x84, 0x12, 0x68, 0xc7, 0x20, 0x2b, 0x1a, 0x59, 0x99, 0x22, 0x2b, 0x2f, 0x6a, 0x3b, 0x77, 0x93, 1417 0x28, 0x34, 0xf4, 0xab, 0x94, 0x73, 0xa1, 0xa8, 0xf2, 0x05, 0x97, 0xc6, 0x73, 0x67, 0xd1, 0x19, 1418 0xae, 0xe0, 0x8a, 0x7d, 0xa1, 0x12, 0xe4, 0x3b, 0x0b, 0x90, 0x3e, 0x57, 0x8c, 0xa7, 0xc0, 0xef, 1419 0x5e, 0x9f, 0x36, 0x61, 0x5c, 0xf9, 0xea, 0x82, 0xa8, 0x8b, 0x90, 0x25, 0x5e, 0x69, 0x9a, 0x7a, 1420 0xf5, 0x7c, 0x3c, 0xac, 0x4a, 0x15, 0x8d, 0xdd, 0x34, 0xe6, 0xed, 0x64, 0x37, 0x0a, 0xdd, 0xaa, 1421 0x54, 0x54, 0x8d, 0xd3, 0xfc, 0xed, 0x64, 0x23, 0x8e, 0x54, 0x0d, 0xa8, 0x0a, 0xb8, 0x67, 0x76, 1422 0x4a, 0xff, 0xb6, 0xe0, 0x66, 0x93, 0x29, 0xe6, 0xaa, 0x96, 0xce, 0x0e, 0xb3, 0xf3, 0x31, 0x93, 1423 0x0a, 0xd9, 0xb0, 0x91, 0x64, 0x61, 0x5b, 0x0f, 0xac, 0xf2, 0x26, 0x4e, 0x97, 0xa8, 0x03, 0xf9, 1424 0xf3, 0x31, 0x8b, 0x2e, 0x48, 0x48, 0x23, 0x3a, 0x92, 0x76, 0xe6, 0x81, 0x55, 0xce, 0xd5, 0xbe, 1425 0x59, 0x79, 0x75, 0x73, 0x2b, 0x1f, 0xc7, 0xf8, 0x6e, 0x0c, 0x67, 0x8a, 0x45, 0x12, 0xe7, 0xce, 1426 0x27, 0x06, 0x89, 0x0e, 0xc1, 0x2c, 0x89, 0xcf, 0xc3, 0xb1, 0xb2, 0x57, 0x74, 0xb8, 0x6f, 0x5c, 1427 0x1b, 0xae, 0x15, 0xa3, 0x31, 0x9c, 0x4f, 0x9e, 0xd1, 0xd7, 0x20, 0xa7, 0x43, 0x10, 0x3a, 0x1e, 1428 0xf8, 0xc2, 0x5e, 0x7b, 0x60, 0x95, 0xf3, 0x18, 0xb4, 0xa9, 0x1e, 0x5b, 0x4a, 0x7f, 0xb1, 0xe0, 1429 0xd6, 0xcb, 0xb5, 0xca, 0x50, 0x70, 0xc9, 0x62, 0xcf, 0x28, 0x79, 0x26, 0xfe, 0x20, 0x29, 0x18, 1430 0x52, 0x53, 0x6b, 0x80, 0x7e, 0x98, 0xd6, 0x1c, 0x31, 0x39, 0x0e, 0x54, 0x52, 0xf3, 0x3b, 0xd7, 1431 0x26, 0x89, 0x35, 0x3c, 0xa9, 0xd7, 0x2c, 0xd0, 0xfb, 0xb0, 0xfd, 0x39, 0x7b, 0x7e, 0x26, 0xc4, 1432 0x4f, 0x89, 0x79, 0x47, 0x49, 0xc9, 0x28, 0x8d, 0x16, 0x85, 0x6e, 0xa5, 0xa7, 0x77, 0xf0, 0x56, 1433 0x82, 0x34, 0xcb, 0xd2, 0x3f, 0x32, 0x50, 0x98, 0xeb, 0x25, 0xda, 0x85, 0x4d, 0xe5, 0x8f, 0x18, 1434 0xf9, 0x52, 0x70, 0x96, 0x64, 0x9e, 0x8d, 0x0d, 0x9f, 0x09, 0xce, 0xd0, 0x63, 0xc8, 0x7b, 0x4c, 1435 0x90, 0x40, 0xb8, 0x9a, 0xce, 0x49, 0xde, 0x37, 0xd3, 0x93, 0x34, 0xb1, 0xda, 0x54, 0xb5, 0xb9, 1436 0x87, 0x73, 0x1e, 0x13, 0xed, 0x04, 0x87, 0x7e, 0x00, 0xd9, 0x84, 0xd6, 0x71, 0x76, 0x2b, 0xe5, 1437 0x5c, 0xed, 0xed, 0x45, 0xb5, 0x36, 0x0c, 0x16, 0x4f, 0x9c, 0xd0, 0x43, 0xd8, 0x8e, 0x98, 0x64, 1438 0x8a, 0x4c, 0xc2, 0xac, 0x3e, 0xb0, 0xca, 0x59, 0xbc, 0xa5, 0xad, 0x8d, 0x14, 0x46, 0xe0, 0xd6, 1439 0x15, 0x5c, 0x97, 0xf6, 0x9a, 0x3e, 0xf3, 0xdb, 0x8b, 0xce, 0xec, 0x19, 0x3f, 0x47, 0xbb, 0xf5, 1440 0x2f, 0x42, 0x86, 0x91, 0x9c, 0x37, 0x49, 0xf4, 0x1e, 0x6c, 0x84, 0xf4, 0x22, 0x10, 0x74, 0x60, 1441 0xaf, 0xeb, 0xda, 0x6f, 0xa7, 0x31, 0xd3, 0x1b, 0x54, 0xe9, 0xe9, 0x1b, 0x84, 0x53, 0x5c, 0xe9, 1442 0x5f, 0x16, 0xc0, 0x94, 0x61, 0xe8, 0x63, 0xc8, 0x6b, 0x3e, 0xc5, 0x95, 0x0c, 0x7d, 0x4f, 0xb7, 1443 0x38, 0x57, 0xfb, 0xd6, 0xa2, 0xd4, 0x5a, 0x13, 0xca, 0x35, 0xb4, 0xcf, 0xd1, 0x0d, 0x9c, 0xa3, 1444 0xd3, 0x25, 0x7a, 0x0a, 0xab, 0x71, 0xf9, 0xc9, 0xdb, 0x78, 0xb8, 0x28, 0x54, 0x9f, 0x7d, 0xa1, 1445 0x74, 0xb8, 0xa3, 0x1b, 0x58, 0x3b, 0xa1, 0x0f, 0x61, 0x8d, 0xbd, 0x60, 0x7c, 0xa9, 0x8b, 0xe2, 1446 0xc4, 0xc0, 0xd4, 0xdd, 0xb8, 0xed, 0x6f, 0xc0, 0x9a, 0xbe, 0x12, 0xa5, 0xdf, 0xaf, 0x43, 0x6e, 1447 0x86, 0xa4, 0xe8, 0x1e, 0x98, 0xcb, 0x44, 0x74, 0x6e, 0x86, 0x49, 0x9b, 0xda, 0x12, 0x27, 0x81, 1448 0xde, 0x86, 0xad, 0x80, 0x72, 0x6f, 0x4c, 0x3d, 0x46, 0x5c, 0x31, 0x60, 0x76, 0x41, 0x23, 0xf2, 1449 0xa9, 0xb1, 0x21, 0x06, 0x0c, 0xed, 0xc3, 0x3d, 0x19, 0x32, 0xe6, 0x9e, 0x91, 0x88, 0xb9, 0xc2, 1450 0xe3, 0x7e, 0xcc, 0x26, 0xd3, 0xb9, 0x01, 0xe3, 0x2e, 0xd3, 0x25, 0x67, 0xf0, 0xae, 0x01, 0xe1, 1451 0x29, 0xa6, 0x31, 0x81, 0xa0, 0xb7, 0x60, 0x9d, 0xba, 0x9a, 0xad, 0x2b, 0xfa, 0x84, 0x64, 0x85, 1452 0xbe, 0x07, 0x10, 0x4e, 0x68, 0xaf, 0xe9, 0xb4, 0xe0, 0x6d, 0xce, 0x40, 0xd1, 0x07, 0xb0, 0x4b, 1453 0x83, 0x80, 0x44, 0xec, 0x7c, 0xec, 0x47, 0x6c, 0x90, 0xcc, 0x2d, 0x12, 0xc6, 0x54, 0xe4, 0x4a, 1454 0xcf, 0x89, 0x2c, 0xb6, 0x69, 0x10, 0xe0, 0x04, 0x61, 0x06, 0x53, 0xd7, 0xec, 0xa3, 0x47, 0x50, 1455 0x1c, 0x8e, 0x83, 0xa1, 0x1f, 0x04, 0x23, 0xc6, 0x95, 0xe9, 0xce, 0xba, 0xce, 0xac, 0x30, 0x63, 1456 0xd7, 0x3d, 0xfa, 0x31, 0xdc, 0x9a, 0x85, 0x8e, 0x98, 0x94, 0xd4, 0x63, 0xd2, 0xde, 0xd0, 0x74, 1457 0xde, 0x5b, 0xcc, 0x19, 0xad, 0x0d, 0xc7, 0xc6, 0x05, 0xdf, 0x9c, 0x89, 0x93, 0xd8, 0xf4, 0xa5, 1458 0x9a, 0x4c, 0x0e, 0x31, 0x8e, 0x5c, 0x66, 0x67, 0x75, 0x1e, 0x93, 0x29, 0xa1, 0x8d, 0xe8, 0x23, 1459 0x28, 0xa4, 0xb0, 0x94, 0xfb, 0x9b, 0x8b, 0xbb, 0x95, 0x86, 0xed, 0x1a, 0x38, 0x6a, 0x43, 0x41, 1460 0x8c, 0x55, 0x3c, 0x4a, 0x27, 0xd7, 0x17, 0x96, 0x9f, 0x02, 0xdb, 0xc6, 0x77, 0x72, 0xc9, 0x9f, 1461 0xc0, 0xba, 0x51, 0x3e, 0x3b, 0xa7, 0xd3, 0x28, 0x5d, 0xdf, 0x07, 0x9c, 0x78, 0xa0, 0x0f, 0x61, 1462 0xd7, 0x3c, 0x91, 0x81, 0x1e, 0xdc, 0x73, 0x74, 0xca, 0x6b, 0x3a, 0xdd, 0x31, 0x90, 0x66, 0x8a, 1463 0x98, 0x21, 0xd3, 0x47, 0x50, 0x18, 0xf8, 0xd4, 0xe3, 0x42, 0x2a, 0xdf, 0x25, 0x3e, 0x1f, 0x0a, 1464 0x7b, 0xfb, 0x9a, 0x5e, 0x4c, 0xf1, 0x2d, 0x3e, 0x14, 0xa5, 0xdf, 0x66, 0xe0, 0x6e, 0x4f, 0x45, 1465 0x8c, 0x8e, 0x7c, 0xee, 0x7d, 0x45, 0x94, 0xf2, 0x11, 0x14, 0xa5, 0xcf, 0xbd, 0x80, 0x91, 0xb1, 1466 0x52, 0x2c, 0xa2, 0x71, 0x2b, 0xcd, 0x7c, 0x2e, 0x18, 0xfb, 0x69, 0x6a, 0x9e, 0x17, 0xd5, 0xf5, 1467 0x4b, 0xa2, 0xfa, 0xc7, 0x0c, 0xdc, 0x7b, 0x45, 0x7f, 0x96, 0x55, 0x57, 0x06, 0x68, 0x76, 0x5c, 1468 0xbc, 0xa4, 0xb1, 0x8f, 0x17, 0x6a, 0x40, 0x7a, 0xee, 0xcc, 0x24, 0x49, 0x24, 0xf7, 0x8d, 0x68, 1469 0xde, 0x74, 0x49, 0xc4, 0x57, 0xfe, 0xaf, 0x22, 0xbe, 0xba, 0xac, 0x88, 0xff, 0x39, 0x03, 0x3b, 1470 0xaf, 0x4e, 0x1c, 0x31, 0xc8, 0x27, 0x73, 0x43, 0x6b, 0xa1, 0x6e, 0xd7, 0x76, 0x6d, 0xff, 0xf5, 1471 0xda, 0x90, 0xce, 0x13, 0xad, 0x8f, 0xb9, 0xd1, 0x74, 0x81, 0xee, 0x03, 0xa8, 0x88, 0x72, 0xe9, 1472 0x46, 0x7e, 0x68, 0x7a, 0xbd, 0x89, 0x67, 0x2c, 0xe8, 0x0e, 0x64, 0x7d, 0x49, 0x86, 0x3e, 0xa7, 1473 0x81, 0x6e, 0x54, 0x16, 0x6f, 0xf8, 0xf2, 0x20, 0x5e, 0xc6, 0xae, 0x33, 0x57, 0x70, 0x55, 0x5f, 1474 0xc1, 0x19, 0x4b, 0xe9, 0x13, 0xc8, 0xcd, 0x1c, 0x8b, 0xee, 0x82, 0x7d, 0xec, 0xf4, 0x7a, 0xf5, 1475 0x43, 0x87, 0xf4, 0x3f, 0xed, 0x3a, 0xe4, 0xb4, 0xd3, 0xeb, 0x3a, 0x8d, 0xd6, 0x41, 0xcb, 0x69, 1476 0x16, 0x6f, 0xa0, 0x6d, 0x80, 0x3e, 0xae, 0x77, 0x7a, 0x0d, 0xdc, 0xea, 0xf6, 0x8b, 0x16, 0xda, 1477 0x85, 0xdb, 0x4e, 0xa7, 0x49, 0x4e, 0x0e, 0x48, 0xaf, 0xd5, 0x39, 0x6c, 0x3b, 0xe4, 0xb4, 0xdf, 1478 0x77, 0x70, 0xbd, 0xd3, 0x70, 0x8a, 0x99, 0xd2, 0xdf, 0x2d, 0x28, 0xce, 0x8b, 0x2b, 0xea, 0xc2, 1479 0xb6, 0x11, 0x68, 0xc6, 0x5d, 0x31, 0xf0, 0xb9, 0x97, 0xb4, 0xec, 0xd1, 0xa2, 0x96, 0xe9, 0x00, 1480 0x4e, 0xe2, 0x80, 0xb7, 0xe8, 0xec, 0x12, 0xed, 0xc1, 0x1b, 0x92, 0x8e, 0xc2, 0x80, 0x91, 0x88, 1481 0x2a, 0x46, 0xce, 0x58, 0xa4, 0xbe, 0xd4, 0x2d, 0x5a, 0xc3, 0x05, 0xb3, 0x81, 0xa9, 0x62, 0x47, 1482 0xb1, 0xf9, 0xb2, 0x2c, 0xae, 0x5c, 0x21, 0x8b, 0x5f, 0x87, 0x7c, 0x78, 0x16, 0x51, 0xc9, 0xc8, 1483 0x99, 0xcf, 0xf5, 0xb7, 0xd0, 0x4a, 0x79, 0x13, 0xe7, 0x8c, 0xed, 0x28, 0x36, 0x95, 0x9a, 0xb0, 1484 0x39, 0xd1, 0x7a, 0x84, 0x92, 0x0f, 0x04, 0x73, 0x55, 0x8c, 0xee, 0x5f, 0x3a, 0x28, 0x73, 0xf9, 1485 0xa0, 0xd2, 0x2f, 0x00, 0xa6, 0x9a, 0x1f, 0x87, 0xe1, 0x74, 0x94, 0x7e, 0x15, 0xea, 0xe7, 0x39, 1486 0x15, 0xcd, 0x2c, 0xaf, 0xa2, 0xcb, 0x14, 0xba, 0xf7, 0x5f, 0x0b, 0xb6, 0x5e, 0x6a, 0x2d, 0xba, 1487 0x0f, 0x3b, 0xf5, 0xd3, 0x66, 0xeb, 0x84, 0x38, 0x9d, 0xc6, 0x49, 0xb3, 0xd5, 0x39, 0x9c, 0x7b, 1488 0xff, 0x77, 0xc1, 0x9e, 0xdb, 0x6f, 0xb7, 0x3a, 0x4e, 0x1d, 0x93, 0xf7, 0x1e, 0x17, 0x2d, 0x74, 1489 0x1b, 0x6e, 0xce, 0xed, 0x1e, 0xb4, 0xeb, 0x8d, 0x62, 0x06, 0xd9, 0x70, 0x6b, 0x6e, 0xe3, 0xf8, 1490 0xb4, 0x5d, 0x7f, 0x56, 0x5c, 0x41, 0x6f, 0x01, 0x9a, 0xdb, 0xa9, 0x1f, 0xe3, 0xe2, 0x2a, 0xba, 1491 0x03, 0x6f, 0x5e, 0xb6, 0x93, 0x67, 0xfb, 0xc5, 0xb5, 0x98, 0x73, 0x73, 0x5b, 0x27, 0x87, 0x87, 1492 0xe4, 0xa4, 0x7b, 0xda, 0x2b, 0xae, 0xa3, 0x47, 0xf0, 0x70, 0x6e, 0xb3, 0xd7, 0x75, 0x9c, 0x4f, 1493 0xc8, 0xb3, 0x56, 0xff, 0x88, 0x1c, 0x39, 0xf5, 0xa6, 0x83, 0xc9, 0xfe, 0xa7, 0x7d, 0xa7, 0xb8, 1494 0x51, 0xfb, 0x5b, 0x06, 0xb2, 0xc9, 0x67, 0xa9, 0x44, 0x7f, 0xb2, 0x20, 0x3f, 0x3b, 0x0e, 0x51, 1495 0x75, 0x11, 0x1f, 0xaf, 0x10, 0x96, 0x9d, 0x77, 0x97, 0x77, 0x30, 0xa3, 0xb4, 0x54, 0xff, 0xe5, 1496 0x5f, 0xff, 0xf9, 0xeb, 0xcc, 0xd3, 0xd2, 0xe3, 0xf8, 0x27, 0xf2, 0x67, 0x89, 0x0c, 0x7d, 0x10, 1497 0x46, 0xe2, 0x27, 0xcc, 0x55, 0xb2, 0xba, 0x57, 0xa5, 0x1e, 0xe3, 0x2a, 0xfd, 0xbd, 0x94, 0xd5, 1498 0xbd, 0x9f, 0x3f, 0x19, 0xcc, 0xc4, 0x79, 0x62, 0xed, 0xa1, 0x5f, 0x59, 0xf0, 0xe6, 0x95, 0xe3, 1499 0x1c, 0x7d, 0x7f, 0xa9, 0x11, 0x74, 0x55, 0x21, 0xef, 0xbf, 0x86, 0xa7, 0xa9, 0xa8, 0x6c, 0xbd, 1500 0x6b, 0xed, 0xff, 0xc6, 0x82, 0xfb, 0xae, 0x18, 0x2d, 0x08, 0xb2, 0x9f, 0x4f, 0xda, 0xde, 0x8d, 1501 0x09, 0xdc, 0xb5, 0x3e, 0x6b, 0x26, 0x58, 0x4f, 0xc4, 0xf4, 0xac, 0x88, 0xc8, 0xab, 0x7a, 0x8c, 1502 0x6b, 0x7a, 0x57, 0xcd, 0x16, 0x0d, 0x7d, 0x79, 0xd5, 0xbf, 0xf7, 0xd3, 0xe9, 0xea, 0x3f, 0x96, 1503 0xf5, 0xbb, 0x4c, 0xa6, 0x79, 0xf0, 0x87, 0xcc, 0xce, 0xa1, 0x09, 0xd7, 0xd0, 0x47, 0x37, 0xa7, 1504 0x47, 0xff, 0xa8, 0xf6, 0x7c, 0x5d, 0x47, 0xfd, 0xce, 0xff, 0x02, 0x00, 0x00, 0xff, 0xff, 0xe8, 1505 0xf3, 0x64, 0x26, 0x87, 0x10, 0x00, 0x00, 1506} 1507