feat: extended CreateAgent timeout to 180 seconds

feat: added debug info to StreamingDetectIntent
feat: added dtmf digits to WebhookRequest
feat: added FLOW as a new DiffType in TestRunDifference

PiperOrigin-RevId: 529897408
This commit is contained in:
Google APIs 2023-05-05 22:26:48 -07:00 committed by Copybara-Service
parent d0b6fe1d40
commit 4de416f616
25 changed files with 150 additions and 40 deletions

View file

@ -298,6 +298,7 @@ php_gapic_library(
name = "cx_php_gapic",
srcs = [":cx_proto_with_info"],
grpc_service_config = "dialogflow_grpc_service_config.json",
migration_mode = "PRE_MIGRATION_SURFACE_ONLY",
rest_numeric_enums = True,
service_yaml = "dialogflow_v3beta1.yaml",
transport = "grpc+rest",

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -416,7 +416,7 @@ message ExportAgentResponse {
// The exported agent.
oneof agent {
// The URI to a file containing the exported agent. This field is populated
// only if `agent_uri` is specified in
// if `agent_uri` is specified in
// [ExportAgentRequest][google.cloud.dialogflow.cx.v3beta1.ExportAgentRequest].
string agent_uri = 1;

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -190,6 +190,12 @@ message InputAudioConfig {
// [Cloud Speech API
// documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model)
// for more details.
// If you specify a model, the following models typically have the best
// performance:
//
// - phone_call (best for Agent Assist and telephony)
// - latest_short (best for Dialogflow non-telephony)
// - command_and_search (best for very short utterances and commands)
string model = 7;
// Optional. Which variant of the [Speech
@ -317,10 +323,20 @@ message OutputAudioConfig {
SynthesizeSpeechConfig synthesize_speech_config = 3;
}
// Settings related to speech generating.
// Settings related to speech synthesizing.
message TextToSpeechSettings {
// Configuration of how speech should be synthesized, mapping from
// language (https://dialogflow.com/docs/reference/language) to
// Configuration of how speech should be synthesized, mapping from language
// (https://cloud.google.com/dialogflow/cx/docs/reference/language) to
// SynthesizeSpeechConfig.
//
// These settings affect:
//
// - The synthesize configuration used in [phone
// gateway](https://cloud.google.com/dialogflow/cx/docs/concept/integration/phone-gateway).
//
// - You no longer need to specify
// [OutputAudioConfig.synthesize_speech_config][google.cloud.dialogflow.cx.v3beta1.OutputAudioConfig.synthesize_speech_config]
// when invoking API calls. Your agent will use the pre-configured options
// for speech synthesizing.
map<string, SynthesizeSpeechConfig> synthesize_speech_configs = 1;
}

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -70,6 +70,23 @@
]
}
},
{
"name": [
{
"service": "google.cloud.dialogflow.cx.v3beta1.Agents",
"method": "CreateAgent"
}
],
"timeout": "180s",
"retryPolicy": {
"initialBackoff": "0.100s",
"maxBackoff": "60s",
"backoffMultiplier": 1.3,
"retryableStatusCodes": [
"UNAVAILABLE"
]
}
},
{
"name": [
{

View file

@ -70,15 +70,12 @@ documentation:
- selector: google.cloud.location.Locations.ListLocations
description: Lists information about the supported locations for this service.
- selector: google.longrunning.Operations.ListOperations
description: |-
Lists operations that match the specified filter in the request. If
the server doesn't support this method, it returns `UNIMPLEMENTED`.
backend:
rules:
- selector: 'google.cloud.dialogflow.cx.v3beta1.Agents.*'
deadline: 60.0
- selector: google.cloud.dialogflow.cx.v3beta1.Agents.CreateAgent
deadline: 180.0
- selector: google.cloud.dialogflow.cx.v3beta1.Changelogs.GetChangelog
deadline: 60.0
- selector: google.cloud.dialogflow.cx.v3beta1.Changelogs.ListChangelogs

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -31,9 +31,7 @@ option ruby_package = "Google::Cloud::Dialogflow::CX::V3beta1";
// exports objects (e.g. exported agent or transcripts) outside of Dialogflow.
message GcsDestination {
// Required. The Google Cloud Storage URI for the exported objects. A URI is
// of the form:
// gs://bucket/object-name-or-prefix
// Whether a full object name, or just a prefix, its usage depends on the
// Dialogflow operation.
// of the form: `gs://bucket/object-name-or-prefix` Whether a full object
// name, or just a prefix, its usage depends on the Dialogflow operation.
string uri = 1 [(google.api.field_behavior) = REQUIRED];
}

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -267,6 +267,74 @@ message StreamingDetectIntentRequest {
// if some `Fulfillment`s in the agent have been configured to return partial
// responses.
bool enable_partial_response = 5;
// If true, `StreamingDetectIntentResponse.debugging_info` will get populated.
bool enable_debugging_info = 8;
}
// Cloud conversation info for easier debugging.
// It will get populated in `StreamingDetectIntentResponse` or
// `StreamingAnalyzeContentResponse` when the flag `enable_debugging_info` is
// set to true in corresponding requests.
message CloudConversationDebuggingInfo {
// Number of input audio data chunks in streaming requests.
int32 audio_data_chunks = 1;
// Time offset of the end of speech utterance relative to the
// beginning of the first audio chunk.
google.protobuf.Duration result_end_time_offset = 2;
// Duration of first audio chunk.
google.protobuf.Duration first_audio_duration = 3;
// Whether client used single utterance mode.
bool single_utterance = 5;
// Time offsets of the speech partial results relative to the beginning of
// the stream.
repeated google.protobuf.Duration speech_partial_results_end_times = 6;
// Time offsets of the speech final results (is_final=true) relative to the
// beginning of the stream.
repeated google.protobuf.Duration speech_final_results_end_times = 7;
// Total number of partial responses.
int32 partial_responses = 8;
// Time offset of Speaker ID stream close time relative to the Speech stream
// close time in milliseconds. Only meaningful for conversations involving
// passive verification.
int32 speaker_id_passive_latency_ms_offset = 9;
// Whether a barge-in event is triggered in this request.
bool bargein_event_triggered = 10;
// Whether speech uses single utterance mode.
bool speech_single_utterance = 11;
// Time offsets of the DTMF partial results relative to the beginning of
// the stream.
repeated google.protobuf.Duration dtmf_partial_results_times = 12;
// Time offsets of the DTMF final results relative to the beginning of
// the stream.
repeated google.protobuf.Duration dtmf_final_results_times = 13;
// Time offset of the end-of-single-utterance signal relative to the
// beginning of the stream.
google.protobuf.Duration single_utterance_end_time_offset = 14;
// No speech timeout settings observed at runtime.
google.protobuf.Duration no_speech_timeout = 15;
// Whether the streaming terminates with an injected text query.
bool is_input_text = 16;
// Client half close time in terms of input audio duration.
google.protobuf.Duration client_half_close_time_offset = 17;
// Client half close time in terms of API streaming duration.
google.protobuf.Duration client_half_close_streaming_time_offset = 18;
}
// The top-level message returned from the
@ -306,6 +374,10 @@ message StreamingDetectIntentResponse {
// The response from detect intent.
DetectIntentResponse detect_intent_response = 2;
}
// Debugging info that would get populated when
// `StreamingDetectIntentRequest.enable_debugging_info` is set to true.
CloudConversationDebuggingInfo debugging_info = 4;
}
// Contains a speech recognition result corresponding to a portion of the audio
@ -538,6 +610,7 @@ message QueryParameters {
//
// 4. An event to be triggered.
//
// 5. DTMF digits to invoke an intent and fill in parameter value.
message QueryInput {
// Required. The input specification.
oneof input {
@ -589,8 +662,9 @@ message QueryResult {
// as input, this field will contain the name of the event.
string trigger_event = 14;
// If a [DTMF][DTMFInput] was provided as input, this field will contain
// a copy of the [DTMFInput][].
// If a [DTMF][google.cloud.dialogflow.cx.v3beta1.DtmfInput] was provided as
// input, this field will contain a copy of the
// [DtmfInput][google.cloud.dialogflow.cx.v3beta1.DtmfInput].
DtmfInput dtmf = 23;
}

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -398,6 +398,9 @@ message TestRunDifference {
// The message utterance.
UTTERANCE = 4;
// The flow.
FLOW = 5;
}
// The type of diff.
@ -438,7 +441,7 @@ message TransitionCoverage {
// The end node of a transition.
TransitionNode target = 2;
// Whether or not the transition is covered by at least one of the
// Whether the transition is covered by at least one of the
// agent's test cases.
bool covered = 3;
@ -470,7 +473,7 @@ message TransitionRouteGroupCoverage {
// Intent route or condition route.
TransitionRoute transition_route = 1;
// Whether or not the transition route is covered by at least one of the
// Whether the transition route is covered by at least one of the
// agent's test cases.
bool covered = 2;
}
@ -504,7 +507,7 @@ message IntentCoverage {
type: "dialogflow.googleapis.com/Intent"
}];
// Whether or not the intent is covered by at least one of the agent's
// Whether the intent is covered by at least one of the agent's
// test cases.
bool covered = 2;
}

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.

View file

@ -1,4 +1,4 @@
// Copyright 2022 Google LLC
// Copyright 2023 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
@ -373,6 +373,10 @@ message WebhookRequest {
// If an [event][google.cloud.dialogflow.cx.v3beta1.EventInput] was provided
// as input, this field will contain the name of the event.
string trigger_event = 14;
// If [DTMF][google.cloud.dialogflow.cx.v3beta1.DtmfInput] was provided as
// input, this field will contain the DTMF digits.
string dtmf_digits = 17;
}
// The language code specified in the [original