diff options
author | Google APIs <noreply@google.com> | 2019-03-29 17:05:35 -0700 |
---|---|---|
committer | Copybara-Service <copybara-piper@google.com> | 2019-03-29 17:06:00 -0700 |
commit | 15423e767825f60daf8eda8fdf76ccf8aaf9fb71 (patch) | |
tree | 0593a4fc9baf46903e2ea429da651485594f6f14 | |
parent | 15970e050e02ed3be8bb2fbaaabe394a33ccd5f6 (diff) | |
download | googleapis-15423e767825f60daf8eda8fdf76ccf8aaf9fb71.tar.gz |
Synchronize new proto/yaml changes.
PiperOrigin-RevId: 241077677
-rw-r--r-- | google/cloud/dialogflow/dialogflow_v2beta1.yaml | 156 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/agent.proto | 76 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/audio_config.proto | 159 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/context.proto | 61 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/document.proto | 93 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/entity_type.proto | 198 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/intent.proto | 178 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/knowledge_base.proto | 56 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/session.proto | 172 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/session_entity_type.proto | 57 | ||||
-rw-r--r-- | google/cloud/dialogflow/v2beta1/webhook.proto | 26 |
11 files changed, 692 insertions, 540 deletions
diff --git a/google/cloud/dialogflow/dialogflow_v2beta1.yaml b/google/cloud/dialogflow/dialogflow_v2beta1.yaml index e598f52a2..746fed73b 100644 --- a/google/cloud/dialogflow/dialogflow_v2beta1.yaml +++ b/google/cloud/dialogflow/dialogflow_v2beta1.yaml @@ -14,9 +14,9 @@ apis: - name: google.cloud.dialogflow.v2beta1.Sessions types: -- name: google.cloud.dialogflow.v2beta1.ExportAgentResponse - name: google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse - name: google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse +- name: google.cloud.dialogflow.v2beta1.ExportAgentResponse - name: google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata - name: google.cloud.dialogflow.v2beta1.OriginalDetectIntentRequest - name: google.cloud.dialogflow.v2beta1.WebhookRequest @@ -24,17 +24,19 @@ types: documentation: summary: |- - An end-to-end development suite for conversational interfaces (e.g., - chatbots, voice-powered apps and devices). + Builds conversational interfaces (for example, chatbots, and voice-powered + apps and devices). overview: |- - [Dialogflow](http://dialogflow.com/) is a natural language understanding - platform that makes it easy for you to design and integrate a conversational - user interface into your mobile app, web application, device, bot, and so - on. Using Dialogflow you can provide users new and engaging ways to interact - with your product using both voice recognition and text input. + [Dialogflow](http://dialogflow.com/) is a natural language + understanding platform that makes it easy for you to design and integrate + a conversational user interface into your mobile app, web application, + device, bot, and so on. Using Dialogflow you can provide users new and + engaging ways to interact with your product using both voice recognition + and text input. - For information on how Dialogflow agents, intents, entities, and so on work, - see the [Dialogflow getting started + For information on how Dialogflow agents, intents, entities, and so on + work, see the [Dialogflow getting + started guide](https://dialogflow.com/docs/getting-started/basics) in the dialogflow.com documentation. @@ -50,26 +52,28 @@ documentation: incorporate the Dialogflow into your product. After you have created a Google Cloud project and a Dialogflow agent, you can use the API to create intents, entities, and so on, and then pass user input to your Dialogflow - agent to determine user intent using the - [detectIntent](https://cloud.google.com/dialogflow-enterprise/docs/reference/rest/v2beta1/projects.agent.sessions/detectIntent) - REST API, or the - [StreamingDetectIntentRequest](https://cloud.google.com/dialogflow-enterprise/docs/reference/rpc/google.cloud.dialogflow.v2beta1#google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest) - gRPC API. + agent to determine user intent using + the + [detectIntent](https://cloud.google.com/dialogflow-enterprise/docs/reference/rest/v2beta1/projects.agent.sessions/detectIntent) REST + API, or the + [StreamingDetectIntentRequest](https://cloud.google.com/dialogflow-enterprise/docs/reference/rpc/google.cloud.dialogflow.v2beta1#google.cloud.dialogflow.v2beta1.StreamingDetectIntentRequest) gRPC + API. ## Getting Started * For information on setting up a Google Cloud Platform project and - creating an agent using the Dialogflow Enterprise Edition, see - [Quickstart](https://cloud.google.com/dialogflow-enterprise/docs/quickstart). - - * For information on creating an agent using the Dialogflow Standard - Edition, see [Building Your First + creating an agent using the Dialogflow Enterprise Edition, see + [Quickstart](https://cloud.google.com/dialogflow-enterprise/docs/quickstart). * + For information on creating an agent using the Dialogflow Standard + Edition, see [Building Your First Agent](https://dialogflow.com/docs/getting-started/building-your-first-agent) backend: rules: - selector: google.longrunning.Operations.GetOperation deadline: 60.0 + - selector: google.longrunning.Operations.WaitOperation + deadline: 60.0 - selector: google.cloud.dialogflow.v2beta1.Agents.GetAgent deadline: 60.0 - selector: google.cloud.dialogflow.v2beta1.Agents.SearchAgents @@ -94,13 +98,19 @@ backend: deadline: 60.0 - selector: google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Documents.ListDocuments + - selector: google.cloud.dialogflow.v2beta1.Intents.ListIntents deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Documents.GetDocument + - selector: google.cloud.dialogflow.v2beta1.Intents.GetIntent deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Documents.CreateDocument + - selector: google.cloud.dialogflow.v2beta1.Intents.CreateIntent deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Documents.DeleteDocument + - selector: google.cloud.dialogflow.v2beta1.Intents.UpdateIntent + deadline: 60.0 + - selector: google.cloud.dialogflow.v2beta1.Intents.DeleteIntent + deadline: 60.0 + - selector: google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents + deadline: 60.0 + - selector: google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents deadline: 60.0 - selector: google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes deadline: 60.0 @@ -122,54 +132,102 @@ backend: deadline: 60.0 - selector: google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.ListIntents + - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.GetIntent + - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.CreateIntent + - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.UpdateIntent + - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.DeleteIntent + - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents + - selector: google.cloud.dialogflow.v2beta1.Sessions.DetectIntent + deadline: 230.0 + - selector: google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent + deadline: 230.0 + - selector: google.cloud.dialogflow.v2beta1.Documents.ListDocuments deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents + - selector: google.cloud.dialogflow.v2beta1.Documents.GetDocument deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases + - selector: google.cloud.dialogflow.v2beta1.Documents.CreateDocument deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase + - selector: google.cloud.dialogflow.v2beta1.Documents.DeleteDocument deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase + - selector: google.cloud.dialogflow.v2beta1.Documents.UpdateDocument deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase + - selector: google.cloud.dialogflow.v2beta1.Documents.ReloadDocument deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes + - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType + - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.GetKnowledgeBase deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType + - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType + - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType + - selector: google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase deadline: 60.0 - - selector: google.cloud.dialogflow.v2beta1.Sessions.DetectIntent - deadline: 230.0 - - selector: google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent - deadline: 230.0 http: rules: - selector: google.longrunning.Operations.GetOperation get: '/v2beta1/{name=projects/*/operations/*}' - additional_bindings: - - get: '/v2/{name=projects/*/operations/*}' - authentication: rules: - - selector: '*' + - selector: 'google.cloud.dialogflow.v2beta1.Agents.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.Contexts.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.Documents.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.EntityTypes.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.Intents.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.KnowledgeBases.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: 'google.cloud.dialogflow.v2beta1.SessionEntityTypes.*' + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.v2beta1.Sessions.DetectIntent + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.longrunning.Operations.GetOperation + oauth: + canonical_scopes: |- + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow + - selector: google.longrunning.Operations.WaitOperation oauth: canonical_scopes: |- - https://www.googleapis.com/auth/cloud-platform + https://www.googleapis.com/auth/cloud-platform, + https://www.googleapis.com/auth/dialogflow diff --git a/google/cloud/dialogflow/v2beta1/agent.proto b/google/cloud/dialogflow/v2beta1/agent.proto index b95792f47..9e4c7a2a0 100644 --- a/google/cloud/dialogflow/v2beta1/agent.proto +++ b/google/cloud/dialogflow/v2beta1/agent.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -35,11 +37,8 @@ option objc_class_prefix = "DF"; // in your app, product, or service to determine user intent and respond to the // user in a natural way. // -// After you create an agent, you can add -// [Intents][google.cloud.dialogflow.v2beta1.Intents], -// [Contexts][google.cloud.dialogflow.v2beta1.Contexts], [Entity -// Types][google.cloud.dialogflow.v2beta1.EntityTypes], -// [Webhooks][google.cloud.dialogflow.v2beta1.WebhookRequest], and so on to +// After you create an agent, you can add [Intents][google.cloud.dialogflow.v2beta1.Intents], [Contexts][google.cloud.dialogflow.v2beta1.Contexts], +// [Entity Types][google.cloud.dialogflow.v2beta1.EntityTypes], [Webhooks][google.cloud.dialogflow.v2beta1.WebhookRequest], and so on to // manage the flow of a conversation and match user input to predefined intents // and actions. // @@ -49,17 +48,18 @@ option objc_class_prefix = "DF"; // Editions](https://cloud.google.com/dialogflow-enterprise/docs/editions). // // You can save your agent for backup or versioning by exporting the agent by -// using the [ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent] -// method. You can import a saved agent by using the -// [ImportAgent][google.cloud.dialogflow.v2beta1.Agents.ImportAgent] method. +// using the [ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent] method. You can import a saved +// agent by using the [ImportAgent][google.cloud.dialogflow.v2beta1.Agents.ImportAgent] method. // // Dialogflow provides several -// [prebuilt agents](https://dialogflow.com/docs/prebuilt-agents) for common -// conversation scenarios such as determining a date and time, converting -// currency, and so on. +// [prebuilt +// agents](https://cloud.google.com/dialogflow-enterprise/docs/agents-prebuilt) +// for common conversation scenarios such as determining a date and time, +// converting currency, and so on. // // For more information about agents, see the -// [Dialogflow documentation](https://dialogflow.com/docs/agents). +// [Dialogflow +// documentation](https://cloud.google.com/dialogflow-enterprise/docs/agents-overview). service Agents { // Retrieves the specified agent. rpc GetAgent(GetAgentRequest) returns (Agent) { @@ -84,8 +84,7 @@ service Agents { // Trains the specified agent. // // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> rpc TrainAgent(TrainAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*}/agent:train" @@ -96,9 +95,7 @@ service Agents { // Exports the specified agent to a ZIP file. // // - // Operation <response: - // [ExportAgentResponse][google.cloud.dialogflow.v2beta1.ExportAgentResponse], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> + // Operation <response: [ExportAgentResponse][google.cloud.dialogflow.v2beta1.ExportAgentResponse]> rpc ExportAgent(ExportAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*}/agent:export" @@ -113,8 +110,7 @@ service Agents { // versions from ImportAgentRequest. // // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> rpc ImportAgent(ImportAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*}/agent:import" @@ -128,8 +124,7 @@ service Agents { // entity types in the older version are deleted. // // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> rpc RestoreAgent(RestoreAgentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*}/agent:restore" @@ -162,9 +157,10 @@ message Agent { string display_name = 2; // Required. The default language of the agent as a language tag. See - // [Language Support](https://dialogflow.com/docs/reference/language) for a - // list of the currently supported language codes. - // This field cannot be set by the `Update` method. + // [Language + // Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // for a list of the currently supported language codes. This field cannot be + // set by the `Update` method. string default_language_code = 3; // Optional. The list of all languages supported by this agent (except for the @@ -182,7 +178,9 @@ message Agent { // Optional. The URI of the agent's avatar. // Avatars are used throughout the Dialogflow console and in the self-hosted - // [Web Demo](https://dialogflow.com/docs/integrations/web-demo) integration. + // [Web + // Demo](https://cloud.google.com/dialogflow-enterprise/docs/integrations/web-demo) + // integration. string avatar_uri = 7; // Optional. Determines whether this agent should log conversation queries. @@ -194,23 +192,21 @@ message Agent { // Optional. To filter out false positive results and still get variety in // matched natural language inputs for your agent, you can tune the machine // learning classification threshold. If the returned score value is less than - // the threshold value, then a fallback intent is be triggered or, if there + // the threshold value, then a fallback intent will be triggered or, if there // are no fallback intents defined, no intent will be triggered. The score // values range from 0.0 (completely uncertain) to 1.0 (completely certain). // If set to 0.0, the default of 0.3 is used. float classification_threshold = 10; } -// The request message for -// [Agents.GetAgent][google.cloud.dialogflow.v2beta1.Agents.GetAgent]. +// The request message for [Agents.GetAgent][google.cloud.dialogflow.v2beta1.Agents.GetAgent]. message GetAgentRequest { // Required. The project that the agent to fetch is associated with. // Format: `projects/<Project ID>`. string parent = 1; } -// The request message for -// [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents]. +// The request message for [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents]. message SearchAgentsRequest { // Required. The project to list agents from. // Format: `projects/<Project ID or '-'>`. @@ -224,8 +220,7 @@ message SearchAgentsRequest { string page_token = 3; } -// The response message for -// [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents]. +// The response message for [Agents.SearchAgents][google.cloud.dialogflow.v2beta1.Agents.SearchAgents]. message SearchAgentsResponse { // The list of agents. There will be a maximum number of items returned based // on the page_size field in the request. @@ -236,16 +231,14 @@ message SearchAgentsResponse { string next_page_token = 2; } -// The request message for -// [Agents.TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent]. +// The request message for [Agents.TrainAgent][google.cloud.dialogflow.v2beta1.Agents.TrainAgent]. message TrainAgentRequest { // Required. The project that the agent to train is associated with. // Format: `projects/<Project ID>`. string parent = 1; } -// The request message for -// [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent]. +// The request message for [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent]. message ExportAgentRequest { // Required. The project that the agent to export is associated with. // Format: `projects/<Project ID>`. @@ -259,8 +252,7 @@ message ExportAgentRequest { string agent_uri = 2; } -// The response message for -// [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent]. +// The response message for [Agents.ExportAgent][google.cloud.dialogflow.v2beta1.Agents.ExportAgent]. message ExportAgentResponse { // Required. The exported agent. oneof agent { @@ -286,8 +278,7 @@ message ExportAgentResponse { } } -// The request message for -// [Agents.ImportAgent][google.cloud.dialogflow.v2beta1.Agents.ImportAgent]. +// The request message for [Agents.ImportAgent][google.cloud.dialogflow.v2beta1.Agents.ImportAgent]. message ImportAgentRequest { // Required. The project that the agent to import is associated with. // Format: `projects/<Project ID>`. @@ -317,8 +308,7 @@ message ImportAgentRequest { } } -// The request message for -// [Agents.RestoreAgent][google.cloud.dialogflow.v2beta1.Agents.RestoreAgent]. +// The request message for [Agents.RestoreAgent][google.cloud.dialogflow.v2beta1.Agents.RestoreAgent]. message RestoreAgentRequest { // Required. The project that the agent to restore is associated with. // Format: `projects/<Project ID>`. diff --git a/google/cloud/dialogflow/v2beta1/audio_config.proto b/google/cloud/dialogflow/v2beta1/audio_config.proto index c468276bb..8045290b2 100644 --- a/google/cloud/dialogflow/v2beta1/audio_config.proto +++ b/google/cloud/dialogflow/v2beta1/audio_config.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,6 +11,7 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; @@ -26,6 +27,113 @@ option java_outer_classname = "AudioConfigProto"; option java_package = "com.google.cloud.dialogflow.v2beta1"; option objc_class_prefix = "DF"; +// Audio encoding of the audio content sent in the conversational query request. +// Refer to the +// [Cloud Speech API +// documentation](https://cloud.google.com/speech-to-text/docs/basics) for more +// details. +enum AudioEncoding { + // Not specified. + AUDIO_ENCODING_UNSPECIFIED = 0; + + // Uncompressed 16-bit signed little-endian samples (Linear PCM). + AUDIO_ENCODING_LINEAR_16 = 1; + + // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio + // Codec) is the recommended encoding because it is lossless (therefore + // recognition is not compromised) and requires only about half the + // bandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and + // 24-bit samples, however, not all fields in `STREAMINFO` are supported. + AUDIO_ENCODING_FLAC = 2; + + // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law. + AUDIO_ENCODING_MULAW = 3; + + // Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000. + AUDIO_ENCODING_AMR = 4; + + // Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000. + AUDIO_ENCODING_AMR_WB = 5; + + // Opus encoded audio frames in Ogg container + // ([OggOpus](https://wiki.xiph.org/OggOpus)). + // `sample_rate_hertz` must be 16000. + AUDIO_ENCODING_OGG_OPUS = 6; + + // Although the use of lossy encodings is not recommended, if a very low + // bitrate encoding is required, `OGG_OPUS` is highly preferred over + // Speex encoding. The [Speex](https://speex.org/) encoding supported by + // Dialogflow API has a header byte in each block, as in MIME type + // `audio/x-speex-with-header-byte`. + // It is a variant of the RTP Speex encoding defined in + // [RFC 5574](https://tools.ietf.org/html/rfc5574). + // The stream is a sequence of blocks, one block per RTP packet. Each block + // starts with a byte containing the length of the block, in bytes, followed + // by one or more frames of Speex data, padded to an integral number of + // bytes (octets) as specified in RFC 5574. In other words, each RTP header + // is replaced with a single byte containing the block length. Only Speex + // wideband is supported. `sample_rate_hertz` must be 16000. + AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE = 7; +} + +// Instructs the speech recognizer how to process the audio content. +message InputAudioConfig { + // Required. Audio encoding of the audio content to process. + AudioEncoding audio_encoding = 1; + + // Required. Sample rate (in Hertz) of the audio content sent in the query. + // Refer to + // [Cloud Speech API + // documentation](https://cloud.google.com/speech-to-text/docs/basics) for + // more details. + int32 sample_rate_hertz = 2; + + // Required. The language of the supplied audio. Dialogflow does not do + // translations. See [Language + // Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // for a list of the currently supported language codes. Note that queries in + // the same session do not necessarily need to specify the same language. + string language_code = 3; + + // Optional. The collection of phrase hints which are used to boost accuracy + // of speech recognition. + // Refer to + // [Cloud Speech API + // documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints) + // for more details. + repeated string phrase_hints = 4; + + // Optional. Which Speech model to select for the given request. Select the + // model best suited to your domain to get best results. If a model is not + // explicitly specified, then we auto-select a model based on the parameters + // in the InputAudioConfig. + // If enhanced speech model is enabled for the agent and an enhanced + // version of the specified model for the language does not exist, then the + // speech is recognized using the standard version of the specified model. + // Refer to + // [Cloud Speech API + // documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model) + // for more details. + string model = 7; +} + +// Gender of the voice as described in +// [SSML voice element](https://www.w3.org/TR/speech-synthesis11/#edef_voice). +enum SsmlVoiceGender { + // An unspecified gender, which means that the client doesn't care which + // gender the selected voice will have. + SSML_VOICE_GENDER_UNSPECIFIED = 0; + + // A male voice. + SSML_VOICE_GENDER_MALE = 1; + + // A female voice. + SSML_VOICE_GENDER_FEMALE = 2; + + // A gender-neutral voice. + SSML_VOICE_GENDER_NEUTRAL = 3; +} + // Description of which voice to use for speech synthesis. message VoiceSelectionParams { // Optional. The name of the voice. If not set, the service will choose a @@ -72,39 +180,6 @@ message SynthesizeSpeechConfig { VoiceSelectionParams voice = 4; } -// Instructs the speech synthesizer how to generate the output audio content. -message OutputAudioConfig { - // Required. Audio encoding of the synthesized audio content. - OutputAudioEncoding audio_encoding = 1; - - // Optional. The synthesis sample rate (in hertz) for this audio. If not - // provided, then the synthesizer will use the default sample rate based on - // the audio encoding. If this is different from the voice's natural sample - // rate, then the synthesizer will honor this request by converting to the - // desired sample rate (which might result in worse audio quality). - int32 sample_rate_hertz = 2; - - // Optional. Configuration of how speech should be synthesized. - SynthesizeSpeechConfig synthesize_speech_config = 3; -} - -// Gender of the voice as described in -// [SSML voice element](https://www.w3.org/TR/speech-synthesis11/#edef_voice). -enum SsmlVoiceGender { - // An unspecified gender, which means that the client doesn't care which - // gender the selected voice will have. - SSML_VOICE_GENDER_UNSPECIFIED = 0; - - // A male voice. - SSML_VOICE_GENDER_MALE = 1; - - // A female voice. - SSML_VOICE_GENDER_FEMALE = 2; - - // A gender-neutral voice. - SSML_VOICE_GENDER_NEUTRAL = 3; -} - // Audio encoding of the output audio format in Text-To-Speech. enum OutputAudioEncoding { // Not specified. @@ -123,3 +198,19 @@ enum OutputAudioEncoding { // than MP3 while using approximately the same bitrate. OUTPUT_AUDIO_ENCODING_OGG_OPUS = 3; } + +// Instructs the speech synthesizer how to generate the output audio content. +message OutputAudioConfig { + // Required. Audio encoding of the synthesized audio content. + OutputAudioEncoding audio_encoding = 1; + + // Optional. The synthesis sample rate (in hertz) for this audio. If not + // provided, then the synthesizer will use the default sample rate based on + // the audio encoding. If this is different from the voice's natural sample + // rate, then the synthesizer will honor this request by converting to the + // desired sample rate (which might result in worse audio quality). + int32 sample_rate_hertz = 2; + + // Optional. Configuration of how speech should be synthesized. + SynthesizeSpeechConfig synthesize_speech_config = 3; +} diff --git a/google/cloud/dialogflow/v2beta1/context.proto b/google/cloud/dialogflow/v2beta1/context.proto index 7bd27d298..bd5926aa4 100644 --- a/google/cloud/dialogflow/v2beta1/context.proto +++ b/google/cloud/dialogflow/v2beta1/context.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/struct.proto"; @@ -38,14 +40,15 @@ option objc_class_prefix = "DF"; // // You can include contexts as input parameters of a // [DetectIntent][google.cloud.dialogflow.v2beta1.Sessions.DetectIntent] (or -// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) -// request, or as output contexts included in the returned intent. Contexts -// expire when an intent is matched, after the number of `DetectIntent` requests -// specified by the `lifespan_count` parameter, or after 10 minutes if no -// intents are matched for a `DetectIntent` request. +// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) request, +// or as output contexts included in the returned intent. +// Contexts expire when an intent is matched, after the number of `DetectIntent` +// requests specified by the `lifespan_count` parameter, or after 20 minutes +// if no intents are matched for a `DetectIntent` request. // // For more information about contexts, see the -// [Dialogflow documentation](https://dialogflow.com/docs/contexts). +// [Dialogflow +// documentation](https://cloud.google.com/dialogflow-enterprise/docs/contexts-overview). service Contexts { // Returns the list of all contexts in the specified session. rpc ListContexts(ListContextsRequest) returns (ListContextsResponse) { @@ -68,6 +71,8 @@ service Contexts { } // Creates a context. + // + // If the specified context already exists, overrides the context. rpc CreateContext(CreateContextRequest) returns (Context) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" @@ -102,8 +107,7 @@ service Contexts { } // Deletes all active contexts in the specified session. - rpc DeleteAllContexts(DeleteAllContextsRequest) - returns (google.protobuf.Empty) { + rpc DeleteAllContexts(DeleteAllContextsRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v2beta1/{parent=projects/*/agent/sessions/*}/contexts" additional_bindings { @@ -118,26 +122,29 @@ message Context { // Required. The unique identifier of the context. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>`, // or `projects/<Project ID>/agent/environments/<Environment ID>/users/<User - // ID>/sessions/<Session ID>/contexts/<Context ID>`. The `Context ID` is - // always converted to lowercase. If `Environment ID` is not specified, we - // assume default 'draft' environment. If `User ID` is not specified, we - // assume default '-' user. + // ID>/sessions/<Session ID>/contexts/<Context ID>`. + // + // The `Context ID` is always converted to lowercase, may only contain + // characters in a-zA-Z0-9_-% and may be at most 250 bytes long. + // + // If `Environment ID` is not specified, we assume default 'draft' + // environment. If `User ID` is not specified, we assume default '-' user. string name = 1; // Optional. The number of conversational query requests after which the // context expires. If set to `0` (the default) the context expires - // immediately. Contexts expire automatically after 10 minutes even if there + // immediately. Contexts expire automatically after 20 minutes if there // are no matching queries. int32 lifespan_count = 2; // Optional. The collection of parameters associated with this context. - // Refer to [this doc](https://dialogflow.com/docs/actions-and-parameters) for - // syntax. + // Refer to [this + // doc](https://cloud.google.com/dialogflow-enterprise/docs/intents-actions-parameters) + // for syntax. google.protobuf.Struct parameters = 3; } -// The request message for -// [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts]. +// The request message for [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts]. message ListContextsRequest { // Required. The session to list all contexts from. // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or @@ -155,8 +162,7 @@ message ListContextsRequest { string page_token = 3; } -// The response message for -// [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts]. +// The response message for [Contexts.ListContexts][google.cloud.dialogflow.v2beta1.Contexts.ListContexts]. message ListContextsResponse { // The list of contexts. There will be a maximum number of items // returned based on the page_size field in the request. @@ -167,8 +173,7 @@ message ListContextsResponse { string next_page_token = 2; } -// The request message for -// [Contexts.GetContext][google.cloud.dialogflow.v2beta1.Contexts.GetContext]. +// The request message for [Contexts.GetContext][google.cloud.dialogflow.v2beta1.Contexts.GetContext]. message GetContextRequest { // Required. The name of the context. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>` @@ -179,8 +184,7 @@ message GetContextRequest { string name = 1; } -// The request message for -// [Contexts.CreateContext][google.cloud.dialogflow.v2beta1.Contexts.CreateContext]. +// The request message for [Contexts.CreateContext][google.cloud.dialogflow.v2beta1.Contexts.CreateContext]. message CreateContextRequest { // Required. The session to create a context for. // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or @@ -194,8 +198,7 @@ message CreateContextRequest { Context context = 2; } -// The request message for -// [Contexts.UpdateContext][google.cloud.dialogflow.v2beta1.Contexts.UpdateContext]. +// The request message for [Contexts.UpdateContext][google.cloud.dialogflow.v2beta1.Contexts.UpdateContext]. message UpdateContextRequest { // Required. The context to update. Context context = 1; @@ -204,8 +207,7 @@ message UpdateContextRequest { google.protobuf.FieldMask update_mask = 2; } -// The request message for -// [Contexts.DeleteContext][google.cloud.dialogflow.v2beta1.Contexts.DeleteContext]. +// The request message for [Contexts.DeleteContext][google.cloud.dialogflow.v2beta1.Contexts.DeleteContext]. message DeleteContextRequest { // Required. The name of the context to delete. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/contexts/<Context ID>` @@ -216,8 +218,7 @@ message DeleteContextRequest { string name = 1; } -// The request message for -// [Contexts.DeleteAllContexts][google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts]. +// The request message for [Contexts.DeleteAllContexts][google.cloud.dialogflow.v2beta1.Contexts.DeleteAllContexts]. message DeleteAllContextsRequest { // Required. The name of the session to delete all contexts from. Format: // `projects/<Project ID>/agent/sessions/<Session ID>` or `projects/<Project diff --git a/google/cloud/dialogflow/v2beta1/document.proto b/google/cloud/dialogflow/v2beta1/document.proto index 7696a51c4..8bf7dbf7c 100644 --- a/google/cloud/dialogflow/v2beta1/document.proto +++ b/google/cloud/dialogflow/v2beta1/document.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,15 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; +import "google/rpc/status.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.V2beta1"; @@ -54,10 +57,8 @@ service Documents { // Creates a new document. // // Operation <response: [Document][google.cloud.dialogflow.v2beta1.Document], - // metadata: - // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> - rpc CreateDocument(CreateDocumentRequest) - returns (google.longrunning.Operation) { + // metadata: [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> + rpc CreateDocument(CreateDocumentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/knowledgeBases/*}/documents" body: "document" @@ -71,10 +72,8 @@ service Documents { // Deletes the specified document. // // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: - // [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> - rpc DeleteDocument(DeleteDocumentRequest) - returns (google.longrunning.Operation) { + // metadata: [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> + rpc DeleteDocument(DeleteDocumentRequest) returns (google.longrunning.Operation) { option (google.api.http) = { delete: "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}" additional_bindings { @@ -82,9 +81,43 @@ service Documents { } }; } + + // Updates the specified document. + // Operation <response: [Document][google.cloud.dialogflow.v2beta1.Document], + // metadata: [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> + rpc UpdateDocument(UpdateDocumentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + patch: "/v2beta1/{document.name=projects/*/knowledgeBases/*/documents/*}" + body: "document" + additional_bindings { + patch: "/v2beta1/{document.name=projects/*/agent/knowledgeBases/*/documents/*}" + body: "document" + } + }; + } + + // Reloads the specified document from its specified source, content_uri or + // content. The previously loaded content of the document will be deleted. + // Note: Even when the content of the document has not changed, there still + // may be side effects because of internal implementation changes. + // Operation <response: [Document][google.cloud.dialogflow.v2beta1.Document], + // metadata: [KnowledgeOperationMetadata][google.cloud.dialogflow.v2beta1.KnowledgeOperationMetadata]> + rpc ReloadDocument(ReloadDocumentRequest) returns (google.longrunning.Operation) { + option (google.api.http) = { + post: "/v2beta1/{name=projects/*/knowledgeBases/*/documents/*}:reload" + body: "*" + additional_bindings { + post: "/v2beta1/{name=projects/*/agent/knowledgeBases/*/documents/*}:reload" + body: "*" + } + }; + } } // A document resource. +// +// Note: resource `projects.agent.knowledgeBases.documents` is deprecated, +// please use `projects.knowledgeBases.documents` instead. message Document { // The knowledge type of document content. enum KnowledgeType { @@ -136,12 +169,17 @@ message Document { // The raw content of the document. This field is only permitted for // EXTRACTIVE_QA and FAQ knowledge types. - string content = 6; + // Note: This field is in the process of being deprecated, please use + // raw_content instead. + string content = 6 [deprecated = true]; + + // The raw content of the document. This field is only permitted for + // EXTRACTIVE_QA and FAQ knowledge types. + bytes raw_content = 9; } } -// Request message for -// [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments]. +// Request message for [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments]. message ListDocumentsRequest { // Required. The knowledge base to list all documents for. // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. @@ -155,8 +193,7 @@ message ListDocumentsRequest { string page_token = 3; } -// Response message for -// [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments]. +// Response message for [Documents.ListDocuments][google.cloud.dialogflow.v2beta1.Documents.ListDocuments]. message ListDocumentsResponse { // The list of documents. repeated Document documents = 1; @@ -166,8 +203,7 @@ message ListDocumentsResponse { string next_page_token = 2; } -// Request message for -// [Documents.GetDocument][google.cloud.dialogflow.v2beta1.Documents.GetDocument]. +// Request message for [Documents.GetDocument][google.cloud.dialogflow.v2beta1.Documents.GetDocument]. message GetDocumentRequest { // Required. The name of the document to retrieve. // Format `projects/<Project ID>/knowledgeBases/<Knowledge Base @@ -175,8 +211,7 @@ message GetDocumentRequest { string name = 1; } -// Request message for -// [Documents.CreateDocument][google.cloud.dialogflow.v2beta1.Documents.CreateDocument]. +// Request message for [Documents.CreateDocument][google.cloud.dialogflow.v2beta1.Documents.CreateDocument]. message CreateDocumentRequest { // Required. The knoweldge base to create a document for. // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. @@ -186,8 +221,7 @@ message CreateDocumentRequest { Document document = 2; } -// Request message for -// [Documents.DeleteDocument][google.cloud.dialogflow.v2beta1.Documents.DeleteDocument]. +// Request message for [Documents.DeleteDocument][google.cloud.dialogflow.v2beta1.Documents.DeleteDocument]. message DeleteDocumentRequest { // The name of the document to delete. // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base @@ -195,6 +229,17 @@ message DeleteDocumentRequest { string name = 1; } +// Request message for [Documents.UpdateDocument][google.cloud.dialogflow.v2beta1.Documents.UpdateDocument]. +message UpdateDocumentRequest { + // Required. The document to update. + Document document = 1; + + // Optional. Not specified means `update all`. + // Currently, only `display_name` can be updated, an InvalidArgument will be + // returned for attempting to update other fields. + google.protobuf.FieldMask update_mask = 2; +} + // Metadata in google::longrunning::Operation for Knowledge operations. message KnowledgeOperationMetadata { // States of the operation. @@ -215,3 +260,11 @@ message KnowledgeOperationMetadata { // Required. The current state of this operation. State state = 1; } + +// Request message for [Documents.ReloadDocument][google.cloud.dialogflow.v2beta1.Documents.ReloadDocument]. +message ReloadDocumentRequest { + // The name of the document to reload. + // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base + // ID>/documents/<Document ID>` + string name = 1; +} diff --git a/google/cloud/dialogflow/v2beta1/entity_type.proto b/google/cloud/dialogflow/v2beta1/entity_type.proto index b3ba468ad..c49561ff3 100644 --- a/google/cloud/dialogflow/v2beta1/entity_type.proto +++ b/google/cloud/dialogflow/v2beta1/entity_type.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/longrunning/operations.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -53,16 +55,14 @@ option objc_class_prefix = "DF"; // // * **User** - entities that are built for an individual user such as // favorites, preferences, playlists, and so on. A user entity is -// represented by the -// [SessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityType] -// type. +// represented by the [SessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityType] type. // // For more information about entity types, see the -// [Dialogflow documentation](https://dialogflow.com/docs/entities). +// [Dialogflow +// documentation](https://cloud.google.com/dialogflow-enterprise/docs/entities-overview). service EntityTypes { // Returns the list of all entity types in the specified agent. - rpc ListEntityTypes(ListEntityTypesRequest) - returns (ListEntityTypesResponse) { + rpc ListEntityTypes(ListEntityTypesRequest) returns (ListEntityTypesResponse) { option (google.api.http) = { get: "/v2beta1/{parent=projects/*/agent}/entityTypes" }; @@ -92,8 +92,7 @@ service EntityTypes { } // Deletes the specified entity type. - rpc DeleteEntityType(DeleteEntityTypeRequest) - returns (google.protobuf.Empty) { + rpc DeleteEntityType(DeleteEntityTypeRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v2beta1/{name=projects/*/agent/entityTypes/*}" }; @@ -101,11 +100,8 @@ service EntityTypes { // Updates/Creates multiple entity types in the specified agent. // - // Operation <response: - // [BatchUpdateEntityTypesResponse][google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> - rpc BatchUpdateEntityTypes(BatchUpdateEntityTypesRequest) - returns (google.longrunning.Operation) { + // Operation <response: [BatchUpdateEntityTypesResponse][google.cloud.dialogflow.v2beta1.BatchUpdateEntityTypesResponse]> + rpc BatchUpdateEntityTypes(BatchUpdateEntityTypesRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent}/entityTypes:batchUpdate" body: "*" @@ -114,35 +110,30 @@ service EntityTypes { // Deletes entity types in the specified agent. // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> - rpc BatchDeleteEntityTypes(BatchDeleteEntityTypesRequest) - returns (google.longrunning.Operation) { + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> + rpc BatchDeleteEntityTypes(BatchDeleteEntityTypesRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent}/entityTypes:batchDelete" body: "*" }; } - // Creates multiple new entities in the specified entity type (extends the - // existing collection of entries). + // Creates multiple new entities in the specified entity type. // // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> - rpc BatchCreateEntities(BatchCreateEntitiesRequest) - returns (google.longrunning.Operation) { + rpc BatchCreateEntities(BatchCreateEntitiesRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchCreate" body: "*" }; } - // Updates entities in the specified entity type (replaces the existing - // collection of entries). + // Updates or creates multiple entities in the specified entity type. This + // method does not affect entities in the entity type that aren't explicitly + // specified in the request. // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> - rpc BatchUpdateEntities(BatchUpdateEntitiesRequest) - returns (google.longrunning.Operation) { + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> + rpc BatchUpdateEntities(BatchUpdateEntitiesRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchUpdate" body: "*" @@ -151,10 +142,8 @@ service EntityTypes { // Deletes entities in the specified entity type. // - // Operation <response: [google.protobuf.Empty][google.protobuf.Empty], - // metadata: [google.protobuf.Struct][google.protobuf.Struct]> - rpc BatchDeleteEntities(BatchDeleteEntitiesRequest) - returns (google.longrunning.Operation) { + // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> + rpc BatchDeleteEntities(BatchDeleteEntitiesRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent/entityTypes/*}/entities:batchDelete" body: "*" @@ -166,18 +155,29 @@ service EntityTypes { // Entity types serve as a tool for extracting parameter values from natural // language queries. message EntityType { - // Optional. Represents an entity. + // An **entity entry** for an associated entity type. message Entity { - // Required. + // Required. The primary value associated with this entity entry. + // For example, if the entity type is *vegetable*, the value could be + // *scallions*. + // // For `KIND_MAP` entity types: - // A canonical name to be used in place of synonyms. + // + // * A canonical value to be used in place of synonyms. + // // For `KIND_LIST` entity types: - // A string that can contain references to other entity types (with or - // without aliases). + // + // * A string that can contain references to other entity types (with or + // without aliases). string value = 1; - // Required. A collection of synonyms. For `KIND_LIST` entity types this - // must contain exactly one synonym equal to `value`. + // Required. A collection of value synonyms. For example, if the entity type + // is *vegetable*, and `value` is *scallions*, a synonym could be *green + // onions*. + // + // For `KIND_LIST` entity types: + // + // * This collection must contain exactly one synonym equal to `value`. repeated string synonyms = 2; } @@ -208,13 +208,13 @@ message EntityType { AUTO_EXPANSION_MODE_DEFAULT = 1; } - // Required for all methods except `create` (`create` populates the name - // automatically. - // The unique identifier of the entity type. Format: - // `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. + // The unique identifier of the entity type. + // Required for [EntityTypes.UpdateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType] and + // [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes] methods. + // Format: `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. string name = 1; - // Required. The name of the entity. + // Required. The name of the entity type. string display_name = 2; // Required. Indicates the kind of entity type. @@ -224,12 +224,11 @@ message EntityType { // expanded. AutoExpansionMode auto_expansion_mode = 4; - // Optional. The collection of entities associated with the entity type. + // Optional. The collection of entity entries associated with the entity type. repeated Entity entities = 6; } -// The request message for -// [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes]. +// The request message for [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes]. message ListEntityTypesRequest { // Required. The agent to list all entity types from. // Format: `projects/<Project ID>/agent`. @@ -237,9 +236,10 @@ message ListEntityTypesRequest { // Optional. The language to list entity synonyms for. If not specified, // the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; // Optional. The maximum number of items to return in a single page. By @@ -250,8 +250,7 @@ message ListEntityTypesRequest { string page_token = 4; } -// The response message for -// [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes]. +// The response message for [EntityTypes.ListEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.ListEntityTypes]. message ListEntityTypesResponse { // The list of agent entity types. There will be a maximum number of items // returned based on the page_size field in the request. @@ -262,8 +261,7 @@ message ListEntityTypesResponse { string next_page_token = 2; } -// The request message for -// [EntityTypes.GetEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType]. +// The request message for [EntityTypes.GetEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType]. message GetEntityTypeRequest { // Required. The name of the entity type. // Format: `projects/<Project ID>/agent/entityTypes/<EntityType ID>`. @@ -271,14 +269,14 @@ message GetEntityTypeRequest { // Optional. The language to retrieve entity synonyms for. If not specified, // the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; } -// The request message for -// [EntityTypes.CreateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType]. +// The request message for [EntityTypes.CreateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.CreateEntityType]. message CreateEntityTypeRequest { // Required. The agent to create a entity type for. // Format: `projects/<Project ID>/agent`. @@ -289,40 +287,38 @@ message CreateEntityTypeRequest { // Optional. The language of entity synonyms defined in `entity_type`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 3; } -// The request message for -// [EntityTypes.UpdateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType]. +// The request message for [EntityTypes.UpdateEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.UpdateEntityType]. message UpdateEntityTypeRequest { // Required. The entity type to update. - // Format: `projects/<Project ID>/agent/entityTypes/<EntityType ID>`. EntityType entity_type = 1; // Optional. The language of entity synonyms defined in `entity_type`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; // Optional. The mask to control which fields get updated. google.protobuf.FieldMask update_mask = 3; } -// The request message for -// [EntityTypes.DeleteEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType]. +// The request message for [EntityTypes.DeleteEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.DeleteEntityType]. message DeleteEntityTypeRequest { // Required. The name of the entity type to delete. // Format: `projects/<Project ID>/agent/entityTypes/<EntityType ID>`. string name = 1; } -// The request message for -// [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes]. +// The request message for [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes]. message BatchUpdateEntityTypesRequest { // Required. The name of the agent to update or create entity types in. // Format: `projects/<Project ID>/agent`. @@ -331,8 +327,9 @@ message BatchUpdateEntityTypesRequest { // Required. The source of the entity type batch. // // For each entity type in the batch: - // * If `name` is specified, we update an existing entity type. - // * If `name` is not specified, we create a new entity type. + // + // * If `name` is specified, we update an existing entity type. + // * If `name` is not specified, we create a new entity type. oneof entity_type_batch { // The URI to a Google Cloud Storage file containing entity types to update // or create. The file format can either be a serialized proto (of @@ -340,30 +337,29 @@ message BatchUpdateEntityTypesRequest { // "gs://". string entity_type_batch_uri = 2; - // The collection of entity type to update or create. + // The collection of entity types to update or create. EntityTypeBatch entity_type_batch_inline = 3; } // Optional. The language of entity synonyms defined in `entity_types`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 4; // Optional. The mask to control which fields get updated. google.protobuf.FieldMask update_mask = 5; } -// The response message for -// [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes]. +// The response message for [EntityTypes.BatchUpdateEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntityTypes]. message BatchUpdateEntityTypesResponse { // The collection of updated or created entity types. repeated EntityType entity_types = 1; } -// The request message for -// [EntityTypes.BatchDeleteEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes]. +// The request message for [EntityTypes.BatchDeleteEntityTypes][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntityTypes]. message BatchDeleteEntityTypesRequest { // Required. The name of the agent to delete all entities types for. Format: // `projects/<Project ID>/agent`. @@ -374,47 +370,46 @@ message BatchDeleteEntityTypesRequest { repeated string entity_type_names = 2; } -// The request message for -// [EntityTypes.BatchCreateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities]. +// The request message for [EntityTypes.BatchCreateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities]. message BatchCreateEntitiesRequest { // Required. The name of the entity type to create entities in. Format: // `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. string parent = 1; - // Required. The collection of entities to create. + // Required. The entities to create. repeated EntityType.Entity entities = 2; // Optional. The language of entity synonyms defined in `entities`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 3; } -// The response message for -// [EntityTypes.BatchCreateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchCreateEntities]. +// The request message for [EntityTypes.BatchUpdateEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchUpdateEntities]. message BatchUpdateEntitiesRequest { - // Required. The name of the entity type to update the entities in. Format: - // `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. + // Required. The name of the entity type to update or create entities in. + // Format: `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. string parent = 1; - // Required. The collection of new entities to replace the existing entities. + // Required. The entities to update or create. repeated EntityType.Entity entities = 2; // Optional. The language of entity synonyms defined in `entities`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 3; // Optional. The mask to control which fields get updated. google.protobuf.FieldMask update_mask = 4; } -// The request message for -// [EntityTypes.BatchDeleteEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities]. +// The request message for [EntityTypes.BatchDeleteEntities][google.cloud.dialogflow.v2beta1.EntityTypes.BatchDeleteEntities]. message BatchDeleteEntitiesRequest { // Required. The name of the entity type to delete entries for. Format: // `projects/<Project ID>/agent/entityTypes/<Entity Type ID>`. @@ -427,9 +422,10 @@ message BatchDeleteEntitiesRequest { // Optional. The language of entity synonyms defined in `entities`. If not // specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 3; } diff --git a/google/cloud/dialogflow/v2beta1/intent.proto b/google/cloud/dialogflow/v2beta1/intent.proto index 5d5be05af..9f33f88d2 100644 --- a/google/cloud/dialogflow/v2beta1/intent.proto +++ b/google/cloud/dialogflow/v2beta1/intent.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,14 +11,17 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/cloud/dialogflow/v2beta1/context.proto"; import "google/longrunning/operations.proto"; +import "google/protobuf/duration.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; import "google/protobuf/struct.proto"; @@ -34,10 +37,10 @@ option objc_class_prefix = "DF"; // An intent represents a mapping between input from a user and an action to // be taken by your application. When you pass user input to the // [DetectIntent][google.cloud.dialogflow.v2beta1.Sessions.DetectIntent] (or -// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) -// method, the Dialogflow API analyzes the input and searches for a matching -// intent. If no match is found, the Dialogflow API returns a fallback intent -// (`is_fallback` = true). +// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) method, the +// Dialogflow API analyzes the input and searches +// for a matching intent. If no match is found, the Dialogflow API returns a +// fallback intent (`is_fallback` = true). // // You can provide additional information for the Dialogflow API to use to // match user input to an intent by adding the following to your intent. @@ -45,7 +48,7 @@ option objc_class_prefix = "DF"; // * **Contexts** - provide additional context for intent analysis. For // example, if an intent is related to an object in your application that // plays music, you can provide a context to determine when to match the -// intent if the user input is “turn it off”. You can include a context +// intent if the user input is "turn it off". You can include a context // that matches the intent when there is previous user input of // "play music", and not when there is previous user input of // "turn on the light". @@ -61,7 +64,8 @@ option objc_class_prefix = "DF"; // Dialogflow API agent to better match intents. // // For more information about intents, see the -// [Dialogflow documentation](https://dialogflow.com/docs/intents). +// [Dialogflow +// documentation](https://cloud.google.com/dialogflow-enterprise/docs/intents-overview). service Intents { // Returns the list of all intents in the specified agent. rpc ListIntents(ListIntentsRequest) returns (ListIntentsResponse) { @@ -93,7 +97,7 @@ service Intents { }; } - // Deletes the specified intent. + // Deletes the specified intent and its direct or indirect followup intents. rpc DeleteIntent(DeleteIntentRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v2beta1/{name=projects/*/agent/intents/*}" @@ -102,10 +106,8 @@ service Intents { // Updates/Creates multiple intents in the specified agent. // - // Operation <response: - // [BatchUpdateIntentsResponse][google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse]> - rpc BatchUpdateIntents(BatchUpdateIntentsRequest) - returns (google.longrunning.Operation) { + // Operation <response: [BatchUpdateIntentsResponse][google.cloud.dialogflow.v2beta1.BatchUpdateIntentsResponse]> + rpc BatchUpdateIntents(BatchUpdateIntentsRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent}/intents:batchUpdate" body: "*" @@ -115,8 +117,7 @@ service Intents { // Deletes intents in the specified agent. // // Operation <response: [google.protobuf.Empty][google.protobuf.Empty]> - rpc BatchDeleteIntents(BatchDeleteIntentsRequest) - returns (google.longrunning.Operation) { + rpc BatchDeleteIntents(BatchDeleteIntentsRequest) returns (google.longrunning.Operation) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent}/intents:batchDelete" body: "*" @@ -128,26 +129,26 @@ service Intents { // Intents convert a number of user expressions or patterns into an action. An // action is an extraction of a user command or sentence semantics. message Intent { - // Represents an example or template that the agent is trained on. + // Represents an example that the agent is trained on. message TrainingPhrase { // Represents a part of a training phrase. message Part { - // Required. The text corresponding to the example or template, - // if there are no annotations. For - // annotated examples, it is the text for one of the example's parts. + // Required. The text for this part. string text = 1; - // Optional. The entity type name prefixed with `@`. This field is - // required for the annotated part of the text and applies only to - // examples. + // Optional. The entity type name prefixed with `@`. + // This field is required for annotated parts of the training phrase. string entity_type = 2; // Optional. The parameter name for the value extracted from the // annotated part of the example. + // This field is required for annotated parts of the training phrase. string alias = 3; - // Optional. Indicates whether the text was manually annotated by the - // developer. + // Optional. Indicates whether the text was manually annotated. + // This field is set to true when the Dialogflow Console is used to + // manually annotate the part. When creating an annotated part with the + // API, you must set this to true. bool user_defined = 4; } @@ -162,21 +163,41 @@ message Intent { // Templates are not annotated with entity types, but they can contain // @-prefixed entity type names as substrings. - TEMPLATE = 2; + // Template mode has been deprecated. Example mode is the only supported + // way to create new training phrases. If you have existing training + // phrases that you've created in template mode, those will continue to + // work. + TEMPLATE = 2 [deprecated = true]; } - // Required. The unique identifier of this training phrase. + // Output only. The unique identifier of this training phrase. string name = 1; // Required. The type of the training phrase. Type type = 2; - // Required. The collection of training phrase parts (can be annotated). - // Fields: `entity_type`, `alias` and `user_defined` should be populated - // only for the annotated parts of the training phrase. + // Required. The ordered list of training phrase parts. + // The parts are concatenated in order to form the training phrase. + // + // Note: The API does not automatically annotate training phrases like the + // Dialogflow Console does. + // + // Note: Do not forget to include whitespace at part boundaries, + // so the training phrase is well formatted when the parts are concatenated. + // + // If the training phrase does not need to be annotated with parameters, + // you just need a single part with only the [Part.text][google.cloud.dialogflow.v2beta1.Intent.TrainingPhrase.Part.text] field set. + // + // If you want to annotate the training phrase, you must create multiple + // parts, where the fields of each part are populated in one of two ways: + // + // - `Part.text` is set to a part of the phrase that has no parameters. + // - `Part.text` is set to a part of the phrase that you want to annotate, + // and the `entity_type`, `alias`, and `user_defined` fields are all + // set. repeated Part parts = 3; - // Optional. Indicates how many times this example or template was added to + // Optional. Indicates how many times this example was added to // the intent. Each time a developer adds an existing sample by editing an // intent or training, this counter is increased. int32 times_added_count = 4; @@ -607,7 +628,7 @@ message Intent { // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string followup_intent_name = 1; - // The unique identifier of the followup intent parent. + // The unique identifier of the followup intent's parent. // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string parent_followup_intent_name = 2; } @@ -625,20 +646,23 @@ message Intent { WEBHOOK_STATE_ENABLED_FOR_SLOT_FILLING = 2; } - // Required for all methods except `create` (`create` populates the name - // automatically. // The unique identifier of this intent. + // Required for [Intents.UpdateIntent][google.cloud.dialogflow.v2beta1.Intents.UpdateIntent] and [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents] + // methods. // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string name = 1; // Required. The name of this intent. string display_name = 2; - // Required. Indicates whether webhooks are enabled for the intent. + // Optional. Indicates whether webhooks are enabled for the intent. WebhookState webhook_state = 6; // Optional. The priority of this intent. Higher numbers represent higher - // priorities. Zero or negative numbers mean that the intent is disabled. + // priorities. If this is zero or unspecified, we use the default + // priority 500000. + // + // Negative numbers mean that the intent is disabled. int32 priority = 3; // Optional. Indicates whether this is a fallback intent. @@ -678,7 +702,7 @@ message Intent { // be present in the active user session for an event to trigger this intent. repeated string events = 8; - // Optional. The collection of examples/templates that the agent is + // Optional. The collection of examples that the agent is // trained on. repeated TrainingPhrase training_phrases = 9; @@ -708,24 +732,28 @@ message Intent { // taken from among the messages assigned to the DEFAULT_PLATFORM. repeated Message.Platform default_response_platforms = 15; - // The unique identifier of the root intent in the chain of followup intents. - // It identifies the correct followup intents chain for this intent. + // Read-only. The unique identifier of the root intent in the chain of + // followup intents. It identifies the correct followup intents chain for + // this intent. We populate this field only in the output. + // // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string root_followup_intent_name = 16; - // The unique identifier of the parent intent in the chain of followup - // intents. + // Read-only after creation. The unique identifier of the parent intent in the + // chain of followup intents. You can set this field when creating an intent, + // for example with [CreateIntent][] or [BatchUpdateIntents][], in order to + // make this intent a followup intent. + // // It identifies the parent followup intent. // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string parent_followup_intent_name = 17; - // Optional. Collection of information about all followup intents that have - // name of this intent as a root_name. + // Read-only. Information about all followup intents that have this intent as + // a direct or indirect parent. We populate this field only in the output. repeated FollowupIntentInfo followup_intent_info = 18; } -// The request message for -// [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents]. +// The request message for [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents]. message ListIntentsRequest { // Required. The agent to list all intents from. // Format: `projects/<Project ID>/agent`. @@ -733,9 +761,10 @@ message ListIntentsRequest { // Optional. The language to list training phrases, parameters and rich // messages for. If not specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; // Optional. The resource view to apply to the returned intent. @@ -749,8 +778,7 @@ message ListIntentsRequest { string page_token = 5; } -// The response message for -// [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents]. +// The response message for [Intents.ListIntents][google.cloud.dialogflow.v2beta1.Intents.ListIntents]. message ListIntentsResponse { // The list of agent intents. There will be a maximum number of items // returned based on the page_size field in the request. @@ -761,8 +789,7 @@ message ListIntentsResponse { string next_page_token = 2; } -// The request message for -// [Intents.GetIntent][google.cloud.dialogflow.v2beta1.Intents.GetIntent]. +// The request message for [Intents.GetIntent][google.cloud.dialogflow.v2beta1.Intents.GetIntent]. message GetIntentRequest { // Required. The name of the intent. // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. @@ -770,17 +797,17 @@ message GetIntentRequest { // Optional. The language to retrieve training phrases, parameters and rich // messages for. If not specified, the agent's default language is used. - // [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; // Optional. The resource view to apply to the returned intent. IntentView intent_view = 3; } -// The request message for -// [Intents.CreateIntent][google.cloud.dialogflow.v2beta1.Intents.CreateIntent]. +// The request message for [Intents.CreateIntent][google.cloud.dialogflow.v2beta1.Intents.CreateIntent]. message CreateIntentRequest { // Required. The agent to create a intent for. // Format: `projects/<Project ID>/agent`. @@ -791,27 +818,27 @@ message CreateIntentRequest { // Optional. The language of training phrases, parameters and rich messages // defined in `intent`. If not specified, the agent's default language is - // used. [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // used. [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 3; // Optional. The resource view to apply to the returned intent. IntentView intent_view = 4; } -// The request message for -// [Intents.UpdateIntent][google.cloud.dialogflow.v2beta1.Intents.UpdateIntent]. +// The request message for [Intents.UpdateIntent][google.cloud.dialogflow.v2beta1.Intents.UpdateIntent]. message UpdateIntentRequest { // Required. The intent to update. - // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. Intent intent = 1; // Optional. The language of training phrases, parameters and rich messages // defined in `intent`. If not specified, the agent's default language is - // used. [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // used. [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 2; // Optional. The mask to control which fields get updated. @@ -821,16 +848,16 @@ message UpdateIntentRequest { IntentView intent_view = 4; } -// The request message for -// [Intents.DeleteIntent][google.cloud.dialogflow.v2beta1.Intents.DeleteIntent]. +// The request message for [Intents.DeleteIntent][google.cloud.dialogflow.v2beta1.Intents.DeleteIntent]. message DeleteIntentRequest { - // Required. The name of the intent to delete. + // Required. The name of the intent to delete. If this intent has direct or + // indirect followup intents, we also delete them. + // // Format: `projects/<Project ID>/agent/intents/<Intent ID>`. string name = 1; } -// The request message for -// [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents]. +// The request message for [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents]. message BatchUpdateIntentsRequest { // Required. The name of the agent to update or create intents in. // Format: `projects/<Project ID>/agent`. @@ -849,9 +876,10 @@ message BatchUpdateIntentsRequest { // Optional. The language of training phrases, parameters and rich messages // defined in `intents`. If not specified, the agent's default language is - // used. [More than a dozen - // languages](https://dialogflow.com/docs/reference/language) are supported. - // Note: languages must be enabled in the agent, before they can be used. + // used. [Many + // languages](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // are supported. Note: languages must be enabled in the agent before they can + // be used. string language_code = 4; // Optional. The mask to control which fields get updated. @@ -861,15 +889,13 @@ message BatchUpdateIntentsRequest { IntentView intent_view = 6; } -// The response message for -// [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents]. +// The response message for [Intents.BatchUpdateIntents][google.cloud.dialogflow.v2beta1.Intents.BatchUpdateIntents]. message BatchUpdateIntentsResponse { // The collection of updated or created intents. repeated Intent intents = 1; } -// The request message for -// [Intents.BatchDeleteIntents][google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents]. +// The request message for [Intents.BatchDeleteIntents][google.cloud.dialogflow.v2beta1.Intents.BatchDeleteIntents]. message BatchDeleteIntentsRequest { // Required. The name of the agent to delete all entities types for. Format: // `projects/<Project ID>/agent`. diff --git a/google/cloud/dialogflow/v2beta1/knowledge_base.proto b/google/cloud/dialogflow/v2beta1/knowledge_base.proto index d1c0913c3..af8d7bd28 100644 --- a/google/cloud/dialogflow/v2beta1/knowledge_base.proto +++ b/google/cloud/dialogflow/v2beta1/knowledge_base.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -33,8 +35,7 @@ option objc_class_prefix = "DF"; // Allows users to setup and maintain knowledge bases with their knowledge data. service KnowledgeBases { // Returns the list of all knowledge bases of the specified agent. - rpc ListKnowledgeBases(ListKnowledgeBasesRequest) - returns (ListKnowledgeBasesResponse) { + rpc ListKnowledgeBases(ListKnowledgeBasesRequest) returns (ListKnowledgeBasesResponse) { option (google.api.http) = { get: "/v2beta1/{parent=projects/*}/knowledgeBases" additional_bindings { @@ -66,8 +67,7 @@ service KnowledgeBases { } // Deletes the specified knowledge base. - rpc DeleteKnowledgeBase(DeleteKnowledgeBaseRequest) - returns (google.protobuf.Empty) { + rpc DeleteKnowledgeBase(DeleteKnowledgeBaseRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v2beta1/{name=projects/*/knowledgeBases/*}" additional_bindings { @@ -75,9 +75,24 @@ service KnowledgeBases { } }; } + + // Updates the specified knowledge base. + rpc UpdateKnowledgeBase(UpdateKnowledgeBaseRequest) returns (KnowledgeBase) { + option (google.api.http) = { + patch: "/v2beta1/{knowledge_base.name=projects/*/knowledgeBases/*}" + body: "knowledge_base" + additional_bindings { + patch: "/v2beta1/{knowledge_base.name=projects/*/agent/knowledgeBases/*}" + body: "knowledge_base" + } + }; + } } // Represents knowledge base resource. +// +// Note: resource `projects.agent.knowledgeBases` is deprecated, please use +// `projects.knowledgeBases` instead. message KnowledgeBase { // The knowledge base resource name. // The name must be empty when creating a knowledge base. @@ -89,11 +104,10 @@ message KnowledgeBase { string display_name = 2; } -// Request message for -// [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases]. +// Request message for [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases]. message ListKnowledgeBasesRequest { - // Required. The agent to list of knowledge bases for. - // Format: `projects/<Project ID>/agent`. + // Required. The project to list of knowledge bases for. + // Format: `projects/<Project ID>`. string parent = 1; // Optional. The maximum number of items to return in a single page. By @@ -104,8 +118,7 @@ message ListKnowledgeBasesRequest { string page_token = 3; } -// Response message for -// [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases]. +// Response message for [KnowledgeBases.ListKnowledgeBases][google.cloud.dialogflow.v2beta1.KnowledgeBases.ListKnowledgeBases]. message ListKnowledgeBasesResponse { // The list of knowledge bases. repeated KnowledgeBase knowledge_bases = 1; @@ -122,19 +135,17 @@ message GetKnowledgeBaseRequest { string name = 1; } -// Request message for -// [KnowledgeBases.CreateKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase]. +// Request message for [KnowledgeBases.CreateKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.CreateKnowledgeBase]. message CreateKnowledgeBaseRequest { - // Required. The agent to create a knowledge base for. - // Format: `projects/<Project ID>/agent`. + // Required. The project to create a knowledge base for. + // Format: `projects/<Project ID>`. string parent = 1; // Required. The knowledge base to create. KnowledgeBase knowledge_base = 2; } -// Request message for -// [KnowledgeBases.DeleteKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase]. +// Request message for [KnowledgeBases.DeleteKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.DeleteKnowledgeBase]. message DeleteKnowledgeBaseRequest { // Required. The name of the knowledge base to delete. // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. @@ -144,3 +155,14 @@ message DeleteKnowledgeBaseRequest { // in the knowledge base are also deleted. bool force = 2; } + +// Request message for [KnowledgeBases.UpdateKnowledgeBase][google.cloud.dialogflow.v2beta1.KnowledgeBases.UpdateKnowledgeBase]. +message UpdateKnowledgeBaseRequest { + // Required. The knowledge base to update. + KnowledgeBase knowledge_base = 1; + + // Optional. Not specified means `update all`. + // Currently, only `display_name` can be updated, an InvalidArgument will be + // returned for attempting to update other fields. + google.protobuf.FieldMask update_mask = 2; +} diff --git a/google/cloud/dialogflow/v2beta1/session.proto b/google/cloud/dialogflow/v2beta1/session.proto index abc1187a1..62018794e 100644 --- a/google/cloud/dialogflow/v2beta1/session.proto +++ b/google/cloud/dialogflow/v2beta1/session.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,15 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; +import "google/cloud/dialogflow/v2beta1/agent.proto"; import "google/cloud/dialogflow/v2beta1/audio_config.proto"; import "google/cloud/dialogflow/v2beta1/context.proto"; import "google/cloud/dialogflow/v2beta1/intent.proto"; @@ -34,10 +37,9 @@ option java_package = "com.google.cloud.dialogflow.v2beta1"; option objc_class_prefix = "DF"; // A session represents an interaction with a user. You retrieve user input -// and pass it to the -// [DetectIntent][google.cloud.dialogflow.v2beta1.Sessions.DetectIntent] (or -// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) -// method to determine user intent and respond. +// and pass it to the [DetectIntent][google.cloud.dialogflow.v2beta1.Sessions.DetectIntent] (or +// [StreamingDetectIntent][google.cloud.dialogflow.v2beta1.Sessions.StreamingDetectIntent]) method to determine +// user intent and respond. service Sessions { // Processes a natural language query and returns structured, actionable data // as a result. This method is not idempotent, because it may cause contexts @@ -57,8 +59,8 @@ service Sessions { // Processes a natural language query in audio format in a streaming fashion // and returns structured, actionable data as a result. This method is only // available via the gRPC API (not REST). - rpc StreamingDetectIntent(stream StreamingDetectIntentRequest) - returns (stream StreamingDetectIntentResponse) {} + rpc StreamingDetectIntent(stream StreamingDetectIntentRequest) returns (stream StreamingDetectIntentResponse) { + } } // The request to detect user's intent. @@ -118,11 +120,15 @@ message DetectIntentResponse { // surfaced here. repeated QueryResult alternative_query_results = 5; - // Specifies the status of the webhook request. `webhook_status` - // is never populated in webhook requests. + // Specifies the status of the webhook request. google.rpc.Status webhook_status = 3; // The audio data bytes encoded as specified in the request. + // Note: The output audio is generated based on the values of default platform + // text responses found in the `query_result.fulfillment_messages` field. If + // multiple default text responses exist, they will be concatenated when + // generating audio. If no default platform text responses exist, the + // generated audio content will be empty. bytes output_audio = 4; // Instructs the speech synthesizer how to generate the output audio. This @@ -150,9 +156,9 @@ message QueryParameters { // before the new ones are activated. bool reset_contexts = 4; - // Optional. The collection of session entity types to replace or extend - // developer entities with for this query only. The entity synonyms apply - // to all languages. + // Optional. Additional session entity types to replace or extend developer + // entity types with. The entity synonyms apply to all languages and persist + // for the session of this query. repeated SessionEntityType session_entity_types = 5; // Optional. This field can be used to pass custom data into the webhook @@ -162,10 +168,6 @@ message QueryParameters { // Optional. KnowledgeBases to get alternative results from. If not set, the // KnowledgeBases enabled in the agent (through UI) will be used. // Format: `projects/<Project ID>/knowledgeBases/<Knowledge Base ID>`. - // - // Note: This field is `repeated` for forward compatibility, currently only - // the first one is supported, we may return an error if multiple - // KnowledgeBases are specified. repeated string knowledge_base_names = 12; // Optional. Configures the type of sentiment analysis to perform. If not @@ -209,7 +211,8 @@ message QueryResult { string query_text = 1; // The language that was triggered during intent detection. - // See [Language Support](https://dialogflow.com/docs/reference/language) + // See [Language + // Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) // for a list of the currently supported language codes. string language_code = 15; @@ -238,6 +241,7 @@ message QueryResult { bool all_required_params_present = 5; // The text to be pronounced to the user or shown on the screen. + // Note: This is a legacy field, `fulfillment_messages` should be preferred. string fulfillment_text = 6; // The collection of rich messages to present to the user. @@ -268,8 +272,9 @@ message QueryResult { // the greatest `knowledgeAnswers.match_confidence` value in the list. float intent_detection_confidence = 12; - // The free-form diagnostic info. For example, this field - // could contain webhook call latency. + // The free-form diagnostic info. For example, this field could contain + // webhook call latency. The string keys of the Struct's fields map can change + // without notice. google.protobuf.Struct diagnostic_info = 14; // The sentiment analysis result, which depends on the @@ -324,11 +329,11 @@ message KnowledgeAnswers { MatchConfidenceLevel match_confidence_level = 4; // The system's confidence score that this Knowledge answer is a good match - // for this converstational query, range from 0.0 (completely uncertain) - // to 1.0 (completely certain). + // for this conversational query. + // The range is from 0.0 (completely uncertain) to 1.0 (completely certain). // Note: The confidence score is likely to vary somewhat (possibly even for // identical requests), as the underlying model is under constant - // improvement, we may deprecate it in the future. We recommend using + // improvement. It may be deprecated in the future. We recommend using // `match_confidence_level` which should be generally more stable. float match_confidence = 5; } @@ -442,9 +447,7 @@ message StreamingDetectIntentResponse { // The audio data bytes encoded as specified in the request. bytes output_audio = 5; - // Instructs the speech synthesizer how to generate the output audio. This - // field is populated from the agent-level speech synthesizer configuration, - // if enabled. + // The config used by the speech synthesizer to generate the output audio. OutputAudioConfig output_audio_config = 6; } @@ -467,7 +470,7 @@ message StreamingDetectIntentResponse { // // 6. transcript: " that is" // -// 7. recognition_event_type: `RECOGNITION_EVENT_END_OF_SINGLE_UTTERANCE` +// 7. message_type: `MESSAGE_TYPE_END_OF_SINGLE_UTTERANCE` // // 8. transcript: " that is the question" // is_final: true @@ -480,7 +483,7 @@ message StreamingDetectIntentResponse { // // * for `MESSAGE_TYPE_TRANSCRIPT`: `transcript` and possibly `is_final`. // -// * for `MESSAGE_TYPE_END_OF_SINGLE_UTTERANCE`: only `event_type`. +// * for `MESSAGE_TYPE_END_OF_SINGLE_UTTERANCE`: only `message_type`. message StreamingRecognitionResult { // Type of the response message. enum MessageType { @@ -504,14 +507,13 @@ message StreamingRecognitionResult { MessageType message_type = 1; // Transcript text representing the words that the user spoke. - // Populated if and only if `event_type` = `RECOGNITION_EVENT_TRANSCRIPT`. + // Populated if and only if `message_type` = `MESSAGE_TYPE_TRANSCRIPT`. string transcript = 2; - // The default of 0.0 is a sentinel value indicating `confidence` was not set. // If `false`, the `StreamingRecognitionResult` represents an // interim result that may change. If `true`, the recognizer will not return // any further hypotheses about this piece of the audio. May only be populated - // for `event_type` = `RECOGNITION_EVENT_TRANSCRIPT`. + // for `message_type` = `MESSAGE_TYPE_TRANSCRIPT`. bool is_final = 3; // The Speech confidence between 0.0 and 1.0 for the current portion of audio. @@ -524,65 +526,24 @@ message StreamingRecognitionResult { float confidence = 4; } -// Instructs the speech recognizer how to process the audio content. -message InputAudioConfig { - // Required. Audio encoding of the audio content to process. - AudioEncoding audio_encoding = 1; - - // Required. Sample rate (in Hertz) of the audio content sent in the query. - // Refer to - // [Cloud Speech API - // documentation](https://cloud.google.com/speech-to-text/docs/basics) for - // more details. - int32 sample_rate_hertz = 2; - - // Required. The language of the supplied audio. Dialogflow does not do - // translations. See [Language - // Support](https://dialogflow.com/docs/languages) for a list of the - // currently supported language codes. Note that queries in the same session - // do not necessarily need to specify the same language. - string language_code = 3; - - // Optional. The collection of phrase hints which are used to boost accuracy - // of speech recognition. - // Refer to - // [Cloud Speech API - // documentation](https://cloud.google.com/speech-to-text/docs/basics#phrase-hints) - // for more details. - repeated string phrase_hints = 4; - - // Optional. Which Speech model to select for the given request. Select the - // model best suited to your domain to get best results. If a model is not - // explicitly specified, then we auto-select a model based on the parameters - // in the InputAudioConfig. - // If enhanced speech model is enabled for the agent and an enhanced - // version of the specified model for the language does not exist, then the - // speech is recognized using the standard version of the specified model. - // Refer to - // [Cloud Speech API - // documentation](https://cloud.google.com/speech-to-text/docs/basics#select-model) - // for more details. - string model = 7; -} - // Represents the natural language text to be processed. message TextInput { // Required. The UTF-8 encoded natural language text to be processed. - // Text length must not exceed 256 bytes. + // Text length must not exceed 256 characters. string text = 1; // Required. The language of this conversational query. See [Language - // Support](https://dialogflow.com/docs/languages) for a list of the - // currently supported language codes. Note that queries in the same session - // do not necessarily need to specify the same language. + // Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // for a list of the currently supported language codes. Note that queries in + // the same session do not necessarily need to specify the same language. string language_code = 2; } // Events allow for matching intents by event name instead of the natural -// language input. For instance, input `<event: { name: “welcome_event”, -// parameters: { name: “Sam” } }>` can trigger a personalized welcome response. +// language input. For instance, input `<event: { name: "welcome_event", +// parameters: { name: "Sam" } }>` can trigger a personalized welcome response. // The parameter `name` may be used by the agent in the response: -// `“Hello #welcome_event.name! What can I do for you today?”`. +// `"Hello #welcome_event.name! What can I do for you today?"`. message EventInput { // Required. The unique identifier of the event. string name = 1; @@ -591,9 +552,9 @@ message EventInput { google.protobuf.Struct parameters = 2; // Required. The language of this query. See [Language - // Support](https://dialogflow.com/docs/languages) for a list of the - // currently supported language codes. Note that queries in the same session - // do not necessarily need to specify the same language. + // Support](https://cloud.google.com/dialogflow-enterprise/docs/reference/language) + // for a list of the currently supported language codes. Note that queries in + // the same session do not necessarily need to specify the same language. string language_code = 3; } @@ -623,52 +584,3 @@ message Sentiment { // magnitude of sentiment, regardless of score (positive or negative). float magnitude = 2; } - -// Audio encoding of the audio content sent in the conversational query request. -// Refer to the -// [Cloud Speech API -// documentation](https://cloud.google.com/speech-to-text/docs/basics) for more -// details. -enum AudioEncoding { - // Not specified. - AUDIO_ENCODING_UNSPECIFIED = 0; - - // Uncompressed 16-bit signed little-endian samples (Linear PCM). - AUDIO_ENCODING_LINEAR_16 = 1; - - // [`FLAC`](https://xiph.org/flac/documentation.html) (Free Lossless Audio - // Codec) is the recommended encoding because it is lossless (therefore - // recognition is not compromised) and requires only about half the - // bandwidth of `LINEAR16`. `FLAC` stream encoding supports 16-bit and - // 24-bit samples, however, not all fields in `STREAMINFO` are supported. - AUDIO_ENCODING_FLAC = 2; - - // 8-bit samples that compand 14-bit audio samples using G.711 PCMU/mu-law. - AUDIO_ENCODING_MULAW = 3; - - // Adaptive Multi-Rate Narrowband codec. `sample_rate_hertz` must be 8000. - AUDIO_ENCODING_AMR = 4; - - // Adaptive Multi-Rate Wideband codec. `sample_rate_hertz` must be 16000. - AUDIO_ENCODING_AMR_WB = 5; - - // Opus encoded audio frames in Ogg container - // ([OggOpus](https://wiki.xiph.org/OggOpus)). - // `sample_rate_hertz` must be 16000. - AUDIO_ENCODING_OGG_OPUS = 6; - - // Although the use of lossy encodings is not recommended, if a very low - // bitrate encoding is required, `OGG_OPUS` is highly preferred over - // Speex encoding. The [Speex](https://speex.org/) encoding supported by - // Dialogflow API has a header byte in each block, as in MIME type - // `audio/x-speex-with-header-byte`. - // It is a variant of the RTP Speex encoding defined in - // [RFC 5574](https://tools.ietf.org/html/rfc5574). - // The stream is a sequence of blocks, one block per RTP packet. Each block - // starts with a byte containing the length of the block, in bytes, followed - // by one or more frames of Speex data, padded to an integral number of - // bytes (octets) as specified in RFC 5574. In other words, each RTP header - // is replaced with a single byte containing the block length. Only Speex - // wideband is supported. `sample_rate_hertz` must be 16000. - AUDIO_ENCODING_SPEEX_WITH_HEADER_BYTE = 7; -} diff --git a/google/cloud/dialogflow/v2beta1/session_entity_type.proto b/google/cloud/dialogflow/v2beta1/session_entity_type.proto index f2d22b8dd..3b6f14f14 100644 --- a/google/cloud/dialogflow/v2beta1/session_entity_type.proto +++ b/google/cloud/dialogflow/v2beta1/session_entity_type.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,12 +11,14 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; import "google/api/annotations.proto"; +import "google/api/resource.proto"; import "google/cloud/dialogflow/v2beta1/entity_type.proto"; import "google/protobuf/empty.proto"; import "google/protobuf/field_mask.proto"; @@ -40,11 +42,11 @@ option objc_class_prefix = "DF"; // entity type at the session level. // // For more information about entity types, see the -// [Dialogflow documentation](https://dialogflow.com/docs/entities). +// [Dialogflow +// documentation](https://cloud.google.com/dialogflow-enterprise/docs/entities-overview). service SessionEntityTypes { // Returns the list of all session entity types in the specified session. - rpc ListSessionEntityTypes(ListSessionEntityTypesRequest) - returns (ListSessionEntityTypesResponse) { + rpc ListSessionEntityTypes(ListSessionEntityTypesRequest) returns (ListSessionEntityTypesResponse) { option (google.api.http) = { get: "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" additional_bindings { @@ -54,8 +56,7 @@ service SessionEntityTypes { } // Retrieves the specified session entity type. - rpc GetSessionEntityType(GetSessionEntityTypeRequest) - returns (SessionEntityType) { + rpc GetSessionEntityType(GetSessionEntityTypeRequest) returns (SessionEntityType) { option (google.api.http) = { get: "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" additional_bindings { @@ -65,8 +66,10 @@ service SessionEntityTypes { } // Creates a session entity type. - rpc CreateSessionEntityType(CreateSessionEntityTypeRequest) - returns (SessionEntityType) { + // + // If the specified session entity type already exists, overrides the + // session entity type. + rpc CreateSessionEntityType(CreateSessionEntityTypeRequest) returns (SessionEntityType) { option (google.api.http) = { post: "/v2beta1/{parent=projects/*/agent/sessions/*}/entityTypes" body: "session_entity_type" @@ -78,8 +81,7 @@ service SessionEntityTypes { } // Updates the specified session entity type. - rpc UpdateSessionEntityType(UpdateSessionEntityTypeRequest) - returns (SessionEntityType) { + rpc UpdateSessionEntityType(UpdateSessionEntityTypeRequest) returns (SessionEntityType) { option (google.api.http) = { patch: "/v2beta1/{session_entity_type.name=projects/*/agent/sessions/*/entityTypes/*}" body: "session_entity_type" @@ -91,8 +93,7 @@ service SessionEntityTypes { } // Deletes the specified session entity type. - rpc DeleteSessionEntityType(DeleteSessionEntityTypeRequest) - returns (google.protobuf.Empty) { + rpc DeleteSessionEntityType(DeleteSessionEntityTypeRequest) returns (google.protobuf.Empty) { option (google.api.http) = { delete: "/v2beta1/{name=projects/*/agent/sessions/*/entityTypes/*}" additional_bindings { @@ -121,10 +122,13 @@ message SessionEntityType { // The collection of session entities extends the collection of entities in // the corresponding developer entity type. - // Calls to `ListSessionEntityTypes`, `GetSessionEntityType`, - // `CreateSessionEntityType` and `UpdateSessionEntityType` return the full - // collection of entities from the developer entity type in the agent's - // default language and the session entity type. + // + // Note: Even in this override mode calls to `ListSessionEntityTypes`, + // `GetSessionEntityType`, `CreateSessionEntityType` and + // `UpdateSessionEntityType` only return the additional entities added in + // this session entity type. If you want to get the supplemented list, + // please call [EntityTypes.GetEntityType][google.cloud.dialogflow.v2beta1.EntityTypes.GetEntityType] on the developer entity type + // and merge. ENTITY_OVERRIDE_MODE_SUPPLEMENT = 2; } @@ -135,6 +139,9 @@ message SessionEntityType { // ID>/sessions/<Session ID>/entityTypes/<Entity Type Display Name>`. // If `Environment ID` is not specified, we assume default 'draft' // environment. If `User ID` is not specified, we assume default '-' user. + // + // `<Entity Type Display Name>` must be the display name of an existing entity + // type in the same agent that will be overridden or supplemented. string name = 1; // Required. Indicates whether the additional data should override or @@ -146,8 +153,7 @@ message SessionEntityType { repeated EntityType.Entity entities = 3; } -// The request message for -// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes]. +// The request message for [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes]. message ListSessionEntityTypesRequest { // Required. The session to list all session entity types from. // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or @@ -165,8 +171,7 @@ message ListSessionEntityTypesRequest { string page_token = 3; } -// The response message for -// [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes]. +// The response message for [SessionEntityTypes.ListSessionEntityTypes][google.cloud.dialogflow.v2beta1.SessionEntityTypes.ListSessionEntityTypes]. message ListSessionEntityTypesResponse { // The list of session entity types. There will be a maximum number of items // returned based on the page_size field in the request. @@ -177,8 +182,7 @@ message ListSessionEntityTypesResponse { string next_page_token = 2; } -// The request message for -// [SessionEntityTypes.GetSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType]. +// The request message for [SessionEntityTypes.GetSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.GetSessionEntityType]. message GetSessionEntityTypeRequest { // Required. The name of the session entity type. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type @@ -189,8 +193,7 @@ message GetSessionEntityTypeRequest { string name = 1; } -// The request message for -// [SessionEntityTypes.CreateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType]. +// The request message for [SessionEntityTypes.CreateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.CreateSessionEntityType]. message CreateSessionEntityTypeRequest { // Required. The session to create a session entity type for. // Format: `projects/<Project ID>/agent/sessions/<Session ID>` or @@ -204,8 +207,7 @@ message CreateSessionEntityTypeRequest { SessionEntityType session_entity_type = 2; } -// The request message for -// [SessionEntityTypes.UpdateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType]. +// The request message for [SessionEntityTypes.UpdateSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.UpdateSessionEntityType]. message UpdateSessionEntityTypeRequest { // Required. The entity type to update. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type @@ -219,8 +221,7 @@ message UpdateSessionEntityTypeRequest { google.protobuf.FieldMask update_mask = 2; } -// The request message for -// [SessionEntityTypes.DeleteSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType]. +// The request message for [SessionEntityTypes.DeleteSessionEntityType][google.cloud.dialogflow.v2beta1.SessionEntityTypes.DeleteSessionEntityType]. message DeleteSessionEntityTypeRequest { // Required. The name of the entity type to delete. Format: // `projects/<Project ID>/agent/sessions/<Session ID>/entityTypes/<Entity Type diff --git a/google/cloud/dialogflow/v2beta1/webhook.proto b/google/cloud/dialogflow/v2beta1/webhook.proto index b9cfc4064..433c8c0b5 100644 --- a/google/cloud/dialogflow/v2beta1/webhook.proto +++ b/google/cloud/dialogflow/v2beta1/webhook.proto @@ -1,4 +1,4 @@ -// Copyright 2018 Google LLC +// Copyright 2019 Google LLC. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. @@ -11,16 +11,18 @@ // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. +// syntax = "proto3"; package google.cloud.dialogflow.v2beta1; -import "google/api/annotations.proto"; import "google/cloud/dialogflow/v2beta1/context.proto"; import "google/cloud/dialogflow/v2beta1/intent.proto"; import "google/cloud/dialogflow/v2beta1/session.proto"; +import "google/cloud/dialogflow/v2beta1/session_entity_type.proto"; import "google/protobuf/struct.proto"; +import "google/api/annotations.proto"; option cc_enable_arenas = true; option csharp_namespace = "Google.Cloud.Dialogflow.V2beta1"; @@ -34,7 +36,9 @@ option objc_class_prefix = "DF"; message WebhookRequest { // The unique identifier of detectIntent request session. // Can be used to identify end-user inside webhook implementation. - // Format: `projects/<Project ID>/agent/sessions/<Session ID>`. + // Format: `projects/<Project ID>/agent/sessions/<Session ID>`, or + // `projects/<Project ID>/agent/environments/<Environment ID>/users/<User + // ID>/sessions/<Session ID>`. string session = 4; // The unique identifier of the response. Contains the same value as @@ -116,20 +120,18 @@ message OriginalDetectIntentRequest { // This field is AoG-specific. string version = 2; - // Optional. This field is set to the value of `QueryParameters.payload` field - // passed in the request. + // Optional. This field is set to the value of the `QueryParameters.payload` + // field passed in the request. Some integrations that query a Dialogflow + // agent may provide additional information in the payload. // - // This field is used for the telephony gateway. It should have a - // structure similar to this JSON message: + // In particular for the Telephony Gateway this field has the form: // <pre>{ // "telephony": { // "caller_id": "+18558363987" // } // }</pre> - // Note: The caller ID field (`caller_id`) will be in - // [E.164 format](https://en.wikipedia.org/wiki/E.164) and is only supported - // for Enterprise Edition and not for Standard Edition agents. When the - // telephony gateway is used with a standard tier agent the `caller_id` field - // above will have a value of `REDACTED_IN_STANDARD_TIER_AGENT`. + // Note: The caller ID field (`caller_id`) will be redacted for Standard + // Edition agents and populated with the caller ID in [E.164 + // format](https://en.wikipedia.org/wiki/E.164) for Enterprise Edition agents. google.protobuf.Struct payload = 3; } |