google-cloud-dialogflow-v2 0.27.0 → 0.28.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -707,6 +707,93 @@ module Google
707
707
  raise ::Google::Cloud::Error.from_error(e)
708
708
  end
709
709
 
710
+ ##
711
+ # Get answers for the given query based on knowledge documents.
712
+ #
713
+ # @overload search_knowledge(request, options = nil)
714
+ # Pass arguments to `search_knowledge` via a request object, either of type
715
+ # {::Google::Cloud::Dialogflow::V2::SearchKnowledgeRequest} or an equivalent Hash.
716
+ #
717
+ # @param request [::Google::Cloud::Dialogflow::V2::SearchKnowledgeRequest, ::Hash]
718
+ # A request object representing the call parameters. Required. To specify no
719
+ # parameters, or to keep all the default parameter values, pass an empty Hash.
720
+ # @param options [::Gapic::CallOptions, ::Hash]
721
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
722
+ #
723
+ # @overload search_knowledge(parent: nil, query: nil, conversation_profile: nil, session_id: nil, conversation: nil, latest_message: nil)
724
+ # Pass arguments to `search_knowledge` via keyword arguments. Note that at
725
+ # least one keyword argument is required. To specify no parameters, or to keep all
726
+ # the default parameter values, pass an empty Hash as a request object (see above).
727
+ #
728
+ # @param parent [::String]
729
+ # The parent resource contains the conversation profile
730
+ # Format: 'projects/<Project ID>' or `projects/<Project
731
+ # ID>/locations/<Location ID>`.
732
+ # @param query [::Google::Cloud::Dialogflow::V2::TextInput, ::Hash]
733
+ # Required. The natural language text query for knowledge search.
734
+ # @param conversation_profile [::String]
735
+ # Required. The conversation profile used to configure the search.
736
+ # Format: `projects/<Project ID>/locations/<Location
737
+ # ID>/conversationProfiles/<Conversation Profile ID>`.
738
+ # @param session_id [::String]
739
+ # The ID of the search session.
740
+ # The session_id can be combined with Dialogflow V3 Agent ID retrieved from
741
+ # conversation profile or on its own to identify a search session. The search
742
+ # history of the same session will impact the search result. It's up to the
743
+ # API caller to choose an appropriate `Session ID`. It can be a random number
744
+ # or some type of session identifiers (preferably hashed). The length must
745
+ # not exceed 36 characters.
746
+ # @param conversation [::String]
747
+ # The conversation (between human agent and end user) where the search
748
+ # request is triggered. Format: `projects/<Project ID>/locations/<Location
749
+ # ID>/conversations/<Conversation ID>`.
750
+ # @param latest_message [::String]
751
+ # The name of the latest conversation message when the request is
752
+ # triggered.
753
+ # Format: `projects/<Project ID>/locations/<Location
754
+ # ID>/conversations/<Conversation ID>/messages/<Message ID>`.
755
+ # @yield [result, operation] Access the result along with the TransportOperation object
756
+ # @yieldparam result [::Google::Cloud::Dialogflow::V2::SearchKnowledgeResponse]
757
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
758
+ #
759
+ # @return [::Google::Cloud::Dialogflow::V2::SearchKnowledgeResponse]
760
+ #
761
+ # @raise [::Google::Cloud::Error] if the REST call is aborted.
762
+ def search_knowledge request, options = nil
763
+ raise ::ArgumentError, "request must be provided" if request.nil?
764
+
765
+ request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::Dialogflow::V2::SearchKnowledgeRequest
766
+
767
+ # Converts hash and nil to an options object
768
+ options = ::Gapic::CallOptions.new(**options.to_h) if options.respond_to? :to_h
769
+
770
+ # Customize the options with defaults
771
+ call_metadata = @config.rpcs.search_knowledge.metadata.to_h
772
+
773
+ # Set x-goog-api-client and x-goog-user-project headers
774
+ call_metadata[:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \
775
+ lib_name: @config.lib_name, lib_version: @config.lib_version,
776
+ gapic_version: ::Google::Cloud::Dialogflow::V2::VERSION,
777
+ transports_version_send: [:rest]
778
+
779
+ call_metadata[:"x-goog-user-project"] = @quota_project_id if @quota_project_id
780
+
781
+ options.apply_defaults timeout: @config.rpcs.search_knowledge.timeout,
782
+ metadata: call_metadata,
783
+ retry_policy: @config.rpcs.search_knowledge.retry_policy
784
+
785
+ options.apply_defaults timeout: @config.timeout,
786
+ metadata: @config.metadata,
787
+ retry_policy: @config.retry_policy
788
+
789
+ @conversations_stub.search_knowledge request, options do |result, operation|
790
+ yield result, operation if block_given?
791
+ return result
792
+ end
793
+ rescue ::Gapic::Rest::Error => e
794
+ raise ::Google::Cloud::Error.from_error(e)
795
+ end
796
+
710
797
  ##
711
798
  # Configuration class for the Conversations REST API.
712
799
  #
@@ -874,6 +961,11 @@ module Google
874
961
  # @return [::Gapic::Config::Method]
875
962
  #
876
963
  attr_reader :generate_stateless_summary
964
+ ##
965
+ # RPC-specific configuration for `search_knowledge`
966
+ # @return [::Gapic::Config::Method]
967
+ #
968
+ attr_reader :search_knowledge
877
969
 
878
970
  # @private
879
971
  def initialize parent_rpcs = nil
@@ -891,6 +983,8 @@ module Google
891
983
  @suggest_conversation_summary = ::Gapic::Config::Method.new suggest_conversation_summary_config
892
984
  generate_stateless_summary_config = parent_rpcs.generate_stateless_summary if parent_rpcs.respond_to? :generate_stateless_summary
893
985
  @generate_stateless_summary = ::Gapic::Config::Method.new generate_stateless_summary_config
986
+ search_knowledge_config = parent_rpcs.search_knowledge if parent_rpcs.respond_to? :search_knowledge
987
+ @search_knowledge = ::Gapic::Config::Method.new search_knowledge_config
894
988
 
895
989
  yield self if block_given?
896
990
  end
@@ -306,6 +306,44 @@ module Google
306
306
  result
307
307
  end
308
308
 
309
+ ##
310
+ # Baseline implementation for the search_knowledge REST call
311
+ #
312
+ # @param request_pb [::Google::Cloud::Dialogflow::V2::SearchKnowledgeRequest]
313
+ # A request object representing the call parameters. Required.
314
+ # @param options [::Gapic::CallOptions]
315
+ # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
316
+ #
317
+ # @yield [result, operation] Access the result along with the TransportOperation object
318
+ # @yieldparam result [::Google::Cloud::Dialogflow::V2::SearchKnowledgeResponse]
319
+ # @yieldparam operation [::Gapic::Rest::TransportOperation]
320
+ #
321
+ # @return [::Google::Cloud::Dialogflow::V2::SearchKnowledgeResponse]
322
+ # A result object deserialized from the server's reply
323
+ def search_knowledge request_pb, options = nil
324
+ raise ::ArgumentError, "request must be provided" if request_pb.nil?
325
+
326
+ verb, uri, query_string_params, body = ServiceStub.transcode_search_knowledge_request request_pb
327
+ query_string_params = if query_string_params.any?
328
+ query_string_params.to_h { |p| p.split "=", 2 }
329
+ else
330
+ {}
331
+ end
332
+
333
+ response = @client_stub.make_http_request(
334
+ verb,
335
+ uri: uri,
336
+ body: body || "",
337
+ params: query_string_params,
338
+ options: options
339
+ )
340
+ operation = ::Gapic::Rest::TransportOperation.new response
341
+ result = ::Google::Cloud::Dialogflow::V2::SearchKnowledgeResponse.decode_json response.body, ignore_unknown_fields: true
342
+
343
+ yield result, operation if block_given?
344
+ result
345
+ end
346
+
309
347
  ##
310
348
  # @private
311
349
  #
@@ -509,6 +547,52 @@ module Google
509
547
  )
510
548
  transcoder.transcode request_pb
511
549
  end
550
+
551
+ ##
552
+ # @private
553
+ #
554
+ # GRPC transcoding helper method for the search_knowledge REST call
555
+ #
556
+ # @param request_pb [::Google::Cloud::Dialogflow::V2::SearchKnowledgeRequest]
557
+ # A request object representing the call parameters. Required.
558
+ # @return [Array(String, [String, nil], Hash{String => String})]
559
+ # Uri, Body, Query string parameters
560
+ def self.transcode_search_knowledge_request request_pb
561
+ transcoder = Gapic::Rest::GrpcTranscoder.new
562
+ .with_bindings(
563
+ uri_method: :post,
564
+ uri_template: "/v2/{parent}/suggestions:searchKnowledge",
565
+ body: "*",
566
+ matches: [
567
+ ["parent", %r{^projects/[^/]+/?$}, false]
568
+ ]
569
+ )
570
+ .with_bindings(
571
+ uri_method: :post,
572
+ uri_template: "/v2/{parent}/suggestions:searchKnowledge",
573
+ body: "*",
574
+ matches: [
575
+ ["parent", %r{^projects/[^/]+/locations/[^/]+/?$}, false]
576
+ ]
577
+ )
578
+ .with_bindings(
579
+ uri_method: :post,
580
+ uri_template: "/v2/{conversation}/suggestions:searchKnowledge",
581
+ body: "*",
582
+ matches: [
583
+ ["conversation", %r{^projects/[^/]+/conversations/[^/]+/?$}, false]
584
+ ]
585
+ )
586
+ .with_bindings(
587
+ uri_method: :post,
588
+ uri_template: "/v2/{conversation}/suggestions:searchKnowledge",
589
+ body: "*",
590
+ matches: [
591
+ ["conversation", %r{^projects/[^/]+/locations/[^/]+/conversations/[^/]+/?$}, false]
592
+ ]
593
+ )
594
+ transcoder.transcode request_pb
595
+ end
512
596
  end
513
597
  end
514
598
  end
@@ -16,7 +16,7 @@ require 'google/protobuf/timestamp_pb'
16
16
  require 'google/rpc/status_pb'
17
17
 
