1// Copyright 2023 Google LLC 2// 3// Licensed under the Apache License, Version 2.0 (the "License"); 4// you may not use this file except in compliance with the License. 5// You may obtain a copy of the License at 6// 7// http://www.apache.org/licenses/LICENSE-2.0 8// 9// Unless required by applicable law or agreed to in writing, software 10// distributed under the License is distributed on an "AS IS" BASIS, 11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12// See the License for the specific language governing permissions and 13// limitations under the License. 14 15syntax = "proto3"; 16 17package google.cloud.dialogflow.cx.v3; 18 19import "google/api/field_behavior.proto"; 20import "google/cloud/dialogflow/cx/v3/gcs.proto"; 21 22option cc_enable_arenas = true; 23option csharp_namespace = "Google.Cloud.Dialogflow.Cx.V3"; 24option go_package = "cloud.google.com/go/dialogflow/cx/apiv3/cxpb;cxpb"; 25option java_multiple_files = true; 26option java_outer_classname = "AdvancedSettingsProto"; 27option java_package = "com.google.cloud.dialogflow.cx.v3"; 28option objc_class_prefix = "DF"; 29option ruby_package = "Google::Cloud::Dialogflow::CX::V3"; 30 31// Hierarchical advanced settings for agent/flow/page/fulfillment/parameter. 32// Settings exposed at lower level overrides the settings exposed at higher 33// level. Overriding occurs at the sub-setting level. For example, the 34// playback_interruption_settings at fulfillment level only overrides the 35// playback_interruption_settings at the agent level, leaving other settings 36// at the agent level unchanged. 37// 38// DTMF settings does not override each other. DTMF settings set at different 39// levels define DTMF detections running in parallel. 40// 41// Hierarchy: Agent->Flow->Page->Fulfillment/Parameter. 42message AdvancedSettings { 43 // Define behaviors for DTMF (dual tone multi frequency). 44 message DtmfSettings { 45 // If true, incoming audio is processed for DTMF (dual tone multi frequency) 46 // events. For example, if the caller presses a button on their telephone 47 // keypad and DTMF processing is enabled, Dialogflow will detect the 48 // event (e.g. a "3" was pressed) in the incoming audio and pass the event 49 // to the bot to drive business logic (e.g. when 3 is pressed, return the 50 // account balance). 51 bool enabled = 1; 52 53 // Max length of DTMF digits. 54 int32 max_digits = 2; 55 56 // The digit that terminates a DTMF digit sequence. 57 string finish_digit = 3; 58 } 59 60 // Define behaviors on logging. 61 message LoggingSettings { 62 // If true, StackDriver logging is currently enabled. 63 bool enable_stackdriver_logging = 2; 64 65 // If true, DF Interaction logging is currently enabled. 66 bool enable_interaction_logging = 3; 67 } 68 69 // If present, incoming audio is exported by Dialogflow to the configured 70 // Google Cloud Storage destination. 71 // Exposed at the following levels: 72 // - Agent level 73 // - Flow level 74 GcsDestination audio_export_gcs_destination = 2; 75 76 // Settings for DTMF. 77 // Exposed at the following levels: 78 // - Agent level 79 // - Flow level 80 // - Page level 81 // - Parameter level. 82 DtmfSettings dtmf_settings = 5; 83 84 // Settings for logging. 85 // Settings for Dialogflow History, Contact Center messages, StackDriver logs, 86 // and speech logging. 87 // Exposed at the following levels: 88 // - Agent level. 89 LoggingSettings logging_settings = 6; 90} 91