1*d5c09012SAndroid Build Coastguard Worker// Copyright 2023 Google LLC 2*d5c09012SAndroid Build Coastguard Worker// 3*d5c09012SAndroid Build Coastguard Worker// Licensed under the Apache License, Version 2.0 (the "License"); 4*d5c09012SAndroid Build Coastguard Worker// you may not use this file except in compliance with the License. 5*d5c09012SAndroid Build Coastguard Worker// You may obtain a copy of the License at 6*d5c09012SAndroid Build Coastguard Worker// 7*d5c09012SAndroid Build Coastguard Worker// http://www.apache.org/licenses/LICENSE-2.0 8*d5c09012SAndroid Build Coastguard Worker// 9*d5c09012SAndroid Build Coastguard Worker// Unless required by applicable law or agreed to in writing, software 10*d5c09012SAndroid Build Coastguard Worker// distributed under the License is distributed on an "AS IS" BASIS, 11*d5c09012SAndroid Build Coastguard Worker// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12*d5c09012SAndroid Build Coastguard Worker// See the License for the specific language governing permissions and 13*d5c09012SAndroid Build Coastguard Worker// limitations under the License. 14*d5c09012SAndroid Build Coastguard Worker 15*d5c09012SAndroid Build Coastguard Workersyntax = "proto3"; 16*d5c09012SAndroid Build Coastguard Worker 17*d5c09012SAndroid Build Coastguard Workerpackage google.cloud.contactcenterinsights.v1; 18*d5c09012SAndroid Build Coastguard Worker 19*d5c09012SAndroid Build Coastguard Workerimport "google/api/field_behavior.proto"; 20*d5c09012SAndroid Build Coastguard Workerimport "google/api/resource.proto"; 21*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/duration.proto"; 22*d5c09012SAndroid Build Coastguard Workerimport "google/protobuf/timestamp.proto"; 23*d5c09012SAndroid Build Coastguard Worker 24*d5c09012SAndroid Build Coastguard Workeroption csharp_namespace = "Google.Cloud.ContactCenterInsights.V1"; 25*d5c09012SAndroid Build Coastguard Workeroption go_package = "cloud.google.com/go/contactcenterinsights/apiv1/contactcenterinsightspb;contactcenterinsightspb"; 26*d5c09012SAndroid Build Coastguard Workeroption java_multiple_files = true; 27*d5c09012SAndroid Build Coastguard Workeroption java_outer_classname = "ResourcesProto"; 28*d5c09012SAndroid Build Coastguard Workeroption java_package = "com.google.cloud.contactcenterinsights.v1"; 29*d5c09012SAndroid Build Coastguard Workeroption php_namespace = "Google\\Cloud\\ContactCenterInsights\\V1"; 30*d5c09012SAndroid Build Coastguard Workeroption ruby_package = "Google::Cloud::ContactCenterInsights::V1"; 31*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 32*d5c09012SAndroid Build Coastguard Worker type: "dialogflow.googleapis.com/ConversationProfile" 33*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}" 34*d5c09012SAndroid Build Coastguard Worker}; 35*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 36*d5c09012SAndroid Build Coastguard Worker type: "dialogflow.googleapis.com/Participant" 37*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/conversations/{conversation}/participants/{participant}" 38*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}" 39*d5c09012SAndroid Build Coastguard Worker}; 40*d5c09012SAndroid Build Coastguard Workeroption (google.api.resource_definition) = { 41*d5c09012SAndroid Build Coastguard Worker type: "speech.googleapis.com/Recognizer" 42*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/recognizers/{recognizer}" 43*d5c09012SAndroid Build Coastguard Worker}; 44*d5c09012SAndroid Build Coastguard Worker 45*d5c09012SAndroid Build Coastguard Worker// The conversation resource. 46*d5c09012SAndroid Build Coastguard Workermessage Conversation { 47*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 48*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/Conversation" 49*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/conversations/{conversation}" 50*d5c09012SAndroid Build Coastguard Worker }; 51*d5c09012SAndroid Build Coastguard Worker 52*d5c09012SAndroid Build Coastguard Worker // Call-specific metadata. 53*d5c09012SAndroid Build Coastguard Worker message CallMetadata { 54*d5c09012SAndroid Build Coastguard Worker // The audio channel that contains the customer. 55*d5c09012SAndroid Build Coastguard Worker int32 customer_channel = 1; 56*d5c09012SAndroid Build Coastguard Worker 57*d5c09012SAndroid Build Coastguard Worker // The audio channel that contains the agent. 58*d5c09012SAndroid Build Coastguard Worker int32 agent_channel = 2; 59*d5c09012SAndroid Build Coastguard Worker } 60*d5c09012SAndroid Build Coastguard Worker 61*d5c09012SAndroid Build Coastguard Worker // Conversation metadata related to quality management. 62*d5c09012SAndroid Build Coastguard Worker message QualityMetadata { 63*d5c09012SAndroid Build Coastguard Worker // Information about an agent involved in the conversation. 64*d5c09012SAndroid Build Coastguard Worker message AgentInfo { 65*d5c09012SAndroid Build Coastguard Worker // A user-specified string representing the agent. 66*d5c09012SAndroid Build Coastguard Worker string agent_id = 1; 67*d5c09012SAndroid Build Coastguard Worker 68*d5c09012SAndroid Build Coastguard Worker // The agent's name. 69*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 70*d5c09012SAndroid Build Coastguard Worker 71*d5c09012SAndroid Build Coastguard Worker // A user-specified string representing the agent's team. 72*d5c09012SAndroid Build Coastguard Worker string team = 3; 73*d5c09012SAndroid Build Coastguard Worker 74*d5c09012SAndroid Build Coastguard Worker // A user-provided string indicating the outcome of the agent's segment of 75*d5c09012SAndroid Build Coastguard Worker // the call. 76*d5c09012SAndroid Build Coastguard Worker string disposition_code = 4; 77*d5c09012SAndroid Build Coastguard Worker } 78*d5c09012SAndroid Build Coastguard Worker 79*d5c09012SAndroid Build Coastguard Worker // An arbitrary integer value indicating the customer's satisfaction rating. 80*d5c09012SAndroid Build Coastguard Worker int32 customer_satisfaction_rating = 1; 81*d5c09012SAndroid Build Coastguard Worker 82*d5c09012SAndroid Build Coastguard Worker // The amount of time the customer waited to connect with an agent. 83*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration wait_duration = 2; 84*d5c09012SAndroid Build Coastguard Worker 85*d5c09012SAndroid Build Coastguard Worker // An arbitrary string value specifying the menu path the customer took. 86*d5c09012SAndroid Build Coastguard Worker string menu_path = 3; 87*d5c09012SAndroid Build Coastguard Worker 88*d5c09012SAndroid Build Coastguard Worker // Information about agents involved in the call. 89*d5c09012SAndroid Build Coastguard Worker repeated AgentInfo agent_info = 4; 90*d5c09012SAndroid Build Coastguard Worker } 91*d5c09012SAndroid Build Coastguard Worker 92*d5c09012SAndroid Build Coastguard Worker // A message representing the transcript of a conversation. 93*d5c09012SAndroid Build Coastguard Worker message Transcript { 94*d5c09012SAndroid Build Coastguard Worker // A segment of a full transcript. 95*d5c09012SAndroid Build Coastguard Worker message TranscriptSegment { 96*d5c09012SAndroid Build Coastguard Worker // Word-level info for words in a transcript. 97*d5c09012SAndroid Build Coastguard Worker message WordInfo { 98*d5c09012SAndroid Build Coastguard Worker // Time offset of the start of this word relative to the beginning of 99*d5c09012SAndroid Build Coastguard Worker // the total conversation. 100*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration start_offset = 1; 101*d5c09012SAndroid Build Coastguard Worker 102*d5c09012SAndroid Build Coastguard Worker // Time offset of the end of this word relative to the beginning of the 103*d5c09012SAndroid Build Coastguard Worker // total conversation. 104*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration end_offset = 2; 105*d5c09012SAndroid Build Coastguard Worker 106*d5c09012SAndroid Build Coastguard Worker // The word itself. Includes punctuation marks that surround the word. 107*d5c09012SAndroid Build Coastguard Worker string word = 3; 108*d5c09012SAndroid Build Coastguard Worker 109*d5c09012SAndroid Build Coastguard Worker // A confidence estimate between 0.0 and 1.0 of the fidelity of this 110*d5c09012SAndroid Build Coastguard Worker // word. A default value of 0.0 indicates that the value is unset. 111*d5c09012SAndroid Build Coastguard Worker float confidence = 4; 112*d5c09012SAndroid Build Coastguard Worker } 113*d5c09012SAndroid Build Coastguard Worker 114*d5c09012SAndroid Build Coastguard Worker // Metadata from Dialogflow relating to the current transcript segment. 115*d5c09012SAndroid Build Coastguard Worker message DialogflowSegmentMetadata { 116*d5c09012SAndroid Build Coastguard Worker // Whether the transcript segment was covered under the configured smart 117*d5c09012SAndroid Build Coastguard Worker // reply allowlist in Agent Assist. 118*d5c09012SAndroid Build Coastguard Worker bool smart_reply_allowlist_covered = 1; 119*d5c09012SAndroid Build Coastguard Worker } 120*d5c09012SAndroid Build Coastguard Worker 121*d5c09012SAndroid Build Coastguard Worker // The time that the message occurred, if provided. 122*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp message_time = 6; 123*d5c09012SAndroid Build Coastguard Worker 124*d5c09012SAndroid Build Coastguard Worker // The text of this segment. 125*d5c09012SAndroid Build Coastguard Worker string text = 1; 126*d5c09012SAndroid Build Coastguard Worker 127*d5c09012SAndroid Build Coastguard Worker // A confidence estimate between 0.0 and 1.0 of the fidelity of this 128*d5c09012SAndroid Build Coastguard Worker // segment. A default value of 0.0 indicates that the value is unset. 129*d5c09012SAndroid Build Coastguard Worker float confidence = 2; 130*d5c09012SAndroid Build Coastguard Worker 131*d5c09012SAndroid Build Coastguard Worker // A list of the word-specific information for each word in the segment. 132*d5c09012SAndroid Build Coastguard Worker repeated WordInfo words = 3; 133*d5c09012SAndroid Build Coastguard Worker 134*d5c09012SAndroid Build Coastguard Worker // The language code of this segment as a 135*d5c09012SAndroid Build Coastguard Worker // [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag. 136*d5c09012SAndroid Build Coastguard Worker // Example: "en-US". 137*d5c09012SAndroid Build Coastguard Worker string language_code = 4; 138*d5c09012SAndroid Build Coastguard Worker 139*d5c09012SAndroid Build Coastguard Worker // For conversations derived from multi-channel audio, this is the channel 140*d5c09012SAndroid Build Coastguard Worker // number corresponding to the audio from that channel. For 141*d5c09012SAndroid Build Coastguard Worker // audioChannelCount = N, its output values can range from '1' to 'N'. A 142*d5c09012SAndroid Build Coastguard Worker // channel tag of 0 indicates that the audio is mono. 143*d5c09012SAndroid Build Coastguard Worker int32 channel_tag = 5; 144*d5c09012SAndroid Build Coastguard Worker 145*d5c09012SAndroid Build Coastguard Worker // The participant of this segment. 146*d5c09012SAndroid Build Coastguard Worker ConversationParticipant segment_participant = 9; 147*d5c09012SAndroid Build Coastguard Worker 148*d5c09012SAndroid Build Coastguard Worker // CCAI metadata relating to the current transcript segment. 149*d5c09012SAndroid Build Coastguard Worker DialogflowSegmentMetadata dialogflow_segment_metadata = 10; 150*d5c09012SAndroid Build Coastguard Worker 151*d5c09012SAndroid Build Coastguard Worker // The sentiment for this transcript segment. 152*d5c09012SAndroid Build Coastguard Worker SentimentData sentiment = 11; 153*d5c09012SAndroid Build Coastguard Worker } 154*d5c09012SAndroid Build Coastguard Worker 155*d5c09012SAndroid Build Coastguard Worker // A list of sequential transcript segments that comprise the conversation. 156*d5c09012SAndroid Build Coastguard Worker repeated TranscriptSegment transcript_segments = 1; 157*d5c09012SAndroid Build Coastguard Worker } 158*d5c09012SAndroid Build Coastguard Worker 159*d5c09012SAndroid Build Coastguard Worker // Possible media for the conversation. 160*d5c09012SAndroid Build Coastguard Worker enum Medium { 161*d5c09012SAndroid Build Coastguard Worker // Default value, if unspecified will default to PHONE_CALL. 162*d5c09012SAndroid Build Coastguard Worker MEDIUM_UNSPECIFIED = 0; 163*d5c09012SAndroid Build Coastguard Worker 164*d5c09012SAndroid Build Coastguard Worker // The format for conversations that took place over the phone. 165*d5c09012SAndroid Build Coastguard Worker PHONE_CALL = 1; 166*d5c09012SAndroid Build Coastguard Worker 167*d5c09012SAndroid Build Coastguard Worker // The format for conversations that took place over chat. 168*d5c09012SAndroid Build Coastguard Worker CHAT = 2; 169*d5c09012SAndroid Build Coastguard Worker } 170*d5c09012SAndroid Build Coastguard Worker 171*d5c09012SAndroid Build Coastguard Worker // Metadata that applies to the conversation. 172*d5c09012SAndroid Build Coastguard Worker oneof metadata { 173*d5c09012SAndroid Build Coastguard Worker // Call-specific metadata. 174*d5c09012SAndroid Build Coastguard Worker CallMetadata call_metadata = 7; 175*d5c09012SAndroid Build Coastguard Worker } 176*d5c09012SAndroid Build Coastguard Worker 177*d5c09012SAndroid Build Coastguard Worker // A time to live expiration setting, can be either a specified timestamp or a 178*d5c09012SAndroid Build Coastguard Worker // duration from the time that the conversation creation request was received. 179*d5c09012SAndroid Build Coastguard Worker // Conversations with an expiration set will be removed up to 24 hours after 180*d5c09012SAndroid Build Coastguard Worker // the specified time. 181*d5c09012SAndroid Build Coastguard Worker oneof expiration { 182*d5c09012SAndroid Build Coastguard Worker // The time at which this conversation should expire. After this time, the 183*d5c09012SAndroid Build Coastguard Worker // conversation data and any associated analyses will be deleted. 184*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp expire_time = 15; 185*d5c09012SAndroid Build Coastguard Worker 186*d5c09012SAndroid Build Coastguard Worker // Input only. The TTL for this resource. If specified, then this TTL will 187*d5c09012SAndroid Build Coastguard Worker // be used to calculate the expire time. 188*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration ttl = 16 189*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = INPUT_ONLY]; 190*d5c09012SAndroid Build Coastguard Worker } 191*d5c09012SAndroid Build Coastguard Worker 192*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the conversation. 193*d5c09012SAndroid Build Coastguard Worker // Format: 194*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversations/{conversation} 195*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 196*d5c09012SAndroid Build Coastguard Worker 197*d5c09012SAndroid Build Coastguard Worker // The source of the audio and transcription for the conversation. 198*d5c09012SAndroid Build Coastguard Worker ConversationDataSource data_source = 2; 199*d5c09012SAndroid Build Coastguard Worker 200*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which the conversation was created. 201*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 202*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 203*d5c09012SAndroid Build Coastguard Worker 204*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time at which the conversation was updated. 205*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 4 206*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 207*d5c09012SAndroid Build Coastguard Worker 208*d5c09012SAndroid Build Coastguard Worker // The time at which the conversation started. 209*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp start_time = 17; 210*d5c09012SAndroid Build Coastguard Worker 211*d5c09012SAndroid Build Coastguard Worker // A user-specified language code for the conversation. 212*d5c09012SAndroid Build Coastguard Worker string language_code = 14; 213*d5c09012SAndroid Build Coastguard Worker 214*d5c09012SAndroid Build Coastguard Worker // An opaque, user-specified string representing the human agent who handled 215*d5c09012SAndroid Build Coastguard Worker // the conversation. 216*d5c09012SAndroid Build Coastguard Worker string agent_id = 5; 217*d5c09012SAndroid Build Coastguard Worker 218*d5c09012SAndroid Build Coastguard Worker // A map for the user to specify any custom fields. A maximum of 20 labels per 219*d5c09012SAndroid Build Coastguard Worker // conversation is allowed, with a maximum of 256 characters per entry. 220*d5c09012SAndroid Build Coastguard Worker map<string, string> labels = 6; 221*d5c09012SAndroid Build Coastguard Worker 222*d5c09012SAndroid Build Coastguard Worker // Conversation metadata related to quality management. 223*d5c09012SAndroid Build Coastguard Worker QualityMetadata quality_metadata = 24; 224*d5c09012SAndroid Build Coastguard Worker 225*d5c09012SAndroid Build Coastguard Worker // Output only. The conversation transcript. 226*d5c09012SAndroid Build Coastguard Worker Transcript transcript = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 227*d5c09012SAndroid Build Coastguard Worker 228*d5c09012SAndroid Build Coastguard Worker // Immutable. The conversation medium, if unspecified will default to 229*d5c09012SAndroid Build Coastguard Worker // PHONE_CALL. 230*d5c09012SAndroid Build Coastguard Worker Medium medium = 9 [(google.api.field_behavior) = IMMUTABLE]; 231*d5c09012SAndroid Build Coastguard Worker 232*d5c09012SAndroid Build Coastguard Worker // Output only. The duration of the conversation. 233*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration duration = 10 234*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 235*d5c09012SAndroid Build Coastguard Worker 236*d5c09012SAndroid Build Coastguard Worker // Output only. The number of turns in the conversation. 237*d5c09012SAndroid Build Coastguard Worker int32 turn_count = 11 [(google.api.field_behavior) = OUTPUT_ONLY]; 238*d5c09012SAndroid Build Coastguard Worker 239*d5c09012SAndroid Build Coastguard Worker // Output only. The conversation's latest analysis, if one exists. 240*d5c09012SAndroid Build Coastguard Worker Analysis latest_analysis = 12 [(google.api.field_behavior) = OUTPUT_ONLY]; 241*d5c09012SAndroid Build Coastguard Worker 242*d5c09012SAndroid Build Coastguard Worker // Output only. Latest summary of the conversation. 243*d5c09012SAndroid Build Coastguard Worker ConversationSummarizationSuggestionData latest_summary = 20 244*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 245*d5c09012SAndroid Build Coastguard Worker 246*d5c09012SAndroid Build Coastguard Worker // Output only. The annotations that were generated during the customer and 247*d5c09012SAndroid Build Coastguard Worker // agent interaction. 248*d5c09012SAndroid Build Coastguard Worker repeated RuntimeAnnotation runtime_annotations = 13 249*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 250*d5c09012SAndroid Build Coastguard Worker 251*d5c09012SAndroid Build Coastguard Worker // Output only. All the matched Dialogflow intents in the call. The key 252*d5c09012SAndroid Build Coastguard Worker // corresponds to a Dialogflow intent, format: 253*d5c09012SAndroid Build Coastguard Worker // projects/{project}/agent/{agent}/intents/{intent} 254*d5c09012SAndroid Build Coastguard Worker map<string, DialogflowIntent> dialogflow_intents = 18 255*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 256*d5c09012SAndroid Build Coastguard Worker 257*d5c09012SAndroid Build Coastguard Worker // Obfuscated user ID which the customer sent to us. 258*d5c09012SAndroid Build Coastguard Worker string obfuscated_user_id = 21; 259*d5c09012SAndroid Build Coastguard Worker} 260*d5c09012SAndroid Build Coastguard Worker 261*d5c09012SAndroid Build Coastguard Worker// The analysis resource. 262*d5c09012SAndroid Build Coastguard Workermessage Analysis { 263*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 264*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/Analysis" 265*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}" 266*d5c09012SAndroid Build Coastguard Worker }; 267*d5c09012SAndroid Build Coastguard Worker 268*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the analysis. 269*d5c09012SAndroid Build Coastguard Worker // Format: 270*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis} 271*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 272*d5c09012SAndroid Build Coastguard Worker 273*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which the analysis was requested. 274*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp request_time = 2 275*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 276*d5c09012SAndroid Build Coastguard Worker 277*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which the analysis was created, which occurs when 278*d5c09012SAndroid Build Coastguard Worker // the long-running operation completes. 279*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 280*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 281*d5c09012SAndroid Build Coastguard Worker 282*d5c09012SAndroid Build Coastguard Worker // Output only. The result of the analysis, which is populated when the 283*d5c09012SAndroid Build Coastguard Worker // analysis finishes. 284*d5c09012SAndroid Build Coastguard Worker AnalysisResult analysis_result = 7 285*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 286*d5c09012SAndroid Build Coastguard Worker 287*d5c09012SAndroid Build Coastguard Worker // To select the annotators to run and the phrase matchers to use 288*d5c09012SAndroid Build Coastguard Worker // (if any). If not specified, all annotators will be run. 289*d5c09012SAndroid Build Coastguard Worker AnnotatorSelector annotator_selector = 8; 290*d5c09012SAndroid Build Coastguard Worker} 291*d5c09012SAndroid Build Coastguard Worker 292*d5c09012SAndroid Build Coastguard Worker// The conversation source, which is a combination of transcript and audio. 293*d5c09012SAndroid Build Coastguard Workermessage ConversationDataSource { 294*d5c09012SAndroid Build Coastguard Worker // The source of the conversation. 295*d5c09012SAndroid Build Coastguard Worker oneof source { 296*d5c09012SAndroid Build Coastguard Worker // A Cloud Storage location specification for the audio and transcript. 297*d5c09012SAndroid Build Coastguard Worker GcsSource gcs_source = 1; 298*d5c09012SAndroid Build Coastguard Worker 299*d5c09012SAndroid Build Coastguard Worker // The source when the conversation comes from Dialogflow. 300*d5c09012SAndroid Build Coastguard Worker DialogflowSource dialogflow_source = 3; 301*d5c09012SAndroid Build Coastguard Worker } 302*d5c09012SAndroid Build Coastguard Worker} 303*d5c09012SAndroid Build Coastguard Worker 304*d5c09012SAndroid Build Coastguard Worker// A Cloud Storage source of conversation data. 305*d5c09012SAndroid Build Coastguard Workermessage GcsSource { 306*d5c09012SAndroid Build Coastguard Worker // Cloud Storage URI that points to a file that contains the conversation 307*d5c09012SAndroid Build Coastguard Worker // audio. 308*d5c09012SAndroid Build Coastguard Worker string audio_uri = 1; 309*d5c09012SAndroid Build Coastguard Worker 310*d5c09012SAndroid Build Coastguard Worker // Immutable. Cloud Storage URI that points to a file that contains the 311*d5c09012SAndroid Build Coastguard Worker // conversation transcript. 312*d5c09012SAndroid Build Coastguard Worker string transcript_uri = 2 [(google.api.field_behavior) = IMMUTABLE]; 313*d5c09012SAndroid Build Coastguard Worker} 314*d5c09012SAndroid Build Coastguard Worker 315*d5c09012SAndroid Build Coastguard Worker// A Dialogflow source of conversation data. 316*d5c09012SAndroid Build Coastguard Workermessage DialogflowSource { 317*d5c09012SAndroid Build Coastguard Worker // Output only. The name of the Dialogflow conversation that this conversation 318*d5c09012SAndroid Build Coastguard Worker // resource is derived from. Format: 319*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversations/{conversation} 320*d5c09012SAndroid Build Coastguard Worker string dialogflow_conversation = 1 321*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 322*d5c09012SAndroid Build Coastguard Worker 323*d5c09012SAndroid Build Coastguard Worker // Cloud Storage URI that points to a file that contains the conversation 324*d5c09012SAndroid Build Coastguard Worker // audio. 325*d5c09012SAndroid Build Coastguard Worker string audio_uri = 3; 326*d5c09012SAndroid Build Coastguard Worker} 327*d5c09012SAndroid Build Coastguard Worker 328*d5c09012SAndroid Build Coastguard Worker// The result of an analysis. 329*d5c09012SAndroid Build Coastguard Workermessage AnalysisResult { 330*d5c09012SAndroid Build Coastguard Worker // Call-specific metadata created during analysis. 331*d5c09012SAndroid Build Coastguard Worker message CallAnalysisMetadata { 332*d5c09012SAndroid Build Coastguard Worker // A list of call annotations that apply to this call. 333*d5c09012SAndroid Build Coastguard Worker repeated CallAnnotation annotations = 2; 334*d5c09012SAndroid Build Coastguard Worker 335*d5c09012SAndroid Build Coastguard Worker // All the entities in the call. 336*d5c09012SAndroid Build Coastguard Worker map<string, Entity> entities = 3; 337*d5c09012SAndroid Build Coastguard Worker 338*d5c09012SAndroid Build Coastguard Worker // Overall conversation-level sentiment for each channel of the call. 339*d5c09012SAndroid Build Coastguard Worker repeated ConversationLevelSentiment sentiments = 4; 340*d5c09012SAndroid Build Coastguard Worker 341*d5c09012SAndroid Build Coastguard Worker // All the matched intents in the call. 342*d5c09012SAndroid Build Coastguard Worker map<string, Intent> intents = 6; 343*d5c09012SAndroid Build Coastguard Worker 344*d5c09012SAndroid Build Coastguard Worker // All the matched phrase matchers in the call. 345*d5c09012SAndroid Build Coastguard Worker map<string, PhraseMatchData> phrase_matchers = 7; 346*d5c09012SAndroid Build Coastguard Worker 347*d5c09012SAndroid Build Coastguard Worker // Overall conversation-level issue modeling result. 348*d5c09012SAndroid Build Coastguard Worker IssueModelResult issue_model_result = 8; 349*d5c09012SAndroid Build Coastguard Worker } 350*d5c09012SAndroid Build Coastguard Worker 351*d5c09012SAndroid Build Coastguard Worker // Metadata discovered during analysis. 352*d5c09012SAndroid Build Coastguard Worker oneof metadata { 353*d5c09012SAndroid Build Coastguard Worker // Call-specific metadata created by the analysis. 354*d5c09012SAndroid Build Coastguard Worker CallAnalysisMetadata call_analysis_metadata = 2; 355*d5c09012SAndroid Build Coastguard Worker } 356*d5c09012SAndroid Build Coastguard Worker 357*d5c09012SAndroid Build Coastguard Worker // The time at which the analysis ended. 358*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp end_time = 1; 359*d5c09012SAndroid Build Coastguard Worker} 360*d5c09012SAndroid Build Coastguard Worker 361*d5c09012SAndroid Build Coastguard Worker// Issue Modeling result on a conversation. 362*d5c09012SAndroid Build Coastguard Workermessage IssueModelResult { 363*d5c09012SAndroid Build Coastguard Worker // Issue model that generates the result. 364*d5c09012SAndroid Build Coastguard Worker // Format: projects/{project}/locations/{location}/issueModels/{issue_model} 365*d5c09012SAndroid Build Coastguard Worker string issue_model = 1 [(google.api.resource_reference) = { 366*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/IssueModel" 367*d5c09012SAndroid Build Coastguard Worker }]; 368*d5c09012SAndroid Build Coastguard Worker 369*d5c09012SAndroid Build Coastguard Worker // All the matched issues. 370*d5c09012SAndroid Build Coastguard Worker repeated IssueAssignment issues = 2; 371*d5c09012SAndroid Build Coastguard Worker} 372*d5c09012SAndroid Build Coastguard Worker 373*d5c09012SAndroid Build Coastguard Worker// One channel of conversation-level sentiment data. 374*d5c09012SAndroid Build Coastguard Workermessage ConversationLevelSentiment { 375*d5c09012SAndroid Build Coastguard Worker // The channel of the audio that the data applies to. 376*d5c09012SAndroid Build Coastguard Worker int32 channel_tag = 1; 377*d5c09012SAndroid Build Coastguard Worker 378*d5c09012SAndroid Build Coastguard Worker // Data specifying sentiment. 379*d5c09012SAndroid Build Coastguard Worker SentimentData sentiment_data = 2; 380*d5c09012SAndroid Build Coastguard Worker} 381*d5c09012SAndroid Build Coastguard Worker 382*d5c09012SAndroid Build Coastguard Worker// Information about the issue. 383*d5c09012SAndroid Build Coastguard Workermessage IssueAssignment { 384*d5c09012SAndroid Build Coastguard Worker // Resource name of the assigned issue. 385*d5c09012SAndroid Build Coastguard Worker string issue = 1; 386*d5c09012SAndroid Build Coastguard Worker 387*d5c09012SAndroid Build Coastguard Worker // Score indicating the likelihood of the issue assignment. 388*d5c09012SAndroid Build Coastguard Worker // currently bounded on [0,1]. 389*d5c09012SAndroid Build Coastguard Worker double score = 2; 390*d5c09012SAndroid Build Coastguard Worker 391*d5c09012SAndroid Build Coastguard Worker // Immutable. Display name of the assigned issue. This field is set at time of 392*d5c09012SAndroid Build Coastguard Worker // analyis and immutable since then. 393*d5c09012SAndroid Build Coastguard Worker string display_name = 3 [(google.api.field_behavior) = IMMUTABLE]; 394*d5c09012SAndroid Build Coastguard Worker} 395*d5c09012SAndroid Build Coastguard Worker 396*d5c09012SAndroid Build Coastguard Worker// A piece of metadata that applies to a window of a call. 397*d5c09012SAndroid Build Coastguard Workermessage CallAnnotation { 398*d5c09012SAndroid Build Coastguard Worker // The data in the annotation. 399*d5c09012SAndroid Build Coastguard Worker oneof data { 400*d5c09012SAndroid Build Coastguard Worker // Data specifying an interruption. 401*d5c09012SAndroid Build Coastguard Worker InterruptionData interruption_data = 10; 402*d5c09012SAndroid Build Coastguard Worker 403*d5c09012SAndroid Build Coastguard Worker // Data specifying sentiment. 404*d5c09012SAndroid Build Coastguard Worker SentimentData sentiment_data = 11; 405*d5c09012SAndroid Build Coastguard Worker 406*d5c09012SAndroid Build Coastguard Worker // Data specifying silence. 407*d5c09012SAndroid Build Coastguard Worker SilenceData silence_data = 12; 408*d5c09012SAndroid Build Coastguard Worker 409*d5c09012SAndroid Build Coastguard Worker // Data specifying a hold. 410*d5c09012SAndroid Build Coastguard Worker HoldData hold_data = 13; 411*d5c09012SAndroid Build Coastguard Worker 412*d5c09012SAndroid Build Coastguard Worker // Data specifying an entity mention. 413*d5c09012SAndroid Build Coastguard Worker EntityMentionData entity_mention_data = 15; 414*d5c09012SAndroid Build Coastguard Worker 415*d5c09012SAndroid Build Coastguard Worker // Data specifying an intent match. 416*d5c09012SAndroid Build Coastguard Worker IntentMatchData intent_match_data = 16; 417*d5c09012SAndroid Build Coastguard Worker 418*d5c09012SAndroid Build Coastguard Worker // Data specifying a phrase match. 419*d5c09012SAndroid Build Coastguard Worker PhraseMatchData phrase_match_data = 17; 420*d5c09012SAndroid Build Coastguard Worker 421*d5c09012SAndroid Build Coastguard Worker // Data specifying an issue match. 422*d5c09012SAndroid Build Coastguard Worker IssueMatchData issue_match_data = 18; 423*d5c09012SAndroid Build Coastguard Worker } 424*d5c09012SAndroid Build Coastguard Worker 425*d5c09012SAndroid Build Coastguard Worker // The channel of the audio where the annotation occurs. For single-channel 426*d5c09012SAndroid Build Coastguard Worker // audio, this field is not populated. 427*d5c09012SAndroid Build Coastguard Worker int32 channel_tag = 1; 428*d5c09012SAndroid Build Coastguard Worker 429*d5c09012SAndroid Build Coastguard Worker // The boundary in the conversation where the annotation starts, inclusive. 430*d5c09012SAndroid Build Coastguard Worker AnnotationBoundary annotation_start_boundary = 4; 431*d5c09012SAndroid Build Coastguard Worker 432*d5c09012SAndroid Build Coastguard Worker // The boundary in the conversation where the annotation ends, inclusive. 433*d5c09012SAndroid Build Coastguard Worker AnnotationBoundary annotation_end_boundary = 5; 434*d5c09012SAndroid Build Coastguard Worker} 435*d5c09012SAndroid Build Coastguard Worker 436*d5c09012SAndroid Build Coastguard Worker// A point in a conversation that marks the start or the end of an annotation. 437*d5c09012SAndroid Build Coastguard Workermessage AnnotationBoundary { 438*d5c09012SAndroid Build Coastguard Worker // A detailed boundary, which describes a more specific point. 439*d5c09012SAndroid Build Coastguard Worker oneof detailed_boundary { 440*d5c09012SAndroid Build Coastguard Worker // The word index of this boundary with respect to the first word in the 441*d5c09012SAndroid Build Coastguard Worker // transcript piece. This index starts at zero. 442*d5c09012SAndroid Build Coastguard Worker int32 word_index = 3; 443*d5c09012SAndroid Build Coastguard Worker } 444*d5c09012SAndroid Build Coastguard Worker 445*d5c09012SAndroid Build Coastguard Worker // The index in the sequence of transcribed pieces of the conversation where 446*d5c09012SAndroid Build Coastguard Worker // the boundary is located. This index starts at zero. 447*d5c09012SAndroid Build Coastguard Worker int32 transcript_index = 1; 448*d5c09012SAndroid Build Coastguard Worker} 449*d5c09012SAndroid Build Coastguard Worker 450*d5c09012SAndroid Build Coastguard Worker// The data for an entity annotation. 451*d5c09012SAndroid Build Coastguard Worker// Represents a phrase in the conversation that is a known entity, such 452*d5c09012SAndroid Build Coastguard Worker// as a person, an organization, or location. 453*d5c09012SAndroid Build Coastguard Workermessage Entity { 454*d5c09012SAndroid Build Coastguard Worker // The type of the entity. For most entity types, the associated metadata is a 455*d5c09012SAndroid Build Coastguard Worker // Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`). The table 456*d5c09012SAndroid Build Coastguard Worker // below lists the associated fields for entities that have different 457*d5c09012SAndroid Build Coastguard Worker // metadata. 458*d5c09012SAndroid Build Coastguard Worker enum Type { 459*d5c09012SAndroid Build Coastguard Worker // Unspecified. 460*d5c09012SAndroid Build Coastguard Worker TYPE_UNSPECIFIED = 0; 461*d5c09012SAndroid Build Coastguard Worker 462*d5c09012SAndroid Build Coastguard Worker // Person. 463*d5c09012SAndroid Build Coastguard Worker PERSON = 1; 464*d5c09012SAndroid Build Coastguard Worker 465*d5c09012SAndroid Build Coastguard Worker // Location. 466*d5c09012SAndroid Build Coastguard Worker LOCATION = 2; 467*d5c09012SAndroid Build Coastguard Worker 468*d5c09012SAndroid Build Coastguard Worker // Organization. 469*d5c09012SAndroid Build Coastguard Worker ORGANIZATION = 3; 470*d5c09012SAndroid Build Coastguard Worker 471*d5c09012SAndroid Build Coastguard Worker // Event. 472*d5c09012SAndroid Build Coastguard Worker EVENT = 4; 473*d5c09012SAndroid Build Coastguard Worker 474*d5c09012SAndroid Build Coastguard Worker // Artwork. 475*d5c09012SAndroid Build Coastguard Worker WORK_OF_ART = 5; 476*d5c09012SAndroid Build Coastguard Worker 477*d5c09012SAndroid Build Coastguard Worker // Consumer product. 478*d5c09012SAndroid Build Coastguard Worker CONSUMER_GOOD = 6; 479*d5c09012SAndroid Build Coastguard Worker 480*d5c09012SAndroid Build Coastguard Worker // Other types of entities. 481*d5c09012SAndroid Build Coastguard Worker OTHER = 7; 482*d5c09012SAndroid Build Coastguard Worker 483*d5c09012SAndroid Build Coastguard Worker // Phone number. 484*d5c09012SAndroid Build Coastguard Worker // 485*d5c09012SAndroid Build Coastguard Worker // The metadata lists the phone number (formatted according to local 486*d5c09012SAndroid Build Coastguard Worker // convention), plus whichever additional elements appear in the text: 487*d5c09012SAndroid Build Coastguard Worker // 488*d5c09012SAndroid Build Coastguard Worker // * `number` - The actual number, broken down into sections according to 489*d5c09012SAndroid Build Coastguard Worker // local convention. 490*d5c09012SAndroid Build Coastguard Worker // * `national_prefix` - Country code, if detected. 491*d5c09012SAndroid Build Coastguard Worker // * `area_code` - Region or area code, if detected. 492*d5c09012SAndroid Build Coastguard Worker // * `extension` - Phone extension (to be dialed after connection), if 493*d5c09012SAndroid Build Coastguard Worker // detected. 494*d5c09012SAndroid Build Coastguard Worker PHONE_NUMBER = 9; 495*d5c09012SAndroid Build Coastguard Worker 496*d5c09012SAndroid Build Coastguard Worker // Address. 497*d5c09012SAndroid Build Coastguard Worker // 498*d5c09012SAndroid Build Coastguard Worker // The metadata identifies the street number and locality plus whichever 499*d5c09012SAndroid Build Coastguard Worker // additional elements appear in the text: 500*d5c09012SAndroid Build Coastguard Worker // 501*d5c09012SAndroid Build Coastguard Worker // * `street_number` - Street number. 502*d5c09012SAndroid Build Coastguard Worker // * `locality` - City or town. 503*d5c09012SAndroid Build Coastguard Worker // * `street_name` - Street/route name, if detected. 504*d5c09012SAndroid Build Coastguard Worker // * `postal_code` - Postal code, if detected. 505*d5c09012SAndroid Build Coastguard Worker // * `country` - Country, if detected. 506*d5c09012SAndroid Build Coastguard Worker // * `broad_region` - Administrative area, such as the state, if detected. 507*d5c09012SAndroid Build Coastguard Worker // * `narrow_region` - Smaller administrative area, such as county, if 508*d5c09012SAndroid Build Coastguard Worker // detected. 509*d5c09012SAndroid Build Coastguard Worker // * `sublocality` - Used in Asian addresses to demark a district within a 510*d5c09012SAndroid Build Coastguard Worker // city, if detected. 511*d5c09012SAndroid Build Coastguard Worker ADDRESS = 10; 512*d5c09012SAndroid Build Coastguard Worker 513*d5c09012SAndroid Build Coastguard Worker // Date. 514*d5c09012SAndroid Build Coastguard Worker // 515*d5c09012SAndroid Build Coastguard Worker // The metadata identifies the components of the date: 516*d5c09012SAndroid Build Coastguard Worker // 517*d5c09012SAndroid Build Coastguard Worker // * `year` - Four digit year, if detected. 518*d5c09012SAndroid Build Coastguard Worker // * `month` - Two digit month number, if detected. 519*d5c09012SAndroid Build Coastguard Worker // * `day` - Two digit day number, if detected. 520*d5c09012SAndroid Build Coastguard Worker DATE = 11; 521*d5c09012SAndroid Build Coastguard Worker 522*d5c09012SAndroid Build Coastguard Worker // Number. 523*d5c09012SAndroid Build Coastguard Worker // 524*d5c09012SAndroid Build Coastguard Worker // The metadata is the number itself. 525*d5c09012SAndroid Build Coastguard Worker NUMBER = 12; 526*d5c09012SAndroid Build Coastguard Worker 527*d5c09012SAndroid Build Coastguard Worker // Price. 528*d5c09012SAndroid Build Coastguard Worker // 529*d5c09012SAndroid Build Coastguard Worker // The metadata identifies the `value` and `currency`. 530*d5c09012SAndroid Build Coastguard Worker PRICE = 13; 531*d5c09012SAndroid Build Coastguard Worker } 532*d5c09012SAndroid Build Coastguard Worker 533*d5c09012SAndroid Build Coastguard Worker // The representative name for the entity. 534*d5c09012SAndroid Build Coastguard Worker string display_name = 1; 535*d5c09012SAndroid Build Coastguard Worker 536*d5c09012SAndroid Build Coastguard Worker // The entity type. 537*d5c09012SAndroid Build Coastguard Worker Type type = 2; 538*d5c09012SAndroid Build Coastguard Worker 539*d5c09012SAndroid Build Coastguard Worker // Metadata associated with the entity. 540*d5c09012SAndroid Build Coastguard Worker // 541*d5c09012SAndroid Build Coastguard Worker // For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`) 542*d5c09012SAndroid Build Coastguard Worker // and Knowledge Graph MID (`mid`), if they are available. For the metadata 543*d5c09012SAndroid Build Coastguard Worker // associated with other entity types, see the Type table below. 544*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 3; 545*d5c09012SAndroid Build Coastguard Worker 546*d5c09012SAndroid Build Coastguard Worker // The salience score associated with the entity in the [0, 1.0] range. 547*d5c09012SAndroid Build Coastguard Worker // 548*d5c09012SAndroid Build Coastguard Worker // The salience score for an entity provides information about the 549*d5c09012SAndroid Build Coastguard Worker // importance or centrality of that entity to the entire document text. 550*d5c09012SAndroid Build Coastguard Worker // Scores closer to 0 are less salient, while scores closer to 1.0 are highly 551*d5c09012SAndroid Build Coastguard Worker // salient. 552*d5c09012SAndroid Build Coastguard Worker float salience = 4; 553*d5c09012SAndroid Build Coastguard Worker 554*d5c09012SAndroid Build Coastguard Worker // The aggregate sentiment expressed for this entity in the conversation. 555*d5c09012SAndroid Build Coastguard Worker SentimentData sentiment = 5; 556*d5c09012SAndroid Build Coastguard Worker} 557*d5c09012SAndroid Build Coastguard Worker 558*d5c09012SAndroid Build Coastguard Worker// The data for an intent. 559*d5c09012SAndroid Build Coastguard Worker// Represents a detected intent in the conversation, for example MAKES_PROMISE. 560*d5c09012SAndroid Build Coastguard Workermessage Intent { 561*d5c09012SAndroid Build Coastguard Worker // The unique identifier of the intent. 562*d5c09012SAndroid Build Coastguard Worker string id = 1; 563*d5c09012SAndroid Build Coastguard Worker 564*d5c09012SAndroid Build Coastguard Worker // The human-readable name of the intent. 565*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 566*d5c09012SAndroid Build Coastguard Worker} 567*d5c09012SAndroid Build Coastguard Worker 568*d5c09012SAndroid Build Coastguard Worker// The data for a matched phrase matcher. 569*d5c09012SAndroid Build Coastguard Worker// Represents information identifying a phrase matcher for a given match. 570*d5c09012SAndroid Build Coastguard Workermessage PhraseMatchData { 571*d5c09012SAndroid Build Coastguard Worker // The unique identifier (the resource name) of the phrase matcher. 572*d5c09012SAndroid Build Coastguard Worker string phrase_matcher = 1; 573*d5c09012SAndroid Build Coastguard Worker 574*d5c09012SAndroid Build Coastguard Worker // The human-readable name of the phrase matcher. 575*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 576*d5c09012SAndroid Build Coastguard Worker} 577*d5c09012SAndroid Build Coastguard Worker 578*d5c09012SAndroid Build Coastguard Worker// The data for a Dialogflow intent. 579*d5c09012SAndroid Build Coastguard Worker// Represents a detected intent in the conversation, e.g. MAKES_PROMISE. 580*d5c09012SAndroid Build Coastguard Workermessage DialogflowIntent { 581*d5c09012SAndroid Build Coastguard Worker // The human-readable name of the intent. 582*d5c09012SAndroid Build Coastguard Worker string display_name = 1; 583*d5c09012SAndroid Build Coastguard Worker} 584*d5c09012SAndroid Build Coastguard Worker 585*d5c09012SAndroid Build Coastguard Worker// The data for an interruption annotation. 586*d5c09012SAndroid Build Coastguard Workermessage InterruptionData {} 587*d5c09012SAndroid Build Coastguard Worker 588*d5c09012SAndroid Build Coastguard Worker// The data for a silence annotation. 589*d5c09012SAndroid Build Coastguard Workermessage SilenceData {} 590*d5c09012SAndroid Build Coastguard Worker 591*d5c09012SAndroid Build Coastguard Worker// The data for a hold annotation. 592*d5c09012SAndroid Build Coastguard Workermessage HoldData {} 593*d5c09012SAndroid Build Coastguard Worker 594*d5c09012SAndroid Build Coastguard Worker// The data for an entity mention annotation. 595*d5c09012SAndroid Build Coastguard Worker// This represents a mention of an `Entity` in the conversation. 596*d5c09012SAndroid Build Coastguard Workermessage EntityMentionData { 597*d5c09012SAndroid Build Coastguard Worker // The supported types of mentions. 598*d5c09012SAndroid Build Coastguard Worker enum MentionType { 599*d5c09012SAndroid Build Coastguard Worker // Unspecified. 600*d5c09012SAndroid Build Coastguard Worker MENTION_TYPE_UNSPECIFIED = 0; 601*d5c09012SAndroid Build Coastguard Worker 602*d5c09012SAndroid Build Coastguard Worker // Proper noun. 603*d5c09012SAndroid Build Coastguard Worker PROPER = 1; 604*d5c09012SAndroid Build Coastguard Worker 605*d5c09012SAndroid Build Coastguard Worker // Common noun (or noun compound). 606*d5c09012SAndroid Build Coastguard Worker COMMON = 2; 607*d5c09012SAndroid Build Coastguard Worker } 608*d5c09012SAndroid Build Coastguard Worker 609*d5c09012SAndroid Build Coastguard Worker // The key of this entity in conversation entities. 610*d5c09012SAndroid Build Coastguard Worker // Can be used to retrieve the exact `Entity` this mention is attached to. 611*d5c09012SAndroid Build Coastguard Worker string entity_unique_id = 1; 612*d5c09012SAndroid Build Coastguard Worker 613*d5c09012SAndroid Build Coastguard Worker // The type of the entity mention. 614*d5c09012SAndroid Build Coastguard Worker MentionType type = 2; 615*d5c09012SAndroid Build Coastguard Worker 616*d5c09012SAndroid Build Coastguard Worker // Sentiment expressed for this mention of the entity. 617*d5c09012SAndroid Build Coastguard Worker SentimentData sentiment = 3; 618*d5c09012SAndroid Build Coastguard Worker} 619*d5c09012SAndroid Build Coastguard Worker 620*d5c09012SAndroid Build Coastguard Worker// The data for an intent match. 621*d5c09012SAndroid Build Coastguard Worker// Represents an intent match for a text segment in the conversation. A text 622*d5c09012SAndroid Build Coastguard Worker// segment can be part of a sentence, a complete sentence, or an utterance 623*d5c09012SAndroid Build Coastguard Worker// with multiple sentences. 624*d5c09012SAndroid Build Coastguard Workermessage IntentMatchData { 625*d5c09012SAndroid Build Coastguard Worker // The id of the matched intent. 626*d5c09012SAndroid Build Coastguard Worker // Can be used to retrieve the corresponding intent information. 627*d5c09012SAndroid Build Coastguard Worker string intent_unique_id = 1; 628*d5c09012SAndroid Build Coastguard Worker} 629*d5c09012SAndroid Build Coastguard Worker 630*d5c09012SAndroid Build Coastguard Worker// The data for a sentiment annotation. 631*d5c09012SAndroid Build Coastguard Workermessage SentimentData { 632*d5c09012SAndroid Build Coastguard Worker // A non-negative number from 0 to infinity which represents the abolute 633*d5c09012SAndroid Build Coastguard Worker // magnitude of sentiment regardless of score. 634*d5c09012SAndroid Build Coastguard Worker float magnitude = 1; 635*d5c09012SAndroid Build Coastguard Worker 636*d5c09012SAndroid Build Coastguard Worker // The sentiment score between -1.0 (negative) and 1.0 (positive). 637*d5c09012SAndroid Build Coastguard Worker float score = 2; 638*d5c09012SAndroid Build Coastguard Worker} 639*d5c09012SAndroid Build Coastguard Worker 640*d5c09012SAndroid Build Coastguard Worker// The data for an issue match annotation. 641*d5c09012SAndroid Build Coastguard Workermessage IssueMatchData { 642*d5c09012SAndroid Build Coastguard Worker // Information about the issue's assignment. 643*d5c09012SAndroid Build Coastguard Worker IssueAssignment issue_assignment = 1; 644*d5c09012SAndroid Build Coastguard Worker} 645*d5c09012SAndroid Build Coastguard Worker 646*d5c09012SAndroid Build Coastguard Worker// The issue model resource. 647*d5c09012SAndroid Build Coastguard Workermessage IssueModel { 648*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 649*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/IssueModel" 650*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/issueModels/{issue_model}" 651*d5c09012SAndroid Build Coastguard Worker }; 652*d5c09012SAndroid Build Coastguard Worker 653*d5c09012SAndroid Build Coastguard Worker // Configs for the input data used to create the issue model. 654*d5c09012SAndroid Build Coastguard Worker message InputDataConfig { 655*d5c09012SAndroid Build Coastguard Worker // Medium of conversations used in training data. This field is being 656*d5c09012SAndroid Build Coastguard Worker // deprecated. To specify the medium to be used in training a new issue 657*d5c09012SAndroid Build Coastguard Worker // model, set the `medium` field on `filter`. 658*d5c09012SAndroid Build Coastguard Worker Conversation.Medium medium = 1 [deprecated = true]; 659*d5c09012SAndroid Build Coastguard Worker 660*d5c09012SAndroid Build Coastguard Worker // Output only. Number of conversations used in training. Output only. 661*d5c09012SAndroid Build Coastguard Worker int64 training_conversations_count = 2 662*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 663*d5c09012SAndroid Build Coastguard Worker 664*d5c09012SAndroid Build Coastguard Worker // A filter to reduce the conversations used for training the model to a 665*d5c09012SAndroid Build Coastguard Worker // specific subset. 666*d5c09012SAndroid Build Coastguard Worker string filter = 3; 667*d5c09012SAndroid Build Coastguard Worker } 668*d5c09012SAndroid Build Coastguard Worker 669*d5c09012SAndroid Build Coastguard Worker // State of the model. 670*d5c09012SAndroid Build Coastguard Worker enum State { 671*d5c09012SAndroid Build Coastguard Worker // Unspecified. 672*d5c09012SAndroid Build Coastguard Worker STATE_UNSPECIFIED = 0; 673*d5c09012SAndroid Build Coastguard Worker 674*d5c09012SAndroid Build Coastguard Worker // Model is not deployed but is ready to deploy. 675*d5c09012SAndroid Build Coastguard Worker UNDEPLOYED = 1; 676*d5c09012SAndroid Build Coastguard Worker 677*d5c09012SAndroid Build Coastguard Worker // Model is being deployed. 678*d5c09012SAndroid Build Coastguard Worker DEPLOYING = 2; 679*d5c09012SAndroid Build Coastguard Worker 680*d5c09012SAndroid Build Coastguard Worker // Model is deployed and is ready to be used. A model can only be used in 681*d5c09012SAndroid Build Coastguard Worker // analysis if it's in this state. 682*d5c09012SAndroid Build Coastguard Worker DEPLOYED = 3; 683*d5c09012SAndroid Build Coastguard Worker 684*d5c09012SAndroid Build Coastguard Worker // Model is being undeployed. 685*d5c09012SAndroid Build Coastguard Worker UNDEPLOYING = 4; 686*d5c09012SAndroid Build Coastguard Worker 687*d5c09012SAndroid Build Coastguard Worker // Model is being deleted. 688*d5c09012SAndroid Build Coastguard Worker DELETING = 5; 689*d5c09012SAndroid Build Coastguard Worker } 690*d5c09012SAndroid Build Coastguard Worker 691*d5c09012SAndroid Build Coastguard Worker // Type of the model. 692*d5c09012SAndroid Build Coastguard Worker enum ModelType { 693*d5c09012SAndroid Build Coastguard Worker // Unspecified model type. 694*d5c09012SAndroid Build Coastguard Worker MODEL_TYPE_UNSPECIFIED = 0; 695*d5c09012SAndroid Build Coastguard Worker 696*d5c09012SAndroid Build Coastguard Worker // Type V1. 697*d5c09012SAndroid Build Coastguard Worker TYPE_V1 = 1; 698*d5c09012SAndroid Build Coastguard Worker 699*d5c09012SAndroid Build Coastguard Worker // Type V2. 700*d5c09012SAndroid Build Coastguard Worker TYPE_V2 = 2; 701*d5c09012SAndroid Build Coastguard Worker } 702*d5c09012SAndroid Build Coastguard Worker 703*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the issue model. 704*d5c09012SAndroid Build Coastguard Worker // Format: 705*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/issueModels/{issue_model} 706*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 707*d5c09012SAndroid Build Coastguard Worker 708*d5c09012SAndroid Build Coastguard Worker // The representative name for the issue model. 709*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 710*d5c09012SAndroid Build Coastguard Worker 711*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which this issue model was created. 712*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 713*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 714*d5c09012SAndroid Build Coastguard Worker 715*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time at which the issue model was updated. 716*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 4 717*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 718*d5c09012SAndroid Build Coastguard Worker 719*d5c09012SAndroid Build Coastguard Worker // Output only. Number of issues in this issue model. 720*d5c09012SAndroid Build Coastguard Worker int64 issue_count = 8 [(google.api.field_behavior) = OUTPUT_ONLY]; 721*d5c09012SAndroid Build Coastguard Worker 722*d5c09012SAndroid Build Coastguard Worker // Output only. State of the model. 723*d5c09012SAndroid Build Coastguard Worker State state = 5 [(google.api.field_behavior) = OUTPUT_ONLY]; 724*d5c09012SAndroid Build Coastguard Worker 725*d5c09012SAndroid Build Coastguard Worker // Configs for the input data that used to create the issue model. 726*d5c09012SAndroid Build Coastguard Worker InputDataConfig input_data_config = 6; 727*d5c09012SAndroid Build Coastguard Worker 728*d5c09012SAndroid Build Coastguard Worker // Output only. Immutable. The issue model's label statistics on its training 729*d5c09012SAndroid Build Coastguard Worker // data. 730*d5c09012SAndroid Build Coastguard Worker IssueModelLabelStats training_stats = 7 [ 731*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY, 732*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = IMMUTABLE 733*d5c09012SAndroid Build Coastguard Worker ]; 734*d5c09012SAndroid Build Coastguard Worker 735*d5c09012SAndroid Build Coastguard Worker // Type of the model. 736*d5c09012SAndroid Build Coastguard Worker ModelType model_type = 9; 737*d5c09012SAndroid Build Coastguard Worker 738*d5c09012SAndroid Build Coastguard Worker // Language of the model. 739*d5c09012SAndroid Build Coastguard Worker string language_code = 10; 740*d5c09012SAndroid Build Coastguard Worker} 741*d5c09012SAndroid Build Coastguard Worker 742*d5c09012SAndroid Build Coastguard Worker// The issue resource. 743*d5c09012SAndroid Build Coastguard Workermessage Issue { 744*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 745*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/Issue" 746*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}" 747*d5c09012SAndroid Build Coastguard Worker }; 748*d5c09012SAndroid Build Coastguard Worker 749*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the issue. 750*d5c09012SAndroid Build Coastguard Worker // Format: 751*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} 752*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 753*d5c09012SAndroid Build Coastguard Worker 754*d5c09012SAndroid Build Coastguard Worker // The representative name for the issue. 755*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 756*d5c09012SAndroid Build Coastguard Worker 757*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which this issue was created. 758*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 759*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 760*d5c09012SAndroid Build Coastguard Worker 761*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time that this issue was updated. 762*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 4 763*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 764*d5c09012SAndroid Build Coastguard Worker 765*d5c09012SAndroid Build Coastguard Worker // Output only. Resource names of the sample representative utterances that 766*d5c09012SAndroid Build Coastguard Worker // match to this issue. 767*d5c09012SAndroid Build Coastguard Worker repeated string sample_utterances = 6 768*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 769*d5c09012SAndroid Build Coastguard Worker} 770*d5c09012SAndroid Build Coastguard Worker 771*d5c09012SAndroid Build Coastguard Worker// Aggregated statistics about an issue model. 772*d5c09012SAndroid Build Coastguard Workermessage IssueModelLabelStats { 773*d5c09012SAndroid Build Coastguard Worker // Aggregated statistics about an issue. 774*d5c09012SAndroid Build Coastguard Worker message IssueStats { 775*d5c09012SAndroid Build Coastguard Worker // Issue resource. 776*d5c09012SAndroid Build Coastguard Worker // Format: 777*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue} 778*d5c09012SAndroid Build Coastguard Worker string issue = 1; 779*d5c09012SAndroid Build Coastguard Worker 780*d5c09012SAndroid Build Coastguard Worker // Number of conversations attached to the issue at this point in time. 781*d5c09012SAndroid Build Coastguard Worker int64 labeled_conversations_count = 2; 782*d5c09012SAndroid Build Coastguard Worker 783*d5c09012SAndroid Build Coastguard Worker // Display name of the issue. 784*d5c09012SAndroid Build Coastguard Worker string display_name = 3; 785*d5c09012SAndroid Build Coastguard Worker } 786*d5c09012SAndroid Build Coastguard Worker 787*d5c09012SAndroid Build Coastguard Worker // Number of conversations the issue model has analyzed at this point in time. 788*d5c09012SAndroid Build Coastguard Worker int64 analyzed_conversations_count = 1; 789*d5c09012SAndroid Build Coastguard Worker 790*d5c09012SAndroid Build Coastguard Worker // Number of analyzed conversations for which no issue was applicable at this 791*d5c09012SAndroid Build Coastguard Worker // point in time. 792*d5c09012SAndroid Build Coastguard Worker int64 unclassified_conversations_count = 2; 793*d5c09012SAndroid Build Coastguard Worker 794*d5c09012SAndroid Build Coastguard Worker // Statistics on each issue. Key is the issue's resource name. 795*d5c09012SAndroid Build Coastguard Worker map<string, IssueStats> issue_stats = 3; 796*d5c09012SAndroid Build Coastguard Worker} 797*d5c09012SAndroid Build Coastguard Worker 798*d5c09012SAndroid Build Coastguard Worker// The phrase matcher resource. 799*d5c09012SAndroid Build Coastguard Workermessage PhraseMatcher { 800*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 801*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/PhraseMatcher" 802*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}" 803*d5c09012SAndroid Build Coastguard Worker }; 804*d5c09012SAndroid Build Coastguard Worker 805*d5c09012SAndroid Build Coastguard Worker // Specifies how to combine each phrase match rule group to determine whether 806*d5c09012SAndroid Build Coastguard Worker // there is a match. 807*d5c09012SAndroid Build Coastguard Worker enum PhraseMatcherType { 808*d5c09012SAndroid Build Coastguard Worker // Unspecified. 809*d5c09012SAndroid Build Coastguard Worker PHRASE_MATCHER_TYPE_UNSPECIFIED = 0; 810*d5c09012SAndroid Build Coastguard Worker 811*d5c09012SAndroid Build Coastguard Worker // Must meet all phrase match rule groups or there is no match. 812*d5c09012SAndroid Build Coastguard Worker ALL_OF = 1; 813*d5c09012SAndroid Build Coastguard Worker 814*d5c09012SAndroid Build Coastguard Worker // If any of the phrase match rule groups are met, there is a match. 815*d5c09012SAndroid Build Coastguard Worker ANY_OF = 2; 816*d5c09012SAndroid Build Coastguard Worker } 817*d5c09012SAndroid Build Coastguard Worker 818*d5c09012SAndroid Build Coastguard Worker // The resource name of the phrase matcher. 819*d5c09012SAndroid Build Coastguard Worker // Format: 820*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} 821*d5c09012SAndroid Build Coastguard Worker string name = 1; 822*d5c09012SAndroid Build Coastguard Worker 823*d5c09012SAndroid Build Coastguard Worker // Output only. Immutable. The revision ID of the phrase matcher. 824*d5c09012SAndroid Build Coastguard Worker // A new revision is committed whenever the matcher is changed, except when it 825*d5c09012SAndroid Build Coastguard Worker // is activated or deactivated. A server generated random ID will be used. 826*d5c09012SAndroid Build Coastguard Worker // Example: locations/global/phraseMatchers/my-first-matcher@1234567 827*d5c09012SAndroid Build Coastguard Worker string revision_id = 2 [ 828*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = IMMUTABLE, 829*d5c09012SAndroid Build Coastguard Worker (google.api.field_behavior) = OUTPUT_ONLY 830*d5c09012SAndroid Build Coastguard Worker ]; 831*d5c09012SAndroid Build Coastguard Worker 832*d5c09012SAndroid Build Coastguard Worker // The customized version tag to use for the phrase matcher. If not specified, 833*d5c09012SAndroid Build Coastguard Worker // it will default to `revision_id`. 834*d5c09012SAndroid Build Coastguard Worker string version_tag = 3; 835*d5c09012SAndroid Build Coastguard Worker 836*d5c09012SAndroid Build Coastguard Worker // Output only. The timestamp of when the revision was created. It is also the 837*d5c09012SAndroid Build Coastguard Worker // create time when a new matcher is added. 838*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp revision_create_time = 4 839*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 840*d5c09012SAndroid Build Coastguard Worker 841*d5c09012SAndroid Build Coastguard Worker // The human-readable name of the phrase matcher. 842*d5c09012SAndroid Build Coastguard Worker string display_name = 5; 843*d5c09012SAndroid Build Coastguard Worker 844*d5c09012SAndroid Build Coastguard Worker // Required. The type of this phrase matcher. 845*d5c09012SAndroid Build Coastguard Worker PhraseMatcherType type = 6 [(google.api.field_behavior) = REQUIRED]; 846*d5c09012SAndroid Build Coastguard Worker 847*d5c09012SAndroid Build Coastguard Worker // Applies the phrase matcher only when it is active. 848*d5c09012SAndroid Build Coastguard Worker bool active = 7; 849*d5c09012SAndroid Build Coastguard Worker 850*d5c09012SAndroid Build Coastguard Worker // A list of phase match rule groups that are included in this matcher. 851*d5c09012SAndroid Build Coastguard Worker repeated PhraseMatchRuleGroup phrase_match_rule_groups = 8; 852*d5c09012SAndroid Build Coastguard Worker 853*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time at which the activation status was 854*d5c09012SAndroid Build Coastguard Worker // updated. 855*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp activation_update_time = 9 856*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 857*d5c09012SAndroid Build Coastguard Worker 858*d5c09012SAndroid Build Coastguard Worker // The role whose utterances the phrase matcher should be matched 859*d5c09012SAndroid Build Coastguard Worker // against. If the role is ROLE_UNSPECIFIED it will be matched against any 860*d5c09012SAndroid Build Coastguard Worker // utterances in the transcript. 861*d5c09012SAndroid Build Coastguard Worker ConversationParticipant.Role role_match = 10; 862*d5c09012SAndroid Build Coastguard Worker 863*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time at which the phrase matcher was updated. 864*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 11 865*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 866*d5c09012SAndroid Build Coastguard Worker} 867*d5c09012SAndroid Build Coastguard Worker 868*d5c09012SAndroid Build Coastguard Worker// A message representing a rule in the phrase matcher. 869*d5c09012SAndroid Build Coastguard Workermessage PhraseMatchRuleGroup { 870*d5c09012SAndroid Build Coastguard Worker // Specifies how to combine each phrase match rule for whether there is a 871*d5c09012SAndroid Build Coastguard Worker // match. 872*d5c09012SAndroid Build Coastguard Worker enum PhraseMatchRuleGroupType { 873*d5c09012SAndroid Build Coastguard Worker // Unspecified. 874*d5c09012SAndroid Build Coastguard Worker PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED = 0; 875*d5c09012SAndroid Build Coastguard Worker 876*d5c09012SAndroid Build Coastguard Worker // Must meet all phrase match rules or there is no match. 877*d5c09012SAndroid Build Coastguard Worker ALL_OF = 1; 878*d5c09012SAndroid Build Coastguard Worker 879*d5c09012SAndroid Build Coastguard Worker // If any of the phrase match rules are met, there is a match. 880*d5c09012SAndroid Build Coastguard Worker ANY_OF = 2; 881*d5c09012SAndroid Build Coastguard Worker } 882*d5c09012SAndroid Build Coastguard Worker 883*d5c09012SAndroid Build Coastguard Worker // Required. The type of this phrase match rule group. 884*d5c09012SAndroid Build Coastguard Worker PhraseMatchRuleGroupType type = 1 [(google.api.field_behavior) = REQUIRED]; 885*d5c09012SAndroid Build Coastguard Worker 886*d5c09012SAndroid Build Coastguard Worker // A list of phrase match rules that are included in this group. 887*d5c09012SAndroid Build Coastguard Worker repeated PhraseMatchRule phrase_match_rules = 2; 888*d5c09012SAndroid Build Coastguard Worker} 889*d5c09012SAndroid Build Coastguard Worker 890*d5c09012SAndroid Build Coastguard Worker// The data for a phrase match rule. 891*d5c09012SAndroid Build Coastguard Workermessage PhraseMatchRule { 892*d5c09012SAndroid Build Coastguard Worker // Required. The phrase to be matched. 893*d5c09012SAndroid Build Coastguard Worker string query = 1 [(google.api.field_behavior) = REQUIRED]; 894*d5c09012SAndroid Build Coastguard Worker 895*d5c09012SAndroid Build Coastguard Worker // Specifies whether the phrase must be missing from the transcript segment or 896*d5c09012SAndroid Build Coastguard Worker // present in the transcript segment. 897*d5c09012SAndroid Build Coastguard Worker bool negated = 2; 898*d5c09012SAndroid Build Coastguard Worker 899*d5c09012SAndroid Build Coastguard Worker // Provides additional information about the rule that specifies how to apply 900*d5c09012SAndroid Build Coastguard Worker // the rule. 901*d5c09012SAndroid Build Coastguard Worker PhraseMatchRuleConfig config = 3; 902*d5c09012SAndroid Build Coastguard Worker} 903*d5c09012SAndroid Build Coastguard Worker 904*d5c09012SAndroid Build Coastguard Worker// Configuration information of a phrase match rule. 905*d5c09012SAndroid Build Coastguard Workermessage PhraseMatchRuleConfig { 906*d5c09012SAndroid Build Coastguard Worker // The configuration of the phrase match rule. 907*d5c09012SAndroid Build Coastguard Worker oneof config { 908*d5c09012SAndroid Build Coastguard Worker // The configuration for the exact match rule. 909*d5c09012SAndroid Build Coastguard Worker ExactMatchConfig exact_match_config = 1; 910*d5c09012SAndroid Build Coastguard Worker } 911*d5c09012SAndroid Build Coastguard Worker} 912*d5c09012SAndroid Build Coastguard Worker 913*d5c09012SAndroid Build Coastguard Worker// Exact match configuration. 914*d5c09012SAndroid Build Coastguard Workermessage ExactMatchConfig { 915*d5c09012SAndroid Build Coastguard Worker // Whether to consider case sensitivity when performing an exact match. 916*d5c09012SAndroid Build Coastguard Worker bool case_sensitive = 1; 917*d5c09012SAndroid Build Coastguard Worker} 918*d5c09012SAndroid Build Coastguard Worker 919*d5c09012SAndroid Build Coastguard Worker// The settings resource. 920*d5c09012SAndroid Build Coastguard Workermessage Settings { 921*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 922*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/Settings" 923*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/settings" 924*d5c09012SAndroid Build Coastguard Worker }; 925*d5c09012SAndroid Build Coastguard Worker 926*d5c09012SAndroid Build Coastguard Worker // Default configuration when creating Analyses in Insights. 927*d5c09012SAndroid Build Coastguard Worker message AnalysisConfig { 928*d5c09012SAndroid Build Coastguard Worker // Percentage of conversations created using Dialogflow runtime integration 929*d5c09012SAndroid Build Coastguard Worker // to analyze automatically, between [0, 100]. 930*d5c09012SAndroid Build Coastguard Worker double runtime_integration_analysis_percentage = 1; 931*d5c09012SAndroid Build Coastguard Worker 932*d5c09012SAndroid Build Coastguard Worker // Percentage of conversations created using the UploadConversation endpoint 933*d5c09012SAndroid Build Coastguard Worker // to analyze automatically, between [0, 100]. 934*d5c09012SAndroid Build Coastguard Worker double upload_conversation_analysis_percentage = 6; 935*d5c09012SAndroid Build Coastguard Worker 936*d5c09012SAndroid Build Coastguard Worker // To select the annotators to run and the phrase matchers to use 937*d5c09012SAndroid Build Coastguard Worker // (if any). If not specified, all annotators will be run. 938*d5c09012SAndroid Build Coastguard Worker AnnotatorSelector annotator_selector = 5; 939*d5c09012SAndroid Build Coastguard Worker } 940*d5c09012SAndroid Build Coastguard Worker 941*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the settings resource. 942*d5c09012SAndroid Build Coastguard Worker // Format: 943*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/settings 944*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 945*d5c09012SAndroid Build Coastguard Worker 946*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which the settings was created. 947*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2 948*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 949*d5c09012SAndroid Build Coastguard Worker 950*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which the settings were last updated. 951*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 3 952*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 953*d5c09012SAndroid Build Coastguard Worker 954*d5c09012SAndroid Build Coastguard Worker // A language code to be applied to each transcript segment unless the segment 955*d5c09012SAndroid Build Coastguard Worker // already specifies a language code. Language code defaults to "en-US" if it 956*d5c09012SAndroid Build Coastguard Worker // is neither specified on the segment nor here. 957*d5c09012SAndroid Build Coastguard Worker string language_code = 4; 958*d5c09012SAndroid Build Coastguard Worker 959*d5c09012SAndroid Build Coastguard Worker // The default TTL for newly-created conversations. If a conversation has a 960*d5c09012SAndroid Build Coastguard Worker // specified expiration, that value will be used instead. Changing this 961*d5c09012SAndroid Build Coastguard Worker // value will not change the expiration of existing conversations. 962*d5c09012SAndroid Build Coastguard Worker // Conversations with no expire time persist until they are deleted. 963*d5c09012SAndroid Build Coastguard Worker google.protobuf.Duration conversation_ttl = 5; 964*d5c09012SAndroid Build Coastguard Worker 965*d5c09012SAndroid Build Coastguard Worker // A map that maps a notification trigger to a Pub/Sub topic. Each time a 966*d5c09012SAndroid Build Coastguard Worker // specified trigger occurs, Insights will notify the corresponding Pub/Sub 967*d5c09012SAndroid Build Coastguard Worker // topic. 968*d5c09012SAndroid Build Coastguard Worker // 969*d5c09012SAndroid Build Coastguard Worker // Keys are notification triggers. Supported keys are: 970*d5c09012SAndroid Build Coastguard Worker // 971*d5c09012SAndroid Build Coastguard Worker // * "all-triggers": Notify each time any of the supported triggers occurs. 972*d5c09012SAndroid Build Coastguard Worker // * "create-analysis": Notify each time an analysis is created. 973*d5c09012SAndroid Build Coastguard Worker // * "create-conversation": Notify each time a conversation is created. 974*d5c09012SAndroid Build Coastguard Worker // * "export-insights-data": Notify each time an export is complete. 975*d5c09012SAndroid Build Coastguard Worker // * "update-conversation": Notify each time a conversation is updated via 976*d5c09012SAndroid Build Coastguard Worker // UpdateConversation. 977*d5c09012SAndroid Build Coastguard Worker // 978*d5c09012SAndroid Build Coastguard Worker // Values are Pub/Sub topics. The format of each Pub/Sub topic is: 979*d5c09012SAndroid Build Coastguard Worker // projects/{project}/topics/{topic} 980*d5c09012SAndroid Build Coastguard Worker map<string, string> pubsub_notification_settings = 6; 981*d5c09012SAndroid Build Coastguard Worker 982*d5c09012SAndroid Build Coastguard Worker // Default analysis settings. 983*d5c09012SAndroid Build Coastguard Worker AnalysisConfig analysis_config = 7; 984*d5c09012SAndroid Build Coastguard Worker 985*d5c09012SAndroid Build Coastguard Worker // Default DLP redaction resources to be applied while ingesting 986*d5c09012SAndroid Build Coastguard Worker // conversations. 987*d5c09012SAndroid Build Coastguard Worker RedactionConfig redaction_config = 10; 988*d5c09012SAndroid Build Coastguard Worker 989*d5c09012SAndroid Build Coastguard Worker // Optional. Default Speech-to-Text resources to be used while ingesting audio 990*d5c09012SAndroid Build Coastguard Worker // files. Optional, CCAI Insights will create a default if not provided. 991*d5c09012SAndroid Build Coastguard Worker SpeechConfig speech_config = 11 [(google.api.field_behavior) = OPTIONAL]; 992*d5c09012SAndroid Build Coastguard Worker} 993*d5c09012SAndroid Build Coastguard Worker 994*d5c09012SAndroid Build Coastguard Worker// DLP resources used for redaction while ingesting conversations. 995*d5c09012SAndroid Build Coastguard Workermessage RedactionConfig { 996*d5c09012SAndroid Build Coastguard Worker // The fully-qualified DLP deidentify template resource name. 997*d5c09012SAndroid Build Coastguard Worker // Format: 998*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/deidentifyTemplates/{template}` 999*d5c09012SAndroid Build Coastguard Worker string deidentify_template = 1; 1000*d5c09012SAndroid Build Coastguard Worker 1001*d5c09012SAndroid Build Coastguard Worker // The fully-qualified DLP inspect template resource name. 1002*d5c09012SAndroid Build Coastguard Worker // Format: 1003*d5c09012SAndroid Build Coastguard Worker // `projects/{project}/locations/{location}/inspectTemplates/{template}` 1004*d5c09012SAndroid Build Coastguard Worker string inspect_template = 2; 1005*d5c09012SAndroid Build Coastguard Worker} 1006*d5c09012SAndroid Build Coastguard Worker 1007*d5c09012SAndroid Build Coastguard Worker// Speech-to-Text configuration. 1008*d5c09012SAndroid Build Coastguard Workermessage SpeechConfig { 1009*d5c09012SAndroid Build Coastguard Worker // The fully-qualified Speech Recognizer resource name. 1010*d5c09012SAndroid Build Coastguard Worker // Format: 1011*d5c09012SAndroid Build Coastguard Worker // `projects/{project_id}/locations/{location}/recognizer/{recognizer}` 1012*d5c09012SAndroid Build Coastguard Worker string speech_recognizer = 1 [(google.api.resource_reference) = { 1013*d5c09012SAndroid Build Coastguard Worker type: "speech.googleapis.com/Recognizer" 1014*d5c09012SAndroid Build Coastguard Worker }]; 1015*d5c09012SAndroid Build Coastguard Worker} 1016*d5c09012SAndroid Build Coastguard Worker 1017*d5c09012SAndroid Build Coastguard Worker// An annotation that was generated during the customer and agent interaction. 1018*d5c09012SAndroid Build Coastguard Workermessage RuntimeAnnotation { 1019*d5c09012SAndroid Build Coastguard Worker // The data in the annotation. 1020*d5c09012SAndroid Build Coastguard Worker oneof data { 1021*d5c09012SAndroid Build Coastguard Worker // Agent Assist Article Suggestion data. 1022*d5c09012SAndroid Build Coastguard Worker ArticleSuggestionData article_suggestion = 6; 1023*d5c09012SAndroid Build Coastguard Worker 1024*d5c09012SAndroid Build Coastguard Worker // Agent Assist FAQ answer data. 1025*d5c09012SAndroid Build Coastguard Worker FaqAnswerData faq_answer = 7; 1026*d5c09012SAndroid Build Coastguard Worker 1027*d5c09012SAndroid Build Coastguard Worker // Agent Assist Smart Reply data. 1028*d5c09012SAndroid Build Coastguard Worker SmartReplyData smart_reply = 8; 1029*d5c09012SAndroid Build Coastguard Worker 1030*d5c09012SAndroid Build Coastguard Worker // Agent Assist Smart Compose suggestion data. 1031*d5c09012SAndroid Build Coastguard Worker SmartComposeSuggestionData smart_compose_suggestion = 9; 1032*d5c09012SAndroid Build Coastguard Worker 1033*d5c09012SAndroid Build Coastguard Worker // Dialogflow interaction data. 1034*d5c09012SAndroid Build Coastguard Worker DialogflowInteractionData dialogflow_interaction = 10; 1035*d5c09012SAndroid Build Coastguard Worker 1036*d5c09012SAndroid Build Coastguard Worker // Conversation summarization suggestion data. 1037*d5c09012SAndroid Build Coastguard Worker ConversationSummarizationSuggestionData 1038*d5c09012SAndroid Build Coastguard Worker conversation_summarization_suggestion = 12; 1039*d5c09012SAndroid Build Coastguard Worker } 1040*d5c09012SAndroid Build Coastguard Worker 1041*d5c09012SAndroid Build Coastguard Worker // The unique identifier of the annotation. 1042*d5c09012SAndroid Build Coastguard Worker // Format: 1043*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversationDatasets/{dataset}/conversationDataItems/{data_item}/conversationAnnotations/{annotation} 1044*d5c09012SAndroid Build Coastguard Worker string annotation_id = 1; 1045*d5c09012SAndroid Build Coastguard Worker 1046*d5c09012SAndroid Build Coastguard Worker // The time at which this annotation was created. 1047*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 2; 1048*d5c09012SAndroid Build Coastguard Worker 1049*d5c09012SAndroid Build Coastguard Worker // The boundary in the conversation where the annotation starts, inclusive. 1050*d5c09012SAndroid Build Coastguard Worker AnnotationBoundary start_boundary = 3; 1051*d5c09012SAndroid Build Coastguard Worker 1052*d5c09012SAndroid Build Coastguard Worker // The boundary in the conversation where the annotation ends, inclusive. 1053*d5c09012SAndroid Build Coastguard Worker AnnotationBoundary end_boundary = 4; 1054*d5c09012SAndroid Build Coastguard Worker 1055*d5c09012SAndroid Build Coastguard Worker // The feedback that the customer has about the answer in `data`. 1056*d5c09012SAndroid Build Coastguard Worker AnswerFeedback answer_feedback = 5; 1057*d5c09012SAndroid Build Coastguard Worker} 1058*d5c09012SAndroid Build Coastguard Worker 1059*d5c09012SAndroid Build Coastguard Worker// The feedback that the customer has about a certain answer in the 1060*d5c09012SAndroid Build Coastguard Worker// conversation. 1061*d5c09012SAndroid Build Coastguard Workermessage AnswerFeedback { 1062*d5c09012SAndroid Build Coastguard Worker // The correctness level of an answer. 1063*d5c09012SAndroid Build Coastguard Worker enum CorrectnessLevel { 1064*d5c09012SAndroid Build Coastguard Worker // Correctness level unspecified. 1065*d5c09012SAndroid Build Coastguard Worker CORRECTNESS_LEVEL_UNSPECIFIED = 0; 1066*d5c09012SAndroid Build Coastguard Worker 1067*d5c09012SAndroid Build Coastguard Worker // Answer is totally wrong. 1068*d5c09012SAndroid Build Coastguard Worker NOT_CORRECT = 1; 1069*d5c09012SAndroid Build Coastguard Worker 1070*d5c09012SAndroid Build Coastguard Worker // Answer is partially correct. 1071*d5c09012SAndroid Build Coastguard Worker PARTIALLY_CORRECT = 2; 1072*d5c09012SAndroid Build Coastguard Worker 1073*d5c09012SAndroid Build Coastguard Worker // Answer is fully correct. 1074*d5c09012SAndroid Build Coastguard Worker FULLY_CORRECT = 3; 1075*d5c09012SAndroid Build Coastguard Worker } 1076*d5c09012SAndroid Build Coastguard Worker 1077*d5c09012SAndroid Build Coastguard Worker // The correctness level of an answer. 1078*d5c09012SAndroid Build Coastguard Worker CorrectnessLevel correctness_level = 1; 1079*d5c09012SAndroid Build Coastguard Worker 1080*d5c09012SAndroid Build Coastguard Worker // Indicates whether an answer or item was clicked by the human agent. 1081*d5c09012SAndroid Build Coastguard Worker bool clicked = 2; 1082*d5c09012SAndroid Build Coastguard Worker 1083*d5c09012SAndroid Build Coastguard Worker // Indicates whether an answer or item was displayed to the human agent in the 1084*d5c09012SAndroid Build Coastguard Worker // agent desktop UI. 1085*d5c09012SAndroid Build Coastguard Worker bool displayed = 3; 1086*d5c09012SAndroid Build Coastguard Worker} 1087*d5c09012SAndroid Build Coastguard Worker 1088*d5c09012SAndroid Build Coastguard Worker// Agent Assist Article Suggestion data. 1089*d5c09012SAndroid Build Coastguard Workermessage ArticleSuggestionData { 1090*d5c09012SAndroid Build Coastguard Worker // Article title. 1091*d5c09012SAndroid Build Coastguard Worker string title = 1; 1092*d5c09012SAndroid Build Coastguard Worker 1093*d5c09012SAndroid Build Coastguard Worker // Article URI. 1094*d5c09012SAndroid Build Coastguard Worker string uri = 2; 1095*d5c09012SAndroid Build Coastguard Worker 1096*d5c09012SAndroid Build Coastguard Worker // The system's confidence score that this article is a good match for this 1097*d5c09012SAndroid Build Coastguard Worker // conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely 1098*d5c09012SAndroid Build Coastguard Worker // certain). 1099*d5c09012SAndroid Build Coastguard Worker float confidence_score = 3; 1100*d5c09012SAndroid Build Coastguard Worker 1101*d5c09012SAndroid Build Coastguard Worker // Map that contains metadata about the Article Suggestion and the document 1102*d5c09012SAndroid Build Coastguard Worker // that it originates from. 1103*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 4; 1104*d5c09012SAndroid Build Coastguard Worker 1105*d5c09012SAndroid Build Coastguard Worker // The name of the answer record. 1106*d5c09012SAndroid Build Coastguard Worker // Format: 1107*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/answerRecords/{answer_record} 1108*d5c09012SAndroid Build Coastguard Worker string query_record = 5; 1109*d5c09012SAndroid Build Coastguard Worker 1110*d5c09012SAndroid Build Coastguard Worker // The knowledge document that this answer was extracted from. 1111*d5c09012SAndroid Build Coastguard Worker // Format: 1112*d5c09012SAndroid Build Coastguard Worker // projects/{project}/knowledgeBases/{knowledge_base}/documents/{document} 1113*d5c09012SAndroid Build Coastguard Worker string source = 6; 1114*d5c09012SAndroid Build Coastguard Worker} 1115*d5c09012SAndroid Build Coastguard Worker 1116*d5c09012SAndroid Build Coastguard Worker// Agent Assist frequently-asked-question answer data. 1117*d5c09012SAndroid Build Coastguard Workermessage FaqAnswerData { 1118*d5c09012SAndroid Build Coastguard Worker // The piece of text from the `source` knowledge base document. 1119*d5c09012SAndroid Build Coastguard Worker string answer = 1; 1120*d5c09012SAndroid Build Coastguard Worker 1121*d5c09012SAndroid Build Coastguard Worker // The system's confidence score that this answer is a good match for this 1122*d5c09012SAndroid Build Coastguard Worker // conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely 1123*d5c09012SAndroid Build Coastguard Worker // certain). 1124*d5c09012SAndroid Build Coastguard Worker float confidence_score = 2; 1125*d5c09012SAndroid Build Coastguard Worker 1126*d5c09012SAndroid Build Coastguard Worker // The corresponding FAQ question. 1127*d5c09012SAndroid Build Coastguard Worker string question = 3; 1128*d5c09012SAndroid Build Coastguard Worker 1129*d5c09012SAndroid Build Coastguard Worker // Map that contains metadata about the FAQ answer and the document that 1130*d5c09012SAndroid Build Coastguard Worker // it originates from. 1131*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 4; 1132*d5c09012SAndroid Build Coastguard Worker 1133*d5c09012SAndroid Build Coastguard Worker // The name of the answer record. 1134*d5c09012SAndroid Build Coastguard Worker // Format: 1135*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/answerRecords/{answer_record} 1136*d5c09012SAndroid Build Coastguard Worker string query_record = 5; 1137*d5c09012SAndroid Build Coastguard Worker 1138*d5c09012SAndroid Build Coastguard Worker // The knowledge document that this answer was extracted from. 1139*d5c09012SAndroid Build Coastguard Worker // Format: 1140*d5c09012SAndroid Build Coastguard Worker // projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}. 1141*d5c09012SAndroid Build Coastguard Worker string source = 6; 1142*d5c09012SAndroid Build Coastguard Worker} 1143*d5c09012SAndroid Build Coastguard Worker 1144*d5c09012SAndroid Build Coastguard Worker// Agent Assist Smart Reply data. 1145*d5c09012SAndroid Build Coastguard Workermessage SmartReplyData { 1146*d5c09012SAndroid Build Coastguard Worker // The content of the reply. 1147*d5c09012SAndroid Build Coastguard Worker string reply = 1; 1148*d5c09012SAndroid Build Coastguard Worker 1149*d5c09012SAndroid Build Coastguard Worker // The system's confidence score that this reply is a good match for this 1150*d5c09012SAndroid Build Coastguard Worker // conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely 1151*d5c09012SAndroid Build Coastguard Worker // certain). 1152*d5c09012SAndroid Build Coastguard Worker double confidence_score = 2; 1153*d5c09012SAndroid Build Coastguard Worker 1154*d5c09012SAndroid Build Coastguard Worker // Map that contains metadata about the Smart Reply and the document from 1155*d5c09012SAndroid Build Coastguard Worker // which it originates. 1156*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 3; 1157*d5c09012SAndroid Build Coastguard Worker 1158*d5c09012SAndroid Build Coastguard Worker // The name of the answer record. 1159*d5c09012SAndroid Build Coastguard Worker // Format: 1160*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/answerRecords/{answer_record} 1161*d5c09012SAndroid Build Coastguard Worker string query_record = 4; 1162*d5c09012SAndroid Build Coastguard Worker} 1163*d5c09012SAndroid Build Coastguard Worker 1164*d5c09012SAndroid Build Coastguard Worker// Agent Assist Smart Compose suggestion data. 1165*d5c09012SAndroid Build Coastguard Workermessage SmartComposeSuggestionData { 1166*d5c09012SAndroid Build Coastguard Worker // The content of the suggestion. 1167*d5c09012SAndroid Build Coastguard Worker string suggestion = 1; 1168*d5c09012SAndroid Build Coastguard Worker 1169*d5c09012SAndroid Build Coastguard Worker // The system's confidence score that this suggestion is a good match for this 1170*d5c09012SAndroid Build Coastguard Worker // conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely 1171*d5c09012SAndroid Build Coastguard Worker // certain). 1172*d5c09012SAndroid Build Coastguard Worker double confidence_score = 2; 1173*d5c09012SAndroid Build Coastguard Worker 1174*d5c09012SAndroid Build Coastguard Worker // Map that contains metadata about the Smart Compose suggestion and the 1175*d5c09012SAndroid Build Coastguard Worker // document from which it originates. 1176*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 3; 1177*d5c09012SAndroid Build Coastguard Worker 1178*d5c09012SAndroid Build Coastguard Worker // The name of the answer record. 1179*d5c09012SAndroid Build Coastguard Worker // Format: 1180*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/answerRecords/{answer_record} 1181*d5c09012SAndroid Build Coastguard Worker string query_record = 4; 1182*d5c09012SAndroid Build Coastguard Worker} 1183*d5c09012SAndroid Build Coastguard Worker 1184*d5c09012SAndroid Build Coastguard Worker// Dialogflow interaction data. 1185*d5c09012SAndroid Build Coastguard Workermessage DialogflowInteractionData { 1186*d5c09012SAndroid Build Coastguard Worker // The Dialogflow intent resource path. Format: 1187*d5c09012SAndroid Build Coastguard Worker // projects/{project}/agent/{agent}/intents/{intent} 1188*d5c09012SAndroid Build Coastguard Worker string dialogflow_intent_id = 1; 1189*d5c09012SAndroid Build Coastguard Worker 1190*d5c09012SAndroid Build Coastguard Worker // The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 1191*d5c09012SAndroid Build Coastguard Worker // (completely certain). 1192*d5c09012SAndroid Build Coastguard Worker float confidence = 2; 1193*d5c09012SAndroid Build Coastguard Worker} 1194*d5c09012SAndroid Build Coastguard Worker 1195*d5c09012SAndroid Build Coastguard Worker// Conversation summarization suggestion data. 1196*d5c09012SAndroid Build Coastguard Workermessage ConversationSummarizationSuggestionData { 1197*d5c09012SAndroid Build Coastguard Worker // The summarization content that is concatenated into one string. 1198*d5c09012SAndroid Build Coastguard Worker string text = 1; 1199*d5c09012SAndroid Build Coastguard Worker 1200*d5c09012SAndroid Build Coastguard Worker // The summarization content that is divided into sections. The key is the 1201*d5c09012SAndroid Build Coastguard Worker // section's name and the value is the section's content. There is no 1202*d5c09012SAndroid Build Coastguard Worker // specific format for the key or value. 1203*d5c09012SAndroid Build Coastguard Worker map<string, string> text_sections = 5; 1204*d5c09012SAndroid Build Coastguard Worker 1205*d5c09012SAndroid Build Coastguard Worker // The confidence score of the summarization. 1206*d5c09012SAndroid Build Coastguard Worker float confidence = 2; 1207*d5c09012SAndroid Build Coastguard Worker 1208*d5c09012SAndroid Build Coastguard Worker // A map that contains metadata about the summarization and the document 1209*d5c09012SAndroid Build Coastguard Worker // from which it originates. 1210*d5c09012SAndroid Build Coastguard Worker map<string, string> metadata = 3; 1211*d5c09012SAndroid Build Coastguard Worker 1212*d5c09012SAndroid Build Coastguard Worker // The name of the answer record. 1213*d5c09012SAndroid Build Coastguard Worker // Format: 1214*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/answerRecords/{answer_record} 1215*d5c09012SAndroid Build Coastguard Worker string answer_record = 4; 1216*d5c09012SAndroid Build Coastguard Worker 1217*d5c09012SAndroid Build Coastguard Worker // The name of the model that generates this summary. 1218*d5c09012SAndroid Build Coastguard Worker // Format: 1219*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversationModels/{conversation_model} 1220*d5c09012SAndroid Build Coastguard Worker string conversation_model = 6; 1221*d5c09012SAndroid Build Coastguard Worker} 1222*d5c09012SAndroid Build Coastguard Worker 1223*d5c09012SAndroid Build Coastguard Worker// The call participant speaking for a given utterance. 1224*d5c09012SAndroid Build Coastguard Workermessage ConversationParticipant { 1225*d5c09012SAndroid Build Coastguard Worker // The role of the participant. 1226*d5c09012SAndroid Build Coastguard Worker enum Role { 1227*d5c09012SAndroid Build Coastguard Worker // Participant's role is not set. 1228*d5c09012SAndroid Build Coastguard Worker ROLE_UNSPECIFIED = 0; 1229*d5c09012SAndroid Build Coastguard Worker 1230*d5c09012SAndroid Build Coastguard Worker // Participant is a human agent. 1231*d5c09012SAndroid Build Coastguard Worker HUMAN_AGENT = 1; 1232*d5c09012SAndroid Build Coastguard Worker 1233*d5c09012SAndroid Build Coastguard Worker // Participant is an automated agent. 1234*d5c09012SAndroid Build Coastguard Worker AUTOMATED_AGENT = 2; 1235*d5c09012SAndroid Build Coastguard Worker 1236*d5c09012SAndroid Build Coastguard Worker // Participant is an end user who conversed with the contact center. 1237*d5c09012SAndroid Build Coastguard Worker END_USER = 3; 1238*d5c09012SAndroid Build Coastguard Worker 1239*d5c09012SAndroid Build Coastguard Worker // Participant is either a human or automated agent. 1240*d5c09012SAndroid Build Coastguard Worker ANY_AGENT = 4; 1241*d5c09012SAndroid Build Coastguard Worker } 1242*d5c09012SAndroid Build Coastguard Worker 1243*d5c09012SAndroid Build Coastguard Worker oneof participant { 1244*d5c09012SAndroid Build Coastguard Worker // The name of the participant provided by Dialogflow. Format: 1245*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} 1246*d5c09012SAndroid Build Coastguard Worker string dialogflow_participant_name = 5 [(google.api.resource_reference) = { 1247*d5c09012SAndroid Build Coastguard Worker type: "dialogflow.googleapis.com/Participant" 1248*d5c09012SAndroid Build Coastguard Worker }]; 1249*d5c09012SAndroid Build Coastguard Worker 1250*d5c09012SAndroid Build Coastguard Worker // A user-specified ID representing the participant. 1251*d5c09012SAndroid Build Coastguard Worker string user_id = 6; 1252*d5c09012SAndroid Build Coastguard Worker } 1253*d5c09012SAndroid Build Coastguard Worker 1254*d5c09012SAndroid Build Coastguard Worker // Deprecated. Use `dialogflow_participant_name` instead. 1255*d5c09012SAndroid Build Coastguard Worker // The name of the Dialogflow participant. Format: 1256*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant} 1257*d5c09012SAndroid Build Coastguard Worker string dialogflow_participant = 1 [deprecated = true]; 1258*d5c09012SAndroid Build Coastguard Worker 1259*d5c09012SAndroid Build Coastguard Worker // Obfuscated user ID from Dialogflow. 1260*d5c09012SAndroid Build Coastguard Worker string obfuscated_external_user_id = 3; 1261*d5c09012SAndroid Build Coastguard Worker 1262*d5c09012SAndroid Build Coastguard Worker // The role of the participant. 1263*d5c09012SAndroid Build Coastguard Worker Role role = 2; 1264*d5c09012SAndroid Build Coastguard Worker} 1265*d5c09012SAndroid Build Coastguard Worker 1266*d5c09012SAndroid Build Coastguard Worker// The View resource. 1267*d5c09012SAndroid Build Coastguard Workermessage View { 1268*d5c09012SAndroid Build Coastguard Worker option (google.api.resource) = { 1269*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/View" 1270*d5c09012SAndroid Build Coastguard Worker pattern: "projects/{project}/locations/{location}/views/{view}" 1271*d5c09012SAndroid Build Coastguard Worker }; 1272*d5c09012SAndroid Build Coastguard Worker 1273*d5c09012SAndroid Build Coastguard Worker // Immutable. The resource name of the view. 1274*d5c09012SAndroid Build Coastguard Worker // Format: 1275*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/views/{view} 1276*d5c09012SAndroid Build Coastguard Worker string name = 1 [(google.api.field_behavior) = IMMUTABLE]; 1277*d5c09012SAndroid Build Coastguard Worker 1278*d5c09012SAndroid Build Coastguard Worker // The human-readable display name of the view. 1279*d5c09012SAndroid Build Coastguard Worker string display_name = 2; 1280*d5c09012SAndroid Build Coastguard Worker 1281*d5c09012SAndroid Build Coastguard Worker // Output only. The time at which this view was created. 1282*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp create_time = 3 1283*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1284*d5c09012SAndroid Build Coastguard Worker 1285*d5c09012SAndroid Build Coastguard Worker // Output only. The most recent time at which the view was updated. 1286*d5c09012SAndroid Build Coastguard Worker google.protobuf.Timestamp update_time = 4 1287*d5c09012SAndroid Build Coastguard Worker [(google.api.field_behavior) = OUTPUT_ONLY]; 1288*d5c09012SAndroid Build Coastguard Worker 1289*d5c09012SAndroid Build Coastguard Worker // String with specific view properties, must be non-empty. 1290*d5c09012SAndroid Build Coastguard Worker string value = 5; 1291*d5c09012SAndroid Build Coastguard Worker} 1292*d5c09012SAndroid Build Coastguard Worker 1293*d5c09012SAndroid Build Coastguard Worker// Selector of all available annotators and phrase matchers to run. 1294*d5c09012SAndroid Build Coastguard Workermessage AnnotatorSelector { 1295*d5c09012SAndroid Build Coastguard Worker // Configuration for summarization. 1296*d5c09012SAndroid Build Coastguard Worker message SummarizationConfig { 1297*d5c09012SAndroid Build Coastguard Worker // Summarization model to use, if `conversation_profile` is not used. 1298*d5c09012SAndroid Build Coastguard Worker enum SummarizationModel { 1299*d5c09012SAndroid Build Coastguard Worker // Unspecified summarization model. 1300*d5c09012SAndroid Build Coastguard Worker SUMMARIZATION_MODEL_UNSPECIFIED = 0; 1301*d5c09012SAndroid Build Coastguard Worker 1302*d5c09012SAndroid Build Coastguard Worker // The CCAI baseline model. 1303*d5c09012SAndroid Build Coastguard Worker BASELINE_MODEL = 1; 1304*d5c09012SAndroid Build Coastguard Worker } 1305*d5c09012SAndroid Build Coastguard Worker 1306*d5c09012SAndroid Build Coastguard Worker // Summarization must use either a preexisting conversation profile or one 1307*d5c09012SAndroid Build Coastguard Worker // of the supported default models. 1308*d5c09012SAndroid Build Coastguard Worker oneof model_source { 1309*d5c09012SAndroid Build Coastguard Worker // Resource name of the Dialogflow conversation profile. 1310*d5c09012SAndroid Build Coastguard Worker // Format: 1311*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/conversationProfiles/{conversation_profile} 1312*d5c09012SAndroid Build Coastguard Worker string conversation_profile = 1 [(google.api.resource_reference) = { 1313*d5c09012SAndroid Build Coastguard Worker type: "dialogflow.googleapis.com/ConversationProfile" 1314*d5c09012SAndroid Build Coastguard Worker }]; 1315*d5c09012SAndroid Build Coastguard Worker 1316*d5c09012SAndroid Build Coastguard Worker // Default summarization model to be used. 1317*d5c09012SAndroid Build Coastguard Worker SummarizationModel summarization_model = 2; 1318*d5c09012SAndroid Build Coastguard Worker } 1319*d5c09012SAndroid Build Coastguard Worker } 1320*d5c09012SAndroid Build Coastguard Worker 1321*d5c09012SAndroid Build Coastguard Worker // Whether to run the interruption annotator. 1322*d5c09012SAndroid Build Coastguard Worker bool run_interruption_annotator = 1; 1323*d5c09012SAndroid Build Coastguard Worker 1324*d5c09012SAndroid Build Coastguard Worker // Whether to run the silence annotator. 1325*d5c09012SAndroid Build Coastguard Worker bool run_silence_annotator = 2; 1326*d5c09012SAndroid Build Coastguard Worker 1327*d5c09012SAndroid Build Coastguard Worker // Whether to run the active phrase matcher annotator(s). 1328*d5c09012SAndroid Build Coastguard Worker bool run_phrase_matcher_annotator = 3; 1329*d5c09012SAndroid Build Coastguard Worker 1330*d5c09012SAndroid Build Coastguard Worker // The list of phrase matchers to run. If not provided, all active phrase 1331*d5c09012SAndroid Build Coastguard Worker // matchers will be used. If inactive phrase matchers are provided, they will 1332*d5c09012SAndroid Build Coastguard Worker // not be used. Phrase matchers will be run only if 1333*d5c09012SAndroid Build Coastguard Worker // run_phrase_matcher_annotator is set to true. Format: 1334*d5c09012SAndroid Build Coastguard Worker // projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher} 1335*d5c09012SAndroid Build Coastguard Worker repeated string phrase_matchers = 4 [(google.api.resource_reference) = { 1336*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/PhraseMatcher" 1337*d5c09012SAndroid Build Coastguard Worker }]; 1338*d5c09012SAndroid Build Coastguard Worker 1339*d5c09012SAndroid Build Coastguard Worker // Whether to run the sentiment annotator. 1340*d5c09012SAndroid Build Coastguard Worker bool run_sentiment_annotator = 5; 1341*d5c09012SAndroid Build Coastguard Worker 1342*d5c09012SAndroid Build Coastguard Worker // Whether to run the entity annotator. 1343*d5c09012SAndroid Build Coastguard Worker bool run_entity_annotator = 6; 1344*d5c09012SAndroid Build Coastguard Worker 1345*d5c09012SAndroid Build Coastguard Worker // Whether to run the intent annotator. 1346*d5c09012SAndroid Build Coastguard Worker bool run_intent_annotator = 7; 1347*d5c09012SAndroid Build Coastguard Worker 1348*d5c09012SAndroid Build Coastguard Worker // Whether to run the issue model annotator. A model should have already been 1349*d5c09012SAndroid Build Coastguard Worker // deployed for this to take effect. 1350*d5c09012SAndroid Build Coastguard Worker bool run_issue_model_annotator = 8; 1351*d5c09012SAndroid Build Coastguard Worker 1352*d5c09012SAndroid Build Coastguard Worker // The issue model to run. If not provided, the most recently deployed topic 1353*d5c09012SAndroid Build Coastguard Worker // model will be used. The provided issue model will only be used for 1354*d5c09012SAndroid Build Coastguard Worker // inference if the issue model is deployed and if run_issue_model_annotator 1355*d5c09012SAndroid Build Coastguard Worker // is set to true. If more than one issue model is provided, only the first 1356*d5c09012SAndroid Build Coastguard Worker // provided issue model will be used for inference. 1357*d5c09012SAndroid Build Coastguard Worker repeated string issue_models = 10 [(google.api.resource_reference) = { 1358*d5c09012SAndroid Build Coastguard Worker type: "contactcenterinsights.googleapis.com/IssueModel" 1359*d5c09012SAndroid Build Coastguard Worker }]; 1360*d5c09012SAndroid Build Coastguard Worker 1361*d5c09012SAndroid Build Coastguard Worker // Whether to run the summarization annotator. 1362*d5c09012SAndroid Build Coastguard Worker bool run_summarization_annotator = 9; 1363*d5c09012SAndroid Build Coastguard Worker 1364*d5c09012SAndroid Build Coastguard Worker // Configuration for the summarization annotator. 1365*d5c09012SAndroid Build Coastguard Worker SummarizationConfig summarization_config = 11; 1366*d5c09012SAndroid Build Coastguard Worker} 1367