18
18
 
19
- descriptor_data = "\n,google/cloud/dialogflow/v2/participant.proto\x12\x1agoogle.cloud.dialogflow.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dialogflow/v2/audio_config.proto\x1a(google/cloud/dialogflow/v2/session.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\x91\x05\n\x0bParticipant\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12?\n\x04role\x18\x02 \x01(\x0e\x32,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0\x41\x05\x12&\n\x19sip_recording_media_label\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12(\n\x1bobfuscated_external_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12n\n\x1a\x64ocuments_metadata_filters\x18\x08 \x03(\x0b\x32\x45.google.cloud.dialogflow.v2.Participant.DocumentsMetadataFiltersEntryB\x03\xe0\x41\x01\x1a?\n\x1d\x44ocumentsMetadataFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"P\n\x04Role\x12\x14\n\x10ROLE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bHUMAN_AGENT\x10\x01\x12\x13\n\x0f\x41UTOMATED_AGENT\x10\x02\x12\x0c\n\x08\x45ND_USER\x10\x03:\xd8\x01\xea\x41\xd4\x01\n%dialogflow.googleapis.com/Participant\x12Jprojects/{project}/conversations/{conversation}/participants/{participant}\x12_projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}\"\x8c\x05\n\x07Message\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07\x63ontent\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bparticipant\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12K\n\x10participant_role\x18\x05 \x01(\x0e\x32,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x32\n\tsend_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12N\n\x12message_annotation\x18\x07 \x01(\x0b\x32-.google.cloud.dialogflow.v2.MessageAnnotationB\x03\xe0\x41\x03\x12T\n\x12sentiment_analysis\x18\x08 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SentimentAnalysisResultB\x03\xe0\x41\x03:\xc4\x01\xea\x41\xc0\x01\n!dialogflow.googleapis.com/Message\x12\x42projects/{project}/conversations/{conversation}/messages/{message}\x12Wprojects/{project}/locations/{location}/conversations/{conversation}/messages/{message}\"\x9c\x01\n\x18\x43reateParticipantRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\x12%dialogflow.googleapis.com/Participant\x12\x41\n\x0bparticipant\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0\x41\x02\"T\n\x15GetParticipantRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\"\x89\x01\n\x17ListParticipantsRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\x12%dialogflow.googleapis.com/Participant\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"r\n\x18ListParticipantsResponse\x12=\n\x0cparticipants\x18\x01 \x03(\x0b\x32\'.google.cloud.dialogflow.v2.Participant\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x93\x01\n\x18UpdateParticipantRequest\x12\x41\n\x0bparticipant\x18\x01 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"\x82\x04\n\x15\x41nalyzeContentRequest\x12\x42\n\x0bparticipant\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12;\n\ntext_input\x18\x06 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInputH\x00\x12=\n\x0b\x65vent_input\x18\x08 \x01(\x0b\x32&.google.cloud.dialogflow.v2.EventInputH\x00\x12I\n\x12reply_audio_config\x18\x05 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\x41\n\x0cquery_params\x18\t \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12N\n\x13\x61ssist_query_params\x18\x0e \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\x12.\n\rcx_parameters\x18\x12 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x12\n\nrequest_id\x18\x0b \x01(\tB\x07\n\x05input\",\n\x0e\x44tmfParameters\x12\x1a\n\x12\x61\x63\x63\x65pts_dtmf_input\x18\x01 \x01(\x08\"\xde\x03\n\x16\x41nalyzeContentResponse\x12\x12\n\nreply_text\x18\x01 \x01(\t\x12<\n\x0breply_audio\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.OutputAudio\x12N\n\x15\x61utomated_agent_reply\x18\x03 \x01(\x0b\x32/.google.cloud.dialogflow.v2.AutomatedAgentReply\x12\x34\n\x07message\x18\x05 \x01(\x0b\x32#.google.cloud.dialogflow.v2.Message\x12T\n\x1ehuman_agent_suggestion_results\x18\x06 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12Q\n\x1b\x65nd_user_suggestion_results\x18\x07 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12\x43\n\x0f\x64tmf_parameters\x18\t \x01(\x0b\x32*.google.cloud.dialogflow.v2.DtmfParameters\"\xd0\x05\n\x1eStreamingAnalyzeContentRequest\x12\x42\n\x0bparticipant\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x44\n\x0c\x61udio_config\x18\x02 \x01(\x0b\x32,.google.cloud.dialogflow.v2.InputAudioConfigH\x00\x12\x42\n\x0btext_config\x18\x03 \x01(\x0b\x32+.google.cloud.dialogflow.v2.InputTextConfigH\x00\x12I\n\x12reply_audio_config\x18\x04 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\x15\n\x0binput_audio\x18\x05 \x01(\x0cH\x01\x12\x14\n\ninput_text\x18\x06 \x01(\tH\x01\x12\x45\n\ninput_dtmf\x18\t \x01(\x0b\x32/.google.cloud.dialogflow.v2.TelephonyDtmfEventsH\x01\x12\x41\n\x0cquery_params\x18\x07 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12N\n\x13\x61ssist_query_params\x18\x08 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\x12.\n\rcx_parameters\x18\r \x01(\x0b\x32\x17.google.protobuf.Struct\x12,\n$enable_partial_automated_agent_reply\x18\x0c \x01(\x08\x12\x1d\n\x15\x65nable_debugging_info\x18\x13 \x01(\x08\x42\x08\n\x06\x63onfigB\x07\n\x05input\"\x8f\x05\n\x1fStreamingAnalyzeContentResponse\x12R\n\x12recognition_result\x18\x01 \x01(\x0b\x32\x36.google.cloud.dialogflow.v2.StreamingRecognitionResult\x12\x12\n\nreply_text\x18\x02 \x01(\t\x12<\n\x0breply_audio\x18\x03 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.OutputAudio\x12N\n\x15\x61utomated_agent_reply\x18\x04 \x01(\x0b\x32/.google.cloud.dialogflow.v2.AutomatedAgentReply\x12\x34\n\x07message\x18\x06 \x01(\x0b\x32#.google.cloud.dialogflow.v2.Message\x12T\n\x1ehuman_agent_suggestion_results\x18\x07 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12Q\n\x1b\x65nd_user_suggestion_results\x18\x08 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12\x43\n\x0f\x64tmf_parameters\x18\n \x01(\x0b\x32*.google.cloud.dialogflow.v2.DtmfParameters\x12R\n\x0e\x64\x65\x62ugging_info\x18\x0b \x01(\x0b\x32:.google.cloud.dialogflow.v2.CloudConversationDebuggingInfo\"\x85\x02\n\x16SuggestArticlesRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x0elatest_message\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x19\n\x0c\x63ontext_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12N\n\x13\x61ssist_query_params\x18\x04 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\"\x8b\x01\n\x17SuggestArticlesResponse\x12\x42\n\x0f\x61rticle_answers\x18\x01 \x03(\x0b\x32).google.cloud.dialogflow.v2.ArticleAnswer\x12\x16\n\x0elatest_message\x18\x02 \x01(\t\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\x87\x02\n\x18SuggestFaqAnswersRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x0elatest_message\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x19\n\x0c\x63ontext_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12N\n\x13\x61ssist_query_params\x18\x04 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\"\x85\x01\n\x19SuggestFaqAnswersResponse\x12:\n\x0b\x66\x61q_answers\x18\x01 \x03(\x0b\x32%.google.cloud.dialogflow.v2.FaqAnswer\x12\x16\n\x0elatest_message\x18\x02 \x01(\t\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\xf4\x01\n\x1aSuggestSmartRepliesRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x12\x63urrent_text_input\x18\x04 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInput\x12>\n\x0elatest_message\x18\x02 \x01(\tB&\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\xc3\x01\n\x1bSuggestSmartRepliesResponse\x12N\n\x13smart_reply_answers\x18\x01 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SmartReplyAnswerB\x03\xe0\x41\x03\x12>\n\x0elatest_message\x18\x02 \x01(\tB&\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"[\n\x0bOutputAudio\x12=\n\x06\x63onfig\x18\x01 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\r\n\x05\x61udio\x18\x02 \x01(\x0c\"\xe8\x02\n\x13\x41utomatedAgentReply\x12P\n\x16\x64\x65tect_intent_response\x18\x01 \x01(\x0b\x32\x30.google.cloud.dialogflow.v2.DetectIntentResponse\x12k\n\x1a\x61utomated_agent_reply_type\x18\x07 \x01(\x0e\x32G.google.cloud.dialogflow.v2.AutomatedAgentReply.AutomatedAgentReplyType\x12\x1a\n\x12\x61llow_cancellation\x18\x08 \x01(\x08\x12\x17\n\x0f\x63x_current_page\x18\x0b \x01(\t\"]\n\x17\x41utomatedAgentReplyType\x12*\n&AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PARTIAL\x10\x01\x12\t\n\x05\x46INAL\x10\x02\"\xe4\x01\n\rArticleAnswer\x12\r\n\x05title\x18\x01 \x01(\t\x12\x0b\n\x03uri\x18\x02 \x01(\t\x12\x10\n\x08snippets\x18\x03 \x03(\t\x12\x12\n\nconfidence\x18\x04 \x01(\x02\x12I\n\x08metadata\x18\x05 \x03(\x0b\x32\x37.google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry\x12\x15\n\ranswer_record\x18\x06 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xe0\x01\n\tFaqAnswer\x12\x0e\n\x06\x61nswer\x18\x01 \x01(\t\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12\x10\n\x08question\x18\x03 \x01(\t\x12\x0e\n\x06source\x18\x04 \x01(\t\x12\x45\n\x08metadata\x18\x05 \x03(\x0b\x32\x33.google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry\x12\x15\n\ranswer_record\x18\x06 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"y\n\x10SmartReplyAnswer\x12\r\n\x05reply\x18\x01 \x01(\t\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12\x42\n\ranswer_record\x18\x03 \x01(\tB+\xfa\x41(\n&dialogflow.googleapis.com/AnswerRecord\"\xea\x02\n\x10SuggestionResult\x12#\n\x05\x65rror\x18\x01 \x01(\x0b\x32\x12.google.rpc.StatusH\x00\x12X\n\x19suggest_articles_response\x18\x02 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SuggestArticlesResponseH\x00\x12]\n\x1csuggest_faq_answers_response\x18\x03 \x01(\x0b\x32\x35.google.cloud.dialogflow.v2.SuggestFaqAnswersResponseH\x00\x12\x61\n\x1esuggest_smart_replies_response\x18\x04 \x01(\x0b\x32\x37.google.cloud.dialogflow.v2.SuggestSmartRepliesResponseH\x00\x42\x15\n\x13suggestion_response\"-\n\x0fInputTextConfig\x12\x1a\n\rlanguage_code\x18\x01 \x01(\tB\x03\xe0\x41\x02\"j\n\x14\x41nnotatedMessagePart\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x13\n\x0b\x65ntity_type\x18\x02 \x01(\t\x12/\n\x0f\x66ormatted_value\x18\x03 \x01(\x0b\x32\x16.google.protobuf.Value\"n\n\x11MessageAnnotation\x12?\n\x05parts\x18\x01 \x03(\x0b\x32\x30.google.cloud.dialogflow.v2.AnnotatedMessagePart\x12\x18\n\x10\x63ontain_entities\x18\x02 \x01(\x08\"\xcd\x01\n\x15\x41ssistQueryParameters\x12s\n\x1a\x64ocuments_metadata_filters\x18\x01 \x03(\x0b\x32O.google.cloud.dialogflow.v2.AssistQueryParameters.DocumentsMetadataFiltersEntry\x1a?\n\x1d\x44ocumentsMetadataFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x32\xfa\x15\n\x0cParticipants\x12\xa5\x02\n\x11\x43reateParticipant\x12\x34.google.cloud.dialogflow.v2.CreateParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\xb0\x01\x82\xd3\xe4\x93\x02\x94\x01\"4/v2/{parent=projects/*/conversations/*}/participants:\x0bparticipantZO\"@/v2/{parent=projects/*/locations/*/conversations/*}/participants:\x0bparticipant\xda\x41\x12parent,participant\x12\xf6\x01\n\x0eGetParticipant\x12\x31.google.cloud.dialogflow.v2.GetParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\x87\x01\x82\xd3\xe4\x93\x02z\x12\x34/v2/{name=projects/*/conversations/*/participants/*}ZB\x12@/v2/{name=projects/*/locations/*/conversations/*/participants/*}\xda\x41\x04name\x12\x89\x02\n\x10ListParticipants\x12\x33.google.cloud.dialogflow.v2.ListParticipantsRequest\x1a\x34.google.cloud.dialogflow.v2.ListParticipantsResponse\"\x89\x01\x82\xd3\xe4\x93\x02z\x12\x34/v2/{parent=projects/*/conversations/*}/participantsZB\x12@/v2/{parent=projects/*/locations/*/conversations/*}/participants\xda\x41\x06parent\x12\xc2\x02\n\x11UpdateParticipant\x12\x34.google.cloud.dialogflow.v2.UpdateParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\xcd\x01\x82\xd3\xe4\x93\x02\xac\x01\x32@/v2/{participant.name=projects/*/conversations/*/participants/*}:\x0bparticipantZ[2L/v2/{participant.name=projects/*/locations/*/conversations/*/participants/*}:\x0bparticipant\xda\x41\x17participant,update_mask\x12\xe0\x02\n\x0e\x41nalyzeContent\x12\x31.google.cloud.dialogflow.v2.AnalyzeContentRequest\x1a\x32.google.cloud.dialogflow.v2.AnalyzeContentResponse\"\xe6\x01\x82\xd3\xe4\x93\x02\xac\x01\"J/v2/{participant=projects/*/conversations/*/participants/*}:analyzeContent:\x01*Z[\"V/v2/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent:\x01*\xda\x41\x16participant,text_input\xda\x41\x17participant,event_input\x12\x98\x01\n\x17StreamingAnalyzeContent\x12:.google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest\x1a;.google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse\"\x00(\x01\x30\x01\x12\xc9\x02\n\x0fSuggestArticles\x12\x32.google.cloud.dialogflow.v2.SuggestArticlesRequest\x1a\x33.google.cloud.dialogflow.v2.SuggestArticlesResponse\"\xcc\x01\x82\xd3\xe4\x93\x02\xbc\x01\"R/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles:\x01*Zc\"^/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles:\x01*\xda\x41\x06parent\x12\xd3\x02\n\x11SuggestFaqAnswers\x12\x34.google.cloud.dialogflow.v2.SuggestFaqAnswersRequest\x1a\x35.google.cloud.dialogflow.v2.SuggestFaqAnswersResponse\"\xd0\x01\x82\xd3\xe4\x93\x02\xc0\x01\"T/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers:\x01*Ze\"`/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers:\x01*\xda\x41\x06parent\x12\xdd\x02\n\x13SuggestSmartReplies\x12\x36.google.cloud.dialogflow.v2.SuggestSmartRepliesRequest\x1a\x37.google.cloud.dialogflow.v2.SuggestSmartRepliesResponse\"\xd4\x01\x82\xd3\xe4\x93\x02\xc4\x01\"V/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies:\x01*Zg\"b/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies:\x01*\xda\x41\x06parent\x1ax\xca\x41\x19\x64ialogflow.googleapis.com\xd2\x41Yhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\x99\x01\n\x1e\x63om.google.cloud.dialogflow.v2B\x10ParticipantProtoP\x01Z>cloud.google.com/go/dialogflow/apiv2/dialogflowpb;dialogflowpb\xf8\x01\x01\xa2\x02\x02\x44\x46\xaa\x02\x1aGoogle.Cloud.Dialogflow.V2b\x06proto3"
19
+ descriptor_data = "\n,google/cloud/dialogflow/v2/participant.proto\x12\x1agoogle.cloud.dialogflow.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dialogflow/v2/audio_config.proto\x1a(google/cloud/dialogflow/v2/session.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\x91\x05\n\x0bParticipant\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12?\n\x04role\x18\x02 \x01(\x0e\x32,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0\x41\x05\x12&\n\x19sip_recording_media_label\x18\x06 \x01(\tB\x03\xe0\x41\x01\x12(\n\x1bobfuscated_external_user_id\x18\x07 \x01(\tB\x03\xe0\x41\x01\x12n\n\x1a\x64ocuments_metadata_filters\x18\x08 \x03(\x0b\x32\x45.google.cloud.dialogflow.v2.Participant.DocumentsMetadataFiltersEntryB\x03\xe0\x41\x01\x1a?\n\x1d\x44ocumentsMetadataFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"P\n\x04Role\x12\x14\n\x10ROLE_UNSPECIFIED\x10\x00\x12\x0f\n\x0bHUMAN_AGENT\x10\x01\x12\x13\n\x0f\x41UTOMATED_AGENT\x10\x02\x12\x0c\n\x08\x45ND_USER\x10\x03:\xd8\x01\xea\x41\xd4\x01\n%dialogflow.googleapis.com/Participant\x12Jprojects/{project}/conversations/{conversation}/participants/{participant}\x12_projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}\"\x8c\x05\n\x07Message\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x01\x12\x14\n\x07\x63ontent\x18\x02 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x01\x12\x18\n\x0bparticipant\x18\x04 \x01(\tB\x03\xe0\x41\x03\x12K\n\x10participant_role\x18\x05 \x01(\x0e\x32,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0\x41\x03\x12\x34\n\x0b\x63reate_time\x18\x06 \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x03\x12\x32\n\tsend_time\x18\t \x01(\x0b\x32\x1a.google.protobuf.TimestampB\x03\xe0\x41\x01\x12N\n\x12message_annotation\x18\x07 \x01(\x0b\x32-.google.cloud.dialogflow.v2.MessageAnnotationB\x03\xe0\x41\x03\x12T\n\x12sentiment_analysis\x18\x08 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SentimentAnalysisResultB\x03\xe0\x41\x03:\xc4\x01\xea\x41\xc0\x01\n!dialogflow.googleapis.com/Message\x12\x42projects/{project}/conversations/{conversation}/messages/{message}\x12Wprojects/{project}/locations/{location}/conversations/{conversation}/messages/{message}\"\x9c\x01\n\x18\x43reateParticipantRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\x12%dialogflow.googleapis.com/Participant\x12\x41\n\x0bparticipant\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0\x41\x02\"T\n\x15GetParticipantRequest\x12;\n\x04name\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\"\x89\x01\n\x17ListParticipantsRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\x12%dialogflow.googleapis.com/Participant\x12\x16\n\tpage_size\x18\x02 \x01(\x05\x42\x03\xe0\x41\x01\x12\x17\n\npage_token\x18\x03 \x01(\tB\x03\xe0\x41\x01\"r\n\x18ListParticipantsResponse\x12=\n\x0cparticipants\x18\x01 \x03(\x0b\x32\'.google.cloud.dialogflow.v2.Participant\x12\x17\n\x0fnext_page_token\x18\x02 \x01(\t\"\x93\x01\n\x18UpdateParticipantRequest\x12\x41\n\x0bparticipant\x18\x01 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0\x41\x02\x12\x34\n\x0bupdate_mask\x18\x02 \x01(\x0b\x32\x1a.google.protobuf.FieldMaskB\x03\xe0\x41\x02\"\xcb\x04\n\x15\x41nalyzeContentRequest\x12\x42\n\x0bparticipant\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12;\n\ntext_input\x18\x06 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInputH\x00\x12=\n\x0b\x65vent_input\x18\x08 \x01(\x0b\x32&.google.cloud.dialogflow.v2.EventInputH\x00\x12G\n\x10suggestion_input\x18\x0c \x01(\x0b\x32+.google.cloud.dialogflow.v2.SuggestionInputH\x00\x12I\n\x12reply_audio_config\x18\x05 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\x41\n\x0cquery_params\x18\t \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12N\n\x13\x61ssist_query_params\x18\x0e \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\x12.\n\rcx_parameters\x18\x12 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x12\n\nrequest_id\x18\x0b \x01(\tB\x07\n\x05input\",\n\x0e\x44tmfParameters\x12\x1a\n\x12\x61\x63\x63\x65pts_dtmf_input\x18\x01 \x01(\x08\"\xde\x03\n\x16\x41nalyzeContentResponse\x12\x12\n\nreply_text\x18\x01 \x01(\t\x12<\n\x0breply_audio\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.OutputAudio\x12N\n\x15\x61utomated_agent_reply\x18\x03 \x01(\x0b\x32/.google.cloud.dialogflow.v2.AutomatedAgentReply\x12\x34\n\x07message\x18\x05 \x01(\x0b\x32#.google.cloud.dialogflow.v2.Message\x12T\n\x1ehuman_agent_suggestion_results\x18\x06 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12Q\n\x1b\x65nd_user_suggestion_results\x18\x07 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12\x43\n\x0f\x64tmf_parameters\x18\t \x01(\x0b\x32*.google.cloud.dialogflow.v2.DtmfParameters\"\xd0\x05\n\x1eStreamingAnalyzeContentRequest\x12\x42\n\x0bparticipant\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x44\n\x0c\x61udio_config\x18\x02 \x01(\x0b\x32,.google.cloud.dialogflow.v2.InputAudioConfigH\x00\x12\x42\n\x0btext_config\x18\x03 \x01(\x0b\x32+.google.cloud.dialogflow.v2.InputTextConfigH\x00\x12I\n\x12reply_audio_config\x18\x04 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\x15\n\x0binput_audio\x18\x05 \x01(\x0cH\x01\x12\x14\n\ninput_text\x18\x06 \x01(\tH\x01\x12\x45\n\ninput_dtmf\x18\t \x01(\x0b\x32/.google.cloud.dialogflow.v2.TelephonyDtmfEventsH\x01\x12\x41\n\x0cquery_params\x18\x07 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12N\n\x13\x61ssist_query_params\x18\x08 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\x12.\n\rcx_parameters\x18\r \x01(\x0b\x32\x17.google.protobuf.Struct\x12,\n$enable_partial_automated_agent_reply\x18\x0c \x01(\x08\x12\x1d\n\x15\x65nable_debugging_info\x18\x13 \x01(\x08\x42\x08\n\x06\x63onfigB\x07\n\x05input\"\x8f\x05\n\x1fStreamingAnalyzeContentResponse\x12R\n\x12recognition_result\x18\x01 \x01(\x0b\x32\x36.google.cloud.dialogflow.v2.StreamingRecognitionResult\x12\x12\n\nreply_text\x18\x02 \x01(\t\x12<\n\x0breply_audio\x18\x03 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.OutputAudio\x12N\n\x15\x61utomated_agent_reply\x18\x04 \x01(\x0b\x32/.google.cloud.dialogflow.v2.AutomatedAgentReply\x12\x34\n\x07message\x18\x06 \x01(\x0b\x32#.google.cloud.dialogflow.v2.Message\x12T\n\x1ehuman_agent_suggestion_results\x18\x07 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12Q\n\x1b\x65nd_user_suggestion_results\x18\x08 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SuggestionResult\x12\x43\n\x0f\x64tmf_parameters\x18\n \x01(\x0b\x32*.google.cloud.dialogflow.v2.DtmfParameters\x12R\n\x0e\x64\x65\x62ugging_info\x18\x0b \x01(\x0b\x32:.google.cloud.dialogflow.v2.CloudConversationDebuggingInfo\"\x85\x02\n\x16SuggestArticlesRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x0elatest_message\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x19\n\x0c\x63ontext_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12N\n\x13\x61ssist_query_params\x18\x04 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\"\x8b\x01\n\x17SuggestArticlesResponse\x12\x42\n\x0f\x61rticle_answers\x18\x01 \x03(\x0b\x32).google.cloud.dialogflow.v2.ArticleAnswer\x12\x16\n\x0elatest_message\x18\x02 \x01(\t\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\x87\x02\n\x18SuggestFaqAnswersRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x0elatest_message\x18\x02 \x01(\tB)\xe0\x41\x01\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x19\n\x0c\x63ontext_size\x18\x03 \x01(\x05\x42\x03\xe0\x41\x01\x12N\n\x13\x61ssist_query_params\x18\x04 \x01(\x0b\x32\x31.google.cloud.dialogflow.v2.AssistQueryParameters\"\x85\x01\n\x19SuggestFaqAnswersResponse\x12:\n\x0b\x66\x61q_answers\x18\x01 \x03(\x0b\x32%.google.cloud.dialogflow.v2.FaqAnswer\x12\x16\n\x0elatest_message\x18\x02 \x01(\t\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\xf4\x01\n\x1aSuggestSmartRepliesRequest\x12=\n\x06parent\x18\x01 \x01(\tB-\xe0\x41\x02\xfa\x41\'\n%dialogflow.googleapis.com/Participant\x12\x41\n\x12\x63urrent_text_input\x18\x04 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInput\x12>\n\x0elatest_message\x18\x02 \x01(\tB&\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"\xc3\x01\n\x1bSuggestSmartRepliesResponse\x12N\n\x13smart_reply_answers\x18\x01 \x03(\x0b\x32,.google.cloud.dialogflow.v2.SmartReplyAnswerB\x03\xe0\x41\x03\x12>\n\x0elatest_message\x18\x02 \x01(\tB&\xfa\x41#\n!dialogflow.googleapis.com/Message\x12\x14\n\x0c\x63ontext_size\x18\x03 \x01(\x05\"[\n\x0bOutputAudio\x12=\n\x06\x63onfig\x18\x01 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12\r\n\x05\x61udio\x18\x02 \x01(\x0c\"\xe8\x02\n\x13\x41utomatedAgentReply\x12P\n\x16\x64\x65tect_intent_response\x18\x01 \x01(\x0b\x32\x30.google.cloud.dialogflow.v2.DetectIntentResponse\x12k\n\x1a\x61utomated_agent_reply_type\x18\x07 \x01(\x0e\x32G.google.cloud.dialogflow.v2.AutomatedAgentReply.AutomatedAgentReplyType\x12\x1a\n\x12\x61llow_cancellation\x18\x08 \x01(\x08\x12\x17\n\x0f\x63x_current_page\x18\x0b \x01(\t\"]\n\x17\x41utomatedAgentReplyType\x12*\n&AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED\x10\x00\x12\x0b\n\x07PARTIAL\x10\x01\x12\t\n\x05\x46INAL\x10\x02\"\xe4\x01\n\rArticleAnswer\x12\r\n\x05title\x18\x01 \x01(\t\x12\x0b\n\x03uri\x18\x02 \x01(\t\x12\x10\n\x08snippets\x18\x03 \x03(\t\x12\x12\n\nconfidence\x18\x04 \x01(\x02\x12I\n\x08metadata\x18\x05 \x03(\x0b\x32\x37.google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry\x12\x15\n\ranswer_record\x18\x06 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xe0\x01\n\tFaqAnswer\x12\x0e\n\x06\x61nswer\x18\x01 \x01(\t\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12\x10\n\x08question\x18\x03 \x01(\t\x12\x0e\n\x06source\x18\x04 \x01(\t\x12\x45\n\x08metadata\x18\x05 \x03(\x0b\x32\x33.google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry\x12\x15\n\ranswer_record\x18\x06 \x01(\t\x1a/\n\rMetadataEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"y\n\x10SmartReplyAnswer\x12\r\n\x05reply\x18\x01 \x01(\t\x12\x12\n\nconfidence\x18\x02 \x01(\x02\x12\x42\n\ranswer_record\x18\x03 \x01(\tB+\xfa\x41(\n&dialogflow.googleapis.com/AnswerRecord\"\\\n\x10IntentSuggestion\x12\x14\n\x0c\x64isplay_name\x18\x01 \x01(\t\x12\x13\n\tintent_v2\x18\x02 \x01(\tH\x00\x12\x13\n\x0b\x64\x65scription\x18\x05 \x01(\tB\x08\n\x06intent\"\xc5\x01\n\x16\x44ialogflowAssistAnswer\x12?\n\x0cquery_result\x18\x01 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.QueryResultH\x00\x12I\n\x11intent_suggestion\x18\x05 \x01(\x0b\x32,.google.cloud.dialogflow.v2.IntentSuggestionH\x00\x12\x15\n\ranswer_record\x18\x02 \x01(\tB\x08\n\x06result\"\xea\x02\n\x10SuggestionResult\x12#\n\x05\x65rror\x18\x01 \x01(\x0b\x32\x12.google.rpc.StatusH\x00\x12X\n\x19suggest_articles_response\x18\x02 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SuggestArticlesResponseH\x00\x12]\n\x1csuggest_faq_answers_response\x18\x03 \x01(\x0b\x32\x35.google.cloud.dialogflow.v2.SuggestFaqAnswersResponseH\x00\x12\x61\n\x1esuggest_smart_replies_response\x18\x04 \x01(\x0b\x32\x37.google.cloud.dialogflow.v2.SuggestSmartRepliesResponseH\x00\x42\x15\n\x13suggestion_response\"-\n\x0fInputTextConfig\x12\x1a\n\rlanguage_code\x18\x01 \x01(\tB\x03\xe0\x41\x02\"j\n\x14\x41nnotatedMessagePart\x12\x0c\n\x04text\x18\x01 \x01(\t\x12\x13\n\x0b\x65ntity_type\x18\x02 \x01(\t\x12/\n\x0f\x66ormatted_value\x18\x03 \x01(\x0b\x32\x16.google.protobuf.Value\"n\n\x11MessageAnnotation\x12?\n\x05parts\x18\x01 \x03(\x0b\x32\x30.google.cloud.dialogflow.v2.AnnotatedMessagePart\x12\x18\n\x10\x63ontain_entities\x18\x02 \x01(\x08\"-\n\x0fSuggestionInput\x12\x1a\n\ranswer_record\x18\x01 \x01(\tB\x03\xe0\x41\x02\"\xcd\x01\n\x15\x41ssistQueryParameters\x12s\n\x1a\x64ocuments_metadata_filters\x18\x01 \x03(\x0b\x32O.google.cloud.dialogflow.v2.AssistQueryParameters.DocumentsMetadataFiltersEntry\x1a?\n\x1d\x44ocumentsMetadataFiltersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\x32\xfa\x15\n\x0cParticipants\x12\xa5\x02\n\x11\x43reateParticipant\x12\x34.google.cloud.dialogflow.v2.CreateParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\xb0\x01\x82\xd3\xe4\x93\x02\x94\x01\"4/v2/{parent=projects/*/conversations/*}/participants:\x0bparticipantZO\"@/v2/{parent=projects/*/locations/*/conversations/*}/participants:\x0bparticipant\xda\x41\x12parent,participant\x12\xf6\x01\n\x0eGetParticipant\x12\x31.google.cloud.dialogflow.v2.GetParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\x87\x01\x82\xd3\xe4\x93\x02z\x12\x34/v2/{name=projects/*/conversations/*/participants/*}ZB\x12@/v2/{name=projects/*/locations/*/conversations/*/participants/*}\xda\x41\x04name\x12\x89\x02\n\x10ListParticipants\x12\x33.google.cloud.dialogflow.v2.ListParticipantsRequest\x1a\x34.google.cloud.dialogflow.v2.ListParticipantsResponse\"\x89\x01\x82\xd3\xe4\x93\x02z\x12\x34/v2/{parent=projects/*/conversations/*}/participantsZB\x12@/v2/{parent=projects/*/locations/*/conversations/*}/participants\xda\x41\x06parent\x12\xc2\x02\n\x11UpdateParticipant\x12\x34.google.cloud.dialogflow.v2.UpdateParticipantRequest\x1a\'.google.cloud.dialogflow.v2.Participant\"\xcd\x01\x82\xd3\xe4\x93\x02\xac\x01\x32@/v2/{participant.name=projects/*/conversations/*/participants/*}:\x0bparticipantZ[2L/v2/{participant.name=projects/*/locations/*/conversations/*/participants/*}:\x0bparticipant\xda\x41\x17participant,update_mask\x12\xe0\x02\n\x0e\x41nalyzeContent\x12\x31.google.cloud.dialogflow.v2.AnalyzeContentRequest\x1a\x32.google.cloud.dialogflow.v2.AnalyzeContentResponse\"\xe6\x01\x82\xd3\xe4\x93\x02\xac\x01\"J/v2/{participant=projects/*/conversations/*/participants/*}:analyzeContent:\x01*Z[\"V/v2/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent:\x01*\xda\x41\x16participant,text_input\xda\x41\x17participant,event_input\x12\x98\x01\n\x17StreamingAnalyzeContent\x12:.google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest\x1a;.google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse\"\x00(\x01\x30\x01\x12\xc9\x02\n\x0fSuggestArticles\x12\x32.google.cloud.dialogflow.v2.SuggestArticlesRequest\x1a\x33.google.cloud.dialogflow.v2.SuggestArticlesResponse\"\xcc\x01\x82\xd3\xe4\x93\x02\xbc\x01\"R/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles:\x01*Zc\"^/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles:\x01*\xda\x41\x06parent\x12\xd3\x02\n\x11SuggestFaqAnswers\x12\x34.google.cloud.dialogflow.v2.SuggestFaqAnswersRequest\x1a\x35.google.cloud.dialogflow.v2.SuggestFaqAnswersResponse\"\xd0\x01\x82\xd3\xe4\x93\x02\xc0\x01\"T/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers:\x01*Ze\"`/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers:\x01*\xda\x41\x06parent\x12\xdd\x02\n\x13SuggestSmartReplies\x12\x36.google.cloud.dialogflow.v2.SuggestSmartRepliesRequest\x1a\x37.google.cloud.dialogflow.v2.SuggestSmartRepliesResponse\"\xd4\x01\x82\xd3\xe4\x93\x02\xc4\x01\"V/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies:\x01*Zg\"b/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies:\x01*\xda\x41\x06parent\x1ax\xca\x41\x19\x64ialogflow.googleapis.com\xd2\x41Yhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\x99\x01\n\x1e\x63om.google.cloud.dialogflow.v2B\x10ParticipantProtoP\x01Z>cloud.google.com/go/dialogflow/apiv2/dialogflowpb;dialogflowpb\xf8\x01\x01\xa2\x02\x02\x44\x46\xaa\x02\x1aGoogle.Cloud.Dialogflow.V2b\x06proto3"
20
20
 
21
21
  pool = Google::Protobuf::DescriptorPool.generated_pool
22
22
 
@@ -77,10 +77,13 @@ module Google
77
77
  ArticleAnswer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.ArticleAnswer").msgclass
78
78
  FaqAnswer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.FaqAnswer").msgclass
79
79
  SmartReplyAnswer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.SmartReplyAnswer").msgclass
80
+ IntentSuggestion = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.IntentSuggestion").msgclass
81
+ DialogflowAssistAnswer = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.DialogflowAssistAnswer").msgclass
80
82
  SuggestionResult = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.SuggestionResult").msgclass
81
83
  InputTextConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.InputTextConfig").msgclass
82
84
  AnnotatedMessagePart = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.AnnotatedMessagePart").msgclass
83
85
  MessageAnnotation = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.MessageAnnotation").msgclass
86
+ SuggestionInput = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.SuggestionInput").msgclass
84
87
  AssistQueryParameters = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.v2.AssistQueryParameters").msgclass
85
88
  end
86
89
  end
@@ -548,7 +548,7 @@ module Google
548
548
  # @param options [::Gapic::CallOptions, ::Hash]
549
549
  # Overrides the default settings for this call, e.g, timeout, retries, etc. Optional.
550
550
  #
551
- # @overload analyze_content(participant: nil, text_input: nil, event_input: nil, reply_audio_config: nil, query_params: nil, assist_query_params: nil, cx_parameters: nil, request_id: nil)
551
+ # @overload analyze_content(participant: nil, text_input: nil, event_input: nil, suggestion_input: nil, reply_audio_config: nil, query_params: nil, assist_query_params: nil, cx_parameters: nil, request_id: nil)
552
552
  # Pass arguments to `analyze_content` via keyword arguments. Note that at
553
553
  # least one keyword argument is required. To specify no parameters, or to keep all
554
554
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -561,6 +561,8 @@ module Google
561
561
  # The natural language text to be processed.
562
562
  # @param event_input [::Google::Cloud::Dialogflow::V2::EventInput, ::Hash]
563
563
  # An input event to send to Dialogflow.
564
+ # @param suggestion_input [::Google::Cloud::Dialogflow::V2::SuggestionInput, ::Hash]
565
+ # An input representing the selection of a suggestion.
564
566
  # @param reply_audio_config [::Google::Cloud::Dialogflow::V2::OutputAudioConfig, ::Hash]
565
567
  # Speech synthesis configuration.
566
568
  # The speech synthesis settings for a virtual agent that may be configured
@@ -442,7 +442,7 @@ module Google
442
442
  # @param options [::Gapic::CallOptions, ::Hash]
443
443
  # Overrides the default settings for this call, e.g, timeout, retries etc. Optional.
444
444
  #
445
- # @overload analyze_content(participant: nil, text_input: nil, event_input: nil, reply_audio_config: nil, query_params: nil, assist_query_params: nil, cx_parameters: nil, request_id: nil)
445
+ # @overload analyze_content(participant: nil, text_input: nil, event_input: nil, suggestion_input: nil, reply_audio_config: nil, query_params: nil, assist_query_params: nil, cx_parameters: nil, request_id: nil)
446
446
  # Pass arguments to `analyze_content` via keyword arguments. Note that at
447
447
  # least one keyword argument is required. To specify no parameters, or to keep all
448
448
  # the default parameter values, pass an empty Hash as a request object (see above).
@@ -455,6 +455,8 @@ module Google
455
455
  # The natural language text to be processed.
456
456
  # @param event_input [::Google::Cloud::Dialogflow::V2::EventInput, ::Hash]
457
457
  # An input event to send to Dialogflow.
458
+ # @param suggestion_input [::Google::Cloud::Dialogflow::V2::SuggestionInput, ::Hash]
459
+ # An input representing the selection of a suggestion.
458
460
  # @param reply_audio_config [::Google::Cloud::Dialogflow::V2::OutputAudioConfig, ::Hash]
459
461
  # Speech synthesis configuration.
460
462
  # The speech synthesis settings for a virtual agent that may be configured
@@ -19,7 +19,7 @@ require 'google/rpc/status_pb'
19
19
  require 'google/type/latlng_pb'
20
20
 
21
21
 
22
- descriptor_data = "\n(google/cloud/dialogflow/v2/session.proto\x12\x1agoogle.cloud.dialogflow.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dialogflow/v2/audio_config.proto\x1a(google/cloud/dialogflow/v2/context.proto\x1a\'google/cloud/dialogflow/v2/intent.proto\x1a\x34google/cloud/dialogflow/v2/session_entity_type.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x17google/rpc/status.proto\x1a\x18google/type/latlng.proto\"\xf5\x02\n\x13\x44\x65tectIntentRequest\x12:\n\x07session\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!dialogflow.googleapis.com/Session\x12\x41\n\x0cquery_params\x18\x02 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12@\n\x0bquery_input\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.QueryInputB\x03\xe0\x41\x02\x12J\n\x13output_audio_config\x18\x04 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12<\n\x18output_audio_config_mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x13\n\x0binput_audio\x18\x05 \x01(\x0c\"\xf8\x01\n\x14\x44\x65tectIntentResponse\x12\x13\n\x0bresponse_id\x18\x01 \x01(\t\x12=\n\x0cquery_result\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.QueryResult\x12*\n\x0ewebhook_status\x18\x03 \x01(\x0b\x32\x12.google.rpc.Status\x12\x14\n\x0coutput_audio\x18\x04 \x01(\x0c\x12J\n\x13output_audio_config\x18\x06 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\"\x9f\x04\n\x0fQueryParameters\x12\x11\n\ttime_zone\x18\x01 \x01(\t\x12)\n\x0cgeo_location\x18\x02 \x01(\x0b\x32\x13.google.type.LatLng\x12\x35\n\x08\x63ontexts\x18\x03 \x03(\x0b\x32#.google.cloud.dialogflow.v2.Context\x12\x16\n\x0ereset_contexts\x18\x04 \x01(\x08\x12K\n\x14session_entity_types\x18\x05 \x03(\x0b\x32-.google.cloud.dialogflow.v2.SessionEntityType\x12(\n\x07payload\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x65\n!sentiment_analysis_request_config\x18\n \x01(\x0b\x32:.google.cloud.dialogflow.v2.SentimentAnalysisRequestConfig\x12X\n\x0fwebhook_headers\x18\x0e \x03(\x0b\x32?.google.cloud.dialogflow.v2.QueryParameters.WebhookHeadersEntry\x12\x10\n\x08platform\x18\x12 \x01(\t\x1a\x35\n\x13WebhookHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcb\x01\n\nQueryInput\x12\x44\n\x0c\x61udio_config\x18\x01 \x01(\x0b\x32,.google.cloud.dialogflow.v2.InputAudioConfigH\x00\x12\x35\n\x04text\x18\x02 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInputH\x00\x12\x37\n\x05\x65vent\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.EventInputH\x00\x42\x07\n\x05input\"\xae\x05\n\x0bQueryResult\x12\x12\n\nquery_text\x18\x01 \x01(\t\x12\x15\n\rlanguage_code\x18\x0f \x01(\t\x12%\n\x1dspeech_recognition_confidence\x18\x02 \x01(\x02\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\t\x12+\n\nparameters\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12#\n\x1b\x61ll_required_params_present\x18\x05 \x01(\x08\x12\x1c\n\x14\x63\x61ncels_slot_filling\x18\x15 \x01(\x08\x12\x18\n\x10\x66ulfillment_text\x18\x06 \x01(\t\x12H\n\x14\x66ulfillment_messages\x18\x07 \x03(\x0b\x32*.google.cloud.dialogflow.v2.Intent.Message\x12\x16\n\x0ewebhook_source\x18\x08 \x01(\t\x12\x30\n\x0fwebhook_payload\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\x12<\n\x0foutput_contexts\x18\n \x03(\x0b\x32#.google.cloud.dialogflow.v2.Context\x12\x32\n\x06intent\x18\x0b \x01(\x0b\x32\".google.cloud.dialogflow.v2.Intent\x12#\n\x1bintent_detection_confidence\x18\x0c \x01(\x02\x12\x30\n\x0f\x64iagnostic_info\x18\x0e \x01(\x0b\x32\x17.google.protobuf.Struct\x12V\n\x19sentiment_analysis_result\x18\x11 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SentimentAnalysisResult\"\xbb\x03\n\x1cStreamingDetectIntentRequest\x12:\n\x07session\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!dialogflow.googleapis.com/Session\x12\x41\n\x0cquery_params\x18\x02 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12@\n\x0bquery_input\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.QueryInputB\x03\xe0\x41\x02\x12\x1c\n\x10single_utterance\x18\x04 \x01(\x08\x42\x02\x18\x01\x12J\n\x13output_audio_config\x18\x05 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12<\n\x18output_audio_config_mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x13\n\x0binput_audio\x18\x06 \x01(\x0c\x12\x1d\n\x15\x65nable_debugging_info\x18\x08 \x01(\x08\"\xf8\x06\n\x1e\x43loudConversationDebuggingInfo\x12\x19\n\x11\x61udio_data_chunks\x18\x01 \x01(\x05\x12\x39\n\x16result_end_time_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x37\n\x14\x66irst_audio_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x18\n\x10single_utterance\x18\x05 \x01(\x08\x12\x43\n speech_partial_results_end_times\x18\x06 \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x41\n\x1espeech_final_results_end_times\x18\x07 \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x19\n\x11partial_responses\x18\x08 \x01(\x05\x12,\n$speaker_id_passive_latency_ms_offset\x18\t \x01(\x05\x12\x1f\n\x17\x62\x61rgein_event_triggered\x18\n \x01(\x08\x12\x1f\n\x17speech_single_utterance\x18\x0b \x01(\x08\x12=\n\x1a\x64tmf_partial_results_times\x18\x0c \x03(\x0b\x32\x19.google.protobuf.Duration\x12;\n\x18\x64tmf_final_results_times\x18\r \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x43\n single_utterance_end_time_offset\x18\x0e \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x34\n\x11no_speech_timeout\x18\x0f \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\ris_input_text\x18\x10 \x01(\x08\x12@\n\x1d\x63lient_half_close_time_offset\x18\x11 \x01(\x0b\x32\x19.google.protobuf.Duration\x12J\n\'client_half_close_streaming_time_offset\x18\x12 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xa9\x03\n\x1dStreamingDetectIntentResponse\x12\x13\n\x0bresponse_id\x18\x01 \x01(\t\x12R\n\x12recognition_result\x18\x02 \x01(\x0b\x32\x36.google.cloud.dialogflow.v2.StreamingRecognitionResult\x12=\n\x0cquery_result\x18\x03 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.QueryResult\x12*\n\x0ewebhook_status\x18\x04 \x01(\x0b\x32\x12.google.rpc.Status\x12\x14\n\x0coutput_audio\x18\x05 \x01(\x0c\x12J\n\x13output_audio_config\x18\x06 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12R\n\x0e\x64\x65\x62ugging_info\x18\x08 \x01(\x0b\x32:.google.cloud.dialogflow.v2.CloudConversationDebuggingInfo\"\x9d\x03\n\x1aStreamingRecognitionResult\x12X\n\x0cmessage_type\x18\x01 \x01(\x0e\x32\x42.google.cloud.dialogflow.v2.StreamingRecognitionResult.MessageType\x12\x12\n\ntranscript\x18\x02 \x01(\t\x12\x10\n\x08is_final\x18\x03 \x01(\x08\x12\x12\n\nconfidence\x18\x04 \x01(\x02\x12\x44\n\x10speech_word_info\x18\x07 \x03(\x0b\x32*.google.cloud.dialogflow.v2.SpeechWordInfo\x12\x34\n\x11speech_end_offset\x18\x08 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rlanguage_code\x18\n \x01(\t\"X\n\x0bMessageType\x12\x1c\n\x18MESSAGE_TYPE_UNSPECIFIED\x10\x00\x12\x0e\n\nTRANSCRIPT\x10\x01\x12\x1b\n\x17\x45ND_OF_SINGLE_UTTERANCE\x10\x02\":\n\tTextInput\x12\x11\n\x04text\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rlanguage_code\x18\x02 \x01(\tB\x03\xe0\x41\x02\"h\n\nEventInput\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12+\n\nparameters\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x02\"F\n\x1eSentimentAnalysisRequestConfig\x12$\n\x1c\x61nalyze_query_text_sentiment\x18\x01 \x01(\x08\"^\n\x17SentimentAnalysisResult\x12\x43\n\x14query_text_sentiment\x18\x01 \x01(\x0b\x32%.google.cloud.dialogflow.v2.Sentiment\"-\n\tSentiment\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x11\n\tmagnitude\x18\x02 \x01(\x02\x32\xe5\x05\n\x08Sessions\x12\xc9\x03\n\x0c\x44\x65tectIntent\x12/.google.cloud.dialogflow.v2.DetectIntentRequest\x1a\x30.google.cloud.dialogflow.v2.DetectIntentResponse\"\xd5\x02\x82\xd3\xe4\x93\x02\xb8\x02\"6/v2/{session=projects/*/agent/sessions/*}:detectIntent:\x01*ZR\"M/v2/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent:\x01*ZG\"B/v2/{session=projects/*/locations/*/agent/sessions/*}:detectIntent:\x01*Z^\"Y/v2/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent:\x01*\xda\x41\x13session,query_input\x12\x92\x01\n\x15StreamingDetectIntent\x12\x38.google.cloud.dialogflow.v2.StreamingDetectIntentRequest\x1a\x39.google.cloud.dialogflow.v2.StreamingDetectIntentResponse\"\x00(\x01\x30\x01\x1ax\xca\x41\x19\x64ialogflow.googleapis.com\xd2\x41Yhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\xea\x03\n\x1e\x63om.google.cloud.dialogflow.v2B\x0cSessionProtoP\x01Z>cloud.google.com/go/dialogflow/apiv2/dialogflowpb;dialogflowpb\xf8\x01\x01\xa2\x02\x02\x44\x46\xaa\x02\x1aGoogle.Cloud.Dialogflow.V2\xea\x41\xd1\x02\n!dialogflow.googleapis.com/Session\x12+projects/{project}/agent/sessions/{session}\x12Sprojects/{project}/agent/environments/{environment}/users/{user}/sessions/{session}\x12@projects/{project}/locations/{location}/agent/sessions/{session}\x12hprojects/{project}/locations/{location}/agent/environments/{environment}/users/{user}/sessions/{session}b\x06proto3"
22
+ descriptor_data = "\n(google/cloud/dialogflow/v2/session.proto\x12\x1agoogle.cloud.dialogflow.v2\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dialogflow/v2/audio_config.proto\x1a(google/cloud/dialogflow/v2/context.proto\x1a\'google/cloud/dialogflow/v2/intent.proto\x1a\x34google/cloud/dialogflow/v2/session_entity_type.proto\x1a\x1egoogle/protobuf/duration.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x17google/rpc/status.proto\x1a\x18google/type/latlng.proto\"\xf5\x02\n\x13\x44\x65tectIntentRequest\x12:\n\x07session\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!dialogflow.googleapis.com/Session\x12\x41\n\x0cquery_params\x18\x02 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12@\n\x0bquery_input\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.QueryInputB\x03\xe0\x41\x02\x12J\n\x13output_audio_config\x18\x04 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12<\n\x18output_audio_config_mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x13\n\x0binput_audio\x18\x05 \x01(\x0c\"\xf8\x01\n\x14\x44\x65tectIntentResponse\x12\x13\n\x0bresponse_id\x18\x01 \x01(\t\x12=\n\x0cquery_result\x18\x02 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.QueryResult\x12*\n\x0ewebhook_status\x18\x03 \x01(\x0b\x32\x12.google.rpc.Status\x12\x14\n\x0coutput_audio\x18\x04 \x01(\x0c\x12J\n\x13output_audio_config\x18\x06 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\"\x9f\x04\n\x0fQueryParameters\x12\x11\n\ttime_zone\x18\x01 \x01(\t\x12)\n\x0cgeo_location\x18\x02 \x01(\x0b\x32\x13.google.type.LatLng\x12\x35\n\x08\x63ontexts\x18\x03 \x03(\x0b\x32#.google.cloud.dialogflow.v2.Context\x12\x16\n\x0ereset_contexts\x18\x04 \x01(\x08\x12K\n\x14session_entity_types\x18\x05 \x03(\x0b\x32-.google.cloud.dialogflow.v2.SessionEntityType\x12(\n\x07payload\x18\x06 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x65\n!sentiment_analysis_request_config\x18\n \x01(\x0b\x32:.google.cloud.dialogflow.v2.SentimentAnalysisRequestConfig\x12X\n\x0fwebhook_headers\x18\x0e \x03(\x0b\x32?.google.cloud.dialogflow.v2.QueryParameters.WebhookHeadersEntry\x12\x10\n\x08platform\x18\x12 \x01(\t\x1a\x35\n\x13WebhookHeadersEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12\r\n\x05value\x18\x02 \x01(\t:\x02\x38\x01\"\xcb\x01\n\nQueryInput\x12\x44\n\x0c\x61udio_config\x18\x01 \x01(\x0b\x32,.google.cloud.dialogflow.v2.InputAudioConfigH\x00\x12\x35\n\x04text\x18\x02 \x01(\x0b\x32%.google.cloud.dialogflow.v2.TextInputH\x00\x12\x37\n\x05\x65vent\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.EventInputH\x00\x42\x07\n\x05input\"\xae\x05\n\x0bQueryResult\x12\x12\n\nquery_text\x18\x01 \x01(\t\x12\x15\n\rlanguage_code\x18\x0f \x01(\t\x12%\n\x1dspeech_recognition_confidence\x18\x02 \x01(\x02\x12\x0e\n\x06\x61\x63tion\x18\x03 \x01(\t\x12+\n\nparameters\x18\x04 \x01(\x0b\x32\x17.google.protobuf.Struct\x12#\n\x1b\x61ll_required_params_present\x18\x05 \x01(\x08\x12\x1c\n\x14\x63\x61ncels_slot_filling\x18\x15 \x01(\x08\x12\x18\n\x10\x66ulfillment_text\x18\x06 \x01(\t\x12H\n\x14\x66ulfillment_messages\x18\x07 \x03(\x0b\x32*.google.cloud.dialogflow.v2.Intent.Message\x12\x16\n\x0ewebhook_source\x18\x08 \x01(\t\x12\x30\n\x0fwebhook_payload\x18\t \x01(\x0b\x32\x17.google.protobuf.Struct\x12<\n\x0foutput_contexts\x18\n \x03(\x0b\x32#.google.cloud.dialogflow.v2.Context\x12\x32\n\x06intent\x18\x0b \x01(\x0b\x32\".google.cloud.dialogflow.v2.Intent\x12#\n\x1bintent_detection_confidence\x18\x0c \x01(\x02\x12\x30\n\x0f\x64iagnostic_info\x18\x0e \x01(\x0b\x32\x17.google.protobuf.Struct\x12V\n\x19sentiment_analysis_result\x18\x11 \x01(\x0b\x32\x33.google.cloud.dialogflow.v2.SentimentAnalysisResult\"\xbb\x03\n\x1cStreamingDetectIntentRequest\x12:\n\x07session\x18\x01 \x01(\tB)\xe0\x41\x02\xfa\x41#\n!dialogflow.googleapis.com/Session\x12\x41\n\x0cquery_params\x18\x02 \x01(\x0b\x32+.google.cloud.dialogflow.v2.QueryParameters\x12@\n\x0bquery_input\x18\x03 \x01(\x0b\x32&.google.cloud.dialogflow.v2.QueryInputB\x03\xe0\x41\x02\x12\x1c\n\x10single_utterance\x18\x04 \x01(\x08\x42\x02\x18\x01\x12J\n\x13output_audio_config\x18\x05 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12<\n\x18output_audio_config_mask\x18\x07 \x01(\x0b\x32\x1a.google.protobuf.FieldMask\x12\x13\n\x0binput_audio\x18\x06 \x01(\x0c\x12\x1d\n\x15\x65nable_debugging_info\x18\x08 \x01(\x08\"\xb0\x07\n\x1e\x43loudConversationDebuggingInfo\x12\x19\n\x11\x61udio_data_chunks\x18\x01 \x01(\x05\x12\x39\n\x16result_end_time_offset\x18\x02 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x37\n\x14\x66irst_audio_duration\x18\x03 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x18\n\x10single_utterance\x18\x05 \x01(\x08\x12\x43\n speech_partial_results_end_times\x18\x06 \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x41\n\x1espeech_final_results_end_times\x18\x07 \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x19\n\x11partial_responses\x18\x08 \x01(\x05\x12,\n$speaker_id_passive_latency_ms_offset\x18\t \x01(\x05\x12\x1f\n\x17\x62\x61rgein_event_triggered\x18\n \x01(\x08\x12\x1f\n\x17speech_single_utterance\x18\x0b \x01(\x08\x12=\n\x1a\x64tmf_partial_results_times\x18\x0c \x03(\x0b\x32\x19.google.protobuf.Duration\x12;\n\x18\x64tmf_final_results_times\x18\r \x03(\x0b\x32\x19.google.protobuf.Duration\x12\x43\n single_utterance_end_time_offset\x18\x0e \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x34\n\x11no_speech_timeout\x18\x0f \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x36\n\x13\x65ndpointing_timeout\x18\x13 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\ris_input_text\x18\x10 \x01(\x08\x12@\n\x1d\x63lient_half_close_time_offset\x18\x11 \x01(\x0b\x32\x19.google.protobuf.Duration\x12J\n\'client_half_close_streaming_time_offset\x18\x12 \x01(\x0b\x32\x19.google.protobuf.Duration\"\xa9\x03\n\x1dStreamingDetectIntentResponse\x12\x13\n\x0bresponse_id\x18\x01 \x01(\t\x12R\n\x12recognition_result\x18\x02 \x01(\x0b\x32\x36.google.cloud.dialogflow.v2.StreamingRecognitionResult\x12=\n\x0cquery_result\x18\x03 \x01(\x0b\x32\'.google.cloud.dialogflow.v2.QueryResult\x12*\n\x0ewebhook_status\x18\x04 \x01(\x0b\x32\x12.google.rpc.Status\x12\x14\n\x0coutput_audio\x18\x05 \x01(\x0c\x12J\n\x13output_audio_config\x18\x06 \x01(\x0b\x32-.google.cloud.dialogflow.v2.OutputAudioConfig\x12R\n\x0e\x64\x65\x62ugging_info\x18\x08 \x01(\x0b\x32:.google.cloud.dialogflow.v2.CloudConversationDebuggingInfo\"\x9d\x03\n\x1aStreamingRecognitionResult\x12X\n\x0cmessage_type\x18\x01 \x01(\x0e\x32\x42.google.cloud.dialogflow.v2.StreamingRecognitionResult.MessageType\x12\x12\n\ntranscript\x18\x02 \x01(\t\x12\x10\n\x08is_final\x18\x03 \x01(\x08\x12\x12\n\nconfidence\x18\x04 \x01(\x02\x12\x44\n\x10speech_word_info\x18\x07 \x03(\x0b\x32*.google.cloud.dialogflow.v2.SpeechWordInfo\x12\x34\n\x11speech_end_offset\x18\x08 \x01(\x0b\x32\x19.google.protobuf.Duration\x12\x15\n\rlanguage_code\x18\n \x01(\t\"X\n\x0bMessageType\x12\x1c\n\x18MESSAGE_TYPE_UNSPECIFIED\x10\x00\x12\x0e\n\nTRANSCRIPT\x10\x01\x12\x1b\n\x17\x45ND_OF_SINGLE_UTTERANCE\x10\x02\":\n\tTextInput\x12\x11\n\x04text\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12\x1a\n\rlanguage_code\x18\x02 \x01(\tB\x03\xe0\x41\x02\"h\n\nEventInput\x12\x11\n\x04name\x18\x01 \x01(\tB\x03\xe0\x41\x02\x12+\n\nparameters\x18\x02 \x01(\x0b\x32\x17.google.protobuf.Struct\x12\x1a\n\rlanguage_code\x18\x03 \x01(\tB\x03\xe0\x41\x02\"F\n\x1eSentimentAnalysisRequestConfig\x12$\n\x1c\x61nalyze_query_text_sentiment\x18\x01 \x01(\x08\"^\n\x17SentimentAnalysisResult\x12\x43\n\x14query_text_sentiment\x18\x01 \x01(\x0b\x32%.google.cloud.dialogflow.v2.Sentiment\"-\n\tSentiment\x12\r\n\x05score\x18\x01 \x01(\x02\x12\x11\n\tmagnitude\x18\x02 \x01(\x02\x32\xe5\x05\n\x08Sessions\x12\xc9\x03\n\x0c\x44\x65tectIntent\x12/.google.cloud.dialogflow.v2.DetectIntentRequest\x1a\x30.google.cloud.dialogflow.v2.DetectIntentResponse\"\xd5\x02\x82\xd3\xe4\x93\x02\xb8\x02\"6/v2/{session=projects/*/agent/sessions/*}:detectIntent:\x01*ZR\"M/v2/{session=projects/*/agent/environments/*/users/*/sessions/*}:detectIntent:\x01*ZG\"B/v2/{session=projects/*/locations/*/agent/sessions/*}:detectIntent:\x01*Z^\"Y/v2/{session=projects/*/locations/*/agent/environments/*/users/*/sessions/*}:detectIntent:\x01*\xda\x41\x13session,query_input\x12\x92\x01\n\x15StreamingDetectIntent\x12\x38.google.cloud.dialogflow.v2.StreamingDetectIntentRequest\x1a\x39.google.cloud.dialogflow.v2.StreamingDetectIntentResponse\"\x00(\x01\x30\x01\x1ax\xca\x41\x19\x64ialogflow.googleapis.com\xd2\x41Yhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\xea\x03\n\x1e\x63om.google.cloud.dialogflow.v2B\x0cSessionProtoP\x01Z>cloud.google.com/go/dialogflow/apiv2/dialogflowpb;dialogflowpb\xf8\x01\x01\xa2\x02\x02\x44\x46\xaa\x02\x1aGoogle.Cloud.Dialogflow.V2\xea\x41\xd1\x02\n!dialogflow.googleapis.com/Session\x12+projects/{project}/agent/sessions/{session}\x12Sprojects/{project}/agent/environments/{environment}/users/{user}/sessions/{session}\x12@projects/{project}/locations/{location}/agent/sessions/{session}\x12hprojects/{project}/locations/{location}/agent/environments/{environment}/users/{user}/sessions/{session}b\x06proto3"
23
23
 
24
24
  pool = Google::Protobuf::DescriptorPool.generated_pool
25
25
 
@@ -21,7 +21,7 @@ module Google
21
21
  module Cloud
22
22
  module Dialogflow
23
23
  module V2
24
- VERSION = "0.27.0"
24
+ VERSION = "0.28.0"
25
25
  end
26
26
  end
27
27
  end
@@ -66,6 +66,20 @@ module Google
66
66
  # a non-empty value will be returned. The user will not be aware of what
67
67
  # non-empty value to expect.
68
68
  NON_EMPTY_DEFAULT = 7
69
+
70
+ # Denotes that the field in a resource (a message annotated with
71
+ # google.api.resource) is used in the resource name to uniquely identify the
72
+ # resource. For AIP-compliant APIs, this should only be applied to the
73
+ # `name` field on the resource.
74
+ #
75
+ # This behavior should not be applied to references to other resources within
76
+ # the message.
77
+ #
78
+ # The identifier field of resources often have different field behavior
79
+ # depending on the request it is embedded in (e.g. for Create methods name
80
+ # is optional and unused, while for Update methods it is required). Instead
81
+ # of method-specific annotations, only `IDENTIFIER` is required.
82
+ IDENTIFIER = 8
69
83
  end
70
84
  end
71
85
  end
@@ -206,6 +206,9 @@ module Google
206
206
  # @!attribute [rw] summarization_feedback
207
207
  # @return [::Google::Cloud::Dialogflow::V2::AgentAssistantFeedback::SummarizationFeedback]
208
208
  # Optional. Feedback for conversation summarization.
209
+ # @!attribute [rw] knowledge_search_feedback
210
+ # @return [::Google::Cloud::Dialogflow::V2::AgentAssistantFeedback::KnowledgeSearchFeedback]
211
+ # Optional. Feedback for knowledge search.
209
212
  class AgentAssistantFeedback
210
213
  include ::Google::Protobuf::MessageExts
211
214
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -225,6 +228,25 @@ module Google
225
228
  extend ::Google::Protobuf::MessageExts::ClassMethods
226
229
  end
227
230
 
231
+ # Feedback for knowledge search.
232
+ # @!attribute [rw] answer_copied
233
+ # @return [::Boolean]
234
+ # Whether the answer was copied by the human agent or not.
235
+ # If the value is set to be true,
236
+ # {::Google::Cloud::Dialogflow::V2::AnswerFeedback#clicked AnswerFeedback.clicked}
237
+ # will be updated to be true.
238
+ # @!attribute [rw] clicked_uris
239
+ # @return [::Array<::String>]
240
+ # The URIs clicked by the human agent. The value is appended for each
241
+ # {::Google::Cloud::Dialogflow::V2::UpdateAnswerRecordRequest UpdateAnswerRecordRequest}.
242
+ # If the value is not empty,
243
+ # {::Google::Cloud::Dialogflow::V2::AnswerFeedback#clicked AnswerFeedback.clicked}
244
+ # will be updated to be true.
245
+ class KnowledgeSearchFeedback
246
+ include ::Google::Protobuf::MessageExts
247
+ extend ::Google::Protobuf::MessageExts::ClassMethods
248
+ end
249
+
228
250
  # Relevance of an answer.
229
251
  module AnswerRelevance
230
252
  # Answer relevance unspecified.
@@ -269,6 +291,9 @@ module Google
269
291
  # @!attribute [r] faq_answer
270
292
  # @return [::Google::Cloud::Dialogflow::V2::FaqAnswer]
271
293
  # Output only. The FAQ answer.
294
+ # @!attribute [r] dialogflow_assist_answer
295
+ # @return [::Google::Cloud::Dialogflow::V2::DialogflowAssistAnswer]
296
+ # Output only. Dialogflow assist answer.
272
297
  class AgentAssistantRecord
273
298
  include ::Google::Protobuf::MessageExts
274
299
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -283,6 +283,10 @@ module Google
283
283
  # [Cloud Speech API
284
284
  # documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model)
285
285
  # for more details.
286
+ # @!attribute [rw] use_timeout_based_endpointing
287
+ # @return [::Boolean]
288
+ # Use timeout based endpointing, interpreting endpointer sensitivy as
289
+ # seconds of timeout value.
286
290
  class SpeechToTextConfig
287
291
  include ::Google::Protobuf::MessageExts
288
292
  extend ::Google::Protobuf::MessageExts::ClassMethods
@@ -432,6 +432,105 @@ module Google
432
432
  end
433
433
  end
434
434
  end
435
+
436
+ # The request message for
437
+ # {::Google::Cloud::Dialogflow::V2::Conversations::Client#search_knowledge Conversations.SearchKnowledge}.
438
+ # @!attribute [rw] parent
439
+ # @return [::String]
440
+ # The parent resource contains the conversation profile
441
+ # Format: 'projects/<Project ID>' or `projects/<Project
442
+ # ID>/locations/<Location ID>`.
443
+ # @!attribute [rw] query
444
+ # @return [::Google::Cloud::Dialogflow::V2::TextInput]
445
+ # Required. The natural language text query for knowledge search.
446
+ # @!attribute [rw] conversation_profile
447
+ # @return [::String]
448
+ # Required. The conversation profile used to configure the search.
449
+ # Format: `projects/<Project ID>/locations/<Location
450
+ # ID>/conversationProfiles/<Conversation Profile ID>`.
451
+ # @!attribute [rw] session_id
452
+ # @return [::String]
453
+ # The ID of the search session.
454
+ # The session_id can be combined with Dialogflow V3 Agent ID retrieved from
455
+ # conversation profile or on its own to identify a search session. The search
456
+ # history of the same session will impact the search result. It's up to the
457
+ # API caller to choose an appropriate `Session ID`. It can be a random number
458
+ # or some type of session identifiers (preferably hashed). The length must
459
+ # not exceed 36 characters.
460
+ # @!attribute [rw] conversation
461
+ # @return [::String]
462
+ # The conversation (between human agent and end user) where the search
463
+ # request is triggered. Format: `projects/<Project ID>/locations/<Location
464
+ # ID>/conversations/<Conversation ID>`.
465
+ # @!attribute [rw] latest_message
466
+ # @return [::String]
467
+ # The name of the latest conversation message when the request is
468
+ # triggered.
469
+ # Format: `projects/<Project ID>/locations/<Location
470
+ # ID>/conversations/<Conversation ID>/messages/<Message ID>`.
471
+ class SearchKnowledgeRequest
472
+ include ::Google::Protobuf::MessageExts
473
+ extend ::Google::Protobuf::MessageExts::ClassMethods
474
+ end
475
+
476
+ # The response message for
477
+ # {::Google::Cloud::Dialogflow::V2::Conversations::Client#search_knowledge Conversations.SearchKnowledge}.
478
+ # @!attribute [rw] answers
479
+ # @return [::Array<::Google::Cloud::Dialogflow::V2::SearchKnowledgeAnswer>]
480
+ # Most relevant snippets extracted from articles in the given knowledge base,
481
+ # ordered by confidence.
482
+ class SearchKnowledgeResponse
483
+ include ::Google::Protobuf::MessageExts
484
+ extend ::Google::Protobuf::MessageExts::ClassMethods
485
+ end
486
+
487
+ # Represents a SearchKnowledge answer.
488
+ # @!attribute [rw] answer
489
+ # @return [::String]
490
+ # The piece of text from the knowledge base documents that answers
491
+ # the search query
492
+ # @!attribute [rw] answer_type
493
+ # @return [::Google::Cloud::Dialogflow::V2::SearchKnowledgeAnswer::AnswerType]
494
+ # The type of the answer.
495
+ # @!attribute [rw] answer_sources
496
+ # @return [::Array<::Google::Cloud::Dialogflow::V2::SearchKnowledgeAnswer::AnswerSource>]
497
+ # All sources used to generate the answer.
498
+ # @!attribute [rw] answer_record
499
+ # @return [::String]
500
+ # The name of the answer record.
501
+ # Format: `projects/<Project ID>/locations/<location ID>/answer
502
+ # Records/<Answer Record ID>`
503
+ class SearchKnowledgeAnswer
504
+ include ::Google::Protobuf::MessageExts
505
+ extend ::Google::Protobuf::MessageExts::ClassMethods
506
+
507
+ # The sources of the answers.
508
+ # @!attribute [rw] title
509
+ # @return [::String]
510
+ # The title of the article.
511
+ # @!attribute [rw] uri
512
+ # @return [::String]
513
+ # The URI of the article.
514
+ # @!attribute [rw] snippet
515
+ # @return [::String]
516
+ # The relevant snippet of the article.
517
+ class AnswerSource
518
+ include ::Google::Protobuf::MessageExts
519
+ extend ::Google::Protobuf::MessageExts::ClassMethods
520
+ end
521
+
522
+ # The type of the answer.
523
+ module AnswerType
524
+ # The answer has a unspecified type.
525
+ ANSWER_TYPE_UNSPECIFIED = 0
526
+
527
+ # The answer is from FAQ doucments.
528
+ FAQ = 1
529
+
530
+ # The answer is from generative model.
531
+ GENERATIVE = 2
532
+ end
533
+ end
435
534
  end
436
535
  end
437
536
  end