# Copyright 2020 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. require 'date' require 'google/apis/core/base_service' require 'google/apis/core/json_representation' require 'google/apis/core/hashable' require 'google/apis/errors' module Google module Apis module ContactcenterinsightsV1 # Agent Coaching instructions that customer can configure. class GoogleCloudContactcenterinsightsV1AgentCoachingInstruction include Google::Apis::Core::Hashable # Optional. The action that human agent should take. For example, "apologize for # the slow shipping". If the users only want to use agent coaching for intent # detection, agent_action can be empty # Corresponds to the JSON property `agentAction` # @return [String] attr_accessor :agent_action # Optional. The condition of the instruction. For example, "the customer wants # to cancel an order". If the users want the instruction to be triggered # unconditionally, the condition can be empty. # Corresponds to the JSON property `condition` # @return [String] attr_accessor :condition # Optional. The detailed description of this instruction. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Optional. Display name for the instruction. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Optional. Additional information attached to this instruction. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # Optional. The action that system should take. For example, "call GetOrderTime # with order_number=`order number provided by the customer`". If the users don't # have plugins or don't want to trigger plugins, the system_action can be empty # Corresponds to the JSON property `systemAction` # @return [String] attr_accessor :system_action def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action = args[:agent_action] if args.key?(:agent_action) @condition = args[:condition] if args.key?(:condition) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) @metadata = args[:metadata] if args.key?(:metadata) @system_action = args[:system_action] if args.key?(:system_action) end end # Suggestion for coaching agents. class GoogleCloudContactcenterinsightsV1AgentCoachingSuggestion include Google::Apis::Core::Hashable # Optional. Suggested actions for the agent to take. # Corresponds to the JSON property `agentActionSuggestions` # @return [Array] attr_accessor :agent_action_suggestions # Optional. Instructions applicable based on the current context. # Corresponds to the JSON property `applicableInstructions` # @return [Array] attr_accessor :applicable_instructions # Optional. Sample response for the Agent. # Corresponds to the JSON property `sampleResponses` # @return [Array] attr_accessor :sample_responses # Self evaluations of the suggestion. # Corresponds to the JSON property `suggestionEval` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionAgentCoachingSuggestionEval] attr_accessor :suggestion_eval # Reasoning for the suggestion. # Corresponds to the JSON property `suggestionReasoning` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionAgentCoachingSuggestionReasoning] attr_accessor :suggestion_reasoning def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action_suggestions = args[:agent_action_suggestions] if args.key?(:agent_action_suggestions) @applicable_instructions = args[:applicable_instructions] if args.key?(:applicable_instructions) @sample_responses = args[:sample_responses] if args.key?(:sample_responses) @suggestion_eval = args[:suggestion_eval] if args.key?(:suggestion_eval) @suggestion_reasoning = args[:suggestion_reasoning] if args.key?(:suggestion_reasoning) end end # Actions suggested for the agent. This is based on applicable instructions. class GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionAgentActionSuggestion include Google::Apis::Core::Hashable # Optional. The suggested action for the agent. # Corresponds to the JSON property `agentAction` # @return [String] attr_accessor :agent_action def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action = args[:agent_action] if args.key?(:agent_action) end end # Self evaluations of the suggestion. class GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionAgentCoachingSuggestionEval include Google::Apis::Core::Hashable # Optional. Eval for Agent action suggestion. # Corresponds to the JSON property `actionActionSuggestionEval` # @return [String] attr_accessor :action_action_suggestion_eval # Optional. Eval for sample response. # Corresponds to the JSON property `sampleResponseEval` # @return [String] attr_accessor :sample_response_eval def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @action_action_suggestion_eval = args[:action_action_suggestion_eval] if args.key?(:action_action_suggestion_eval) @sample_response_eval = args[:sample_response_eval] if args.key?(:sample_response_eval) end end # Reasoning for the suggestion. class GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionAgentCoachingSuggestionReasoning include Google::Apis::Core::Hashable # Optional. The actions that the agent has taken already. # Corresponds to the JSON property `agentActionTaken` # @return [String] attr_accessor :agent_action_taken # Optional. Summary of the issue. # Corresponds to the JSON property `issueSummary` # @return [String] attr_accessor :issue_summary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action_taken = args[:agent_action_taken] if args.key?(:agent_action_taken) @issue_summary = args[:issue_summary] if args.key?(:issue_summary) end end # Sample response that the agent can use. This could be based on applicable # instructions and ingested data from other systems. class GoogleCloudContactcenterinsightsV1AgentCoachingSuggestionSampleResponse include Google::Apis::Core::Hashable # Optional. Sample response for Agent in text. # Corresponds to the JSON property `responseText` # @return [String] attr_accessor :response_text def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_text = args[:response_text] if args.key?(:response_text) end end # The analysis resource. class GoogleCloudContactcenterinsightsV1Analysis include Google::Apis::Core::Hashable # The result of an analysis. # Corresponds to the JSON property `analysisResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnalysisResult] attr_accessor :analysis_result # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotatorSelector] attr_accessor :annotator_selector # Output only. The time at which the analysis was created, which occurs when the # long-running operation completes. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Immutable. The resource name of the analysis. Format: projects/`project`/ # locations/`location`/conversations/`conversation`/analyses/`analysis` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. The time at which the analysis was requested. # Corresponds to the JSON property `requestTime` # @return [String] attr_accessor :request_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_result = args[:analysis_result] if args.key?(:analysis_result) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @create_time = args[:create_time] if args.key?(:create_time) @name = args[:name] if args.key?(:name) @request_time = args[:request_time] if args.key?(:request_time) end end # The result of an analysis. class GoogleCloudContactcenterinsightsV1AnalysisResult include Google::Apis::Core::Hashable # Call-specific metadata created during analysis. # Corresponds to the JSON property `callAnalysisMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata] attr_accessor :call_analysis_metadata # The time at which the analysis ended. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @call_analysis_metadata = args[:call_analysis_metadata] if args.key?(:call_analysis_metadata) @end_time = args[:end_time] if args.key?(:end_time) end end # Call-specific metadata created during analysis. class GoogleCloudContactcenterinsightsV1AnalysisResultCallAnalysisMetadata include Google::Apis::Core::Hashable # A list of call annotations that apply to this call. # Corresponds to the JSON property `annotations` # @return [Array] attr_accessor :annotations # All the entities in the call. # Corresponds to the JSON property `entities` # @return [Hash] attr_accessor :entities # All the matched intents in the call. # Corresponds to the JSON property `intents` # @return [Hash] attr_accessor :intents # Issue Modeling result on a conversation. # Corresponds to the JSON property `issueModelResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueModelResult] attr_accessor :issue_model_result # All the matched phrase matchers in the call. # Corresponds to the JSON property `phraseMatchers` # @return [Hash] attr_accessor :phrase_matchers # Overall conversation-level sentiment for each channel of the call. # Corresponds to the JSON property `sentiments` # @return [Array] attr_accessor :sentiments # Conversation-level silence data. # Corresponds to the JSON property `silence` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationLevelSilence] attr_accessor :silence def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @entities = args[:entities] if args.key?(:entities) @intents = args[:intents] if args.key?(:intents) @issue_model_result = args[:issue_model_result] if args.key?(:issue_model_result) @phrase_matchers = args[:phrase_matchers] if args.key?(:phrase_matchers) @sentiments = args[:sentiments] if args.key?(:sentiments) @silence = args[:silence] if args.key?(:silence) end end # A point in a conversation that marks the start or the end of an annotation. class GoogleCloudContactcenterinsightsV1AnnotationBoundary include Google::Apis::Core::Hashable # The index in the sequence of transcribed pieces of the conversation where the # boundary is located. This index starts at zero. # Corresponds to the JSON property `transcriptIndex` # @return [Fixnum] attr_accessor :transcript_index # The word index of this boundary with respect to the first word in the # transcript piece. This index starts at zero. # Corresponds to the JSON property `wordIndex` # @return [Fixnum] attr_accessor :word_index def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @transcript_index = args[:transcript_index] if args.key?(:transcript_index) @word_index = args[:word_index] if args.key?(:word_index) end end # Selector of all available annotators and phrase matchers to run. class GoogleCloudContactcenterinsightsV1AnnotatorSelector include Google::Apis::Core::Hashable # The issue model to run. If not provided, the most recently deployed topic # model will be used. The provided issue model will only be used for inference # if the issue model is deployed and if run_issue_model_annotator is set to true. # If more than one issue model is provided, only the first provided issue model # will be used for inference. # Corresponds to the JSON property `issueModels` # @return [Array] attr_accessor :issue_models # The list of phrase matchers to run. If not provided, all active phrase # matchers will be used. If inactive phrase matchers are provided, they will not # be used. Phrase matchers will be run only if run_phrase_matcher_annotator is # set to true. Format: projects/`project`/locations/`location`/phraseMatchers/` # phrase_matcher` # Corresponds to the JSON property `phraseMatchers` # @return [Array] attr_accessor :phrase_matchers # Whether to run the entity annotator. # Corresponds to the JSON property `runEntityAnnotator` # @return [Boolean] attr_accessor :run_entity_annotator alias_method :run_entity_annotator?, :run_entity_annotator # Whether to run the intent annotator. # Corresponds to the JSON property `runIntentAnnotator` # @return [Boolean] attr_accessor :run_intent_annotator alias_method :run_intent_annotator?, :run_intent_annotator # Whether to run the interruption annotator. # Corresponds to the JSON property `runInterruptionAnnotator` # @return [Boolean] attr_accessor :run_interruption_annotator alias_method :run_interruption_annotator?, :run_interruption_annotator # Whether to run the issue model annotator. A model should have already been # deployed for this to take effect. # Corresponds to the JSON property `runIssueModelAnnotator` # @return [Boolean] attr_accessor :run_issue_model_annotator alias_method :run_issue_model_annotator?, :run_issue_model_annotator # Whether to run the active phrase matcher annotator(s). # Corresponds to the JSON property `runPhraseMatcherAnnotator` # @return [Boolean] attr_accessor :run_phrase_matcher_annotator alias_method :run_phrase_matcher_annotator?, :run_phrase_matcher_annotator # Whether to run the sentiment annotator. # Corresponds to the JSON property `runSentimentAnnotator` # @return [Boolean] attr_accessor :run_sentiment_annotator alias_method :run_sentiment_annotator?, :run_sentiment_annotator # Whether to run the silence annotator. # Corresponds to the JSON property `runSilenceAnnotator` # @return [Boolean] attr_accessor :run_silence_annotator alias_method :run_silence_annotator?, :run_silence_annotator # Whether to run the summarization annotator. # Corresponds to the JSON property `runSummarizationAnnotator` # @return [Boolean] attr_accessor :run_summarization_annotator alias_method :run_summarization_annotator?, :run_summarization_annotator # Configuration for summarization. # Corresponds to the JSON property `summarizationConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig] attr_accessor :summarization_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_models = args[:issue_models] if args.key?(:issue_models) @phrase_matchers = args[:phrase_matchers] if args.key?(:phrase_matchers) @run_entity_annotator = args[:run_entity_annotator] if args.key?(:run_entity_annotator) @run_intent_annotator = args[:run_intent_annotator] if args.key?(:run_intent_annotator) @run_interruption_annotator = args[:run_interruption_annotator] if args.key?(:run_interruption_annotator) @run_issue_model_annotator = args[:run_issue_model_annotator] if args.key?(:run_issue_model_annotator) @run_phrase_matcher_annotator = args[:run_phrase_matcher_annotator] if args.key?(:run_phrase_matcher_annotator) @run_sentiment_annotator = args[:run_sentiment_annotator] if args.key?(:run_sentiment_annotator) @run_silence_annotator = args[:run_silence_annotator] if args.key?(:run_silence_annotator) @run_summarization_annotator = args[:run_summarization_annotator] if args.key?(:run_summarization_annotator) @summarization_config = args[:summarization_config] if args.key?(:summarization_config) end end # Configuration for summarization. class GoogleCloudContactcenterinsightsV1AnnotatorSelectorSummarizationConfig include Google::Apis::Core::Hashable # Resource name of the Dialogflow conversation profile. Format: projects/` # project`/locations/`location`/conversationProfiles/`conversation_profile` # Corresponds to the JSON property `conversationProfile` # @return [String] attr_accessor :conversation_profile # Default summarization model to be used. # Corresponds to the JSON property `summarizationModel` # @return [String] attr_accessor :summarization_model def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation_profile = args[:conversation_profile] if args.key?(:conversation_profile) @summarization_model = args[:summarization_model] if args.key?(:summarization_model) end end # The feedback that the customer has about a certain answer in the conversation. class GoogleCloudContactcenterinsightsV1AnswerFeedback include Google::Apis::Core::Hashable # Indicates whether an answer or item was clicked by the human agent. # Corresponds to the JSON property `clicked` # @return [Boolean] attr_accessor :clicked alias_method :clicked?, :clicked # The correctness level of an answer. # Corresponds to the JSON property `correctnessLevel` # @return [String] attr_accessor :correctness_level # Indicates whether an answer or item was displayed to the human agent in the # agent desktop UI. # Corresponds to the JSON property `displayed` # @return [Boolean] attr_accessor :displayed alias_method :displayed?, :displayed def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @clicked = args[:clicked] if args.key?(:clicked) @correctness_level = args[:correctness_level] if args.key?(:correctness_level) @displayed = args[:displayed] if args.key?(:displayed) end end # Agent Assist Article Suggestion data. class GoogleCloudContactcenterinsightsV1ArticleSuggestionData include Google::Apis::Core::Hashable # The system's confidence score that this article is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Article Suggestion and the document that # it originates from. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The knowledge document that this answer was extracted from. Format: projects/` # project`/knowledgeBases/`knowledge_base`/documents/`document` # Corresponds to the JSON property `source` # @return [String] attr_accessor :source # Article title. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # Article URI. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @source = args[:source] if args.key?(:source) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # The metadata for a bulk analyze conversations operation. class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata include Google::Apis::Core::Hashable # The number of requested analyses that have completed successfully so far. # Corresponds to the JSON property `completedAnalysesCount` # @return [Fixnum] attr_accessor :completed_analyses_count # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The number of requested analyses that have failed so far. # Corresponds to the JSON property `failedAnalysesCount` # @return [Fixnum] attr_accessor :failed_analyses_count # Output only. Partial errors during bulk analyze operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to analyze conversations in bulk. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest] attr_accessor :request # Total number of analyses requested. Computed by the number of conversations # returned by `filter` multiplied by `analysis_percentage` in the request. # Corresponds to the JSON property `totalRequestedAnalysesCount` # @return [Fixnum] attr_accessor :total_requested_analyses_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @completed_analyses_count = args[:completed_analyses_count] if args.key?(:completed_analyses_count) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @failed_analyses_count = args[:failed_analyses_count] if args.key?(:failed_analyses_count) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) @total_requested_analyses_count = args[:total_requested_analyses_count] if args.key?(:total_requested_analyses_count) end end # The request to analyze conversations in bulk. class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsRequest include Google::Apis::Core::Hashable # Required. Percentage of selected conversation to analyze, between [0, 100]. # Corresponds to the JSON property `analysisPercentage` # @return [Float] attr_accessor :analysis_percentage # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotatorSelector] attr_accessor :annotator_selector # Required. Filter used to select the subset of conversations to analyze. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # Required. The parent resource to create analyses in. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_percentage = args[:analysis_percentage] if args.key?(:analysis_percentage) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @filter = args[:filter] if args.key?(:filter) @parent = args[:parent] if args.key?(:parent) end end # The response for a bulk analyze conversations operation. class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsResponse include Google::Apis::Core::Hashable # Count of failed analyses. # Corresponds to the JSON property `failedAnalysisCount` # @return [Fixnum] attr_accessor :failed_analysis_count # Count of successful analyses. # Corresponds to the JSON property `successfulAnalysisCount` # @return [Fixnum] attr_accessor :successful_analysis_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @failed_analysis_count = args[:failed_analysis_count] if args.key?(:failed_analysis_count) @successful_analysis_count = args[:successful_analysis_count] if args.key?(:successful_analysis_count) end end # The metadata for a bulk delete conversations operation. class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Partial errors during bulk delete conversations operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to delete conversations in bulk. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # The request to delete conversations in bulk. class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsRequest include Google::Apis::Core::Hashable # Filter used to select the subset of conversations to delete. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # If set to true, all of this conversation's analyses will also be deleted. # Otherwise, the request will only succeed if the conversation has no analyses. # Corresponds to the JSON property `force` # @return [Boolean] attr_accessor :force alias_method :force?, :force # Maximum number of conversations to delete. # Corresponds to the JSON property `maxDeleteCount` # @return [Fixnum] attr_accessor :max_delete_count # Required. The parent resource to delete conversations from. Format: projects/` # project`/locations/`location` # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @filter = args[:filter] if args.key?(:filter) @force = args[:force] if args.key?(:force) @max_delete_count = args[:max_delete_count] if args.key?(:max_delete_count) @parent = args[:parent] if args.key?(:parent) end end # The response for a bulk delete conversations operation. class GoogleCloudContactcenterinsightsV1BulkDeleteConversationsResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Response of querying an issue model's statistics. class GoogleCloudContactcenterinsightsV1CalculateIssueModelStatsResponse include Google::Apis::Core::Hashable # Aggregated statistics about an issue model. # Corresponds to the JSON property `currentStats` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueModelLabelStats] attr_accessor :current_stats def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @current_stats = args[:current_stats] if args.key?(:current_stats) end end # The response for calculating conversation statistics. class GoogleCloudContactcenterinsightsV1CalculateStatsResponse include Google::Apis::Core::Hashable # The average duration of all conversations. The average is calculated using # only conversations that have a time duration. # Corresponds to the JSON property `averageDuration` # @return [String] attr_accessor :average_duration # The average number of turns per conversation. # Corresponds to the JSON property `averageTurnCount` # @return [Fixnum] attr_accessor :average_turn_count # The total number of conversations. # Corresponds to the JSON property `conversationCount` # @return [Fixnum] attr_accessor :conversation_count # A time series representing conversations over time. # Corresponds to the JSON property `conversationCountTimeSeries` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries] attr_accessor :conversation_count_time_series # A map associating each custom highlighter resource name with its respective # number of matches in the set of conversations. # Corresponds to the JSON property `customHighlighterMatches` # @return [Hash] attr_accessor :custom_highlighter_matches # A map associating each issue resource name with its respective number of # matches in the set of conversations. Key has the format: `projects//locations// # issueModels//issues/` Deprecated, use `issue_matches_stats` field instead. # Corresponds to the JSON property `issueMatches` # @return [Hash] attr_accessor :issue_matches # A map associating each issue resource name with its respective number of # matches in the set of conversations. Key has the format: `projects//locations// # issueModels//issues/` # Corresponds to the JSON property `issueMatchesStats` # @return [Hash] attr_accessor :issue_matches_stats # A map associating each smart highlighter display name with its respective # number of matches in the set of conversations. # Corresponds to the JSON property `smartHighlighterMatches` # @return [Hash] attr_accessor :smart_highlighter_matches def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @average_duration = args[:average_duration] if args.key?(:average_duration) @average_turn_count = args[:average_turn_count] if args.key?(:average_turn_count) @conversation_count = args[:conversation_count] if args.key?(:conversation_count) @conversation_count_time_series = args[:conversation_count_time_series] if args.key?(:conversation_count_time_series) @custom_highlighter_matches = args[:custom_highlighter_matches] if args.key?(:custom_highlighter_matches) @issue_matches = args[:issue_matches] if args.key?(:issue_matches) @issue_matches_stats = args[:issue_matches_stats] if args.key?(:issue_matches_stats) @smart_highlighter_matches = args[:smart_highlighter_matches] if args.key?(:smart_highlighter_matches) end end # A time series representing conversations over time. class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeries include Google::Apis::Core::Hashable # The duration of each interval. # Corresponds to the JSON property `intervalDuration` # @return [String] attr_accessor :interval_duration # An ordered list of intervals from earliest to latest, where each interval # represents the number of conversations that transpired during the time window. # Corresponds to the JSON property `points` # @return [Array] attr_accessor :points def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @interval_duration = args[:interval_duration] if args.key?(:interval_duration) @points = args[:points] if args.key?(:points) end end # A single interval in a time series. class GoogleCloudContactcenterinsightsV1CalculateStatsResponseTimeSeriesInterval include Google::Apis::Core::Hashable # The number of conversations created in this interval. # Corresponds to the JSON property `conversationCount` # @return [Fixnum] attr_accessor :conversation_count # The start time of this interval. # Corresponds to the JSON property `startTime` # @return [String] attr_accessor :start_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation_count = args[:conversation_count] if args.key?(:conversation_count) @start_time = args[:start_time] if args.key?(:start_time) end end # A piece of metadata that applies to a window of a call. class GoogleCloudContactcenterinsightsV1CallAnnotation include Google::Apis::Core::Hashable # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `annotationEndBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotationBoundary] attr_accessor :annotation_end_boundary # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `annotationStartBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotationBoundary] attr_accessor :annotation_start_boundary # The channel of the audio where the annotation occurs. For single-channel audio, # this field is not populated. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # The data for an entity mention annotation. This represents a mention of an ` # Entity` in the conversation. # Corresponds to the JSON property `entityMentionData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1EntityMentionData] attr_accessor :entity_mention_data # The data for a hold annotation. # Corresponds to the JSON property `holdData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1HoldData] attr_accessor :hold_data # The data for an intent match. Represents an intent match for a text segment in # the conversation. A text segment can be part of a sentence, a complete # sentence, or an utterance with multiple sentences. # Corresponds to the JSON property `intentMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IntentMatchData] attr_accessor :intent_match_data # The data for an interruption annotation. # Corresponds to the JSON property `interruptionData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1InterruptionData] attr_accessor :interruption_data # The data for an issue match annotation. # Corresponds to the JSON property `issueMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueMatchData] attr_accessor :issue_match_data # The data for a matched phrase matcher. Represents information identifying a # phrase matcher for a given match. # Corresponds to the JSON property `phraseMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1PhraseMatchData] attr_accessor :phrase_match_data # The data for a sentiment annotation. # Corresponds to the JSON property `sentimentData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SentimentData] attr_accessor :sentiment_data # The data for a silence annotation. # Corresponds to the JSON property `silenceData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SilenceData] attr_accessor :silence_data def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotation_end_boundary = args[:annotation_end_boundary] if args.key?(:annotation_end_boundary) @annotation_start_boundary = args[:annotation_start_boundary] if args.key?(:annotation_start_boundary) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @entity_mention_data = args[:entity_mention_data] if args.key?(:entity_mention_data) @hold_data = args[:hold_data] if args.key?(:hold_data) @intent_match_data = args[:intent_match_data] if args.key?(:intent_match_data) @interruption_data = args[:interruption_data] if args.key?(:interruption_data) @issue_match_data = args[:issue_match_data] if args.key?(:issue_match_data) @phrase_match_data = args[:phrase_match_data] if args.key?(:phrase_match_data) @sentiment_data = args[:sentiment_data] if args.key?(:sentiment_data) @silence_data = args[:silence_data] if args.key?(:silence_data) end end # The conversation resource. class GoogleCloudContactcenterinsightsV1Conversation include Google::Apis::Core::Hashable # An opaque, user-specified string representing the human agent who handled the # conversation. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # Call-specific metadata. # Corresponds to the JSON property `callMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationCallMetadata] attr_accessor :call_metadata # Output only. The time at which the conversation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The conversation source, which is a combination of transcript and audio. # Corresponds to the JSON property `dataSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationDataSource] attr_accessor :data_source # Output only. All the matched Dialogflow intents in the call. The key # corresponds to a Dialogflow intent, format: projects/`project`/agent/`agent`/ # intents/`intent` # Corresponds to the JSON property `dialogflowIntents` # @return [Hash] attr_accessor :dialogflow_intents # Output only. The duration of the conversation. # Corresponds to the JSON property `duration` # @return [String] attr_accessor :duration # The time at which this conversation should expire. After this time, the # conversation data and any associated analyses will be deleted. # Corresponds to the JSON property `expireTime` # @return [String] attr_accessor :expire_time # A map for the user to specify any custom fields. A maximum of 20 labels per # conversation is allowed, with a maximum of 256 characters per entry. # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels # A user-specified language code for the conversation. # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # The analysis resource. # Corresponds to the JSON property `latestAnalysis` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Analysis] attr_accessor :latest_analysis # Conversation summarization suggestion data. # Corresponds to the JSON property `latestSummary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData] attr_accessor :latest_summary # Immutable. The conversation medium, if unspecified will default to PHONE_CALL. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium # Immutable. The resource name of the conversation. Format: projects/`project`/ # locations/`location`/conversations/`conversation` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Obfuscated user ID which the customer sent to us. # Corresponds to the JSON property `obfuscatedUserId` # @return [String] attr_accessor :obfuscated_user_id # Conversation metadata related to quality management. # Corresponds to the JSON property `qualityMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationQualityMetadata] attr_accessor :quality_metadata # Output only. The annotations that were generated during the customer and agent # interaction. # Corresponds to the JSON property `runtimeAnnotations` # @return [Array] attr_accessor :runtime_annotations # The time at which the conversation started. # Corresponds to the JSON property `startTime` # @return [String] attr_accessor :start_time # A message representing the transcript of a conversation. # Corresponds to the JSON property `transcript` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationTranscript] attr_accessor :transcript # Input only. The TTL for this resource. If specified, then this TTL will be # used to calculate the expire time. # Corresponds to the JSON property `ttl` # @return [String] attr_accessor :ttl # Output only. The number of turns in the conversation. # Corresponds to the JSON property `turnCount` # @return [Fixnum] attr_accessor :turn_count # Output only. The most recent time at which the conversation was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_id = args[:agent_id] if args.key?(:agent_id) @call_metadata = args[:call_metadata] if args.key?(:call_metadata) @create_time = args[:create_time] if args.key?(:create_time) @data_source = args[:data_source] if args.key?(:data_source) @dialogflow_intents = args[:dialogflow_intents] if args.key?(:dialogflow_intents) @duration = args[:duration] if args.key?(:duration) @expire_time = args[:expire_time] if args.key?(:expire_time) @labels = args[:labels] if args.key?(:labels) @language_code = args[:language_code] if args.key?(:language_code) @latest_analysis = args[:latest_analysis] if args.key?(:latest_analysis) @latest_summary = args[:latest_summary] if args.key?(:latest_summary) @medium = args[:medium] if args.key?(:medium) @name = args[:name] if args.key?(:name) @obfuscated_user_id = args[:obfuscated_user_id] if args.key?(:obfuscated_user_id) @quality_metadata = args[:quality_metadata] if args.key?(:quality_metadata) @runtime_annotations = args[:runtime_annotations] if args.key?(:runtime_annotations) @start_time = args[:start_time] if args.key?(:start_time) @transcript = args[:transcript] if args.key?(:transcript) @ttl = args[:ttl] if args.key?(:ttl) @turn_count = args[:turn_count] if args.key?(:turn_count) @update_time = args[:update_time] if args.key?(:update_time) end end # Call-specific metadata. class GoogleCloudContactcenterinsightsV1ConversationCallMetadata include Google::Apis::Core::Hashable # The audio channel that contains the agent. # Corresponds to the JSON property `agentChannel` # @return [Fixnum] attr_accessor :agent_channel # The audio channel that contains the customer. # Corresponds to the JSON property `customerChannel` # @return [Fixnum] attr_accessor :customer_channel def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_channel = args[:agent_channel] if args.key?(:agent_channel) @customer_channel = args[:customer_channel] if args.key?(:customer_channel) end end # The conversation source, which is a combination of transcript and audio. class GoogleCloudContactcenterinsightsV1ConversationDataSource include Google::Apis::Core::Hashable # A Dialogflow source of conversation data. # Corresponds to the JSON property `dialogflowSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1DialogflowSource] attr_accessor :dialogflow_source # A Cloud Storage source of conversation data. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GcsSource] attr_accessor :gcs_source def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dialogflow_source = args[:dialogflow_source] if args.key?(:dialogflow_source) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) end end # One channel of conversation-level sentiment data. class GoogleCloudContactcenterinsightsV1ConversationLevelSentiment include Google::Apis::Core::Hashable # The channel of the audio that the data applies to. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # The data for a sentiment annotation. # Corresponds to the JSON property `sentimentData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SentimentData] attr_accessor :sentiment_data def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @sentiment_data = args[:sentiment_data] if args.key?(:sentiment_data) end end # Conversation-level silence data. class GoogleCloudContactcenterinsightsV1ConversationLevelSilence include Google::Apis::Core::Hashable # Amount of time calculated to be in silence. # Corresponds to the JSON property `silenceDuration` # @return [String] attr_accessor :silence_duration # Percentage of the total conversation spent in silence. # Corresponds to the JSON property `silencePercentage` # @return [Float] attr_accessor :silence_percentage def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @silence_duration = args[:silence_duration] if args.key?(:silence_duration) @silence_percentage = args[:silence_percentage] if args.key?(:silence_percentage) end end # The call participant speaking for a given utterance. class GoogleCloudContactcenterinsightsV1ConversationParticipant include Google::Apis::Core::Hashable # Deprecated. Use `dialogflow_participant_name` instead. The name of the # Dialogflow participant. Format: projects/`project`/locations/`location`/ # conversations/`conversation`/participants/`participant` # Corresponds to the JSON property `dialogflowParticipant` # @return [String] attr_accessor :dialogflow_participant # The name of the participant provided by Dialogflow. Format: projects/`project`/ # locations/`location`/conversations/`conversation`/participants/`participant` # Corresponds to the JSON property `dialogflowParticipantName` # @return [String] attr_accessor :dialogflow_participant_name # Obfuscated user ID from Dialogflow. # Corresponds to the JSON property `obfuscatedExternalUserId` # @return [String] attr_accessor :obfuscated_external_user_id # The role of the participant. # Corresponds to the JSON property `role` # @return [String] attr_accessor :role # A user-specified ID representing the participant. # Corresponds to the JSON property `userId` # @return [String] attr_accessor :user_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dialogflow_participant = args[:dialogflow_participant] if args.key?(:dialogflow_participant) @dialogflow_participant_name = args[:dialogflow_participant_name] if args.key?(:dialogflow_participant_name) @obfuscated_external_user_id = args[:obfuscated_external_user_id] if args.key?(:obfuscated_external_user_id) @role = args[:role] if args.key?(:role) @user_id = args[:user_id] if args.key?(:user_id) end end # Conversation metadata related to quality management. class GoogleCloudContactcenterinsightsV1ConversationQualityMetadata include Google::Apis::Core::Hashable # Information about agents involved in the call. # Corresponds to the JSON property `agentInfo` # @return [Array] attr_accessor :agent_info # An arbitrary integer value indicating the customer's satisfaction rating. # Corresponds to the JSON property `customerSatisfactionRating` # @return [Fixnum] attr_accessor :customer_satisfaction_rating # An arbitrary string value specifying the menu path the customer took. # Corresponds to the JSON property `menuPath` # @return [String] attr_accessor :menu_path # The amount of time the customer waited to connect with an agent. # Corresponds to the JSON property `waitDuration` # @return [String] attr_accessor :wait_duration def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_info = args[:agent_info] if args.key?(:agent_info) @customer_satisfaction_rating = args[:customer_satisfaction_rating] if args.key?(:customer_satisfaction_rating) @menu_path = args[:menu_path] if args.key?(:menu_path) @wait_duration = args[:wait_duration] if args.key?(:wait_duration) end end # Information about an agent involved in the conversation. class GoogleCloudContactcenterinsightsV1ConversationQualityMetadataAgentInfo include Google::Apis::Core::Hashable # A user-specified string representing the agent. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # The agent's name. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # A user-provided string indicating the outcome of the agent's segment of the # call. # Corresponds to the JSON property `dispositionCode` # @return [String] attr_accessor :disposition_code # A user-specified string representing the agent's team. # Corresponds to the JSON property `team` # @return [String] attr_accessor :team def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_id = args[:agent_id] if args.key?(:agent_id) @display_name = args[:display_name] if args.key?(:display_name) @disposition_code = args[:disposition_code] if args.key?(:disposition_code) @team = args[:team] if args.key?(:team) end end # Conversation summarization suggestion data. class GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData include Google::Apis::Core::Hashable # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `answerRecord` # @return [String] attr_accessor :answer_record # The confidence score of the summarization. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # The name of the model that generates this summary. Format: projects/`project`/ # locations/`location`/conversationModels/`conversation_model` # Corresponds to the JSON property `conversationModel` # @return [String] attr_accessor :conversation_model # A map that contains metadata about the summarization and the document from # which it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The summarization content that is concatenated into one string. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # The summarization content that is divided into sections. The key is the # section's name and the value is the section's content. There is no specific # format for the key or value. # Corresponds to the JSON property `textSections` # @return [Hash] attr_accessor :text_sections def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer_record = args[:answer_record] if args.key?(:answer_record) @confidence = args[:confidence] if args.key?(:confidence) @conversation_model = args[:conversation_model] if args.key?(:conversation_model) @metadata = args[:metadata] if args.key?(:metadata) @text = args[:text] if args.key?(:text) @text_sections = args[:text_sections] if args.key?(:text_sections) end end # A message representing the transcript of a conversation. class GoogleCloudContactcenterinsightsV1ConversationTranscript include Google::Apis::Core::Hashable # A list of sequential transcript segments that comprise the conversation. # Corresponds to the JSON property `transcriptSegments` # @return [Array] attr_accessor :transcript_segments def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @transcript_segments = args[:transcript_segments] if args.key?(:transcript_segments) end end # A segment of a full transcript. class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegment include Google::Apis::Core::Hashable # For conversations derived from multi-channel audio, this is the channel number # corresponding to the audio from that channel. For audioChannelCount = N, its # output values can range from '1' to 'N'. A channel tag of 0 indicates that the # audio is mono. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A # default value of 0.0 indicates that the value is unset. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # Metadata from Dialogflow relating to the current transcript segment. # Corresponds to the JSON property `dialogflowSegmentMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata] attr_accessor :dialogflow_segment_metadata # The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/ # bcp/bcp47.txt) language tag. Example: "en-US". # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # The time that the message occurred, if provided. # Corresponds to the JSON property `messageTime` # @return [String] attr_accessor :message_time # The call participant speaking for a given utterance. # Corresponds to the JSON property `segmentParticipant` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationParticipant] attr_accessor :segment_participant # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SentimentData] attr_accessor :sentiment # The text of this segment. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # A list of the word-specific information for each word in the segment. # Corresponds to the JSON property `words` # @return [Array] attr_accessor :words def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @confidence = args[:confidence] if args.key?(:confidence) @dialogflow_segment_metadata = args[:dialogflow_segment_metadata] if args.key?(:dialogflow_segment_metadata) @language_code = args[:language_code] if args.key?(:language_code) @message_time = args[:message_time] if args.key?(:message_time) @segment_participant = args[:segment_participant] if args.key?(:segment_participant) @sentiment = args[:sentiment] if args.key?(:sentiment) @text = args[:text] if args.key?(:text) @words = args[:words] if args.key?(:words) end end # Metadata from Dialogflow relating to the current transcript segment. class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata include Google::Apis::Core::Hashable # Whether the transcript segment was covered under the configured smart reply # allowlist in Agent Assist. # Corresponds to the JSON property `smartReplyAllowlistCovered` # @return [Boolean] attr_accessor :smart_reply_allowlist_covered alias_method :smart_reply_allowlist_covered?, :smart_reply_allowlist_covered def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @smart_reply_allowlist_covered = args[:smart_reply_allowlist_covered] if args.key?(:smart_reply_allowlist_covered) end end # Word-level info for words in a transcript. class GoogleCloudContactcenterinsightsV1ConversationTranscriptTranscriptSegmentWordInfo include Google::Apis::Core::Hashable # A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A # default value of 0.0 indicates that the value is unset. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # Time offset of the end of this word relative to the beginning of the total # conversation. # Corresponds to the JSON property `endOffset` # @return [String] attr_accessor :end_offset # Time offset of the start of this word relative to the beginning of the total # conversation. # Corresponds to the JSON property `startOffset` # @return [String] attr_accessor :start_offset # The word itself. Includes punctuation marks that surround the word. # Corresponds to the JSON property `word` # @return [String] attr_accessor :word def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence = args[:confidence] if args.key?(:confidence) @end_offset = args[:end_offset] if args.key?(:end_offset) @start_offset = args[:start_offset] if args.key?(:start_offset) @word = args[:word] if args.key?(:word) end end # Metadata for a create analysis operation. class GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata include Google::Apis::Core::Hashable # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotatorSelector] attr_accessor :annotator_selector # Output only. The Conversation that this Analysis Operation belongs to. # Corresponds to the JSON property `conversation` # @return [String] attr_accessor :conversation # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @conversation = args[:conversation] if args.key?(:conversation) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) end end # Metadata for creating an issue model. class GoogleCloudContactcenterinsightsV1CreateIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to create an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1CreateIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to create an issue model. class GoogleCloudContactcenterinsightsV1CreateIssueModelRequest include Google::Apis::Core::Hashable # The issue model resource. # Corresponds to the JSON property `issueModel` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueModel] attr_accessor :issue_model # Required. The parent resource of the issue model. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_model = args[:issue_model] if args.key?(:issue_model) @parent = args[:parent] if args.key?(:parent) end end # Metadata for deleting an issue model. class GoogleCloudContactcenterinsightsV1DeleteIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to delete an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to delete an issue model. class GoogleCloudContactcenterinsightsV1DeleteIssueModelRequest include Google::Apis::Core::Hashable # Required. The name of the issue model to delete. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # Metadata for deploying an issue model. class GoogleCloudContactcenterinsightsV1DeployIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to deploy an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1DeployIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to deploy an issue model. class GoogleCloudContactcenterinsightsV1DeployIssueModelRequest include Google::Apis::Core::Hashable # Required. The issue model to deploy. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # The response to deploy an issue model. class GoogleCloudContactcenterinsightsV1DeployIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The data for a Dialogflow intent. Represents a detected intent in the # conversation, e.g. MAKES_PROMISE. class GoogleCloudContactcenterinsightsV1DialogflowIntent include Google::Apis::Core::Hashable # The human-readable name of the intent. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) end end # Dialogflow interaction data. class GoogleCloudContactcenterinsightsV1DialogflowInteractionData include Google::Apis::Core::Hashable # The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 ( # completely certain). # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # The Dialogflow intent resource path. Format: projects/`project`/agent/`agent`/ # intents/`intent` # Corresponds to the JSON property `dialogflowIntentId` # @return [String] attr_accessor :dialogflow_intent_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence = args[:confidence] if args.key?(:confidence) @dialogflow_intent_id = args[:dialogflow_intent_id] if args.key?(:dialogflow_intent_id) end end # A Dialogflow source of conversation data. class GoogleCloudContactcenterinsightsV1DialogflowSource include Google::Apis::Core::Hashable # Cloud Storage URI that points to a file that contains the conversation audio. # Corresponds to the JSON property `audioUri` # @return [String] attr_accessor :audio_uri # Output only. The name of the Dialogflow conversation that this conversation # resource is derived from. Format: projects/`project`/locations/`location`/ # conversations/`conversation` # Corresponds to the JSON property `dialogflowConversation` # @return [String] attr_accessor :dialogflow_conversation def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audio_uri = args[:audio_uri] if args.key?(:audio_uri) @dialogflow_conversation = args[:dialogflow_conversation] if args.key?(:dialogflow_conversation) end end # The data for an entity annotation. Represents a phrase in the conversation # that is a known entity, such as a person, an organization, or location. class GoogleCloudContactcenterinsightsV1Entity include Google::Apis::Core::Hashable # The representative name for the entity. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Metadata associated with the entity. For most entity types, the metadata is a # Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are # available. For the metadata associated with other entity types, see the Type # table below. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The salience score associated with the entity in the [0, 1.0] range. The # salience score for an entity provides information about the importance or # centrality of that entity to the entire document text. Scores closer to 0 are # less salient, while scores closer to 1.0 are highly salient. # Corresponds to the JSON property `salience` # @return [Float] attr_accessor :salience # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SentimentData] attr_accessor :sentiment # The entity type. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @metadata = args[:metadata] if args.key?(:metadata) @salience = args[:salience] if args.key?(:salience) @sentiment = args[:sentiment] if args.key?(:sentiment) @type = args[:type] if args.key?(:type) end end # The data for an entity mention annotation. This represents a mention of an ` # Entity` in the conversation. class GoogleCloudContactcenterinsightsV1EntityMentionData include Google::Apis::Core::Hashable # The key of this entity in conversation entities. Can be used to retrieve the # exact `Entity` this mention is attached to. # Corresponds to the JSON property `entityUniqueId` # @return [String] attr_accessor :entity_unique_id # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SentimentData] attr_accessor :sentiment # The type of the entity mention. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @entity_unique_id = args[:entity_unique_id] if args.key?(:entity_unique_id) @sentiment = args[:sentiment] if args.key?(:sentiment) @type = args[:type] if args.key?(:type) end end # Exact match configuration. class GoogleCloudContactcenterinsightsV1ExactMatchConfig include Google::Apis::Core::Hashable # Whether to consider case sensitivity when performing an exact match. # Corresponds to the JSON property `caseSensitive` # @return [Boolean] attr_accessor :case_sensitive alias_method :case_sensitive?, :case_sensitive def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @case_sensitive = args[:case_sensitive] if args.key?(:case_sensitive) end end # Metadata for an export insights operation. class GoogleCloudContactcenterinsightsV1ExportInsightsDataMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Partial errors during export operation that might cause the operation output # to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to export insights. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # The request to export insights. class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequest include Google::Apis::Core::Hashable # A BigQuery Table Reference. # Corresponds to the JSON property `bigQueryDestination` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination] attr_accessor :big_query_destination # A filter to reduce results to a specific subset. Useful for exporting # conversations with specific properties. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: # projects/`project`/locations/`location`/keyRings/`keyring`/cryptoKeys/`key`/ # cryptoKeyVersions/`version` # Corresponds to the JSON property `kmsKey` # @return [String] attr_accessor :kms_key # Required. The parent resource to export data from. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # Options for what to do if the destination table already exists. # Corresponds to the JSON property `writeDisposition` # @return [String] attr_accessor :write_disposition def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @big_query_destination = args[:big_query_destination] if args.key?(:big_query_destination) @filter = args[:filter] if args.key?(:filter) @kms_key = args[:kms_key] if args.key?(:kms_key) @parent = args[:parent] if args.key?(:parent) @write_disposition = args[:write_disposition] if args.key?(:write_disposition) end end # A BigQuery Table Reference. class GoogleCloudContactcenterinsightsV1ExportInsightsDataRequestBigQueryDestination include Google::Apis::Core::Hashable # Required. The name of the BigQuery dataset that the snapshot result should be # exported to. If this dataset does not exist, the export call returns an # INVALID_ARGUMENT error. # Corresponds to the JSON property `dataset` # @return [String] attr_accessor :dataset # A project ID or number. If specified, then export will attempt to write data # to this project instead of the resource project. Otherwise, the resource # project will be used. # Corresponds to the JSON property `projectId` # @return [String] attr_accessor :project_id # The BigQuery table name to which the insights data should be written. If this # table does not exist, the export call returns an INVALID_ARGUMENT error. # Corresponds to the JSON property `table` # @return [String] attr_accessor :table def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dataset = args[:dataset] if args.key?(:dataset) @project_id = args[:project_id] if args.key?(:project_id) @table = args[:table] if args.key?(:table) end end # Response for an export insights operation. class GoogleCloudContactcenterinsightsV1ExportInsightsDataResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Metadata used for export issue model. class GoogleCloudContactcenterinsightsV1ExportIssueModelMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to export an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ExportIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to export an issue model. class GoogleCloudContactcenterinsightsV1ExportIssueModelRequest include Google::Apis::Core::Hashable # Google Cloud Storage Object URI to save the issue model to. # Corresponds to the JSON property `gcsDestination` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination] attr_accessor :gcs_destination # Required. The issue model to export # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination) @name = args[:name] if args.key?(:name) end end # Google Cloud Storage Object URI to save the issue model to. class GoogleCloudContactcenterinsightsV1ExportIssueModelRequestGcsDestination include Google::Apis::Core::Hashable # Required. Format: `gs:///` # Corresponds to the JSON property `objectUri` # @return [String] attr_accessor :object_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @object_uri = args[:object_uri] if args.key?(:object_uri) end end # Response from export issue model class GoogleCloudContactcenterinsightsV1ExportIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Agent Assist frequently-asked-question answer data. class GoogleCloudContactcenterinsightsV1FaqAnswerData include Google::Apis::Core::Hashable # The piece of text from the `source` knowledge base document. # Corresponds to the JSON property `answer` # @return [String] attr_accessor :answer # The system's confidence score that this answer is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the FAQ answer and the document that it # originates from. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The corresponding FAQ question. # Corresponds to the JSON property `question` # @return [String] attr_accessor :question # The knowledge document that this answer was extracted from. Format: projects/` # project`/knowledgeBases/`knowledge_base`/documents/`document`. # Corresponds to the JSON property `source` # @return [String] attr_accessor :source def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer = args[:answer] if args.key?(:answer) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @question = args[:question] if args.key?(:question) @source = args[:source] if args.key?(:source) end end # Suggestion generated using free form generator. class GoogleCloudContactcenterinsightsV1FreeFormSuggestion include Google::Apis::Core::Hashable # Optional. Labels for the generator. # Corresponds to the JSON property `labels` # @return [Array] attr_accessor :labels # Required. Free form suggestion. # Corresponds to the JSON property `response` # @return [String] attr_accessor :response def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @labels = args[:labels] if args.key?(:labels) @response = args[:response] if args.key?(:response) end end # A Cloud Storage source of conversation data. class GoogleCloudContactcenterinsightsV1GcsSource include Google::Apis::Core::Hashable # Cloud Storage URI that points to a file that contains the conversation audio. # Corresponds to the JSON property `audioUri` # @return [String] attr_accessor :audio_uri # Immutable. Cloud Storage URI that points to a file that contains the # conversation transcript. # Corresponds to the JSON property `transcriptUri` # @return [String] attr_accessor :transcript_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audio_uri = args[:audio_uri] if args.key?(:audio_uri) @transcript_uri = args[:transcript_uri] if args.key?(:transcript_uri) end end # Suggestion generated using a Generator. class GoogleCloudContactcenterinsightsV1GeneratorSuggestion include Google::Apis::Core::Hashable # Suggestion for coaching agents. # Corresponds to the JSON property `agentCoachingSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AgentCoachingSuggestion] attr_accessor :agent_coaching_suggestion # Suggestion generated using free form generator. # Corresponds to the JSON property `freeFormSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1FreeFormSuggestion] attr_accessor :free_form_suggestion # Suggested summary of the conversation. # Corresponds to the JSON property `summarySuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SummarySuggestion] attr_accessor :summary_suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_coaching_suggestion = args[:agent_coaching_suggestion] if args.key?(:agent_coaching_suggestion) @free_form_suggestion = args[:free_form_suggestion] if args.key?(:free_form_suggestion) @summary_suggestion = args[:summary_suggestion] if args.key?(:summary_suggestion) end end # Represents response from generators. class GoogleCloudContactcenterinsightsV1GetGeneratorSuggestionResponse include Google::Apis::Core::Hashable # Suggestion generated using a Generator. # Corresponds to the JSON property `generatorSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GeneratorSuggestion] attr_accessor :generator_suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @generator_suggestion = args[:generator_suggestion] if args.key?(:generator_suggestion) end end # Response for Knowledge Assist. Contains suggested query and optionally # includes an answer for the query. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponse include Google::Apis::Core::Hashable # Represents a suggested query. # Corresponds to the JSON property `suggestedQuery` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseSuggestedQuery] attr_accessor :suggested_query # Represents an answer from Knowledge. Cuurently supports FAQ and Generative # answers. # Corresponds to the JSON property `suggestedQueryAnswer` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswer] attr_accessor :suggested_query_answer def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @suggested_query = args[:suggested_query] if args.key?(:suggested_query) @suggested_query_answer = args[:suggested_query_answer] if args.key?(:suggested_query_answer) end end # Represents an answer from Knowledge. Cuurently supports FAQ and Generative # answers. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswer include Google::Apis::Core::Hashable # The piece of text from the `source` that answers this suggested query. # Corresponds to the JSON property `answerText` # @return [String] attr_accessor :answer_text # Details about source of FAQ answer. # Corresponds to the JSON property `faqSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerFaqSource] attr_accessor :faq_source # Details about source of Generative answer. # Corresponds to the JSON property `generativeSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSource] attr_accessor :generative_source # Details about source of Intent Matching answer. # Corresponds to the JSON property `intentMatchingSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerIntentMatchingSource] attr_accessor :intent_matching_source # The system's confidence score that this answer is a good match for this # conversational query. The range is from 0.0 (completely uncertain) to 1.0 ( # completely certain). # Corresponds to the JSON property `matchConfidence` # @return [Float] attr_accessor :match_confidence def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer_text = args[:answer_text] if args.key?(:answer_text) @faq_source = args[:faq_source] if args.key?(:faq_source) @generative_source = args[:generative_source] if args.key?(:generative_source) @intent_matching_source = args[:intent_matching_source] if args.key?(:intent_matching_source) @match_confidence = args[:match_confidence] if args.key?(:match_confidence) end end # Details about source of FAQ answer. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerFaqSource include Google::Apis::Core::Hashable # Indicates which Knowledge Document this answer was extracted from. Format: ` # projects//knowledgeBases//documents/`. # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # The corresponding FAQ question. # Corresponds to the JSON property `question` # @return [String] attr_accessor :question def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @question = args[:question] if args.key?(:question) end end # Details about source of Generative answer. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSource include Google::Apis::Core::Hashable # All snippets used for this Generative Prediction, with their source URI and # data. # Corresponds to the JSON property `snippets` # @return [Array] attr_accessor :snippets def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @snippets = args[:snippets] if args.key?(:snippets) end end # Snippet Source for a Generative Prediction. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSourceSnippet include Google::Apis::Core::Hashable # Indicates which Knowledge Document this snippet was extracted from. Format: ` # projects//knowledgeBases//documents/`. # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # text taken from that URI. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # Title of the document. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # URI the data is sourced from. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @text = args[:text] if args.key?(:text) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # Details about source of Intent Matching answer. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseKnowledgeAnswerIntentMatchingSource include Google::Apis::Core::Hashable # Title of the document. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # URI the data is sourced from. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # Represents a suggested query. class GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponseSuggestedQuery include Google::Apis::Core::Hashable # Suggested query text. # Corresponds to the JSON property `queryText` # @return [String] attr_accessor :query_text # Suggested query score. # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @query_text = args[:query_text] if args.key?(:query_text) @score = args[:score] if args.key?(:score) end end # The data for a hold annotation. class GoogleCloudContactcenterinsightsV1HoldData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Metadata used for import issue model. class GoogleCloudContactcenterinsightsV1ImportIssueModelMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to import an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ImportIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to import an issue model. class GoogleCloudContactcenterinsightsV1ImportIssueModelRequest include Google::Apis::Core::Hashable # Optional. If set to true, will create a new issue model from the imported file # with randomly generated IDs for the issue model and corresponding issues. # Otherwise, replaces an existing model with the same ID as the file. # Corresponds to the JSON property `createNewModel` # @return [Boolean] attr_accessor :create_new_model alias_method :create_new_model?, :create_new_model # Google Cloud Storage Object URI to get the issue model file from. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource] attr_accessor :gcs_source # Required. The parent resource of the issue model. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_new_model = args[:create_new_model] if args.key?(:create_new_model) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) @parent = args[:parent] if args.key?(:parent) end end # Google Cloud Storage Object URI to get the issue model file from. class GoogleCloudContactcenterinsightsV1ImportIssueModelRequestGcsSource include Google::Apis::Core::Hashable # Required. Format: `gs:///` # Corresponds to the JSON property `objectUri` # @return [String] attr_accessor :object_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @object_uri = args[:object_uri] if args.key?(:object_uri) end end # Response from import issue model class GoogleCloudContactcenterinsightsV1ImportIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The metadata for an IngestConversations operation. class GoogleCloudContactcenterinsightsV1IngestConversationsMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Statistics for IngestConversations operation. # Corresponds to the JSON property `ingestConversationsStats` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats] attr_accessor :ingest_conversations_stats # Output only. Partial errors during ingest operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to ingest conversations. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IngestConversationsRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @ingest_conversations_stats = args[:ingest_conversations_stats] if args.key?(:ingest_conversations_stats) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # Statistics for IngestConversations operation. class GoogleCloudContactcenterinsightsV1IngestConversationsMetadataIngestConversationsStats include Google::Apis::Core::Hashable # Output only. The number of objects skipped because another conversation with # the same transcript uri had already been ingested. # Corresponds to the JSON property `duplicatesSkippedCount` # @return [Fixnum] attr_accessor :duplicates_skipped_count # Output only. The number of objects which were unable to be ingested due to # errors. The errors are populated in the partial_errors field. # Corresponds to the JSON property `failedIngestCount` # @return [Fixnum] attr_accessor :failed_ingest_count # Output only. The number of objects processed during the ingest operation. # Corresponds to the JSON property `processedObjectCount` # @return [Fixnum] attr_accessor :processed_object_count # Output only. The number of new conversations added during this ingest # operation. # Corresponds to the JSON property `successfulIngestCount` # @return [Fixnum] attr_accessor :successful_ingest_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @duplicates_skipped_count = args[:duplicates_skipped_count] if args.key?(:duplicates_skipped_count) @failed_ingest_count = args[:failed_ingest_count] if args.key?(:failed_ingest_count) @processed_object_count = args[:processed_object_count] if args.key?(:processed_object_count) @successful_ingest_count = args[:successful_ingest_count] if args.key?(:successful_ingest_count) end end # The request to ingest conversations. class GoogleCloudContactcenterinsightsV1IngestConversationsRequest include Google::Apis::Core::Hashable # Configuration that applies to all conversations. # Corresponds to the JSON property `conversationConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig] attr_accessor :conversation_config # Configuration for Cloud Storage bucket sources. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource] attr_accessor :gcs_source # Required. The parent resource for new conversations. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `redactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1RedactionConfig] attr_accessor :redaction_config # Speech-to-Text configuration. # Corresponds to the JSON property `speechConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SpeechConfig] attr_accessor :speech_config # Configuration for processing transcript objects. # Corresponds to the JSON property `transcriptObjectConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig] attr_accessor :transcript_object_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation_config = args[:conversation_config] if args.key?(:conversation_config) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) @parent = args[:parent] if args.key?(:parent) @redaction_config = args[:redaction_config] if args.key?(:redaction_config) @speech_config = args[:speech_config] if args.key?(:speech_config) @transcript_object_config = args[:transcript_object_config] if args.key?(:transcript_object_config) end end # Configuration that applies to all conversations. class GoogleCloudContactcenterinsightsV1IngestConversationsRequestConversationConfig include Google::Apis::Core::Hashable # Optional. Indicates which of the channels, 1 or 2, contains the agent. Note # that this must be set for conversations to be properly displayed and analyzed. # Corresponds to the JSON property `agentChannel` # @return [Fixnum] attr_accessor :agent_channel # An opaque, user-specified string representing the human agent who handled the # conversations. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # Optional. Indicates which of the channels, 1 or 2, contains the agent. Note # that this must be set for conversations to be properly displayed and analyzed. # Corresponds to the JSON property `customerChannel` # @return [Fixnum] attr_accessor :customer_channel def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_channel = args[:agent_channel] if args.key?(:agent_channel) @agent_id = args[:agent_id] if args.key?(:agent_id) @customer_channel = args[:customer_channel] if args.key?(:customer_channel) end end # Configuration for Cloud Storage bucket sources. class GoogleCloudContactcenterinsightsV1IngestConversationsRequestGcsSource include Google::Apis::Core::Hashable # Optional. Specifies the type of the objects in `bucket_uri`. # Corresponds to the JSON property `bucketObjectType` # @return [String] attr_accessor :bucket_object_type # Required. The Cloud Storage bucket containing source objects. # Corresponds to the JSON property `bucketUri` # @return [String] attr_accessor :bucket_uri # Optional. Custom keys to extract as conversation labels from metadata files in # `metadata_bucket_uri`. Keys not included in this field will be ignored. Note # that there is a limit of 20 labels per conversation. # Corresponds to the JSON property `customMetadataKeys` # @return [Array] attr_accessor :custom_metadata_keys # Optional. The Cloud Storage path to the source object metadata. Note that: [1] # metadata files are expected to be in JSON format [2] metadata and source # objects must be in separate buckets [3] a source object's metadata object must # share the same name to be properly ingested # Corresponds to the JSON property `metadataBucketUri` # @return [String] attr_accessor :metadata_bucket_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @bucket_object_type = args[:bucket_object_type] if args.key?(:bucket_object_type) @bucket_uri = args[:bucket_uri] if args.key?(:bucket_uri) @custom_metadata_keys = args[:custom_metadata_keys] if args.key?(:custom_metadata_keys) @metadata_bucket_uri = args[:metadata_bucket_uri] if args.key?(:metadata_bucket_uri) end end # Configuration for processing transcript objects. class GoogleCloudContactcenterinsightsV1IngestConversationsRequestTranscriptObjectConfig include Google::Apis::Core::Hashable # Required. The medium transcript objects represent. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @medium = args[:medium] if args.key?(:medium) end end # The response to an IngestConversations operation. class GoogleCloudContactcenterinsightsV1IngestConversationsResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The data for an intent. Represents a detected intent in the conversation, for # example MAKES_PROMISE. class GoogleCloudContactcenterinsightsV1Intent include Google::Apis::Core::Hashable # The human-readable name of the intent. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # The unique identifier of the intent. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @id = args[:id] if args.key?(:id) end end # The data for an intent match. Represents an intent match for a text segment in # the conversation. A text segment can be part of a sentence, a complete # sentence, or an utterance with multiple sentences. class GoogleCloudContactcenterinsightsV1IntentMatchData include Google::Apis::Core::Hashable # The id of the matched intent. Can be used to retrieve the corresponding intent # information. # Corresponds to the JSON property `intentUniqueId` # @return [String] attr_accessor :intent_unique_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @intent_unique_id = args[:intent_unique_id] if args.key?(:intent_unique_id) end end # The data for an interruption annotation. class GoogleCloudContactcenterinsightsV1InterruptionData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The issue resource. class GoogleCloudContactcenterinsightsV1Issue include Google::Apis::Core::Hashable # Output only. The time at which this issue was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The representative name for the issue. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Immutable. The resource name of the issue. Format: projects/`project`/ # locations/`location`/issueModels/`issue_model`/issues/`issue` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. Resource names of the sample representative utterances that match # to this issue. # Corresponds to the JSON property `sampleUtterances` # @return [Array] attr_accessor :sample_utterances # Output only. The most recent time that this issue was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @display_name = args[:display_name] if args.key?(:display_name) @name = args[:name] if args.key?(:name) @sample_utterances = args[:sample_utterances] if args.key?(:sample_utterances) @update_time = args[:update_time] if args.key?(:update_time) end end # Information about the issue. class GoogleCloudContactcenterinsightsV1IssueAssignment include Google::Apis::Core::Hashable # Immutable. Display name of the assigned issue. This field is set at time of # analyis and immutable since then. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Resource name of the assigned issue. # Corresponds to the JSON property `issue` # @return [String] attr_accessor :issue # Score indicating the likelihood of the issue assignment. currently bounded on [ # 0,1]. # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @issue = args[:issue] if args.key?(:issue) @score = args[:score] if args.key?(:score) end end # The data for an issue match annotation. class GoogleCloudContactcenterinsightsV1IssueMatchData include Google::Apis::Core::Hashable # Information about the issue. # Corresponds to the JSON property `issueAssignment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueAssignment] attr_accessor :issue_assignment def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_assignment = args[:issue_assignment] if args.key?(:issue_assignment) end end # The issue model resource. class GoogleCloudContactcenterinsightsV1IssueModel include Google::Apis::Core::Hashable # Output only. The time at which this issue model was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The representative name for the issue model. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Configs for the input data used to create the issue model. # Corresponds to the JSON property `inputDataConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig] attr_accessor :input_data_config # Output only. Number of issues in this issue model. # Corresponds to the JSON property `issueCount` # @return [Fixnum] attr_accessor :issue_count # Language of the model. # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # Type of the model. # Corresponds to the JSON property `modelType` # @return [String] attr_accessor :model_type # Immutable. The resource name of the issue model. Format: projects/`project`/ # locations/`location`/issueModels/`issue_model` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. State of the model. # Corresponds to the JSON property `state` # @return [String] attr_accessor :state # Aggregated statistics about an issue model. # Corresponds to the JSON property `trainingStats` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1IssueModelLabelStats] attr_accessor :training_stats # Output only. The most recent time at which the issue model was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @display_name = args[:display_name] if args.key?(:display_name) @input_data_config = args[:input_data_config] if args.key?(:input_data_config) @issue_count = args[:issue_count] if args.key?(:issue_count) @language_code = args[:language_code] if args.key?(:language_code) @model_type = args[:model_type] if args.key?(:model_type) @name = args[:name] if args.key?(:name) @state = args[:state] if args.key?(:state) @training_stats = args[:training_stats] if args.key?(:training_stats) @update_time = args[:update_time] if args.key?(:update_time) end end # Configs for the input data used to create the issue model. class GoogleCloudContactcenterinsightsV1IssueModelInputDataConfig include Google::Apis::Core::Hashable # A filter to reduce the conversations used for training the model to a specific # subset. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # Medium of conversations used in training data. This field is being deprecated. # To specify the medium to be used in training a new issue model, set the ` # medium` field on `filter`. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium # Output only. Number of conversations used in training. Output only. # Corresponds to the JSON property `trainingConversationsCount` # @return [Fixnum] attr_accessor :training_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @filter = args[:filter] if args.key?(:filter) @medium = args[:medium] if args.key?(:medium) @training_conversations_count = args[:training_conversations_count] if args.key?(:training_conversations_count) end end # Aggregated statistics about an issue model. class GoogleCloudContactcenterinsightsV1IssueModelLabelStats include Google::Apis::Core::Hashable # Number of conversations the issue model has analyzed at this point in time. # Corresponds to the JSON property `analyzedConversationsCount` # @return [Fixnum] attr_accessor :analyzed_conversations_count # Statistics on each issue. Key is the issue's resource name. # Corresponds to the JSON property `issueStats` # @return [Hash] attr_accessor :issue_stats # Number of analyzed conversations for which no issue was applicable at this # point in time. # Corresponds to the JSON property `unclassifiedConversationsCount` # @return [Fixnum] attr_accessor :unclassified_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analyzed_conversations_count = args[:analyzed_conversations_count] if args.key?(:analyzed_conversations_count) @issue_stats = args[:issue_stats] if args.key?(:issue_stats) @unclassified_conversations_count = args[:unclassified_conversations_count] if args.key?(:unclassified_conversations_count) end end # Aggregated statistics about an issue. class GoogleCloudContactcenterinsightsV1IssueModelLabelStatsIssueStats include Google::Apis::Core::Hashable # Display name of the issue. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Issue resource. Format: projects/`project`/locations/`location`/issueModels/` # issue_model`/issues/`issue` # Corresponds to the JSON property `issue` # @return [String] attr_accessor :issue # Number of conversations attached to the issue at this point in time. # Corresponds to the JSON property `labeledConversationsCount` # @return [Fixnum] attr_accessor :labeled_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @issue = args[:issue] if args.key?(:issue) @labeled_conversations_count = args[:labeled_conversations_count] if args.key?(:labeled_conversations_count) end end # Issue Modeling result on a conversation. class GoogleCloudContactcenterinsightsV1IssueModelResult include Google::Apis::Core::Hashable # Issue model that generates the result. Format: projects/`project`/locations/` # location`/issueModels/`issue_model` # Corresponds to the JSON property `issueModel` # @return [String] attr_accessor :issue_model # All the matched issues. # Corresponds to the JSON property `issues` # @return [Array] attr_accessor :issues def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_model = args[:issue_model] if args.key?(:issue_model) @issues = args[:issues] if args.key?(:issues) end end # The response to list analyses. class GoogleCloudContactcenterinsightsV1ListAnalysesResponse include Google::Apis::Core::Hashable # The analyses that match the request. # Corresponds to the JSON property `analyses` # @return [Array] attr_accessor :analyses # A token, which can be sent as `page_token` to retrieve the next page. If this # field is omitted, there are no subsequent pages. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analyses = args[:analyses] if args.key?(:analyses) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end # The response of listing conversations. class GoogleCloudContactcenterinsightsV1ListConversationsResponse include Google::Apis::Core::Hashable # The conversations that match the request. # Corresponds to the JSON property `conversations` # @return [Array] attr_accessor :conversations # A token which can be sent as `page_token` to retrieve the next page. If this # field is set, it means there is another page available. If it is not set, it # means no other pages are available. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversations = args[:conversations] if args.key?(:conversations) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end # The response of listing issue models. class GoogleCloudContactcenterinsightsV1ListIssueModelsResponse include Google::Apis::Core::Hashable # The issue models that match the request. # Corresponds to the JSON property `issueModels` # @return [Array] attr_accessor :issue_models def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_models = args[:issue_models] if args.key?(:issue_models) end end # The response of listing issues. class GoogleCloudContactcenterinsightsV1ListIssuesResponse include Google::Apis::Core::Hashable # The issues that match the request. # Corresponds to the JSON property `issues` # @return [Array] attr_accessor :issues def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issues = args[:issues] if args.key?(:issues) end end # The response of listing phrase matchers. class GoogleCloudContactcenterinsightsV1ListPhraseMatchersResponse include Google::Apis::Core::Hashable # A token, which can be sent as `page_token` to retrieve the next page. If this # field is omitted, there are no subsequent pages. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The phrase matchers that match the request. # Corresponds to the JSON property `phraseMatchers` # @return [Array] attr_accessor :phrase_matchers def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @phrase_matchers = args[:phrase_matchers] if args.key?(:phrase_matchers) end end # The response of listing views. class GoogleCloudContactcenterinsightsV1ListViewsResponse include Google::Apis::Core::Hashable # A token, which can be sent as `page_token` to retrieve the next page. If this # field is omitted, there are no subsequent pages. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # The views that match the request. # Corresponds to the JSON property `views` # @return [Array] attr_accessor :views def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @views = args[:views] if args.key?(:views) end end # The data for a matched phrase matcher. Represents information identifying a # phrase matcher for a given match. class GoogleCloudContactcenterinsightsV1PhraseMatchData include Google::Apis::Core::Hashable # The human-readable name of the phrase matcher. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # The unique identifier (the resource name) of the phrase matcher. # Corresponds to the JSON property `phraseMatcher` # @return [String] attr_accessor :phrase_matcher def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @phrase_matcher = args[:phrase_matcher] if args.key?(:phrase_matcher) end end # The data for a phrase match rule. class GoogleCloudContactcenterinsightsV1PhraseMatchRule include Google::Apis::Core::Hashable # Configuration information of a phrase match rule. # Corresponds to the JSON property `config` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig] attr_accessor :config # Specifies whether the phrase must be missing from the transcript segment or # present in the transcript segment. # Corresponds to the JSON property `negated` # @return [Boolean] attr_accessor :negated alias_method :negated?, :negated # Required. The phrase to be matched. # Corresponds to the JSON property `query` # @return [String] attr_accessor :query def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @config = args[:config] if args.key?(:config) @negated = args[:negated] if args.key?(:negated) @query = args[:query] if args.key?(:query) end end # Configuration information of a phrase match rule. class GoogleCloudContactcenterinsightsV1PhraseMatchRuleConfig include Google::Apis::Core::Hashable # Exact match configuration. # Corresponds to the JSON property `exactMatchConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ExactMatchConfig] attr_accessor :exact_match_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @exact_match_config = args[:exact_match_config] if args.key?(:exact_match_config) end end # A message representing a rule in the phrase matcher. class GoogleCloudContactcenterinsightsV1PhraseMatchRuleGroup include Google::Apis::Core::Hashable # A list of phrase match rules that are included in this group. # Corresponds to the JSON property `phraseMatchRules` # @return [Array] attr_accessor :phrase_match_rules # Required. The type of this phrase match rule group. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @phrase_match_rules = args[:phrase_match_rules] if args.key?(:phrase_match_rules) @type = args[:type] if args.key?(:type) end end # The phrase matcher resource. class GoogleCloudContactcenterinsightsV1PhraseMatcher include Google::Apis::Core::Hashable # Output only. The most recent time at which the activation status was updated. # Corresponds to the JSON property `activationUpdateTime` # @return [String] attr_accessor :activation_update_time # Applies the phrase matcher only when it is active. # Corresponds to the JSON property `active` # @return [Boolean] attr_accessor :active alias_method :active?, :active # The human-readable name of the phrase matcher. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # The resource name of the phrase matcher. Format: projects/`project`/locations/` # location`/phraseMatchers/`phrase_matcher` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # A list of phase match rule groups that are included in this matcher. # Corresponds to the JSON property `phraseMatchRuleGroups` # @return [Array] attr_accessor :phrase_match_rule_groups # Output only. The timestamp of when the revision was created. It is also the # create time when a new matcher is added. # Corresponds to the JSON property `revisionCreateTime` # @return [String] attr_accessor :revision_create_time # Output only. Immutable. The revision ID of the phrase matcher. A new revision # is committed whenever the matcher is changed, except when it is activated or # deactivated. A server generated random ID will be used. Example: locations/ # global/phraseMatchers/my-first-matcher@1234567 # Corresponds to the JSON property `revisionId` # @return [String] attr_accessor :revision_id # The role whose utterances the phrase matcher should be matched against. If the # role is ROLE_UNSPECIFIED it will be matched against any utterances in the # transcript. # Corresponds to the JSON property `roleMatch` # @return [String] attr_accessor :role_match # Required. The type of this phrase matcher. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type # Output only. The most recent time at which the phrase matcher was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time # The customized version tag to use for the phrase matcher. If not specified, it # will default to `revision_id`. # Corresponds to the JSON property `versionTag` # @return [String] attr_accessor :version_tag def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @activation_update_time = args[:activation_update_time] if args.key?(:activation_update_time) @active = args[:active] if args.key?(:active) @display_name = args[:display_name] if args.key?(:display_name) @name = args[:name] if args.key?(:name) @phrase_match_rule_groups = args[:phrase_match_rule_groups] if args.key?(:phrase_match_rule_groups) @revision_create_time = args[:revision_create_time] if args.key?(:revision_create_time) @revision_id = args[:revision_id] if args.key?(:revision_id) @role_match = args[:role_match] if args.key?(:role_match) @type = args[:type] if args.key?(:type) @update_time = args[:update_time] if args.key?(:update_time) @version_tag = args[:version_tag] if args.key?(:version_tag) end end # DLP resources used for redaction while ingesting conversations. class GoogleCloudContactcenterinsightsV1RedactionConfig include Google::Apis::Core::Hashable # The fully-qualified DLP deidentify template resource name. Format: `projects/` # project`/deidentifyTemplates/`template`` # Corresponds to the JSON property `deidentifyTemplate` # @return [String] attr_accessor :deidentify_template # The fully-qualified DLP inspect template resource name. Format: `projects/` # project`/locations/`location`/inspectTemplates/`template`` # Corresponds to the JSON property `inspectTemplate` # @return [String] attr_accessor :inspect_template def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @deidentify_template = args[:deidentify_template] if args.key?(:deidentify_template) @inspect_template = args[:inspect_template] if args.key?(:inspect_template) end end # An annotation that was generated during the customer and agent interaction. class GoogleCloudContactcenterinsightsV1RuntimeAnnotation include Google::Apis::Core::Hashable # The unique identifier of the annotation. Format: projects/`project`/locations/` # location`/conversationDatasets/`dataset`/conversationDataItems/`data_item`/ # conversationAnnotations/`annotation` # Corresponds to the JSON property `annotationId` # @return [String] attr_accessor :annotation_id # The feedback that the customer has about a certain answer in the conversation. # Corresponds to the JSON property `answerFeedback` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnswerFeedback] attr_accessor :answer_feedback # Agent Assist Article Suggestion data. # Corresponds to the JSON property `articleSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ArticleSuggestionData] attr_accessor :article_suggestion # Conversation summarization suggestion data. # Corresponds to the JSON property `conversationSummarizationSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData] attr_accessor :conversation_summarization_suggestion # The time at which this annotation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Dialogflow interaction data. # Corresponds to the JSON property `dialogflowInteraction` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1DialogflowInteractionData] attr_accessor :dialogflow_interaction # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `endBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotationBoundary] attr_accessor :end_boundary # Agent Assist frequently-asked-question answer data. # Corresponds to the JSON property `faqAnswer` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1FaqAnswerData] attr_accessor :faq_answer # Represents response from generators. # Corresponds to the JSON property `generatorSuggestionResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetGeneratorSuggestionResponse] attr_accessor :generator_suggestion_result # Response for Knowledge Assist. Contains suggested query and optionally # includes an answer for the query. # Corresponds to the JSON property `knowledgeAssistResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1GetKnowledgeAssistResponse] attr_accessor :knowledge_assist_result # Represents a SearchKnowledge answer. # Corresponds to the JSON property `knowledgeSearchResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SearchKnowledgeAnswer] attr_accessor :knowledge_search_result # Agent Assist Smart Compose suggestion data. # Corresponds to the JSON property `smartComposeSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SmartComposeSuggestionData] attr_accessor :smart_compose_suggestion # Agent Assist Smart Reply data. # Corresponds to the JSON property `smartReply` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SmartReplyData] attr_accessor :smart_reply # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `startBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotationBoundary] attr_accessor :start_boundary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotation_id = args[:annotation_id] if args.key?(:annotation_id) @answer_feedback = args[:answer_feedback] if args.key?(:answer_feedback) @article_suggestion = args[:article_suggestion] if args.key?(:article_suggestion) @conversation_summarization_suggestion = args[:conversation_summarization_suggestion] if args.key?(:conversation_summarization_suggestion) @create_time = args[:create_time] if args.key?(:create_time) @dialogflow_interaction = args[:dialogflow_interaction] if args.key?(:dialogflow_interaction) @end_boundary = args[:end_boundary] if args.key?(:end_boundary) @faq_answer = args[:faq_answer] if args.key?(:faq_answer) @generator_suggestion_result = args[:generator_suggestion_result] if args.key?(:generator_suggestion_result) @knowledge_assist_result = args[:knowledge_assist_result] if args.key?(:knowledge_assist_result) @knowledge_search_result = args[:knowledge_search_result] if args.key?(:knowledge_search_result) @smart_compose_suggestion = args[:smart_compose_suggestion] if args.key?(:smart_compose_suggestion) @smart_reply = args[:smart_reply] if args.key?(:smart_reply) @start_boundary = args[:start_boundary] if args.key?(:start_boundary) end end # Represents a SearchKnowledge answer. class GoogleCloudContactcenterinsightsV1SearchKnowledgeAnswer include Google::Apis::Core::Hashable # The piece of text from the knowledge base documents that answers the search # query # Corresponds to the JSON property `answer` # @return [String] attr_accessor :answer # The name of the answer record. Format: `projects//locations//answer Records/` # Corresponds to the JSON property `answerRecord` # @return [String] attr_accessor :answer_record # All sources used to generate the answer. # Corresponds to the JSON property `answerSources` # @return [Array] attr_accessor :answer_sources # The type of the answer. # Corresponds to the JSON property `answerType` # @return [String] attr_accessor :answer_type # The confidence score in [0.0, 1.0] range. # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer = args[:answer] if args.key?(:answer) @answer_record = args[:answer_record] if args.key?(:answer_record) @answer_sources = args[:answer_sources] if args.key?(:answer_sources) @answer_type = args[:answer_type] if args.key?(:answer_type) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) end end # The sources of the answers. class GoogleCloudContactcenterinsightsV1SearchKnowledgeAnswerAnswerSource include Google::Apis::Core::Hashable # The document from which the snippet was extracted. Format: `projects// # knowledgeBases//documents/` # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # The relevant snippet of the article. # Corresponds to the JSON property `snippet` # @return [String] attr_accessor :snippet # The title of the article. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # The URI of the article. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @snippet = args[:snippet] if args.key?(:snippet) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # The data for a sentiment annotation. class GoogleCloudContactcenterinsightsV1SentimentData include Google::Apis::Core::Hashable # A non-negative number from 0 to infinity which represents the abolute # magnitude of sentiment regardless of score. # Corresponds to the JSON property `magnitude` # @return [Float] attr_accessor :magnitude # The sentiment score between -1.0 (negative) and 1.0 (positive). # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @magnitude = args[:magnitude] if args.key?(:magnitude) @score = args[:score] if args.key?(:score) end end # The settings resource. class GoogleCloudContactcenterinsightsV1Settings include Google::Apis::Core::Hashable # Default configuration when creating Analyses in Insights. # Corresponds to the JSON property `analysisConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SettingsAnalysisConfig] attr_accessor :analysis_config # The default TTL for newly-created conversations. If a conversation has a # specified expiration, that value will be used instead. Changing this value # will not change the expiration of existing conversations. Conversations with # no expire time persist until they are deleted. # Corresponds to the JSON property `conversationTtl` # @return [String] attr_accessor :conversation_ttl # Output only. The time at which the settings was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # A language code to be applied to each transcript segment unless the segment # already specifies a language code. Language code defaults to "en-US" if it is # neither specified on the segment nor here. # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # Immutable. The resource name of the settings resource. Format: projects/` # project`/locations/`location`/settings # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # A map that maps a notification trigger to a Pub/Sub topic. Each time a # specified trigger occurs, Insights will notify the corresponding Pub/Sub topic. # Keys are notification triggers. Supported keys are: * "all-triggers": Notify # each time any of the supported triggers occurs. * "create-analysis": Notify # each time an analysis is created. * "create-conversation": Notify each time a # conversation is created. * "export-insights-data": Notify each time an export # is complete. * "ingest-conversations": Notify each time an IngestConversations # LRO completes. * "update-conversation": Notify each time a conversation is # updated via UpdateConversation. * "upload-conversation": Notify when an # UploadConversation LRO completes. Values are Pub/Sub topics. The format of # each Pub/Sub topic is: projects/`project`/topics/`topic` # Corresponds to the JSON property `pubsubNotificationSettings` # @return [Hash] attr_accessor :pubsub_notification_settings # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `redactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1RedactionConfig] attr_accessor :redaction_config # Speech-to-Text configuration. # Corresponds to the JSON property `speechConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SpeechConfig] attr_accessor :speech_config # Output only. The time at which the settings were last updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_config = args[:analysis_config] if args.key?(:analysis_config) @conversation_ttl = args[:conversation_ttl] if args.key?(:conversation_ttl) @create_time = args[:create_time] if args.key?(:create_time) @language_code = args[:language_code] if args.key?(:language_code) @name = args[:name] if args.key?(:name) @pubsub_notification_settings = args[:pubsub_notification_settings] if args.key?(:pubsub_notification_settings) @redaction_config = args[:redaction_config] if args.key?(:redaction_config) @speech_config = args[:speech_config] if args.key?(:speech_config) @update_time = args[:update_time] if args.key?(:update_time) end end # Default configuration when creating Analyses in Insights. class GoogleCloudContactcenterinsightsV1SettingsAnalysisConfig include Google::Apis::Core::Hashable # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AnnotatorSelector] attr_accessor :annotator_selector # Percentage of conversations created using Dialogflow runtime integration to # analyze automatically, between [0, 100]. # Corresponds to the JSON property `runtimeIntegrationAnalysisPercentage` # @return [Float] attr_accessor :runtime_integration_analysis_percentage # Percentage of conversations created using the UploadConversation endpoint to # analyze automatically, between [0, 100]. # Corresponds to the JSON property `uploadConversationAnalysisPercentage` # @return [Float] attr_accessor :upload_conversation_analysis_percentage def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @runtime_integration_analysis_percentage = args[:runtime_integration_analysis_percentage] if args.key?(:runtime_integration_analysis_percentage) @upload_conversation_analysis_percentage = args[:upload_conversation_analysis_percentage] if args.key?(:upload_conversation_analysis_percentage) end end # The data for a silence annotation. class GoogleCloudContactcenterinsightsV1SilenceData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Agent Assist Smart Compose suggestion data. class GoogleCloudContactcenterinsightsV1SmartComposeSuggestionData include Google::Apis::Core::Hashable # The system's confidence score that this suggestion is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Smart Compose suggestion and the document # from which it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The content of the suggestion. # Corresponds to the JSON property `suggestion` # @return [String] attr_accessor :suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @suggestion = args[:suggestion] if args.key?(:suggestion) end end # Agent Assist Smart Reply data. class GoogleCloudContactcenterinsightsV1SmartReplyData include Google::Apis::Core::Hashable # The system's confidence score that this reply is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Smart Reply and the document from which # it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The content of the reply. # Corresponds to the JSON property `reply` # @return [String] attr_accessor :reply def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @reply = args[:reply] if args.key?(:reply) end end # Speech-to-Text configuration. class GoogleCloudContactcenterinsightsV1SpeechConfig include Google::Apis::Core::Hashable # The fully-qualified Speech Recognizer resource name. Format: `projects/` # project_id`/locations/`location`/recognizer/`recognizer`` # Corresponds to the JSON property `speechRecognizer` # @return [String] attr_accessor :speech_recognizer def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @speech_recognizer = args[:speech_recognizer] if args.key?(:speech_recognizer) end end # Suggested summary of the conversation. class GoogleCloudContactcenterinsightsV1SummarySuggestion include Google::Apis::Core::Hashable # Required. All the parts of generated summary. # Corresponds to the JSON property `summarySections` # @return [Array] attr_accessor :summary_sections def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @summary_sections = args[:summary_sections] if args.key?(:summary_sections) end end # A component of the generated summary. class GoogleCloudContactcenterinsightsV1SummarySuggestionSummarySection include Google::Apis::Core::Hashable # Required. Name of the section. # Corresponds to the JSON property `section` # @return [String] attr_accessor :section # Required. Summary text for the section. # Corresponds to the JSON property `summary` # @return [String] attr_accessor :summary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @section = args[:section] if args.key?(:section) @summary = args[:summary] if args.key?(:summary) end end # Metadata for undeploying an issue model. class GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to undeploy an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to undeploy an issue model. class GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest include Google::Apis::Core::Hashable # Required. The issue model to undeploy. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # The response to undeploy an issue model. class GoogleCloudContactcenterinsightsV1UndeployIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The metadata for an UploadConversation operation. class GoogleCloudContactcenterinsightsV1UploadConversationMetadata include Google::Apis::Core::Hashable # Output only. The operation name for a successfully created analysis operation, # if any. # Corresponds to the JSON property `analysisOperation` # @return [String] attr_accessor :analysis_operation # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `appliedRedactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1RedactionConfig] attr_accessor :applied_redaction_config # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to upload a conversation. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1UploadConversationRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_operation = args[:analysis_operation] if args.key?(:analysis_operation) @applied_redaction_config = args[:applied_redaction_config] if args.key?(:applied_redaction_config) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to upload a conversation. class GoogleCloudContactcenterinsightsV1UploadConversationRequest include Google::Apis::Core::Hashable # The conversation resource. # Corresponds to the JSON property `conversation` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Conversation] attr_accessor :conversation # Optional. A unique ID for the new conversation. This ID will become the final # component of the conversation's resource name. If no ID is specified, a server- # generated ID will be used. This value should be 4-64 characters and must match # the regular expression `^[a-z0-9-]`4,64`$`. Valid characters are `a-z-` # Corresponds to the JSON property `conversationId` # @return [String] attr_accessor :conversation_id # Required. The parent resource of the conversation. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `redactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1RedactionConfig] attr_accessor :redaction_config # Speech-to-Text configuration. # Corresponds to the JSON property `speechConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1SpeechConfig] attr_accessor :speech_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation = args[:conversation] if args.key?(:conversation) @conversation_id = args[:conversation_id] if args.key?(:conversation_id) @parent = args[:parent] if args.key?(:parent) @redaction_config = args[:redaction_config] if args.key?(:redaction_config) @speech_config = args[:speech_config] if args.key?(:speech_config) end end # The View resource. class GoogleCloudContactcenterinsightsV1View include Google::Apis::Core::Hashable # Output only. The time at which this view was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The human-readable display name of the view. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Immutable. The resource name of the view. Format: projects/`project`/locations/ # `location`/views/`view` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. The most recent time at which the view was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time # String with specific view properties, must be non-empty. # Corresponds to the JSON property `value` # @return [String] attr_accessor :value def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @display_name = args[:display_name] if args.key?(:display_name) @name = args[:name] if args.key?(:name) @update_time = args[:update_time] if args.key?(:update_time) @value = args[:value] if args.key?(:value) end end # Agent Coaching instructions that customer can configure. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingInstruction include Google::Apis::Core::Hashable # Optional. The action that human agent should take. For example, "apologize for # the slow shipping". If the users only want to use agent coaching for intent # detection, agent_action can be empty # Corresponds to the JSON property `agentAction` # @return [String] attr_accessor :agent_action # Optional. The condition of the instruction. For example, "the customer wants # to cancel an order". If the users want the instruction to be triggered # unconditionally, the condition can be empty. # Corresponds to the JSON property `condition` # @return [String] attr_accessor :condition # Optional. The detailed description of this instruction. # Corresponds to the JSON property `description` # @return [String] attr_accessor :description # Optional. Display name for the instruction. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Optional. Additional information attached to this instruction. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # Optional. The action that system should take. For example, "call GetOrderTime # with order_number=`order number provided by the customer`". If the users don't # have plugins or don't want to trigger plugins, the system_action can be empty # Corresponds to the JSON property `systemAction` # @return [String] attr_accessor :system_action def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action = args[:agent_action] if args.key?(:agent_action) @condition = args[:condition] if args.key?(:condition) @description = args[:description] if args.key?(:description) @display_name = args[:display_name] if args.key?(:display_name) @metadata = args[:metadata] if args.key?(:metadata) @system_action = args[:system_action] if args.key?(:system_action) end end # Suggestion for coaching agents. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestion include Google::Apis::Core::Hashable # Optional. Suggested actions for the agent to take. # Corresponds to the JSON property `agentActionSuggestions` # @return [Array] attr_accessor :agent_action_suggestions # Optional. Instructions applicable based on the current context. # Corresponds to the JSON property `applicableInstructions` # @return [Array] attr_accessor :applicable_instructions # Optional. Sample response for the Agent. # Corresponds to the JSON property `sampleResponses` # @return [Array] attr_accessor :sample_responses # Self evaluations of the suggestion. # Corresponds to the JSON property `suggestionEval` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionAgentCoachingSuggestionEval] attr_accessor :suggestion_eval # Reasoning for the suggestion. # Corresponds to the JSON property `suggestionReasoning` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionAgentCoachingSuggestionReasoning] attr_accessor :suggestion_reasoning def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action_suggestions = args[:agent_action_suggestions] if args.key?(:agent_action_suggestions) @applicable_instructions = args[:applicable_instructions] if args.key?(:applicable_instructions) @sample_responses = args[:sample_responses] if args.key?(:sample_responses) @suggestion_eval = args[:suggestion_eval] if args.key?(:suggestion_eval) @suggestion_reasoning = args[:suggestion_reasoning] if args.key?(:suggestion_reasoning) end end # Actions suggested for the agent. This is based on applicable instructions. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionAgentActionSuggestion include Google::Apis::Core::Hashable # Optional. The suggested action for the agent. # Corresponds to the JSON property `agentAction` # @return [String] attr_accessor :agent_action def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action = args[:agent_action] if args.key?(:agent_action) end end # Self evaluations of the suggestion. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionAgentCoachingSuggestionEval include Google::Apis::Core::Hashable # Optional. Eval for Agent action suggestion. # Corresponds to the JSON property `actionActionSuggestionEval` # @return [String] attr_accessor :action_action_suggestion_eval # Optional. Eval for sample response. # Corresponds to the JSON property `sampleResponseEval` # @return [String] attr_accessor :sample_response_eval def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @action_action_suggestion_eval = args[:action_action_suggestion_eval] if args.key?(:action_action_suggestion_eval) @sample_response_eval = args[:sample_response_eval] if args.key?(:sample_response_eval) end end # Reasoning for the suggestion. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionAgentCoachingSuggestionReasoning include Google::Apis::Core::Hashable # Optional. The actions that the agent has taken already. # Corresponds to the JSON property `agentActionTaken` # @return [String] attr_accessor :agent_action_taken # Optional. Summary of the issue. # Corresponds to the JSON property `issueSummary` # @return [String] attr_accessor :issue_summary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_action_taken = args[:agent_action_taken] if args.key?(:agent_action_taken) @issue_summary = args[:issue_summary] if args.key?(:issue_summary) end end # Sample response that the agent can use. This could be based on applicable # instructions and ingested data from other systems. class GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestionSampleResponse include Google::Apis::Core::Hashable # Optional. Sample response for Agent in text. # Corresponds to the JSON property `responseText` # @return [String] attr_accessor :response_text def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @response_text = args[:response_text] if args.key?(:response_text) end end # The analysis resource. class GoogleCloudContactcenterinsightsV1alpha1Analysis include Google::Apis::Core::Hashable # The result of an analysis. # Corresponds to the JSON property `analysisResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnalysisResult] attr_accessor :analysis_result # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector] attr_accessor :annotator_selector # Output only. The time at which the analysis was created, which occurs when the # long-running operation completes. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Immutable. The resource name of the analysis. Format: projects/`project`/ # locations/`location`/conversations/`conversation`/analyses/`analysis` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. The time at which the analysis was requested. # Corresponds to the JSON property `requestTime` # @return [String] attr_accessor :request_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_result = args[:analysis_result] if args.key?(:analysis_result) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @create_time = args[:create_time] if args.key?(:create_time) @name = args[:name] if args.key?(:name) @request_time = args[:request_time] if args.key?(:request_time) end end # The result of an analysis. class GoogleCloudContactcenterinsightsV1alpha1AnalysisResult include Google::Apis::Core::Hashable # Call-specific metadata created during analysis. # Corresponds to the JSON property `callAnalysisMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnalysisResultCallAnalysisMetadata] attr_accessor :call_analysis_metadata # The time at which the analysis ended. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @call_analysis_metadata = args[:call_analysis_metadata] if args.key?(:call_analysis_metadata) @end_time = args[:end_time] if args.key?(:end_time) end end # Call-specific metadata created during analysis. class GoogleCloudContactcenterinsightsV1alpha1AnalysisResultCallAnalysisMetadata include Google::Apis::Core::Hashable # A list of call annotations that apply to this call. # Corresponds to the JSON property `annotations` # @return [Array] attr_accessor :annotations # All the entities in the call. # Corresponds to the JSON property `entities` # @return [Hash] attr_accessor :entities # All the matched intents in the call. # Corresponds to the JSON property `intents` # @return [Hash] attr_accessor :intents # Issue Modeling result on a conversation. # Corresponds to the JSON property `issueModelResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueModelResult] attr_accessor :issue_model_result # All the matched phrase matchers in the call. # Corresponds to the JSON property `phraseMatchers` # @return [Hash] attr_accessor :phrase_matchers # Overall conversation-level sentiment for each channel of the call. # Corresponds to the JSON property `sentiments` # @return [Array] attr_accessor :sentiments # Conversation-level silence data. # Corresponds to the JSON property `silence` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationLevelSilence] attr_accessor :silence def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotations = args[:annotations] if args.key?(:annotations) @entities = args[:entities] if args.key?(:entities) @intents = args[:intents] if args.key?(:intents) @issue_model_result = args[:issue_model_result] if args.key?(:issue_model_result) @phrase_matchers = args[:phrase_matchers] if args.key?(:phrase_matchers) @sentiments = args[:sentiments] if args.key?(:sentiments) @silence = args[:silence] if args.key?(:silence) end end # A point in a conversation that marks the start or the end of an annotation. class GoogleCloudContactcenterinsightsV1alpha1AnnotationBoundary include Google::Apis::Core::Hashable # The index in the sequence of transcribed pieces of the conversation where the # boundary is located. This index starts at zero. # Corresponds to the JSON property `transcriptIndex` # @return [Fixnum] attr_accessor :transcript_index # The word index of this boundary with respect to the first word in the # transcript piece. This index starts at zero. # Corresponds to the JSON property `wordIndex` # @return [Fixnum] attr_accessor :word_index def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @transcript_index = args[:transcript_index] if args.key?(:transcript_index) @word_index = args[:word_index] if args.key?(:word_index) end end # Selector of all available annotators and phrase matchers to run. class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector include Google::Apis::Core::Hashable # The issue model to run. If not provided, the most recently deployed topic # model will be used. The provided issue model will only be used for inference # if the issue model is deployed and if run_issue_model_annotator is set to true. # If more than one issue model is provided, only the first provided issue model # will be used for inference. # Corresponds to the JSON property `issueModels` # @return [Array] attr_accessor :issue_models # The list of phrase matchers to run. If not provided, all active phrase # matchers will be used. If inactive phrase matchers are provided, they will not # be used. Phrase matchers will be run only if run_phrase_matcher_annotator is # set to true. Format: projects/`project`/locations/`location`/phraseMatchers/` # phrase_matcher` # Corresponds to the JSON property `phraseMatchers` # @return [Array] attr_accessor :phrase_matchers # Whether to run the entity annotator. # Corresponds to the JSON property `runEntityAnnotator` # @return [Boolean] attr_accessor :run_entity_annotator alias_method :run_entity_annotator?, :run_entity_annotator # Whether to run the intent annotator. # Corresponds to the JSON property `runIntentAnnotator` # @return [Boolean] attr_accessor :run_intent_annotator alias_method :run_intent_annotator?, :run_intent_annotator # Whether to run the interruption annotator. # Corresponds to the JSON property `runInterruptionAnnotator` # @return [Boolean] attr_accessor :run_interruption_annotator alias_method :run_interruption_annotator?, :run_interruption_annotator # Whether to run the issue model annotator. A model should have already been # deployed for this to take effect. # Corresponds to the JSON property `runIssueModelAnnotator` # @return [Boolean] attr_accessor :run_issue_model_annotator alias_method :run_issue_model_annotator?, :run_issue_model_annotator # Whether to run the active phrase matcher annotator(s). # Corresponds to the JSON property `runPhraseMatcherAnnotator` # @return [Boolean] attr_accessor :run_phrase_matcher_annotator alias_method :run_phrase_matcher_annotator?, :run_phrase_matcher_annotator # Whether to run the sentiment annotator. # Corresponds to the JSON property `runSentimentAnnotator` # @return [Boolean] attr_accessor :run_sentiment_annotator alias_method :run_sentiment_annotator?, :run_sentiment_annotator # Whether to run the silence annotator. # Corresponds to the JSON property `runSilenceAnnotator` # @return [Boolean] attr_accessor :run_silence_annotator alias_method :run_silence_annotator?, :run_silence_annotator # Whether to run the summarization annotator. # Corresponds to the JSON property `runSummarizationAnnotator` # @return [Boolean] attr_accessor :run_summarization_annotator alias_method :run_summarization_annotator?, :run_summarization_annotator # Configuration for summarization. # Corresponds to the JSON property `summarizationConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorSummarizationConfig] attr_accessor :summarization_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_models = args[:issue_models] if args.key?(:issue_models) @phrase_matchers = args[:phrase_matchers] if args.key?(:phrase_matchers) @run_entity_annotator = args[:run_entity_annotator] if args.key?(:run_entity_annotator) @run_intent_annotator = args[:run_intent_annotator] if args.key?(:run_intent_annotator) @run_interruption_annotator = args[:run_interruption_annotator] if args.key?(:run_interruption_annotator) @run_issue_model_annotator = args[:run_issue_model_annotator] if args.key?(:run_issue_model_annotator) @run_phrase_matcher_annotator = args[:run_phrase_matcher_annotator] if args.key?(:run_phrase_matcher_annotator) @run_sentiment_annotator = args[:run_sentiment_annotator] if args.key?(:run_sentiment_annotator) @run_silence_annotator = args[:run_silence_annotator] if args.key?(:run_silence_annotator) @run_summarization_annotator = args[:run_summarization_annotator] if args.key?(:run_summarization_annotator) @summarization_config = args[:summarization_config] if args.key?(:summarization_config) end end # Configuration for summarization. class GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelectorSummarizationConfig include Google::Apis::Core::Hashable # Resource name of the Dialogflow conversation profile. Format: projects/` # project`/locations/`location`/conversationProfiles/`conversation_profile` # Corresponds to the JSON property `conversationProfile` # @return [String] attr_accessor :conversation_profile # Default summarization model to be used. # Corresponds to the JSON property `summarizationModel` # @return [String] attr_accessor :summarization_model def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation_profile = args[:conversation_profile] if args.key?(:conversation_profile) @summarization_model = args[:summarization_model] if args.key?(:summarization_model) end end # The feedback that the customer has about a certain answer in the conversation. class GoogleCloudContactcenterinsightsV1alpha1AnswerFeedback include Google::Apis::Core::Hashable # Indicates whether an answer or item was clicked by the human agent. # Corresponds to the JSON property `clicked` # @return [Boolean] attr_accessor :clicked alias_method :clicked?, :clicked # The correctness level of an answer. # Corresponds to the JSON property `correctnessLevel` # @return [String] attr_accessor :correctness_level # Indicates whether an answer or item was displayed to the human agent in the # agent desktop UI. # Corresponds to the JSON property `displayed` # @return [Boolean] attr_accessor :displayed alias_method :displayed?, :displayed def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @clicked = args[:clicked] if args.key?(:clicked) @correctness_level = args[:correctness_level] if args.key?(:correctness_level) @displayed = args[:displayed] if args.key?(:displayed) end end # Agent Assist Article Suggestion data. class GoogleCloudContactcenterinsightsV1alpha1ArticleSuggestionData include Google::Apis::Core::Hashable # The system's confidence score that this article is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Article Suggestion and the document that # it originates from. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The knowledge document that this answer was extracted from. Format: projects/` # project`/knowledgeBases/`knowledge_base`/documents/`document` # Corresponds to the JSON property `source` # @return [String] attr_accessor :source # Article title. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # Article URI. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @source = args[:source] if args.key?(:source) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # The metadata for a bulk analyze conversations operation. class GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsMetadata include Google::Apis::Core::Hashable # The number of requested analyses that have completed successfully so far. # Corresponds to the JSON property `completedAnalysesCount` # @return [Fixnum] attr_accessor :completed_analyses_count # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The number of requested analyses that have failed so far. # Corresponds to the JSON property `failedAnalysesCount` # @return [Fixnum] attr_accessor :failed_analyses_count # Output only. Partial errors during bulk analyze operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to analyze conversations in bulk. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest] attr_accessor :request # Total number of analyses requested. Computed by the number of conversations # returned by `filter` multiplied by `analysis_percentage` in the request. # Corresponds to the JSON property `totalRequestedAnalysesCount` # @return [Fixnum] attr_accessor :total_requested_analyses_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @completed_analyses_count = args[:completed_analyses_count] if args.key?(:completed_analyses_count) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @failed_analyses_count = args[:failed_analyses_count] if args.key?(:failed_analyses_count) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) @total_requested_analyses_count = args[:total_requested_analyses_count] if args.key?(:total_requested_analyses_count) end end # The request to analyze conversations in bulk. class GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsRequest include Google::Apis::Core::Hashable # Required. Percentage of selected conversation to analyze, between [0, 100]. # Corresponds to the JSON property `analysisPercentage` # @return [Float] attr_accessor :analysis_percentage # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector] attr_accessor :annotator_selector # Required. Filter used to select the subset of conversations to analyze. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # Required. The parent resource to create analyses in. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_percentage = args[:analysis_percentage] if args.key?(:analysis_percentage) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @filter = args[:filter] if args.key?(:filter) @parent = args[:parent] if args.key?(:parent) end end # The response for a bulk analyze conversations operation. class GoogleCloudContactcenterinsightsV1alpha1BulkAnalyzeConversationsResponse include Google::Apis::Core::Hashable # Count of failed analyses. # Corresponds to the JSON property `failedAnalysisCount` # @return [Fixnum] attr_accessor :failed_analysis_count # Count of successful analyses. # Corresponds to the JSON property `successfulAnalysisCount` # @return [Fixnum] attr_accessor :successful_analysis_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @failed_analysis_count = args[:failed_analysis_count] if args.key?(:failed_analysis_count) @successful_analysis_count = args[:successful_analysis_count] if args.key?(:successful_analysis_count) end end # The metadata for a bulk delete conversations operation. class GoogleCloudContactcenterinsightsV1alpha1BulkDeleteConversationsMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Partial errors during bulk delete conversations operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to delete conversations in bulk. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1BulkDeleteConversationsRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # The request to delete conversations in bulk. class GoogleCloudContactcenterinsightsV1alpha1BulkDeleteConversationsRequest include Google::Apis::Core::Hashable # Filter used to select the subset of conversations to delete. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # If set to true, all of this conversation's analyses will also be deleted. # Otherwise, the request will only succeed if the conversation has no analyses. # Corresponds to the JSON property `force` # @return [Boolean] attr_accessor :force alias_method :force?, :force # Maximum number of conversations to delete. # Corresponds to the JSON property `maxDeleteCount` # @return [Fixnum] attr_accessor :max_delete_count # Required. The parent resource to delete conversations from. Format: projects/` # project`/locations/`location` # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @filter = args[:filter] if args.key?(:filter) @force = args[:force] if args.key?(:force) @max_delete_count = args[:max_delete_count] if args.key?(:max_delete_count) @parent = args[:parent] if args.key?(:parent) end end # The response for a bulk delete conversations operation. class GoogleCloudContactcenterinsightsV1alpha1BulkDeleteConversationsResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # A piece of metadata that applies to a window of a call. class GoogleCloudContactcenterinsightsV1alpha1CallAnnotation include Google::Apis::Core::Hashable # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `annotationEndBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotationBoundary] attr_accessor :annotation_end_boundary # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `annotationStartBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotationBoundary] attr_accessor :annotation_start_boundary # The channel of the audio where the annotation occurs. For single-channel audio, # this field is not populated. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # The data for an entity mention annotation. This represents a mention of an ` # Entity` in the conversation. # Corresponds to the JSON property `entityMentionData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1EntityMentionData] attr_accessor :entity_mention_data # The data for a hold annotation. # Corresponds to the JSON property `holdData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1HoldData] attr_accessor :hold_data # The data for an intent match. Represents an intent match for a text segment in # the conversation. A text segment can be part of a sentence, a complete # sentence, or an utterance with multiple sentences. # Corresponds to the JSON property `intentMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IntentMatchData] attr_accessor :intent_match_data # The data for an interruption annotation. # Corresponds to the JSON property `interruptionData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1InterruptionData] attr_accessor :interruption_data # The data for an issue match annotation. # Corresponds to the JSON property `issueMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueMatchData] attr_accessor :issue_match_data # The data for a matched phrase matcher. Represents information identifying a # phrase matcher for a given match. # Corresponds to the JSON property `phraseMatchData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData] attr_accessor :phrase_match_data # The data for a sentiment annotation. # Corresponds to the JSON property `sentimentData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SentimentData] attr_accessor :sentiment_data # The data for a silence annotation. # Corresponds to the JSON property `silenceData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SilenceData] attr_accessor :silence_data def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotation_end_boundary = args[:annotation_end_boundary] if args.key?(:annotation_end_boundary) @annotation_start_boundary = args[:annotation_start_boundary] if args.key?(:annotation_start_boundary) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @entity_mention_data = args[:entity_mention_data] if args.key?(:entity_mention_data) @hold_data = args[:hold_data] if args.key?(:hold_data) @intent_match_data = args[:intent_match_data] if args.key?(:intent_match_data) @interruption_data = args[:interruption_data] if args.key?(:interruption_data) @issue_match_data = args[:issue_match_data] if args.key?(:issue_match_data) @phrase_match_data = args[:phrase_match_data] if args.key?(:phrase_match_data) @sentiment_data = args[:sentiment_data] if args.key?(:sentiment_data) @silence_data = args[:silence_data] if args.key?(:silence_data) end end # The conversation resource. class GoogleCloudContactcenterinsightsV1alpha1Conversation include Google::Apis::Core::Hashable # An opaque, user-specified string representing the human agent who handled the # conversation. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # Call-specific metadata. # Corresponds to the JSON property `callMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationCallMetadata] attr_accessor :call_metadata # Output only. The time at which the conversation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The conversation source, which is a combination of transcript and audio. # Corresponds to the JSON property `dataSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationDataSource] attr_accessor :data_source # Output only. All the matched Dialogflow intents in the call. The key # corresponds to a Dialogflow intent, format: projects/`project`/agent/`agent`/ # intents/`intent` # Corresponds to the JSON property `dialogflowIntents` # @return [Hash] attr_accessor :dialogflow_intents # Output only. The duration of the conversation. # Corresponds to the JSON property `duration` # @return [String] attr_accessor :duration # The time at which this conversation should expire. After this time, the # conversation data and any associated analyses will be deleted. # Corresponds to the JSON property `expireTime` # @return [String] attr_accessor :expire_time # A map for the user to specify any custom fields. A maximum of 20 labels per # conversation is allowed, with a maximum of 256 characters per entry. # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels # A user-specified language code for the conversation. # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # The analysis resource. # Corresponds to the JSON property `latestAnalysis` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1Analysis] attr_accessor :latest_analysis # Conversation summarization suggestion data. # Corresponds to the JSON property `latestSummary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationSummarizationSuggestionData] attr_accessor :latest_summary # Immutable. The conversation medium, if unspecified will default to PHONE_CALL. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium # Immutable. The resource name of the conversation. Format: projects/`project`/ # locations/`location`/conversations/`conversation` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Obfuscated user ID which the customer sent to us. # Corresponds to the JSON property `obfuscatedUserId` # @return [String] attr_accessor :obfuscated_user_id # Conversation metadata related to quality management. # Corresponds to the JSON property `qualityMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationQualityMetadata] attr_accessor :quality_metadata # Output only. The annotations that were generated during the customer and agent # interaction. # Corresponds to the JSON property `runtimeAnnotations` # @return [Array] attr_accessor :runtime_annotations # The time at which the conversation started. # Corresponds to the JSON property `startTime` # @return [String] attr_accessor :start_time # A message representing the transcript of a conversation. # Corresponds to the JSON property `transcript` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationTranscript] attr_accessor :transcript # Input only. The TTL for this resource. If specified, then this TTL will be # used to calculate the expire time. # Corresponds to the JSON property `ttl` # @return [String] attr_accessor :ttl # Output only. The number of turns in the conversation. # Corresponds to the JSON property `turnCount` # @return [Fixnum] attr_accessor :turn_count # Output only. The most recent time at which the conversation was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_id = args[:agent_id] if args.key?(:agent_id) @call_metadata = args[:call_metadata] if args.key?(:call_metadata) @create_time = args[:create_time] if args.key?(:create_time) @data_source = args[:data_source] if args.key?(:data_source) @dialogflow_intents = args[:dialogflow_intents] if args.key?(:dialogflow_intents) @duration = args[:duration] if args.key?(:duration) @expire_time = args[:expire_time] if args.key?(:expire_time) @labels = args[:labels] if args.key?(:labels) @language_code = args[:language_code] if args.key?(:language_code) @latest_analysis = args[:latest_analysis] if args.key?(:latest_analysis) @latest_summary = args[:latest_summary] if args.key?(:latest_summary) @medium = args[:medium] if args.key?(:medium) @name = args[:name] if args.key?(:name) @obfuscated_user_id = args[:obfuscated_user_id] if args.key?(:obfuscated_user_id) @quality_metadata = args[:quality_metadata] if args.key?(:quality_metadata) @runtime_annotations = args[:runtime_annotations] if args.key?(:runtime_annotations) @start_time = args[:start_time] if args.key?(:start_time) @transcript = args[:transcript] if args.key?(:transcript) @ttl = args[:ttl] if args.key?(:ttl) @turn_count = args[:turn_count] if args.key?(:turn_count) @update_time = args[:update_time] if args.key?(:update_time) end end # Call-specific metadata. class GoogleCloudContactcenterinsightsV1alpha1ConversationCallMetadata include Google::Apis::Core::Hashable # The audio channel that contains the agent. # Corresponds to the JSON property `agentChannel` # @return [Fixnum] attr_accessor :agent_channel # The audio channel that contains the customer. # Corresponds to the JSON property `customerChannel` # @return [Fixnum] attr_accessor :customer_channel def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_channel = args[:agent_channel] if args.key?(:agent_channel) @customer_channel = args[:customer_channel] if args.key?(:customer_channel) end end # The conversation source, which is a combination of transcript and audio. class GoogleCloudContactcenterinsightsV1alpha1ConversationDataSource include Google::Apis::Core::Hashable # A Dialogflow source of conversation data. # Corresponds to the JSON property `dialogflowSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1DialogflowSource] attr_accessor :dialogflow_source # A Cloud Storage source of conversation data. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GcsSource] attr_accessor :gcs_source def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dialogflow_source = args[:dialogflow_source] if args.key?(:dialogflow_source) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) end end # One channel of conversation-level sentiment data. class GoogleCloudContactcenterinsightsV1alpha1ConversationLevelSentiment include Google::Apis::Core::Hashable # The channel of the audio that the data applies to. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # The data for a sentiment annotation. # Corresponds to the JSON property `sentimentData` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SentimentData] attr_accessor :sentiment_data def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @sentiment_data = args[:sentiment_data] if args.key?(:sentiment_data) end end # Conversation-level silence data. class GoogleCloudContactcenterinsightsV1alpha1ConversationLevelSilence include Google::Apis::Core::Hashable # Amount of time calculated to be in silence. # Corresponds to the JSON property `silenceDuration` # @return [String] attr_accessor :silence_duration # Percentage of the total conversation spent in silence. # Corresponds to the JSON property `silencePercentage` # @return [Float] attr_accessor :silence_percentage def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @silence_duration = args[:silence_duration] if args.key?(:silence_duration) @silence_percentage = args[:silence_percentage] if args.key?(:silence_percentage) end end # The call participant speaking for a given utterance. class GoogleCloudContactcenterinsightsV1alpha1ConversationParticipant include Google::Apis::Core::Hashable # Deprecated. Use `dialogflow_participant_name` instead. The name of the # Dialogflow participant. Format: projects/`project`/locations/`location`/ # conversations/`conversation`/participants/`participant` # Corresponds to the JSON property `dialogflowParticipant` # @return [String] attr_accessor :dialogflow_participant # The name of the participant provided by Dialogflow. Format: projects/`project`/ # locations/`location`/conversations/`conversation`/participants/`participant` # Corresponds to the JSON property `dialogflowParticipantName` # @return [String] attr_accessor :dialogflow_participant_name # Obfuscated user ID from Dialogflow. # Corresponds to the JSON property `obfuscatedExternalUserId` # @return [String] attr_accessor :obfuscated_external_user_id # The role of the participant. # Corresponds to the JSON property `role` # @return [String] attr_accessor :role # A user-specified ID representing the participant. # Corresponds to the JSON property `userId` # @return [String] attr_accessor :user_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dialogflow_participant = args[:dialogflow_participant] if args.key?(:dialogflow_participant) @dialogflow_participant_name = args[:dialogflow_participant_name] if args.key?(:dialogflow_participant_name) @obfuscated_external_user_id = args[:obfuscated_external_user_id] if args.key?(:obfuscated_external_user_id) @role = args[:role] if args.key?(:role) @user_id = args[:user_id] if args.key?(:user_id) end end # Conversation metadata related to quality management. class GoogleCloudContactcenterinsightsV1alpha1ConversationQualityMetadata include Google::Apis::Core::Hashable # Information about agents involved in the call. # Corresponds to the JSON property `agentInfo` # @return [Array] attr_accessor :agent_info # An arbitrary integer value indicating the customer's satisfaction rating. # Corresponds to the JSON property `customerSatisfactionRating` # @return [Fixnum] attr_accessor :customer_satisfaction_rating # An arbitrary string value specifying the menu path the customer took. # Corresponds to the JSON property `menuPath` # @return [String] attr_accessor :menu_path # The amount of time the customer waited to connect with an agent. # Corresponds to the JSON property `waitDuration` # @return [String] attr_accessor :wait_duration def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_info = args[:agent_info] if args.key?(:agent_info) @customer_satisfaction_rating = args[:customer_satisfaction_rating] if args.key?(:customer_satisfaction_rating) @menu_path = args[:menu_path] if args.key?(:menu_path) @wait_duration = args[:wait_duration] if args.key?(:wait_duration) end end # Information about an agent involved in the conversation. class GoogleCloudContactcenterinsightsV1alpha1ConversationQualityMetadataAgentInfo include Google::Apis::Core::Hashable # A user-specified string representing the agent. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # The agent's name. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # A user-provided string indicating the outcome of the agent's segment of the # call. # Corresponds to the JSON property `dispositionCode` # @return [String] attr_accessor :disposition_code # A user-specified string representing the agent's team. # Corresponds to the JSON property `team` # @return [String] attr_accessor :team def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_id = args[:agent_id] if args.key?(:agent_id) @display_name = args[:display_name] if args.key?(:display_name) @disposition_code = args[:disposition_code] if args.key?(:disposition_code) @team = args[:team] if args.key?(:team) end end # Conversation summarization suggestion data. class GoogleCloudContactcenterinsightsV1alpha1ConversationSummarizationSuggestionData include Google::Apis::Core::Hashable # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `answerRecord` # @return [String] attr_accessor :answer_record # The confidence score of the summarization. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # The name of the model that generates this summary. Format: projects/`project`/ # locations/`location`/conversationModels/`conversation_model` # Corresponds to the JSON property `conversationModel` # @return [String] attr_accessor :conversation_model # A map that contains metadata about the summarization and the document from # which it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The summarization content that is concatenated into one string. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # The summarization content that is divided into sections. The key is the # section's name and the value is the section's content. There is no specific # format for the key or value. # Corresponds to the JSON property `textSections` # @return [Hash] attr_accessor :text_sections def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer_record = args[:answer_record] if args.key?(:answer_record) @confidence = args[:confidence] if args.key?(:confidence) @conversation_model = args[:conversation_model] if args.key?(:conversation_model) @metadata = args[:metadata] if args.key?(:metadata) @text = args[:text] if args.key?(:text) @text_sections = args[:text_sections] if args.key?(:text_sections) end end # A message representing the transcript of a conversation. class GoogleCloudContactcenterinsightsV1alpha1ConversationTranscript include Google::Apis::Core::Hashable # A list of sequential transcript segments that comprise the conversation. # Corresponds to the JSON property `transcriptSegments` # @return [Array] attr_accessor :transcript_segments def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @transcript_segments = args[:transcript_segments] if args.key?(:transcript_segments) end end # A segment of a full transcript. class GoogleCloudContactcenterinsightsV1alpha1ConversationTranscriptTranscriptSegment include Google::Apis::Core::Hashable # For conversations derived from multi-channel audio, this is the channel number # corresponding to the audio from that channel. For audioChannelCount = N, its # output values can range from '1' to 'N'. A channel tag of 0 indicates that the # audio is mono. # Corresponds to the JSON property `channelTag` # @return [Fixnum] attr_accessor :channel_tag # A confidence estimate between 0.0 and 1.0 of the fidelity of this segment. A # default value of 0.0 indicates that the value is unset. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # Metadata from Dialogflow relating to the current transcript segment. # Corresponds to the JSON property `dialogflowSegmentMetadata` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata] attr_accessor :dialogflow_segment_metadata # The language code of this segment as a [BCP-47](https://www.rfc-editor.org/rfc/ # bcp/bcp47.txt) language tag. Example: "en-US". # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # The time that the message occurred, if provided. # Corresponds to the JSON property `messageTime` # @return [String] attr_accessor :message_time # The call participant speaking for a given utterance. # Corresponds to the JSON property `segmentParticipant` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationParticipant] attr_accessor :segment_participant # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SentimentData] attr_accessor :sentiment # The text of this segment. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # A list of the word-specific information for each word in the segment. # Corresponds to the JSON property `words` # @return [Array] attr_accessor :words def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @channel_tag = args[:channel_tag] if args.key?(:channel_tag) @confidence = args[:confidence] if args.key?(:confidence) @dialogflow_segment_metadata = args[:dialogflow_segment_metadata] if args.key?(:dialogflow_segment_metadata) @language_code = args[:language_code] if args.key?(:language_code) @message_time = args[:message_time] if args.key?(:message_time) @segment_participant = args[:segment_participant] if args.key?(:segment_participant) @sentiment = args[:sentiment] if args.key?(:sentiment) @text = args[:text] if args.key?(:text) @words = args[:words] if args.key?(:words) end end # Metadata from Dialogflow relating to the current transcript segment. class GoogleCloudContactcenterinsightsV1alpha1ConversationTranscriptTranscriptSegmentDialogflowSegmentMetadata include Google::Apis::Core::Hashable # Whether the transcript segment was covered under the configured smart reply # allowlist in Agent Assist. # Corresponds to the JSON property `smartReplyAllowlistCovered` # @return [Boolean] attr_accessor :smart_reply_allowlist_covered alias_method :smart_reply_allowlist_covered?, :smart_reply_allowlist_covered def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @smart_reply_allowlist_covered = args[:smart_reply_allowlist_covered] if args.key?(:smart_reply_allowlist_covered) end end # Word-level info for words in a transcript. class GoogleCloudContactcenterinsightsV1alpha1ConversationTranscriptTranscriptSegmentWordInfo include Google::Apis::Core::Hashable # A confidence estimate between 0.0 and 1.0 of the fidelity of this word. A # default value of 0.0 indicates that the value is unset. # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # Time offset of the end of this word relative to the beginning of the total # conversation. # Corresponds to the JSON property `endOffset` # @return [String] attr_accessor :end_offset # Time offset of the start of this word relative to the beginning of the total # conversation. # Corresponds to the JSON property `startOffset` # @return [String] attr_accessor :start_offset # The word itself. Includes punctuation marks that surround the word. # Corresponds to the JSON property `word` # @return [String] attr_accessor :word def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence = args[:confidence] if args.key?(:confidence) @end_offset = args[:end_offset] if args.key?(:end_offset) @start_offset = args[:start_offset] if args.key?(:start_offset) @word = args[:word] if args.key?(:word) end end # Metadata for a create analysis operation. class GoogleCloudContactcenterinsightsV1alpha1CreateAnalysisOperationMetadata include Google::Apis::Core::Hashable # Selector of all available annotators and phrase matchers to run. # Corresponds to the JSON property `annotatorSelector` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotatorSelector] attr_accessor :annotator_selector # Output only. The Conversation that this Analysis Operation belongs to. # Corresponds to the JSON property `conversation` # @return [String] attr_accessor :conversation # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotator_selector = args[:annotator_selector] if args.key?(:annotator_selector) @conversation = args[:conversation] if args.key?(:conversation) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) end end # Metadata for creating an issue model. class GoogleCloudContactcenterinsightsV1alpha1CreateIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to create an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1CreateIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to create an issue model. class GoogleCloudContactcenterinsightsV1alpha1CreateIssueModelRequest include Google::Apis::Core::Hashable # The issue model resource. # Corresponds to the JSON property `issueModel` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueModel] attr_accessor :issue_model # Required. The parent resource of the issue model. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_model = args[:issue_model] if args.key?(:issue_model) @parent = args[:parent] if args.key?(:parent) end end # Metadata for deleting an issue model. class GoogleCloudContactcenterinsightsV1alpha1DeleteIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to delete an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1DeleteIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to delete an issue model. class GoogleCloudContactcenterinsightsV1alpha1DeleteIssueModelRequest include Google::Apis::Core::Hashable # Required. The name of the issue model to delete. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # Metadata for deploying an issue model. class GoogleCloudContactcenterinsightsV1alpha1DeployIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to deploy an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1DeployIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to deploy an issue model. class GoogleCloudContactcenterinsightsV1alpha1DeployIssueModelRequest include Google::Apis::Core::Hashable # Required. The issue model to deploy. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # The response to deploy an issue model. class GoogleCloudContactcenterinsightsV1alpha1DeployIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The data for a Dialogflow intent. Represents a detected intent in the # conversation, e.g. MAKES_PROMISE. class GoogleCloudContactcenterinsightsV1alpha1DialogflowIntent include Google::Apis::Core::Hashable # The human-readable name of the intent. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) end end # Dialogflow interaction data. class GoogleCloudContactcenterinsightsV1alpha1DialogflowInteractionData include Google::Apis::Core::Hashable # The confidence of the match ranging from 0.0 (completely uncertain) to 1.0 ( # completely certain). # Corresponds to the JSON property `confidence` # @return [Float] attr_accessor :confidence # The Dialogflow intent resource path. Format: projects/`project`/agent/`agent`/ # intents/`intent` # Corresponds to the JSON property `dialogflowIntentId` # @return [String] attr_accessor :dialogflow_intent_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence = args[:confidence] if args.key?(:confidence) @dialogflow_intent_id = args[:dialogflow_intent_id] if args.key?(:dialogflow_intent_id) end end # A Dialogflow source of conversation data. class GoogleCloudContactcenterinsightsV1alpha1DialogflowSource include Google::Apis::Core::Hashable # Cloud Storage URI that points to a file that contains the conversation audio. # Corresponds to the JSON property `audioUri` # @return [String] attr_accessor :audio_uri # Output only. The name of the Dialogflow conversation that this conversation # resource is derived from. Format: projects/`project`/locations/`location`/ # conversations/`conversation` # Corresponds to the JSON property `dialogflowConversation` # @return [String] attr_accessor :dialogflow_conversation def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audio_uri = args[:audio_uri] if args.key?(:audio_uri) @dialogflow_conversation = args[:dialogflow_conversation] if args.key?(:dialogflow_conversation) end end # The data for an entity annotation. Represents a phrase in the conversation # that is a known entity, such as a person, an organization, or location. class GoogleCloudContactcenterinsightsV1alpha1Entity include Google::Apis::Core::Hashable # The representative name for the entity. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Metadata associated with the entity. For most entity types, the metadata is a # Wikipedia URL (`wikipedia_url`) and Knowledge Graph MID (`mid`), if they are # available. For the metadata associated with other entity types, see the Type # table below. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The salience score associated with the entity in the [0, 1.0] range. The # salience score for an entity provides information about the importance or # centrality of that entity to the entire document text. Scores closer to 0 are # less salient, while scores closer to 1.0 are highly salient. # Corresponds to the JSON property `salience` # @return [Float] attr_accessor :salience # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SentimentData] attr_accessor :sentiment # The entity type. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @metadata = args[:metadata] if args.key?(:metadata) @salience = args[:salience] if args.key?(:salience) @sentiment = args[:sentiment] if args.key?(:sentiment) @type = args[:type] if args.key?(:type) end end # The data for an entity mention annotation. This represents a mention of an ` # Entity` in the conversation. class GoogleCloudContactcenterinsightsV1alpha1EntityMentionData include Google::Apis::Core::Hashable # The key of this entity in conversation entities. Can be used to retrieve the # exact `Entity` this mention is attached to. # Corresponds to the JSON property `entityUniqueId` # @return [String] attr_accessor :entity_unique_id # The data for a sentiment annotation. # Corresponds to the JSON property `sentiment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SentimentData] attr_accessor :sentiment # The type of the entity mention. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @entity_unique_id = args[:entity_unique_id] if args.key?(:entity_unique_id) @sentiment = args[:sentiment] if args.key?(:sentiment) @type = args[:type] if args.key?(:type) end end # Metadata for an export insights operation. class GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Partial errors during export operation that might cause the operation output # to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to export insights. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # The request to export insights. class GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataRequest include Google::Apis::Core::Hashable # A BigQuery Table Reference. # Corresponds to the JSON property `bigQueryDestination` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataRequestBigQueryDestination] attr_accessor :big_query_destination # A filter to reduce results to a specific subset. Useful for exporting # conversations with specific properties. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # A fully qualified KMS key name for BigQuery tables protected by CMEK. Format: # projects/`project`/locations/`location`/keyRings/`keyring`/cryptoKeys/`key`/ # cryptoKeyVersions/`version` # Corresponds to the JSON property `kmsKey` # @return [String] attr_accessor :kms_key # Required. The parent resource to export data from. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # Options for what to do if the destination table already exists. # Corresponds to the JSON property `writeDisposition` # @return [String] attr_accessor :write_disposition def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @big_query_destination = args[:big_query_destination] if args.key?(:big_query_destination) @filter = args[:filter] if args.key?(:filter) @kms_key = args[:kms_key] if args.key?(:kms_key) @parent = args[:parent] if args.key?(:parent) @write_disposition = args[:write_disposition] if args.key?(:write_disposition) end end # A BigQuery Table Reference. class GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataRequestBigQueryDestination include Google::Apis::Core::Hashable # Required. The name of the BigQuery dataset that the snapshot result should be # exported to. If this dataset does not exist, the export call returns an # INVALID_ARGUMENT error. # Corresponds to the JSON property `dataset` # @return [String] attr_accessor :dataset # A project ID or number. If specified, then export will attempt to write data # to this project instead of the resource project. Otherwise, the resource # project will be used. # Corresponds to the JSON property `projectId` # @return [String] attr_accessor :project_id # The BigQuery table name to which the insights data should be written. If this # table does not exist, the export call returns an INVALID_ARGUMENT error. # Corresponds to the JSON property `table` # @return [String] attr_accessor :table def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @dataset = args[:dataset] if args.key?(:dataset) @project_id = args[:project_id] if args.key?(:project_id) @table = args[:table] if args.key?(:table) end end # Response for an export insights operation. class GoogleCloudContactcenterinsightsV1alpha1ExportInsightsDataResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Metadata used for export issue model. class GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to export an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to export an issue model. class GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelRequest include Google::Apis::Core::Hashable # Google Cloud Storage Object URI to save the issue model to. # Corresponds to the JSON property `gcsDestination` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelRequestGcsDestination] attr_accessor :gcs_destination # Required. The issue model to export # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @gcs_destination = args[:gcs_destination] if args.key?(:gcs_destination) @name = args[:name] if args.key?(:name) end end # Google Cloud Storage Object URI to save the issue model to. class GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelRequestGcsDestination include Google::Apis::Core::Hashable # Required. Format: `gs:///` # Corresponds to the JSON property `objectUri` # @return [String] attr_accessor :object_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @object_uri = args[:object_uri] if args.key?(:object_uri) end end # Response from export issue model class GoogleCloudContactcenterinsightsV1alpha1ExportIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Agent Assist frequently-asked-question answer data. class GoogleCloudContactcenterinsightsV1alpha1FaqAnswerData include Google::Apis::Core::Hashable # The piece of text from the `source` knowledge base document. # Corresponds to the JSON property `answer` # @return [String] attr_accessor :answer # The system's confidence score that this answer is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the FAQ answer and the document that it # originates from. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The corresponding FAQ question. # Corresponds to the JSON property `question` # @return [String] attr_accessor :question # The knowledge document that this answer was extracted from. Format: projects/` # project`/knowledgeBases/`knowledge_base`/documents/`document`. # Corresponds to the JSON property `source` # @return [String] attr_accessor :source def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer = args[:answer] if args.key?(:answer) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @question = args[:question] if args.key?(:question) @source = args[:source] if args.key?(:source) end end # Suggestion generated using free form generator. class GoogleCloudContactcenterinsightsV1alpha1FreeFormSuggestion include Google::Apis::Core::Hashable # Optional. Labels for the generator. # Corresponds to the JSON property `labels` # @return [Array] attr_accessor :labels # Required. Free form suggestion. # Corresponds to the JSON property `response` # @return [String] attr_accessor :response def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @labels = args[:labels] if args.key?(:labels) @response = args[:response] if args.key?(:response) end end # A Cloud Storage source of conversation data. class GoogleCloudContactcenterinsightsV1alpha1GcsSource include Google::Apis::Core::Hashable # Cloud Storage URI that points to a file that contains the conversation audio. # Corresponds to the JSON property `audioUri` # @return [String] attr_accessor :audio_uri # Immutable. Cloud Storage URI that points to a file that contains the # conversation transcript. # Corresponds to the JSON property `transcriptUri` # @return [String] attr_accessor :transcript_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @audio_uri = args[:audio_uri] if args.key?(:audio_uri) @transcript_uri = args[:transcript_uri] if args.key?(:transcript_uri) end end # Suggestion generated using a Generator. class GoogleCloudContactcenterinsightsV1alpha1GeneratorSuggestion include Google::Apis::Core::Hashable # Suggestion for coaching agents. # Corresponds to the JSON property `agentCoachingSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AgentCoachingSuggestion] attr_accessor :agent_coaching_suggestion # Suggestion generated using free form generator. # Corresponds to the JSON property `freeFormSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1FreeFormSuggestion] attr_accessor :free_form_suggestion # Suggested summary of the conversation. # Corresponds to the JSON property `summarySuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SummarySuggestion] attr_accessor :summary_suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_coaching_suggestion = args[:agent_coaching_suggestion] if args.key?(:agent_coaching_suggestion) @free_form_suggestion = args[:free_form_suggestion] if args.key?(:free_form_suggestion) @summary_suggestion = args[:summary_suggestion] if args.key?(:summary_suggestion) end end # Represents response from generators. class GoogleCloudContactcenterinsightsV1alpha1GetGeneratorSuggestionResponse include Google::Apis::Core::Hashable # Suggestion generated using a Generator. # Corresponds to the JSON property `generatorSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GeneratorSuggestion] attr_accessor :generator_suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @generator_suggestion = args[:generator_suggestion] if args.key?(:generator_suggestion) end end # Response for Knowledge Assist. Contains suggested query and optionally # includes an answer for the query. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponse include Google::Apis::Core::Hashable # Represents a suggested query. # Corresponds to the JSON property `suggestedQuery` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseSuggestedQuery] attr_accessor :suggested_query # Represents an answer from Knowledge. Cuurently supports FAQ and Generative # answers. # Corresponds to the JSON property `suggestedQueryAnswer` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswer] attr_accessor :suggested_query_answer def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @suggested_query = args[:suggested_query] if args.key?(:suggested_query) @suggested_query_answer = args[:suggested_query_answer] if args.key?(:suggested_query_answer) end end # Represents an answer from Knowledge. Cuurently supports FAQ and Generative # answers. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswer include Google::Apis::Core::Hashable # The piece of text from the `source` that answers this suggested query. # Corresponds to the JSON property `answerText` # @return [String] attr_accessor :answer_text # Details about source of FAQ answer. # Corresponds to the JSON property `faqSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerFaqSource] attr_accessor :faq_source # Details about source of Generative answer. # Corresponds to the JSON property `generativeSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSource] attr_accessor :generative_source # Details about source of Intent Matching answer. # Corresponds to the JSON property `intentMatchingSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerIntentMatchingSource] attr_accessor :intent_matching_source # The system's confidence score that this answer is a good match for this # conversational query. The range is from 0.0 (completely uncertain) to 1.0 ( # completely certain). # Corresponds to the JSON property `matchConfidence` # @return [Float] attr_accessor :match_confidence def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer_text = args[:answer_text] if args.key?(:answer_text) @faq_source = args[:faq_source] if args.key?(:faq_source) @generative_source = args[:generative_source] if args.key?(:generative_source) @intent_matching_source = args[:intent_matching_source] if args.key?(:intent_matching_source) @match_confidence = args[:match_confidence] if args.key?(:match_confidence) end end # Details about source of FAQ answer. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerFaqSource include Google::Apis::Core::Hashable # Indicates which Knowledge Document this answer was extracted from. Format: ` # projects//knowledgeBases//documents/`. # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # The corresponding FAQ question. # Corresponds to the JSON property `question` # @return [String] attr_accessor :question def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @question = args[:question] if args.key?(:question) end end # Details about source of Generative answer. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSource include Google::Apis::Core::Hashable # All snippets used for this Generative Prediction, with their source URI and # data. # Corresponds to the JSON property `snippets` # @return [Array] attr_accessor :snippets def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @snippets = args[:snippets] if args.key?(:snippets) end end # Snippet Source for a Generative Prediction. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerGenerativeSourceSnippet include Google::Apis::Core::Hashable # Indicates which Knowledge Document this snippet was extracted from. Format: ` # projects//knowledgeBases//documents/`. # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # text taken from that URI. # Corresponds to the JSON property `text` # @return [String] attr_accessor :text # Title of the document. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # URI the data is sourced from. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @text = args[:text] if args.key?(:text) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # Details about source of Intent Matching answer. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseKnowledgeAnswerIntentMatchingSource include Google::Apis::Core::Hashable # Title of the document. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # URI the data is sourced from. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # Represents a suggested query. class GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponseSuggestedQuery include Google::Apis::Core::Hashable # Suggested query text. # Corresponds to the JSON property `queryText` # @return [String] attr_accessor :query_text # Suggested query score. # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @query_text = args[:query_text] if args.key?(:query_text) @score = args[:score] if args.key?(:score) end end # The data for a hold annotation. class GoogleCloudContactcenterinsightsV1alpha1HoldData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Metadata used for import issue model. class GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelMetadata include Google::Apis::Core::Hashable # The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to import an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to import an issue model. class GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelRequest include Google::Apis::Core::Hashable # Optional. If set to true, will create a new issue model from the imported file # with randomly generated IDs for the issue model and corresponding issues. # Otherwise, replaces an existing model with the same ID as the file. # Corresponds to the JSON property `createNewModel` # @return [Boolean] attr_accessor :create_new_model alias_method :create_new_model?, :create_new_model # Google Cloud Storage Object URI to get the issue model file from. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelRequestGcsSource] attr_accessor :gcs_source # Required. The parent resource of the issue model. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_new_model = args[:create_new_model] if args.key?(:create_new_model) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) @parent = args[:parent] if args.key?(:parent) end end # Google Cloud Storage Object URI to get the issue model file from. class GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelRequestGcsSource include Google::Apis::Core::Hashable # Required. Format: `gs:///` # Corresponds to the JSON property `objectUri` # @return [String] attr_accessor :object_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @object_uri = args[:object_uri] if args.key?(:object_uri) end end # Response from import issue model class GoogleCloudContactcenterinsightsV1alpha1ImportIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The metadata for an IngestConversations operation. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Statistics for IngestConversations operation. # Corresponds to the JSON property `ingestConversationsStats` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadataIngestConversationsStats] attr_accessor :ingest_conversations_stats # Output only. Partial errors during ingest operation that might cause the # operation output to be incomplete. # Corresponds to the JSON property `partialErrors` # @return [Array] attr_accessor :partial_errors # The request to ingest conversations. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @ingest_conversations_stats = args[:ingest_conversations_stats] if args.key?(:ingest_conversations_stats) @partial_errors = args[:partial_errors] if args.key?(:partial_errors) @request = args[:request] if args.key?(:request) end end # Statistics for IngestConversations operation. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsMetadataIngestConversationsStats include Google::Apis::Core::Hashable # Output only. The number of objects skipped because another conversation with # the same transcript uri had already been ingested. # Corresponds to the JSON property `duplicatesSkippedCount` # @return [Fixnum] attr_accessor :duplicates_skipped_count # Output only. The number of objects which were unable to be ingested due to # errors. The errors are populated in the partial_errors field. # Corresponds to the JSON property `failedIngestCount` # @return [Fixnum] attr_accessor :failed_ingest_count # Output only. The number of objects processed during the ingest operation. # Corresponds to the JSON property `processedObjectCount` # @return [Fixnum] attr_accessor :processed_object_count # Output only. The number of new conversations added during this ingest # operation. # Corresponds to the JSON property `successfulIngestCount` # @return [Fixnum] attr_accessor :successful_ingest_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @duplicates_skipped_count = args[:duplicates_skipped_count] if args.key?(:duplicates_skipped_count) @failed_ingest_count = args[:failed_ingest_count] if args.key?(:failed_ingest_count) @processed_object_count = args[:processed_object_count] if args.key?(:processed_object_count) @successful_ingest_count = args[:successful_ingest_count] if args.key?(:successful_ingest_count) end end # The request to ingest conversations. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequest include Google::Apis::Core::Hashable # Configuration that applies to all conversations. # Corresponds to the JSON property `conversationConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig] attr_accessor :conversation_config # Configuration for Cloud Storage bucket sources. # Corresponds to the JSON property `gcsSource` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource] attr_accessor :gcs_source # Required. The parent resource for new conversations. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `redactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1RedactionConfig] attr_accessor :redaction_config # Speech-to-Text configuration. # Corresponds to the JSON property `speechConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SpeechConfig] attr_accessor :speech_config # Configuration for processing transcript objects. # Corresponds to the JSON property `transcriptObjectConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig] attr_accessor :transcript_object_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation_config = args[:conversation_config] if args.key?(:conversation_config) @gcs_source = args[:gcs_source] if args.key?(:gcs_source) @parent = args[:parent] if args.key?(:parent) @redaction_config = args[:redaction_config] if args.key?(:redaction_config) @speech_config = args[:speech_config] if args.key?(:speech_config) @transcript_object_config = args[:transcript_object_config] if args.key?(:transcript_object_config) end end # Configuration that applies to all conversations. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestConversationConfig include Google::Apis::Core::Hashable # Optional. Indicates which of the channels, 1 or 2, contains the agent. Note # that this must be set for conversations to be properly displayed and analyzed. # Corresponds to the JSON property `agentChannel` # @return [Fixnum] attr_accessor :agent_channel # An opaque, user-specified string representing the human agent who handled the # conversations. # Corresponds to the JSON property `agentId` # @return [String] attr_accessor :agent_id # Optional. Indicates which of the channels, 1 or 2, contains the agent. Note # that this must be set for conversations to be properly displayed and analyzed. # Corresponds to the JSON property `customerChannel` # @return [Fixnum] attr_accessor :customer_channel def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @agent_channel = args[:agent_channel] if args.key?(:agent_channel) @agent_id = args[:agent_id] if args.key?(:agent_id) @customer_channel = args[:customer_channel] if args.key?(:customer_channel) end end # Configuration for Cloud Storage bucket sources. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestGcsSource include Google::Apis::Core::Hashable # Optional. Specifies the type of the objects in `bucket_uri`. # Corresponds to the JSON property `bucketObjectType` # @return [String] attr_accessor :bucket_object_type # Required. The Cloud Storage bucket containing source objects. # Corresponds to the JSON property `bucketUri` # @return [String] attr_accessor :bucket_uri # Optional. Custom keys to extract as conversation labels from metadata files in # `metadata_bucket_uri`. Keys not included in this field will be ignored. Note # that there is a limit of 20 labels per conversation. # Corresponds to the JSON property `customMetadataKeys` # @return [Array] attr_accessor :custom_metadata_keys # Optional. The Cloud Storage path to the source object metadata. Note that: [1] # metadata files are expected to be in JSON format [2] metadata and source # objects must be in separate buckets [3] a source object's metadata object must # share the same name to be properly ingested # Corresponds to the JSON property `metadataBucketUri` # @return [String] attr_accessor :metadata_bucket_uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @bucket_object_type = args[:bucket_object_type] if args.key?(:bucket_object_type) @bucket_uri = args[:bucket_uri] if args.key?(:bucket_uri) @custom_metadata_keys = args[:custom_metadata_keys] if args.key?(:custom_metadata_keys) @metadata_bucket_uri = args[:metadata_bucket_uri] if args.key?(:metadata_bucket_uri) end end # Configuration for processing transcript objects. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsRequestTranscriptObjectConfig include Google::Apis::Core::Hashable # Required. The medium transcript objects represent. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @medium = args[:medium] if args.key?(:medium) end end # The response to an IngestConversations operation. class GoogleCloudContactcenterinsightsV1alpha1IngestConversationsResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The data for an intent. Represents a detected intent in the conversation, for # example MAKES_PROMISE. class GoogleCloudContactcenterinsightsV1alpha1Intent include Google::Apis::Core::Hashable # The human-readable name of the intent. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # The unique identifier of the intent. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @id = args[:id] if args.key?(:id) end end # The data for an intent match. Represents an intent match for a text segment in # the conversation. A text segment can be part of a sentence, a complete # sentence, or an utterance with multiple sentences. class GoogleCloudContactcenterinsightsV1alpha1IntentMatchData include Google::Apis::Core::Hashable # The id of the matched intent. Can be used to retrieve the corresponding intent # information. # Corresponds to the JSON property `intentUniqueId` # @return [String] attr_accessor :intent_unique_id def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @intent_unique_id = args[:intent_unique_id] if args.key?(:intent_unique_id) end end # The data for an interruption annotation. class GoogleCloudContactcenterinsightsV1alpha1InterruptionData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Information about the issue. class GoogleCloudContactcenterinsightsV1alpha1IssueAssignment include Google::Apis::Core::Hashable # Immutable. Display name of the assigned issue. This field is set at time of # analyis and immutable since then. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Resource name of the assigned issue. # Corresponds to the JSON property `issue` # @return [String] attr_accessor :issue # Score indicating the likelihood of the issue assignment. currently bounded on [ # 0,1]. # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @issue = args[:issue] if args.key?(:issue) @score = args[:score] if args.key?(:score) end end # The data for an issue match annotation. class GoogleCloudContactcenterinsightsV1alpha1IssueMatchData include Google::Apis::Core::Hashable # Information about the issue. # Corresponds to the JSON property `issueAssignment` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueAssignment] attr_accessor :issue_assignment def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_assignment = args[:issue_assignment] if args.key?(:issue_assignment) end end # The issue model resource. class GoogleCloudContactcenterinsightsV1alpha1IssueModel include Google::Apis::Core::Hashable # Output only. The time at which this issue model was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # The representative name for the issue model. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Configs for the input data used to create the issue model. # Corresponds to the JSON property `inputDataConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig] attr_accessor :input_data_config # Output only. Number of issues in this issue model. # Corresponds to the JSON property `issueCount` # @return [Fixnum] attr_accessor :issue_count # Language of the model. # Corresponds to the JSON property `languageCode` # @return [String] attr_accessor :language_code # Type of the model. # Corresponds to the JSON property `modelType` # @return [String] attr_accessor :model_type # Immutable. The resource name of the issue model. Format: projects/`project`/ # locations/`location`/issueModels/`issue_model` # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # Output only. State of the model. # Corresponds to the JSON property `state` # @return [String] attr_accessor :state # Aggregated statistics about an issue model. # Corresponds to the JSON property `trainingStats` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats] attr_accessor :training_stats # Output only. The most recent time at which the issue model was updated. # Corresponds to the JSON property `updateTime` # @return [String] attr_accessor :update_time def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @display_name = args[:display_name] if args.key?(:display_name) @input_data_config = args[:input_data_config] if args.key?(:input_data_config) @issue_count = args[:issue_count] if args.key?(:issue_count) @language_code = args[:language_code] if args.key?(:language_code) @model_type = args[:model_type] if args.key?(:model_type) @name = args[:name] if args.key?(:name) @state = args[:state] if args.key?(:state) @training_stats = args[:training_stats] if args.key?(:training_stats) @update_time = args[:update_time] if args.key?(:update_time) end end # Configs for the input data used to create the issue model. class GoogleCloudContactcenterinsightsV1alpha1IssueModelInputDataConfig include Google::Apis::Core::Hashable # A filter to reduce the conversations used for training the model to a specific # subset. # Corresponds to the JSON property `filter` # @return [String] attr_accessor :filter # Medium of conversations used in training data. This field is being deprecated. # To specify the medium to be used in training a new issue model, set the ` # medium` field on `filter`. # Corresponds to the JSON property `medium` # @return [String] attr_accessor :medium # Output only. Number of conversations used in training. Output only. # Corresponds to the JSON property `trainingConversationsCount` # @return [Fixnum] attr_accessor :training_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @filter = args[:filter] if args.key?(:filter) @medium = args[:medium] if args.key?(:medium) @training_conversations_count = args[:training_conversations_count] if args.key?(:training_conversations_count) end end # Aggregated statistics about an issue model. class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStats include Google::Apis::Core::Hashable # Number of conversations the issue model has analyzed at this point in time. # Corresponds to the JSON property `analyzedConversationsCount` # @return [Fixnum] attr_accessor :analyzed_conversations_count # Statistics on each issue. Key is the issue's resource name. # Corresponds to the JSON property `issueStats` # @return [Hash] attr_accessor :issue_stats # Number of analyzed conversations for which no issue was applicable at this # point in time. # Corresponds to the JSON property `unclassifiedConversationsCount` # @return [Fixnum] attr_accessor :unclassified_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analyzed_conversations_count = args[:analyzed_conversations_count] if args.key?(:analyzed_conversations_count) @issue_stats = args[:issue_stats] if args.key?(:issue_stats) @unclassified_conversations_count = args[:unclassified_conversations_count] if args.key?(:unclassified_conversations_count) end end # Aggregated statistics about an issue. class GoogleCloudContactcenterinsightsV1alpha1IssueModelLabelStatsIssueStats include Google::Apis::Core::Hashable # Display name of the issue. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # Issue resource. Format: projects/`project`/locations/`location`/issueModels/` # issue_model`/issues/`issue` # Corresponds to the JSON property `issue` # @return [String] attr_accessor :issue # Number of conversations attached to the issue at this point in time. # Corresponds to the JSON property `labeledConversationsCount` # @return [Fixnum] attr_accessor :labeled_conversations_count def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @issue = args[:issue] if args.key?(:issue) @labeled_conversations_count = args[:labeled_conversations_count] if args.key?(:labeled_conversations_count) end end # Issue Modeling result on a conversation. class GoogleCloudContactcenterinsightsV1alpha1IssueModelResult include Google::Apis::Core::Hashable # Issue model that generates the result. Format: projects/`project`/locations/` # location`/issueModels/`issue_model` # Corresponds to the JSON property `issueModel` # @return [String] attr_accessor :issue_model # All the matched issues. # Corresponds to the JSON property `issues` # @return [Array] attr_accessor :issues def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @issue_model = args[:issue_model] if args.key?(:issue_model) @issues = args[:issues] if args.key?(:issues) end end # The data for a matched phrase matcher. Represents information identifying a # phrase matcher for a given match. class GoogleCloudContactcenterinsightsV1alpha1PhraseMatchData include Google::Apis::Core::Hashable # The human-readable name of the phrase matcher. # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name # The unique identifier (the resource name) of the phrase matcher. # Corresponds to the JSON property `phraseMatcher` # @return [String] attr_accessor :phrase_matcher def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @display_name = args[:display_name] if args.key?(:display_name) @phrase_matcher = args[:phrase_matcher] if args.key?(:phrase_matcher) end end # DLP resources used for redaction while ingesting conversations. class GoogleCloudContactcenterinsightsV1alpha1RedactionConfig include Google::Apis::Core::Hashable # The fully-qualified DLP deidentify template resource name. Format: `projects/` # project`/deidentifyTemplates/`template`` # Corresponds to the JSON property `deidentifyTemplate` # @return [String] attr_accessor :deidentify_template # The fully-qualified DLP inspect template resource name. Format: `projects/` # project`/locations/`location`/inspectTemplates/`template`` # Corresponds to the JSON property `inspectTemplate` # @return [String] attr_accessor :inspect_template def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @deidentify_template = args[:deidentify_template] if args.key?(:deidentify_template) @inspect_template = args[:inspect_template] if args.key?(:inspect_template) end end # An annotation that was generated during the customer and agent interaction. class GoogleCloudContactcenterinsightsV1alpha1RuntimeAnnotation include Google::Apis::Core::Hashable # The unique identifier of the annotation. Format: projects/`project`/locations/` # location`/conversationDatasets/`dataset`/conversationDataItems/`data_item`/ # conversationAnnotations/`annotation` # Corresponds to the JSON property `annotationId` # @return [String] attr_accessor :annotation_id # The feedback that the customer has about a certain answer in the conversation. # Corresponds to the JSON property `answerFeedback` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnswerFeedback] attr_accessor :answer_feedback # Agent Assist Article Suggestion data. # Corresponds to the JSON property `articleSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ArticleSuggestionData] attr_accessor :article_suggestion # Conversation summarization suggestion data. # Corresponds to the JSON property `conversationSummarizationSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationSummarizationSuggestionData] attr_accessor :conversation_summarization_suggestion # The time at which this annotation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Dialogflow interaction data. # Corresponds to the JSON property `dialogflowInteraction` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1DialogflowInteractionData] attr_accessor :dialogflow_interaction # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `endBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotationBoundary] attr_accessor :end_boundary # Agent Assist frequently-asked-question answer data. # Corresponds to the JSON property `faqAnswer` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1FaqAnswerData] attr_accessor :faq_answer # Represents response from generators. # Corresponds to the JSON property `generatorSuggestionResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetGeneratorSuggestionResponse] attr_accessor :generator_suggestion_result # Response for Knowledge Assist. Contains suggested query and optionally # includes an answer for the query. # Corresponds to the JSON property `knowledgeAssistResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1GetKnowledgeAssistResponse] attr_accessor :knowledge_assist_result # Represents a SearchKnowledge answer. # Corresponds to the JSON property `knowledgeSearchResult` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SearchKnowledgeAnswer] attr_accessor :knowledge_search_result # Agent Assist Smart Compose suggestion data. # Corresponds to the JSON property `smartComposeSuggestion` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SmartComposeSuggestionData] attr_accessor :smart_compose_suggestion # Agent Assist Smart Reply data. # Corresponds to the JSON property `smartReply` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SmartReplyData] attr_accessor :smart_reply # A point in a conversation that marks the start or the end of an annotation. # Corresponds to the JSON property `startBoundary` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1AnnotationBoundary] attr_accessor :start_boundary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @annotation_id = args[:annotation_id] if args.key?(:annotation_id) @answer_feedback = args[:answer_feedback] if args.key?(:answer_feedback) @article_suggestion = args[:article_suggestion] if args.key?(:article_suggestion) @conversation_summarization_suggestion = args[:conversation_summarization_suggestion] if args.key?(:conversation_summarization_suggestion) @create_time = args[:create_time] if args.key?(:create_time) @dialogflow_interaction = args[:dialogflow_interaction] if args.key?(:dialogflow_interaction) @end_boundary = args[:end_boundary] if args.key?(:end_boundary) @faq_answer = args[:faq_answer] if args.key?(:faq_answer) @generator_suggestion_result = args[:generator_suggestion_result] if args.key?(:generator_suggestion_result) @knowledge_assist_result = args[:knowledge_assist_result] if args.key?(:knowledge_assist_result) @knowledge_search_result = args[:knowledge_search_result] if args.key?(:knowledge_search_result) @smart_compose_suggestion = args[:smart_compose_suggestion] if args.key?(:smart_compose_suggestion) @smart_reply = args[:smart_reply] if args.key?(:smart_reply) @start_boundary = args[:start_boundary] if args.key?(:start_boundary) end end # Represents a SearchKnowledge answer. class GoogleCloudContactcenterinsightsV1alpha1SearchKnowledgeAnswer include Google::Apis::Core::Hashable # The piece of text from the knowledge base documents that answers the search # query # Corresponds to the JSON property `answer` # @return [String] attr_accessor :answer # The name of the answer record. Format: `projects//locations//answer Records/` # Corresponds to the JSON property `answerRecord` # @return [String] attr_accessor :answer_record # All sources used to generate the answer. # Corresponds to the JSON property `answerSources` # @return [Array] attr_accessor :answer_sources # The type of the answer. # Corresponds to the JSON property `answerType` # @return [String] attr_accessor :answer_type # The confidence score in [0.0, 1.0] range. # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @answer = args[:answer] if args.key?(:answer) @answer_record = args[:answer_record] if args.key?(:answer_record) @answer_sources = args[:answer_sources] if args.key?(:answer_sources) @answer_type = args[:answer_type] if args.key?(:answer_type) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) end end # The sources of the answers. class GoogleCloudContactcenterinsightsV1alpha1SearchKnowledgeAnswerAnswerSource include Google::Apis::Core::Hashable # The document from which the snippet was extracted. Format: `projects// # knowledgeBases//documents/` # Corresponds to the JSON property `document` # @return [String] attr_accessor :document # The relevant snippet of the article. # Corresponds to the JSON property `snippet` # @return [String] attr_accessor :snippet # The title of the article. # Corresponds to the JSON property `title` # @return [String] attr_accessor :title # The URI of the article. # Corresponds to the JSON property `uri` # @return [String] attr_accessor :uri def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @document = args[:document] if args.key?(:document) @snippet = args[:snippet] if args.key?(:snippet) @title = args[:title] if args.key?(:title) @uri = args[:uri] if args.key?(:uri) end end # The data for a sentiment annotation. class GoogleCloudContactcenterinsightsV1alpha1SentimentData include Google::Apis::Core::Hashable # A non-negative number from 0 to infinity which represents the abolute # magnitude of sentiment regardless of score. # Corresponds to the JSON property `magnitude` # @return [Float] attr_accessor :magnitude # The sentiment score between -1.0 (negative) and 1.0 (positive). # Corresponds to the JSON property `score` # @return [Float] attr_accessor :score def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @magnitude = args[:magnitude] if args.key?(:magnitude) @score = args[:score] if args.key?(:score) end end # The data for a silence annotation. class GoogleCloudContactcenterinsightsV1alpha1SilenceData include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # Agent Assist Smart Compose suggestion data. class GoogleCloudContactcenterinsightsV1alpha1SmartComposeSuggestionData include Google::Apis::Core::Hashable # The system's confidence score that this suggestion is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Smart Compose suggestion and the document # from which it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The content of the suggestion. # Corresponds to the JSON property `suggestion` # @return [String] attr_accessor :suggestion def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @suggestion = args[:suggestion] if args.key?(:suggestion) end end # Agent Assist Smart Reply data. class GoogleCloudContactcenterinsightsV1alpha1SmartReplyData include Google::Apis::Core::Hashable # The system's confidence score that this reply is a good match for this # conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely # certain). # Corresponds to the JSON property `confidenceScore` # @return [Float] attr_accessor :confidence_score # Map that contains metadata about the Smart Reply and the document from which # it originates. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The name of the answer record. Format: projects/`project`/locations/`location`/ # answerRecords/`answer_record` # Corresponds to the JSON property `queryRecord` # @return [String] attr_accessor :query_record # The content of the reply. # Corresponds to the JSON property `reply` # @return [String] attr_accessor :reply def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @confidence_score = args[:confidence_score] if args.key?(:confidence_score) @metadata = args[:metadata] if args.key?(:metadata) @query_record = args[:query_record] if args.key?(:query_record) @reply = args[:reply] if args.key?(:reply) end end # Speech-to-Text configuration. class GoogleCloudContactcenterinsightsV1alpha1SpeechConfig include Google::Apis::Core::Hashable # The fully-qualified Speech Recognizer resource name. Format: `projects/` # project_id`/locations/`location`/recognizer/`recognizer`` # Corresponds to the JSON property `speechRecognizer` # @return [String] attr_accessor :speech_recognizer def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @speech_recognizer = args[:speech_recognizer] if args.key?(:speech_recognizer) end end # Suggested summary of the conversation. class GoogleCloudContactcenterinsightsV1alpha1SummarySuggestion include Google::Apis::Core::Hashable # Required. All the parts of generated summary. # Corresponds to the JSON property `summarySections` # @return [Array] attr_accessor :summary_sections def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @summary_sections = args[:summary_sections] if args.key?(:summary_sections) end end # A component of the generated summary. class GoogleCloudContactcenterinsightsV1alpha1SummarySuggestionSummarySection include Google::Apis::Core::Hashable # Required. Name of the section. # Corresponds to the JSON property `section` # @return [String] attr_accessor :section # Required. Summary text for the section. # Corresponds to the JSON property `summary` # @return [String] attr_accessor :summary def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @section = args[:section] if args.key?(:section) @summary = args[:summary] if args.key?(:summary) end end # Metadata for undeploying an issue model. class GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelMetadata include Google::Apis::Core::Hashable # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # The request to undeploy an issue model. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # The request to undeploy an issue model. class GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelRequest include Google::Apis::Core::Hashable # Required. The issue model to undeploy. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @name = args[:name] if args.key?(:name) end end # The response to undeploy an issue model. class GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelResponse include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The metadata for an UploadConversation operation. class GoogleCloudContactcenterinsightsV1alpha1UploadConversationMetadata include Google::Apis::Core::Hashable # Output only. The operation name for a successfully created analysis operation, # if any. # Corresponds to the JSON property `analysisOperation` # @return [String] attr_accessor :analysis_operation # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `appliedRedactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1RedactionConfig] attr_accessor :applied_redaction_config # Output only. The time the operation was created. # Corresponds to the JSON property `createTime` # @return [String] attr_accessor :create_time # Output only. The time the operation finished running. # Corresponds to the JSON property `endTime` # @return [String] attr_accessor :end_time # Request to upload a conversation. # Corresponds to the JSON property `request` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1UploadConversationRequest] attr_accessor :request def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @analysis_operation = args[:analysis_operation] if args.key?(:analysis_operation) @applied_redaction_config = args[:applied_redaction_config] if args.key?(:applied_redaction_config) @create_time = args[:create_time] if args.key?(:create_time) @end_time = args[:end_time] if args.key?(:end_time) @request = args[:request] if args.key?(:request) end end # Request to upload a conversation. class GoogleCloudContactcenterinsightsV1alpha1UploadConversationRequest include Google::Apis::Core::Hashable # The conversation resource. # Corresponds to the JSON property `conversation` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1Conversation] attr_accessor :conversation # Optional. A unique ID for the new conversation. This ID will become the final # component of the conversation's resource name. If no ID is specified, a server- # generated ID will be used. This value should be 4-64 characters and must match # the regular expression `^[a-z0-9-]`4,64`$`. Valid characters are `a-z-` # Corresponds to the JSON property `conversationId` # @return [String] attr_accessor :conversation_id # Required. The parent resource of the conversation. # Corresponds to the JSON property `parent` # @return [String] attr_accessor :parent # DLP resources used for redaction while ingesting conversations. # Corresponds to the JSON property `redactionConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1RedactionConfig] attr_accessor :redaction_config # Speech-to-Text configuration. # Corresponds to the JSON property `speechConfig` # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1SpeechConfig] attr_accessor :speech_config def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @conversation = args[:conversation] if args.key?(:conversation) @conversation_id = args[:conversation_id] if args.key?(:conversation_id) @parent = args[:parent] if args.key?(:parent) @redaction_config = args[:redaction_config] if args.key?(:redaction_config) @speech_config = args[:speech_config] if args.key?(:speech_config) end end # The response message for Operations.ListOperations. class GoogleLongrunningListOperationsResponse include Google::Apis::Core::Hashable # The standard List next-page token. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token # A list of operations that matches the specified filter in the request. # Corresponds to the JSON property `operations` # @return [Array] attr_accessor :operations def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @next_page_token = args[:next_page_token] if args.key?(:next_page_token) @operations = args[:operations] if args.key?(:operations) end end # This resource represents a long-running operation that is the result of a # network API call. class GoogleLongrunningOperation include Google::Apis::Core::Hashable # If the value is `false`, it means the operation is still in progress. If `true` # , the operation is completed, and either `error` or `response` is available. # Corresponds to the JSON property `done` # @return [Boolean] attr_accessor :done alias_method :done?, :done # The `Status` type defines a logical error model that is suitable for different # programming environments, including REST APIs and RPC APIs. It is used by [ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of # data: error code, error message, and error details. You can find out more # about this error model and how to work with it in the [API Design Guide](https: # //cloud.google.com/apis/design/errors). # Corresponds to the JSON property `error` # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus] attr_accessor :error # Service-specific metadata associated with the operation. It typically contains # progress information and common metadata such as create time. Some services # might not provide such metadata. Any method that returns a long-running # operation should document the metadata type, if any. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # The server-assigned name, which is only unique within the same service that # originally returns it. If you use the default HTTP mapping, the `name` should # be a resource name ending with `operations/`unique_id``. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name # The normal, successful response of the operation. If the original method # returns no data on success, such as `Delete`, the response is `google.protobuf. # Empty`. If the original method is standard `Get`/`Create`/`Update`, the # response should be the resource. For other methods, the response should have # the type `XxxResponse`, where `Xxx` is the original method name. For example, # if the original method name is `TakeSnapshot()`, the inferred response type is # `TakeSnapshotResponse`. # Corresponds to the JSON property `response` # @return [Hash] attr_accessor :response def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @done = args[:done] if args.key?(:done) @error = args[:error] if args.key?(:error) @metadata = args[:metadata] if args.key?(:metadata) @name = args[:name] if args.key?(:name) @response = args[:response] if args.key?(:response) end end # A generic empty message that you can re-use to avoid defining duplicated empty # messages in your APIs. A typical example is to use it as the request or the # response type of an API method. For instance: service Foo ` rpc Bar(google. # protobuf.Empty) returns (google.protobuf.Empty); ` class GoogleProtobufEmpty include Google::Apis::Core::Hashable def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) end end # The `Status` type defines a logical error model that is suitable for different # programming environments, including REST APIs and RPC APIs. It is used by [ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of # data: error code, error message, and error details. You can find out more # about this error model and how to work with it in the [API Design Guide](https: # //cloud.google.com/apis/design/errors). class GoogleRpcStatus include Google::Apis::Core::Hashable # The status code, which should be an enum value of google.rpc.Code. # Corresponds to the JSON property `code` # @return [Fixnum] attr_accessor :code # A list of messages that carry the error details. There is a common set of # message types for APIs to use. # Corresponds to the JSON property `details` # @return [Array>] attr_accessor :details # A developer-facing error message, which should be in English. Any user-facing # error message should be localized and sent in the google.rpc.Status.details # field, or localized by the client. # Corresponds to the JSON property `message` # @return [String] attr_accessor :message def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) @code = args[:code] if args.key?(:code) @details = args[:details] if args.key?(:details) @message = args[:message] if args.key?(:message) end end end end end