google-apis-contactcenterinsights_v1 0.80.0 → 0.82.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -729,6 +729,105 @@ module Google
729
729
  end
730
730
  end
731
731
 
732
+ # Rule for auto-labeling conversations.
733
+ class GoogleCloudContactcenterinsightsV1AutoLabelingRule
734
+ include Google::Apis::Core::Hashable
735
+
736
+ # Whether the rule is active.
737
+ # Corresponds to the JSON property `active`
738
+ # @return [Boolean]
739
+ attr_accessor :active
740
+ alias_method :active?, :active
741
+
742
+ # Conditions to apply for auto-labeling the label_key. Representing sequential
743
+ # block of if .. else if .. else statements. The value of the first matching
744
+ # condition will be used.
745
+ # Corresponds to the JSON property `conditions`
746
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AutoLabelingRuleLabelingCondition>]
747
+ attr_accessor :conditions
748
+
749
+ # Output only. The time at which this rule was created.
750
+ # Corresponds to the JSON property `createTime`
751
+ # @return [String]
752
+ attr_accessor :create_time
753
+
754
+ # The description of the rule.
755
+ # Corresponds to the JSON property `description`
756
+ # @return [String]
757
+ attr_accessor :description
758
+
759
+ # The user-provided display name of the rule.
760
+ # Corresponds to the JSON property `displayName`
761
+ # @return [String]
762
+ attr_accessor :display_name
763
+
764
+ # The label key. This is also the `auto_labeling_rule` in the resource name.
765
+ # Only settable if label_key_type is LABEL_KEY_TYPE_CUSTOM.
766
+ # Corresponds to the JSON property `labelKey`
767
+ # @return [String]
768
+ attr_accessor :label_key
769
+
770
+ # The type of the label key.
771
+ # Corresponds to the JSON property `labelKeyType`
772
+ # @return [String]
773
+ attr_accessor :label_key_type
774
+
775
+ # Identifier. The resource name of the auto-labeling rule. Format: projects/`
776
+ # project`/locations/`location`/autoLabelingRules/`auto_labeling_rule`
777
+ # Corresponds to the JSON property `name`
778
+ # @return [String]
779
+ attr_accessor :name
780
+
781
+ # Output only. The most recent time at which the rule was updated.
782
+ # Corresponds to the JSON property `updateTime`
783
+ # @return [String]
784
+ attr_accessor :update_time
785
+
786
+ def initialize(**args)
787
+ update!(**args)
788
+ end
789
+
790
+ # Update properties of this object
791
+ def update!(**args)
792
+ @active = args[:active] if args.key?(:active)
793
+ @conditions = args[:conditions] if args.key?(:conditions)
794
+ @create_time = args[:create_time] if args.key?(:create_time)
795
+ @description = args[:description] if args.key?(:description)
796
+ @display_name = args[:display_name] if args.key?(:display_name)
797
+ @label_key = args[:label_key] if args.key?(:label_key)
798
+ @label_key_type = args[:label_key_type] if args.key?(:label_key_type)
799
+ @name = args[:name] if args.key?(:name)
800
+ @update_time = args[:update_time] if args.key?(:update_time)
801
+ end
802
+ end
803
+
804
+ # Condition for auto-labeling conversations.
805
+ class GoogleCloudContactcenterinsightsV1AutoLabelingRuleLabelingCondition
806
+ include Google::Apis::Core::Hashable
807
+
808
+ # A optional CEL expression to be evaluated as a boolean value. Once evaluated
809
+ # as true, then we will proceed with the value evaluation. An empty condition
810
+ # will be auto evaluated as true.
811
+ # Corresponds to the JSON property `condition`
812
+ # @return [String]
813
+ attr_accessor :condition
814
+
815
+ # CEL expression to be evaluated as the value.
816
+ # Corresponds to the JSON property `value`
817
+ # @return [String]
818
+ attr_accessor :value
819
+
820
+ def initialize(**args)
821
+ update!(**args)
822
+ end
823
+
824
+ # Update properties of this object
825
+ def update!(**args)
826
+ @condition = args[:condition] if args.key?(:condition)
827
+ @value = args[:value] if args.key?(:value)
828
+ end
829
+ end
830
+
732
831
  # The metadata for a bulk analyze conversations operation.
733
832
  class GoogleCloudContactcenterinsightsV1BulkAnalyzeConversationsMetadata
734
833
  include Google::Apis::Core::Hashable
@@ -1578,6 +1677,74 @@ module Google
1578
1677
  end
1579
1678
  end
1580
1679
 
1680
+ # The result of testing a constraint expression on a pair of conversations.
1681
+ class GoogleCloudContactcenterinsightsV1ConstraintEvaluationResult
1682
+ include Google::Apis::Core::Hashable
1683
+
1684
+ # The first conversation resource name.
1685
+ # Corresponds to the JSON property `conversationA`
1686
+ # @return [String]
1687
+ attr_accessor :conversation_a
1688
+
1689
+ # The second conversation resource name.
1690
+ # Corresponds to the JSON property `conversationB`
1691
+ # @return [String]
1692
+ attr_accessor :conversation_b
1693
+
1694
+ # The results for each applicable constraint rule.
1695
+ # Corresponds to the JSON property `ruleConstraintResults`
1696
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConstraintEvaluationResultRuleConstraintResult>]
1697
+ attr_accessor :rule_constraint_results
1698
+
1699
+ def initialize(**args)
1700
+ update!(**args)
1701
+ end
1702
+
1703
+ # Update properties of this object
1704
+ def update!(**args)
1705
+ @conversation_a = args[:conversation_a] if args.key?(:conversation_a)
1706
+ @conversation_b = args[:conversation_b] if args.key?(:conversation_b)
1707
+ @rule_constraint_results = args[:rule_constraint_results] if args.key?(:rule_constraint_results)
1708
+ end
1709
+ end
1710
+
1711
+ # The result of a single constraint rule on the pair of conversations.
1712
+ class GoogleCloudContactcenterinsightsV1ConstraintEvaluationResultRuleConstraintResult
1713
+ include Google::Apis::Core::Hashable
1714
+
1715
+ # Whether the constraint expression evaluated to true for (A, B) or (B, A).
1716
+ # Corresponds to the JSON property `constraintMet`
1717
+ # @return [Boolean]
1718
+ attr_accessor :constraint_met
1719
+ alias_method :constraint_met?, :constraint_met
1720
+
1721
+ # The `Status` type defines a logical error model that is suitable for different
1722
+ # programming environments, including REST APIs and RPC APIs. It is used by [
1723
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
1724
+ # data: error code, error message, and error details. You can find out more
1725
+ # about this error model and how to work with it in the [API Design Guide](https:
1726
+ # //cloud.google.com/apis/design/errors).
1727
+ # Corresponds to the JSON property `error`
1728
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
1729
+ attr_accessor :error
1730
+
1731
+ # The rule ID.
1732
+ # Corresponds to the JSON property `ruleId`
1733
+ # @return [String]
1734
+ attr_accessor :rule_id
1735
+
1736
+ def initialize(**args)
1737
+ update!(**args)
1738
+ end
1739
+
1740
+ # Update properties of this object
1741
+ def update!(**args)
1742
+ @constraint_met = args[:constraint_met] if args.key?(:constraint_met)
1743
+ @error = args[:error] if args.key?(:error)
1744
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
1745
+ end
1746
+ end
1747
+
1581
1748
  # The conversation resource.
1582
1749
  class GoogleCloudContactcenterinsightsV1Conversation
1583
1750
  include Google::Apis::Core::Hashable
@@ -1593,6 +1760,11 @@ module Google
1593
1760
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationCallMetadata]
1594
1761
  attr_accessor :call_metadata
1595
1762
 
1763
+ # Info for correlating across conversations.
1764
+ # Corresponds to the JSON property `correlationInfo`
1765
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationCorrelationInfo]
1766
+ attr_accessor :correlation_info
1767
+
1596
1768
  # Output only. The time at which the conversation was created.
1597
1769
  # Corresponds to the JSON property `createTime`
1598
1770
  # @return [String]
@@ -1642,7 +1814,7 @@ module Google
1642
1814
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationSummarizationSuggestionData]
1643
1815
  attr_accessor :latest_summary
1644
1816
 
1645
- # Immutable. The conversation medium, if unspecified will default to PHONE_CALL.
1817
+ # Immutable. The conversation medium.
1646
1818
  # Corresponds to the JSON property `medium`
1647
1819
  # @return [String]
1648
1820
  attr_accessor :medium
@@ -1710,6 +1882,7 @@ module Google
1710
1882
  def update!(**args)
1711
1883
  @agent_id = args[:agent_id] if args.key?(:agent_id)
1712
1884
  @call_metadata = args[:call_metadata] if args.key?(:call_metadata)
1885
+ @correlation_info = args[:correlation_info] if args.key?(:correlation_info)
1713
1886
  @create_time = args[:create_time] if args.key?(:create_time)
1714
1887
  @data_source = args[:data_source] if args.key?(:data_source)
1715
1888
  @dialogflow_intents = args[:dialogflow_intents] if args.key?(:dialogflow_intents)
@@ -1758,6 +1931,124 @@ module Google
1758
1931
  end
1759
1932
  end
1760
1933
 
1934
+ # Info for correlating across conversations.
1935
+ class GoogleCloudContactcenterinsightsV1ConversationCorrelationInfo
1936
+ include Google::Apis::Core::Hashable
1937
+
1938
+ # Output only. The correlation types of this conversation. A single conversation
1939
+ # can have multiple correlation types. For example a conversation that only has
1940
+ # a single segment is both a SEGMENT and a FULL_CONVERSATION.
1941
+ # Corresponds to the JSON property `correlationTypes`
1942
+ # @return [Array<String>]
1943
+ attr_accessor :correlation_types
1944
+
1945
+ # Output only. The full conversation correlation id this conversation is a
1946
+ # segment of.
1947
+ # Corresponds to the JSON property `fullConversationCorrelationId`
1948
+ # @return [String]
1949
+ attr_accessor :full_conversation_correlation_id
1950
+
1951
+ # Output only. The full conversation correlation id this conversation is a
1952
+ # merged conversation of.
1953
+ # Corresponds to the JSON property `mergedFullConversationCorrelationId`
1954
+ # @return [String]
1955
+ attr_accessor :merged_full_conversation_correlation_id
1956
+
1957
+ def initialize(**args)
1958
+ update!(**args)
1959
+ end
1960
+
1961
+ # Update properties of this object
1962
+ def update!(**args)
1963
+ @correlation_types = args[:correlation_types] if args.key?(:correlation_types)
1964
+ @full_conversation_correlation_id = args[:full_conversation_correlation_id] if args.key?(:full_conversation_correlation_id)
1965
+ @merged_full_conversation_correlation_id = args[:merged_full_conversation_correlation_id] if args.key?(:merged_full_conversation_correlation_id)
1966
+ end
1967
+ end
1968
+
1969
+ # The result of testing correlation config on a single conversation.
1970
+ class GoogleCloudContactcenterinsightsV1ConversationCorrelationResult
1971
+ include Google::Apis::Core::Hashable
1972
+
1973
+ # The conversation resource name.
1974
+ # Corresponds to the JSON property `conversation`
1975
+ # @return [String]
1976
+ attr_accessor :conversation
1977
+
1978
+ # The results for each correlation rule.
1979
+ # Corresponds to the JSON property `ruleResults`
1980
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationCorrelationResultRuleCorrelationResult>]
1981
+ attr_accessor :rule_results
1982
+
1983
+ def initialize(**args)
1984
+ update!(**args)
1985
+ end
1986
+
1987
+ # Update properties of this object
1988
+ def update!(**args)
1989
+ @conversation = args[:conversation] if args.key?(:conversation)
1990
+ @rule_results = args[:rule_results] if args.key?(:rule_results)
1991
+ end
1992
+ end
1993
+
1994
+ # The result of a single correlation rule.
1995
+ class GoogleCloudContactcenterinsightsV1ConversationCorrelationResultRuleCorrelationResult
1996
+ include Google::Apis::Core::Hashable
1997
+
1998
+ # The correlation ID generated by the join key expression.
1999
+ # Corresponds to the JSON property `correlationId`
2000
+ # @return [String]
2001
+ attr_accessor :correlation_id
2002
+
2003
+ # The `Status` type defines a logical error model that is suitable for different
2004
+ # programming environments, including REST APIs and RPC APIs. It is used by [
2005
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
2006
+ # data: error code, error message, and error details. You can find out more
2007
+ # about this error model and how to work with it in the [API Design Guide](https:
2008
+ # //cloud.google.com/apis/design/errors).
2009
+ # Corresponds to the JSON property `error`
2010
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
2011
+ attr_accessor :error
2012
+
2013
+ # The rule ID.
2014
+ # Corresponds to the JSON property `ruleId`
2015
+ # @return [String]
2016
+ attr_accessor :rule_id
2017
+
2018
+ def initialize(**args)
2019
+ update!(**args)
2020
+ end
2021
+
2022
+ # Update properties of this object
2023
+ def update!(**args)
2024
+ @correlation_id = args[:correlation_id] if args.key?(:correlation_id)
2025
+ @error = args[:error] if args.key?(:error)
2026
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
2027
+ end
2028
+ end
2029
+
2030
+ # Options for configuring what metadata is included in the conversation data
2031
+ # used in QAI and Discovery Engine.
2032
+ class GoogleCloudContactcenterinsightsV1ConversationDataOptions
2033
+ include Google::Apis::Core::Hashable
2034
+
2035
+ # Whether to include the per turn Dialogflow interaction data in conversation
2036
+ # transcript.
2037
+ # Corresponds to the JSON property `includeDialogflowInteractionData`
2038
+ # @return [Boolean]
2039
+ attr_accessor :include_dialogflow_interaction_data
2040
+ alias_method :include_dialogflow_interaction_data?, :include_dialogflow_interaction_data
2041
+
2042
+ def initialize(**args)
2043
+ update!(**args)
2044
+ end
2045
+
2046
+ # Update properties of this object
2047
+ def update!(**args)
2048
+ @include_dialogflow_interaction_data = args[:include_dialogflow_interaction_data] if args.key?(:include_dialogflow_interaction_data)
2049
+ end
2050
+ end
2051
+
1761
2052
  # The conversation source, which is a combination of transcript and audio.
1762
2053
  class GoogleCloudContactcenterinsightsV1ConversationDataSource
1763
2054
  include Google::Apis::Core::Hashable
@@ -2247,6 +2538,111 @@ module Google
2247
2538
  end
2248
2539
  end
2249
2540
 
2541
+ # A configuration that defines how to correlate conversations for a given a
2542
+ # given project.
2543
+ class GoogleCloudContactcenterinsightsV1CorrelationConfig
2544
+ include Google::Apis::Core::Hashable
2545
+
2546
+ # Output only. The time at which the correlation config was created.
2547
+ # Corresponds to the JSON property `createTime`
2548
+ # @return [String]
2549
+ attr_accessor :create_time
2550
+
2551
+ # A list of correlation rules for a given correlation type.
2552
+ # Corresponds to the JSON property `fullConversationConfig`
2553
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1CorrelationTypeConfig]
2554
+ attr_accessor :full_conversation_config
2555
+
2556
+ # Immutable. Identifier. The resource name of the correlation config. Format:
2557
+ # projects/`project`/locations/`location`/correlationConfig
2558
+ # Corresponds to the JSON property `name`
2559
+ # @return [String]
2560
+ attr_accessor :name
2561
+
2562
+ # Output only. The time at which the correlation config was last updated.
2563
+ # Corresponds to the JSON property `updateTime`
2564
+ # @return [String]
2565
+ attr_accessor :update_time
2566
+
2567
+ def initialize(**args)
2568
+ update!(**args)
2569
+ end
2570
+
2571
+ # Update properties of this object
2572
+ def update!(**args)
2573
+ @create_time = args[:create_time] if args.key?(:create_time)
2574
+ @full_conversation_config = args[:full_conversation_config] if args.key?(:full_conversation_config)
2575
+ @name = args[:name] if args.key?(:name)
2576
+ @update_time = args[:update_time] if args.key?(:update_time)
2577
+ end
2578
+ end
2579
+
2580
+ # A correlation rule that defines how to join conversations for a given
2581
+ # correlation type.
2582
+ class GoogleCloudContactcenterinsightsV1CorrelationRule
2583
+ include Google::Apis::Core::Hashable
2584
+
2585
+ # Optional. Whether the config is active to be evaluated.
2586
+ # Corresponds to the JSON property `active`
2587
+ # @return [Boolean]
2588
+ attr_accessor :active
2589
+ alias_method :active?, :active
2590
+
2591
+ # Optional. A cel expression (go/cel) to be evaluated as a boolean value. Two
2592
+ # variables conversation_a and conversation_b will be available for evaluation.
2593
+ # This expression should evaluate to true if conversation_a and conversation_b
2594
+ # should be joined. This is used as an extra constraint on top of the
2595
+ # join_key_expression to further refine the group of conversations that are
2596
+ # joined together and will be evaluated in both directions. for two
2597
+ # conversations c1 and c2 and the result will be OR'd. We will evaluate: f(c1,
2598
+ # c2) OR f(c2, c1)
2599
+ # Corresponds to the JSON property `constraintExpression`
2600
+ # @return [String]
2601
+ attr_accessor :constraint_expression
2602
+
2603
+ # Optional. A cel expression (go/cel) to be evaluated as a string value. This
2604
+ # string value will be used as the join key for the correlation.
2605
+ # Corresponds to the JSON property `joinKeyExpression`
2606
+ # @return [String]
2607
+ attr_accessor :join_key_expression
2608
+
2609
+ # Required. The unique identifier of the rule.
2610
+ # Corresponds to the JSON property `ruleId`
2611
+ # @return [String]
2612
+ attr_accessor :rule_id
2613
+
2614
+ def initialize(**args)
2615
+ update!(**args)
2616
+ end
2617
+
2618
+ # Update properties of this object
2619
+ def update!(**args)
2620
+ @active = args[:active] if args.key?(:active)
2621
+ @constraint_expression = args[:constraint_expression] if args.key?(:constraint_expression)
2622
+ @join_key_expression = args[:join_key_expression] if args.key?(:join_key_expression)
2623
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
2624
+ end
2625
+ end
2626
+
2627
+ # A list of correlation rules for a given correlation type.
2628
+ class GoogleCloudContactcenterinsightsV1CorrelationTypeConfig
2629
+ include Google::Apis::Core::Hashable
2630
+
2631
+ # A list of correlation rules to be evaluated for correlation.
2632
+ # Corresponds to the JSON property `correlationRules`
2633
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1CorrelationRule>]
2634
+ attr_accessor :correlation_rules
2635
+
2636
+ def initialize(**args)
2637
+ update!(**args)
2638
+ end
2639
+
2640
+ # Update properties of this object
2641
+ def update!(**args)
2642
+ @correlation_rules = args[:correlation_rules] if args.key?(:correlation_rules)
2643
+ end
2644
+ end
2645
+
2250
2646
  # Metadata for a create analysis operation.
2251
2647
  class GoogleCloudContactcenterinsightsV1CreateAnalysisOperationMetadata
2252
2648
  include Google::Apis::Core::Hashable
@@ -4675,14 +5071,40 @@ module Google
4675
5071
  end
4676
5072
  end
4677
5073
 
4678
- # The response of listing conversations.
4679
- class GoogleCloudContactcenterinsightsV1ListConversationsResponse
5074
+ # The response message for listing auto labeling rules.
5075
+ class GoogleCloudContactcenterinsightsV1ListAutoLabelingRulesResponse
4680
5076
  include Google::Apis::Core::Hashable
4681
5077
 
4682
- # The conversations that match the request.
4683
- # Corresponds to the JSON property `conversations`
4684
- # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Conversation>]
4685
- attr_accessor :conversations
5078
+ # The auto labeling rules.
5079
+ # Corresponds to the JSON property `autoLabelingRules`
5080
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AutoLabelingRule>]
5081
+ attr_accessor :auto_labeling_rules
5082
+
5083
+ # A token, which can be sent as `page_token` to retrieve the next page. If this
5084
+ # field is omitted, there are no subsequent pages.
5085
+ # Corresponds to the JSON property `nextPageToken`
5086
+ # @return [String]
5087
+ attr_accessor :next_page_token
5088
+
5089
+ def initialize(**args)
5090
+ update!(**args)
5091
+ end
5092
+
5093
+ # Update properties of this object
5094
+ def update!(**args)
5095
+ @auto_labeling_rules = args[:auto_labeling_rules] if args.key?(:auto_labeling_rules)
5096
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
5097
+ end
5098
+ end
5099
+
5100
+ # The response of listing conversations.
5101
+ class GoogleCloudContactcenterinsightsV1ListConversationsResponse
5102
+ include Google::Apis::Core::Hashable
5103
+
5104
+ # The conversations that match the request.
5105
+ # Corresponds to the JSON property `conversations`
5106
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Conversation>]
5107
+ attr_accessor :conversations
4686
5108
 
4687
5109
  # A token which can be sent as `page_token` to retrieve the next page. If this
4688
5110
  # field is set, it means there is another page available. If it is not set, it
@@ -5505,6 +5927,11 @@ module Google
5505
5927
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QaQuestionPredefinedQuestionConfig]
5506
5928
  attr_accessor :predefined_question_config
5507
5929
 
5930
+ # Options for configuring the data used to generate the QA question.
5931
+ # Corresponds to the JSON property `qaQuestionDataOptions`
5932
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QaQuestionQaQuestionDataOptions]
5933
+ attr_accessor :qa_question_data_options
5934
+
5508
5935
  # Question text. E.g., "Did the agent greet the customer?"
5509
5936
  # Corresponds to the JSON property `questionBody`
5510
5937
  # @return [String]
@@ -5551,6 +5978,7 @@ module Google
5551
5978
  @name = args[:name] if args.key?(:name)
5552
5979
  @order = args[:order] if args.key?(:order)
5553
5980
  @predefined_question_config = args[:predefined_question_config] if args.key?(:predefined_question_config)
5981
+ @qa_question_data_options = args[:qa_question_data_options] if args.key?(:qa_question_data_options)
5554
5982
  @question_body = args[:question_body] if args.key?(:question_body)
5555
5983
  @question_type = args[:question_type] if args.key?(:question_type)
5556
5984
  @tags = args[:tags] if args.key?(:tags)
@@ -5654,6 +6082,26 @@ module Google
5654
6082
  end
5655
6083
  end
5656
6084
 
6085
+ # Options for configuring the data used to generate the QA question.
6086
+ class GoogleCloudContactcenterinsightsV1QaQuestionQaQuestionDataOptions
6087
+ include Google::Apis::Core::Hashable
6088
+
6089
+ # Options for configuring what metadata is included in the conversation data
6090
+ # used in QAI and Discovery Engine.
6091
+ # Corresponds to the JSON property `conversationDataOptions`
6092
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationDataOptions]
6093
+ attr_accessor :conversation_data_options
6094
+
6095
+ def initialize(**args)
6096
+ update!(**args)
6097
+ end
6098
+
6099
+ # Update properties of this object
6100
+ def update!(**args)
6101
+ @conversation_data_options = args[:conversation_data_options] if args.key?(:conversation_data_options)
6102
+ end
6103
+ end
6104
+
5657
6105
  # A tag is a resource which aims to categorize a set of questions across
5658
6106
  # multiple scorecards, e.g., "Customer Satisfaction","Billing", etc.
5659
6107
  class GoogleCloudContactcenterinsightsV1QaQuestionTag
@@ -6199,6 +6647,11 @@ module Google
6199
6647
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure]
6200
6648
  attr_accessor :conversation_measure
6201
6649
 
6650
+ # The measure related to dialogflow interactions.
6651
+ # Corresponds to the JSON property `dialogflowInteractionMeasure`
6652
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointDialogflowInteractionMeasure]
6653
+ attr_accessor :dialogflow_interaction_measure
6654
+
6202
6655
  # Represents a time interval, encoded as a Timestamp start (inclusive) and a
6203
6656
  # Timestamp end (exclusive). The start must be less than or equal to the end.
6204
6657
  # When the start equals the end, the interval is empty (matches no time). When
@@ -6214,6 +6667,7 @@ module Google
6214
6667
  # Update properties of this object
6215
6668
  def update!(**args)
6216
6669
  @conversation_measure = args[:conversation_measure] if args.key?(:conversation_measure)
6670
+ @dialogflow_interaction_measure = args[:dialogflow_interaction_measure] if args.key?(:dialogflow_interaction_measure)
6217
6671
  @interval = args[:interval] if args.key?(:interval)
6218
6672
  end
6219
6673
  end
@@ -6222,6 +6676,70 @@ module Google
6222
6676
  class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasure
6223
6677
  include Google::Apis::Core::Hashable
6224
6678
 
6679
+ # The number of conversations that were assigned to an AA human supervisor.
6680
+ # Corresponds to the JSON property `aaSupervisorAssignedConversationsCount`
6681
+ # @return [Fixnum]
6682
+ attr_accessor :aa_supervisor_assigned_conversations_count
6683
+
6684
+ # The number of conversations that were dropped, i.e. escalated but not assigned
6685
+ # to an AA human supervisor.
6686
+ # Corresponds to the JSON property `aaSupervisorDroppedConversationsCount`
6687
+ # @return [Fixnum]
6688
+ attr_accessor :aa_supervisor_dropped_conversations_count
6689
+
6690
+ # The number of conversations that were escalated to an AA human supervisor for
6691
+ # intervention.
6692
+ # Corresponds to the JSON property `aaSupervisorEscalatedConversationsCount`
6693
+ # @return [Fixnum]
6694
+ attr_accessor :aa_supervisor_escalated_conversations_count
6695
+
6696
+ # The number of conversations scanned by the AA human supervisor.
6697
+ # Corresponds to the JSON property `aaSupervisorMonitoredConversationsCount`
6698
+ # @return [Fixnum]
6699
+ attr_accessor :aa_supervisor_monitored_conversations_count
6700
+
6701
+ # The number of conversations transferred to a human agent.
6702
+ # Corresponds to the JSON property `aaSupervisorTransferredToHumanAgentConvCount`
6703
+ # @return [Fixnum]
6704
+ attr_accessor :aa_supervisor_transferred_to_human_agent_conv_count
6705
+
6706
+ # Count of agent messages that triggered an Ai Coach Suggestion.
6707
+ # Corresponds to the JSON property `aiCoachSuggestionAgentMessageTriggerCount`
6708
+ # @return [Fixnum]
6709
+ attr_accessor :ai_coach_suggestion_agent_message_trigger_count
6710
+
6711
+ # Count of Ai Coach Suggestion that has been used by agents.
6712
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageCount`
6713
+ # @return [Fixnum]
6714
+ attr_accessor :ai_coach_suggestion_agent_usage_count
6715
+
6716
+ # Proportion of Ai Coach Suggestion that has been used by agents.
6717
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageRatio`
6718
+ # @return [Float]
6719
+ attr_accessor :ai_coach_suggestion_agent_usage_ratio
6720
+
6721
+ # Count of customer messages that triggered an Ai Coach Suggestion.
6722
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerCount`
6723
+ # @return [Fixnum]
6724
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_count
6725
+
6726
+ # Proportion of customer messages that triggered an Ai Coach Suggestion.
6727
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerRatio`
6728
+ # @return [Float]
6729
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_ratio
6730
+
6731
+ # Count of end_of_utterance trigger event messages that triggered an Ai Coach
6732
+ # Suggestion.
6733
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerCount`
6734
+ # @return [Fixnum]
6735
+ attr_accessor :ai_coach_suggestion_message_trigger_count
6736
+
6737
+ # Proportion of end_of_utterance trigger event messages that triggered an Ai
6738
+ # Coach Suggestion.
6739
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerRatio`
6740
+ # @return [Float]
6741
+ attr_accessor :ai_coach_suggestion_message_trigger_ratio
6742
+
6225
6743
  # The average agent's sentiment score.
6226
6744
  # Corresponds to the JSON property `averageAgentSentimentScore`
6227
6745
  # @return [Float]
@@ -6263,27 +6781,234 @@ module Google
6263
6781
  # @return [Float]
6264
6782
  attr_accessor :average_silence_percentage
6265
6783
 
6784
+ # Average edit distance of the summarization suggestions. Edit distance (also
6785
+ # called as levenshtein distance) is calculated by summing up number of
6786
+ # insertions, deletions and substitutions required to transform the summization
6787
+ # feedback to the original summary suggestion.
6788
+ # Corresponds to the JSON property `averageSummarizationSuggestionEditDistance`
6789
+ # @return [Float]
6790
+ attr_accessor :average_summarization_suggestion_edit_distance
6791
+
6792
+ # Normalized Average edit distance of the summarization suggestions. Edit
6793
+ # distance (also called as levenshtein distance) is calculated by summing up
6794
+ # number of insertions, deletions and substitutions required to transform the
6795
+ # summization feedback to the original summary suggestion. Normalized edit
6796
+ # distance is the average of (edit distance / summary length).
6797
+ # Corresponds to the JSON property `averageSummarizationSuggestionNormalizedEditDistance`
6798
+ # @return [Float]
6799
+ attr_accessor :average_summarization_suggestion_normalized_edit_distance
6800
+
6266
6801
  # The average turn count.
6267
6802
  # Corresponds to the JSON property `averageTurnCount`
6268
6803
  # @return [Float]
6269
6804
  attr_accessor :average_turn_count
6270
6805
 
6806
+ # The exponential moving average of the sentiment score of client turns in the
6807
+ # conversation.
6808
+ # Corresponds to the JSON property `avgConversationClientTurnSentimentEma`
6809
+ # @return [Float]
6810
+ attr_accessor :avg_conversation_client_turn_sentiment_ema
6811
+
6812
+ # The number of conversations that were contained.
6813
+ # Corresponds to the JSON property `containedConversationCount`
6814
+ # @return [Fixnum]
6815
+ attr_accessor :contained_conversation_count
6816
+
6817
+ # The percentage of conversations that were contained.
6818
+ # Corresponds to the JSON property `containedConversationRatio`
6819
+ # @return [Float]
6820
+ attr_accessor :contained_conversation_ratio
6821
+
6822
+ # Count of conversations that has Ai Coach Suggestions.
6823
+ # Corresponds to the JSON property `conversationAiCoachSuggestionCount`
6824
+ # @return [Fixnum]
6825
+ attr_accessor :conversation_ai_coach_suggestion_count
6826
+
6827
+ # Proportion of conversations that has Ai Coach Suggestions.
6828
+ # Corresponds to the JSON property `conversationAiCoachSuggestionRatio`
6829
+ # @return [Float]
6830
+ attr_accessor :conversation_ai_coach_suggestion_ratio
6831
+
6271
6832
  # The conversation count.
6272
6833
  # Corresponds to the JSON property `conversationCount`
6273
6834
  # @return [Fixnum]
6274
6835
  attr_accessor :conversation_count
6275
6836
 
6837
+ # Proportion of conversations that had a suggested summary.
6838
+ # Corresponds to the JSON property `conversationSuggestedSummaryRatio`
6839
+ # @return [Float]
6840
+ attr_accessor :conversation_suggested_summary_ratio
6841
+
6842
+ # The agent message count.
6843
+ # Corresponds to the JSON property `conversationTotalAgentMessageCount`
6844
+ # @return [Fixnum]
6845
+ attr_accessor :conversation_total_agent_message_count
6846
+
6847
+ # The customer message count.
6848
+ # Corresponds to the JSON property `conversationTotalCustomerMessageCount`
6849
+ # @return [Fixnum]
6850
+ attr_accessor :conversation_total_customer_message_count
6851
+
6852
+ # The average latency of conversational agents' audio in audio out latency per
6853
+ # interaction. This is computed as the average of the all the interactions'
6854
+ # audio in audio out latencies in a conversation and averaged across
6855
+ # conversations.
6856
+ # Corresponds to the JSON property `conversationalAgentsAverageAudioInAudioOutLatency`
6857
+ # @return [Float]
6858
+ attr_accessor :conversational_agents_average_audio_in_audio_out_latency
6859
+
6860
+ # The average latency of conversational agents' latency per interaction. This is
6861
+ # computed as the average of the all the iteractions' end to end latencies in a
6862
+ # conversation and averaged across conversations. The e2e latency is the time
6863
+ # between the end of the user utterance and the start of the agent utterance on
6864
+ # the interaction level.
6865
+ # Corresponds to the JSON property `conversationalAgentsAverageEndToEndLatency`
6866
+ # @return [Float]
6867
+ attr_accessor :conversational_agents_average_end_to_end_latency
6868
+
6869
+ # The average latency of conversational agents' LLM call latency per interaction.
6870
+ # This is computed as the average of the all the interactions LLM call
6871
+ # latencies in a conversation and averaged across conversations.
6872
+ # Corresponds to the JSON property `conversationalAgentsAverageLlmCallLatency`
6873
+ # @return [Float]
6874
+ attr_accessor :conversational_agents_average_llm_call_latency
6875
+
6876
+ # The macro average latency of conversational agents' TTS latency per
6877
+ # interaction. This is computed as the average of the all the interactions' TTS
6878
+ # latencies in a conversation and averaged across conversations.
6879
+ # Corresponds to the JSON property `conversationalAgentsAverageTtsLatency`
6880
+ # @return [Float]
6881
+ attr_accessor :conversational_agents_average_tts_latency
6882
+
6883
+ # Average latency of dialogflow webhook calls.
6884
+ # Corresponds to the JSON property `dialogflowAverageWebhookLatency`
6885
+ # @return [Float]
6886
+ attr_accessor :dialogflow_average_webhook_latency
6887
+
6888
+ # count of conversations that was handed off from virtual agent to human agent.
6889
+ # Corresponds to the JSON property `dialogflowConversationsEscalationCount`
6890
+ # @return [Float]
6891
+ attr_accessor :dialogflow_conversations_escalation_count
6892
+
6893
+ # Proportion of conversations that was handed off from virtual agent to human
6894
+ # agent.
6895
+ # Corresponds to the JSON property `dialogflowConversationsEscalationRatio`
6896
+ # @return [Float]
6897
+ attr_accessor :dialogflow_conversations_escalation_ratio
6898
+
6899
+ # Proportion of dialogflow interactions that has empty input.
6900
+ # Corresponds to the JSON property `dialogflowInteractionsNoInputRatio`
6901
+ # @return [Float]
6902
+ attr_accessor :dialogflow_interactions_no_input_ratio
6903
+
6904
+ # Proportion of dialogflow interactions that has no intent match for the input.
6905
+ # Corresponds to the JSON property `dialogflowInteractionsNoMatchRatio`
6906
+ # @return [Float]
6907
+ attr_accessor :dialogflow_interactions_no_match_ratio
6908
+
6909
+ # Proportion of dialogflow webhook calls that failed.
6910
+ # Corresponds to the JSON property `dialogflowWebhookFailureRatio`
6911
+ # @return [Float]
6912
+ attr_accessor :dialogflow_webhook_failure_ratio
6913
+
6914
+ # Proportion of dialogflow webhook calls that timed out.
6915
+ # Corresponds to the JSON property `dialogflowWebhookTimeoutRatio`
6916
+ # @return [Float]
6917
+ attr_accessor :dialogflow_webhook_timeout_ratio
6918
+
6919
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
6920
+ # that had negative feedback.
6921
+ # Corresponds to the JSON property `knowledgeAssistNegativeFeedbackRatio`
6922
+ # @return [Float]
6923
+ attr_accessor :knowledge_assist_negative_feedback_ratio
6924
+
6925
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
6926
+ # that had positive feedback.
6927
+ # Corresponds to the JSON property `knowledgeAssistPositiveFeedbackRatio`
6928
+ # @return [Float]
6929
+ attr_accessor :knowledge_assist_positive_feedback_ratio
6930
+
6931
+ # Count of knowledge assist results (Proactive Generative Knowledge Assist)
6932
+ # shown to the user.
6933
+ # Corresponds to the JSON property `knowledgeAssistResultCount`
6934
+ # @return [Fixnum]
6935
+ attr_accessor :knowledge_assist_result_count
6936
+
6937
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
6938
+ # that had a URL clicked.
6939
+ # Corresponds to the JSON property `knowledgeAssistUriClickRatio`
6940
+ # @return [Float]
6941
+ attr_accessor :knowledge_assist_uri_click_ratio
6942
+
6943
+ # Proportion of knowledge search (Generative Knowledge Assist) queries made by
6944
+ # the agent compared to the total number of knowledge search queries made.
6945
+ # Corresponds to the JSON property `knowledgeSearchAgentQuerySourceRatio`
6946
+ # @return [Float]
6947
+ attr_accessor :knowledge_search_agent_query_source_ratio
6948
+
6949
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
6950
+ # negative feedback.
6951
+ # Corresponds to the JSON property `knowledgeSearchNegativeFeedbackRatio`
6952
+ # @return [Float]
6953
+ attr_accessor :knowledge_search_negative_feedback_ratio
6954
+
6955
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
6956
+ # positive feedback.
6957
+ # Corresponds to the JSON property `knowledgeSearchPositiveFeedbackRatio`
6958
+ # @return [Float]
6959
+ attr_accessor :knowledge_search_positive_feedback_ratio
6960
+
6961
+ # Count of knowledge search results (Generative Knowledge Assist) shown to the
6962
+ # user.
6963
+ # Corresponds to the JSON property `knowledgeSearchResultCount`
6964
+ # @return [Fixnum]
6965
+ attr_accessor :knowledge_search_result_count
6966
+
6967
+ # Proportion of knowledge search (Generative Knowledge Assist) queries suggested
6968
+ # compared to the total number of knowledge search queries made.
6969
+ # Corresponds to the JSON property `knowledgeSearchSuggestedQuerySourceRatio`
6970
+ # @return [Float]
6971
+ attr_accessor :knowledge_search_suggested_query_source_ratio
6972
+
6973
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
6974
+ # a URL clicked.
6975
+ # Corresponds to the JSON property `knowledgeSearchUriClickRatio`
6976
+ # @return [Float]
6977
+ attr_accessor :knowledge_search_uri_click_ratio
6978
+
6276
6979
  # Average QA normalized score for all the tags.
6277
6980
  # Corresponds to the JSON property `qaTagScores`
6278
6981
  # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore>]
6279
6982
  attr_accessor :qa_tag_scores
6280
6983
 
6984
+ # Proportion of summarization suggestions that were manually edited.
6985
+ # Corresponds to the JSON property `summarizationSuggestionEditRatio`
6986
+ # @return [Float]
6987
+ attr_accessor :summarization_suggestion_edit_ratio
6988
+
6989
+ # Count of summarization suggestions results.
6990
+ # Corresponds to the JSON property `summarizationSuggestionResultCount`
6991
+ # @return [Fixnum]
6992
+ attr_accessor :summarization_suggestion_result_count
6993
+
6281
6994
  def initialize(**args)
6282
6995
  update!(**args)
6283
6996
  end
6284
6997
 
6285
6998
  # Update properties of this object
6286
6999
  def update!(**args)
7000
+ @aa_supervisor_assigned_conversations_count = args[:aa_supervisor_assigned_conversations_count] if args.key?(:aa_supervisor_assigned_conversations_count)
7001
+ @aa_supervisor_dropped_conversations_count = args[:aa_supervisor_dropped_conversations_count] if args.key?(:aa_supervisor_dropped_conversations_count)
7002
+ @aa_supervisor_escalated_conversations_count = args[:aa_supervisor_escalated_conversations_count] if args.key?(:aa_supervisor_escalated_conversations_count)
7003
+ @aa_supervisor_monitored_conversations_count = args[:aa_supervisor_monitored_conversations_count] if args.key?(:aa_supervisor_monitored_conversations_count)
7004
+ @aa_supervisor_transferred_to_human_agent_conv_count = args[:aa_supervisor_transferred_to_human_agent_conv_count] if args.key?(:aa_supervisor_transferred_to_human_agent_conv_count)
7005
+ @ai_coach_suggestion_agent_message_trigger_count = args[:ai_coach_suggestion_agent_message_trigger_count] if args.key?(:ai_coach_suggestion_agent_message_trigger_count)
7006
+ @ai_coach_suggestion_agent_usage_count = args[:ai_coach_suggestion_agent_usage_count] if args.key?(:ai_coach_suggestion_agent_usage_count)
7007
+ @ai_coach_suggestion_agent_usage_ratio = args[:ai_coach_suggestion_agent_usage_ratio] if args.key?(:ai_coach_suggestion_agent_usage_ratio)
7008
+ @ai_coach_suggestion_customer_message_trigger_count = args[:ai_coach_suggestion_customer_message_trigger_count] if args.key?(:ai_coach_suggestion_customer_message_trigger_count)
7009
+ @ai_coach_suggestion_customer_message_trigger_ratio = args[:ai_coach_suggestion_customer_message_trigger_ratio] if args.key?(:ai_coach_suggestion_customer_message_trigger_ratio)
7010
+ @ai_coach_suggestion_message_trigger_count = args[:ai_coach_suggestion_message_trigger_count] if args.key?(:ai_coach_suggestion_message_trigger_count)
7011
+ @ai_coach_suggestion_message_trigger_ratio = args[:ai_coach_suggestion_message_trigger_ratio] if args.key?(:ai_coach_suggestion_message_trigger_ratio)
6287
7012
  @average_agent_sentiment_score = args[:average_agent_sentiment_score] if args.key?(:average_agent_sentiment_score)
6288
7013
  @average_client_sentiment_score = args[:average_client_sentiment_score] if args.key?(:average_client_sentiment_score)
6289
7014
  @average_customer_satisfaction_rating = args[:average_customer_satisfaction_rating] if args.key?(:average_customer_satisfaction_rating)
@@ -6291,9 +7016,42 @@ module Google
6291
7016
  @average_qa_normalized_score = args[:average_qa_normalized_score] if args.key?(:average_qa_normalized_score)
6292
7017
  @average_qa_question_normalized_score = args[:average_qa_question_normalized_score] if args.key?(:average_qa_question_normalized_score)
6293
7018
  @average_silence_percentage = args[:average_silence_percentage] if args.key?(:average_silence_percentage)
7019
+ @average_summarization_suggestion_edit_distance = args[:average_summarization_suggestion_edit_distance] if args.key?(:average_summarization_suggestion_edit_distance)
7020
+ @average_summarization_suggestion_normalized_edit_distance = args[:average_summarization_suggestion_normalized_edit_distance] if args.key?(:average_summarization_suggestion_normalized_edit_distance)
6294
7021
  @average_turn_count = args[:average_turn_count] if args.key?(:average_turn_count)
7022
+ @avg_conversation_client_turn_sentiment_ema = args[:avg_conversation_client_turn_sentiment_ema] if args.key?(:avg_conversation_client_turn_sentiment_ema)
7023
+ @contained_conversation_count = args[:contained_conversation_count] if args.key?(:contained_conversation_count)
7024
+ @contained_conversation_ratio = args[:contained_conversation_ratio] if args.key?(:contained_conversation_ratio)
7025
+ @conversation_ai_coach_suggestion_count = args[:conversation_ai_coach_suggestion_count] if args.key?(:conversation_ai_coach_suggestion_count)
7026
+ @conversation_ai_coach_suggestion_ratio = args[:conversation_ai_coach_suggestion_ratio] if args.key?(:conversation_ai_coach_suggestion_ratio)
6295
7027
  @conversation_count = args[:conversation_count] if args.key?(:conversation_count)
7028
+ @conversation_suggested_summary_ratio = args[:conversation_suggested_summary_ratio] if args.key?(:conversation_suggested_summary_ratio)
7029
+ @conversation_total_agent_message_count = args[:conversation_total_agent_message_count] if args.key?(:conversation_total_agent_message_count)
7030
+ @conversation_total_customer_message_count = args[:conversation_total_customer_message_count] if args.key?(:conversation_total_customer_message_count)
7031
+ @conversational_agents_average_audio_in_audio_out_latency = args[:conversational_agents_average_audio_in_audio_out_latency] if args.key?(:conversational_agents_average_audio_in_audio_out_latency)
7032
+ @conversational_agents_average_end_to_end_latency = args[:conversational_agents_average_end_to_end_latency] if args.key?(:conversational_agents_average_end_to_end_latency)
7033
+ @conversational_agents_average_llm_call_latency = args[:conversational_agents_average_llm_call_latency] if args.key?(:conversational_agents_average_llm_call_latency)
7034
+ @conversational_agents_average_tts_latency = args[:conversational_agents_average_tts_latency] if args.key?(:conversational_agents_average_tts_latency)
7035
+ @dialogflow_average_webhook_latency = args[:dialogflow_average_webhook_latency] if args.key?(:dialogflow_average_webhook_latency)
7036
+ @dialogflow_conversations_escalation_count = args[:dialogflow_conversations_escalation_count] if args.key?(:dialogflow_conversations_escalation_count)
7037
+ @dialogflow_conversations_escalation_ratio = args[:dialogflow_conversations_escalation_ratio] if args.key?(:dialogflow_conversations_escalation_ratio)
7038
+ @dialogflow_interactions_no_input_ratio = args[:dialogflow_interactions_no_input_ratio] if args.key?(:dialogflow_interactions_no_input_ratio)
7039
+ @dialogflow_interactions_no_match_ratio = args[:dialogflow_interactions_no_match_ratio] if args.key?(:dialogflow_interactions_no_match_ratio)
7040
+ @dialogflow_webhook_failure_ratio = args[:dialogflow_webhook_failure_ratio] if args.key?(:dialogflow_webhook_failure_ratio)
7041
+ @dialogflow_webhook_timeout_ratio = args[:dialogflow_webhook_timeout_ratio] if args.key?(:dialogflow_webhook_timeout_ratio)
7042
+ @knowledge_assist_negative_feedback_ratio = args[:knowledge_assist_negative_feedback_ratio] if args.key?(:knowledge_assist_negative_feedback_ratio)
7043
+ @knowledge_assist_positive_feedback_ratio = args[:knowledge_assist_positive_feedback_ratio] if args.key?(:knowledge_assist_positive_feedback_ratio)
7044
+ @knowledge_assist_result_count = args[:knowledge_assist_result_count] if args.key?(:knowledge_assist_result_count)
7045
+ @knowledge_assist_uri_click_ratio = args[:knowledge_assist_uri_click_ratio] if args.key?(:knowledge_assist_uri_click_ratio)
7046
+ @knowledge_search_agent_query_source_ratio = args[:knowledge_search_agent_query_source_ratio] if args.key?(:knowledge_search_agent_query_source_ratio)
7047
+ @knowledge_search_negative_feedback_ratio = args[:knowledge_search_negative_feedback_ratio] if args.key?(:knowledge_search_negative_feedback_ratio)
7048
+ @knowledge_search_positive_feedback_ratio = args[:knowledge_search_positive_feedback_ratio] if args.key?(:knowledge_search_positive_feedback_ratio)
7049
+ @knowledge_search_result_count = args[:knowledge_search_result_count] if args.key?(:knowledge_search_result_count)
7050
+ @knowledge_search_suggested_query_source_ratio = args[:knowledge_search_suggested_query_source_ratio] if args.key?(:knowledge_search_suggested_query_source_ratio)
7051
+ @knowledge_search_uri_click_ratio = args[:knowledge_search_uri_click_ratio] if args.key?(:knowledge_search_uri_click_ratio)
6296
7052
  @qa_tag_scores = args[:qa_tag_scores] if args.key?(:qa_tag_scores)
7053
+ @summarization_suggestion_edit_ratio = args[:summarization_suggestion_edit_ratio] if args.key?(:summarization_suggestion_edit_ratio)
7054
+ @summarization_suggestion_result_count = args[:summarization_suggestion_result_count] if args.key?(:summarization_suggestion_result_count)
6297
7055
  end
6298
7056
  end
6299
7057
 
@@ -6322,6 +7080,86 @@ module Google
6322
7080
  end
6323
7081
  end
6324
7082
 
7083
+ # The measure related to dialogflow interactions.
7084
+ class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointDialogflowInteractionMeasure
7085
+ include Google::Apis::Core::Hashable
7086
+
7087
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7088
+ # 99th.
7089
+ # Corresponds to the JSON property `percentileAudioInAudioOutLatency`
7090
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult]
7091
+ attr_accessor :percentile_audio_in_audio_out_latency
7092
+
7093
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7094
+ # 99th.
7095
+ # Corresponds to the JSON property `percentileEndToEndLatency`
7096
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult]
7097
+ attr_accessor :percentile_end_to_end_latency
7098
+
7099
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7100
+ # 99th.
7101
+ # Corresponds to the JSON property `percentileLlmCallLatency`
7102
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult]
7103
+ attr_accessor :percentile_llm_call_latency
7104
+
7105
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7106
+ # 99th.
7107
+ # Corresponds to the JSON property `percentileToolUseLatency`
7108
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult]
7109
+ attr_accessor :percentile_tool_use_latency
7110
+
7111
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7112
+ # 99th.
7113
+ # Corresponds to the JSON property `percentileTtsLatency`
7114
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult]
7115
+ attr_accessor :percentile_tts_latency
7116
+
7117
+ def initialize(**args)
7118
+ update!(**args)
7119
+ end
7120
+
7121
+ # Update properties of this object
7122
+ def update!(**args)
7123
+ @percentile_audio_in_audio_out_latency = args[:percentile_audio_in_audio_out_latency] if args.key?(:percentile_audio_in_audio_out_latency)
7124
+ @percentile_end_to_end_latency = args[:percentile_end_to_end_latency] if args.key?(:percentile_end_to_end_latency)
7125
+ @percentile_llm_call_latency = args[:percentile_llm_call_latency] if args.key?(:percentile_llm_call_latency)
7126
+ @percentile_tool_use_latency = args[:percentile_tool_use_latency] if args.key?(:percentile_tool_use_latency)
7127
+ @percentile_tts_latency = args[:percentile_tts_latency] if args.key?(:percentile_tts_latency)
7128
+ end
7129
+ end
7130
+
7131
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
7132
+ # 99th.
7133
+ class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceDataPointPercentileResult
7134
+ include Google::Apis::Core::Hashable
7135
+
7136
+ # The 50th percentile value.
7137
+ # Corresponds to the JSON property `p50`
7138
+ # @return [Float]
7139
+ attr_accessor :p50
7140
+
7141
+ # The 90th percentile value.
7142
+ # Corresponds to the JSON property `p90`
7143
+ # @return [Float]
7144
+ attr_accessor :p90
7145
+
7146
+ # The 99th percentile value.
7147
+ # Corresponds to the JSON property `p99`
7148
+ # @return [Float]
7149
+ attr_accessor :p99
7150
+
7151
+ def initialize(**args)
7152
+ update!(**args)
7153
+ end
7154
+
7155
+ # Update properties of this object
7156
+ def update!(**args)
7157
+ @p50 = args[:p50] if args.key?(:p50)
7158
+ @p90 = args[:p90] if args.key?(:p90)
7159
+ @p99 = args[:p99] if args.key?(:p99)
7160
+ end
7161
+ end
7162
+
6325
7163
  # A time series of metric values.
6326
7164
  class GoogleCloudContactcenterinsightsV1QueryMetricsResponseSliceTimeSeries
6327
7165
  include Google::Apis::Core::Hashable
@@ -7152,25 +7990,19 @@ module Google
7152
7990
  end
7153
7991
  end
7154
7992
 
7155
- # Request for TuneQaScorecardRevision endpoint.
7156
- class GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest
7993
+ # The request message for testing auto labeling rules.
7994
+ class GoogleCloudContactcenterinsightsV1TestAutoLabelingRuleRequest
7157
7995
  include Google::Apis::Core::Hashable
7158
7996
 
7159
- # Required. Filter for selecting the feedback labels that needs to be used for
7160
- # training. This filter can be used to limit the feedback labels used for tuning
7161
- # to a feedback labels created or updated for a specific time-window etc.
7162
- # Corresponds to the JSON property `filter`
7163
- # @return [String]
7164
- attr_accessor :filter
7997
+ # Rule for auto-labeling conversations.
7998
+ # Corresponds to the JSON property `autoLabelingRule`
7999
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1AutoLabelingRule]
8000
+ attr_accessor :auto_labeling_rule
7165
8001
 
7166
- # Optional. Run in validate only mode, no fine tuning will actually run. Data
7167
- # quality validations like training data distributions will run. Even when set
7168
- # to false, the data quality validations will still run but once the validations
7169
- # complete we will proceed with the fine tune, if applicable.
7170
- # Corresponds to the JSON property `validateOnly`
7171
- # @return [Boolean]
7172
- attr_accessor :validate_only
7173
- alias_method :validate_only?, :validate_only
8002
+ # The conversation resource.
8003
+ # Corresponds to the JSON property `conversation`
8004
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Conversation]
8005
+ attr_accessor :conversation
7174
8006
 
7175
8007
  def initialize(**args)
7176
8008
  update!(**args)
@@ -7178,29 +8010,19 @@ module Google
7178
8010
 
7179
8011
  # Update properties of this object
7180
8012
  def update!(**args)
7181
- @filter = args[:filter] if args.key?(:filter)
7182
- @validate_only = args[:validate_only] if args.key?(:validate_only)
8013
+ @auto_labeling_rule = args[:auto_labeling_rule] if args.key?(:auto_labeling_rule)
8014
+ @conversation = args[:conversation] if args.key?(:conversation)
7183
8015
  end
7184
8016
  end
7185
8017
 
7186
- # Metadata for undeploying an issue model.
7187
- class GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata
8018
+ # The response message for testing auto labeling rules.
8019
+ class GoogleCloudContactcenterinsightsV1TestAutoLabelingRuleResponse
7188
8020
  include Google::Apis::Core::Hashable
7189
8021
 
7190
- # Output only. The time the operation was created.
7191
- # Corresponds to the JSON property `createTime`
7192
- # @return [String]
7193
- attr_accessor :create_time
7194
-
7195
- # Output only. The time the operation finished running.
7196
- # Corresponds to the JSON property `endTime`
8022
+ # The result of the test auto labeling rule.
8023
+ # Corresponds to the JSON property `labelResult`
7197
8024
  # @return [String]
7198
- attr_accessor :end_time
7199
-
7200
- # The request to undeploy an issue model.
7201
- # Corresponds to the JSON property `request`
7202
- # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest]
7203
- attr_accessor :request
8025
+ attr_accessor :label_result
7204
8026
 
7205
8027
  def initialize(**args)
7206
8028
  update!(**args)
@@ -7208,20 +8030,28 @@ module Google
7208
8030
 
7209
8031
  # Update properties of this object
7210
8032
  def update!(**args)
7211
- @create_time = args[:create_time] if args.key?(:create_time)
7212
- @end_time = args[:end_time] if args.key?(:end_time)
7213
- @request = args[:request] if args.key?(:request)
8033
+ @label_result = args[:label_result] if args.key?(:label_result)
7214
8034
  end
7215
8035
  end
7216
8036
 
7217
- # The request to undeploy an issue model.
7218
- class GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest
8037
+ # Metadata for testing correlation config.
8038
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigMetadata
7219
8039
  include Google::Apis::Core::Hashable
7220
8040
 
7221
- # Required. The issue model to undeploy.
7222
- # Corresponds to the JSON property `name`
8041
+ # Output only. The time the operation was created.
8042
+ # Corresponds to the JSON property `createTime`
7223
8043
  # @return [String]
7224
- attr_accessor :name
8044
+ attr_accessor :create_time
8045
+
8046
+ # The dataset used for sampling conversations.
8047
+ # Corresponds to the JSON property `dataset`
8048
+ # @return [String]
8049
+ attr_accessor :dataset
8050
+
8051
+ # Statistics for TestCorrelationConfig operation.
8052
+ # Corresponds to the JSON property `stats`
8053
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1TestCorrelationConfigMetadataFullConversationCorrelationStats]
8054
+ attr_accessor :stats
7225
8055
 
7226
8056
  def initialize(**args)
7227
8057
  update!(**args)
@@ -7229,44 +8059,316 @@ module Google
7229
8059
 
7230
8060
  # Update properties of this object
7231
8061
  def update!(**args)
7232
- @name = args[:name] if args.key?(:name)
8062
+ @create_time = args[:create_time] if args.key?(:create_time)
8063
+ @dataset = args[:dataset] if args.key?(:dataset)
8064
+ @stats = args[:stats] if args.key?(:stats)
7233
8065
  end
7234
8066
  end
7235
8067
 
7236
- # The response to undeploy an issue model.
7237
- class GoogleCloudContactcenterinsightsV1UndeployIssueModelResponse
8068
+ # Statistics for TestCorrelationConfig operation.
8069
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigMetadataFullConversationCorrelationStats
7238
8070
  include Google::Apis::Core::Hashable
7239
8071
 
8072
+ # A list of errors that occurred during correlation, one for each conversation
8073
+ # that failed.
8074
+ # Corresponds to the JSON property `conversationCorrelationErrors`
8075
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1TestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError>]
8076
+ attr_accessor :conversation_correlation_errors
8077
+
8078
+ # The number of conversations correlated.
8079
+ # Corresponds to the JSON property `correlatedConversationsCount`
8080
+ # @return [Fixnum]
8081
+ attr_accessor :correlated_conversations_count
8082
+
8083
+ # The number of conversations that failed correlation.
8084
+ # Corresponds to the JSON property `failedConversationsCount`
8085
+ # @return [Fixnum]
8086
+ attr_accessor :failed_conversations_count
8087
+
8088
+ # Partial errors during test correlation config operation that might cause the
8089
+ # operation output to be incomplete.
8090
+ # Corresponds to the JSON property `partialErrors`
8091
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
8092
+ attr_accessor :partial_errors
8093
+
8094
+ # The number of conversations sampled.
8095
+ # Corresponds to the JSON property `sampledConversationsCount`
8096
+ # @return [Fixnum]
8097
+ attr_accessor :sampled_conversations_count
8098
+
7240
8099
  def initialize(**args)
7241
8100
  update!(**args)
7242
8101
  end
7243
8102
 
7244
8103
  # Update properties of this object
7245
8104
  def update!(**args)
8105
+ @conversation_correlation_errors = args[:conversation_correlation_errors] if args.key?(:conversation_correlation_errors)
8106
+ @correlated_conversations_count = args[:correlated_conversations_count] if args.key?(:correlated_conversations_count)
8107
+ @failed_conversations_count = args[:failed_conversations_count] if args.key?(:failed_conversations_count)
8108
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
8109
+ @sampled_conversations_count = args[:sampled_conversations_count] if args.key?(:sampled_conversations_count)
7246
8110
  end
7247
8111
  end
7248
8112
 
7249
- # The request to undeploy a QaScorecardRevision
7250
- class GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest
8113
+ # An error that occurred during correlation for a specific conversation.
8114
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError
7251
8115
  include Google::Apis::Core::Hashable
7252
8116
 
8117
+ # The conversation resource name that had an error during correlation.
8118
+ # Corresponds to the JSON property `conversation`
8119
+ # @return [String]
8120
+ attr_accessor :conversation
8121
+
8122
+ # The `Status` type defines a logical error model that is suitable for different
8123
+ # programming environments, including REST APIs and RPC APIs. It is used by [
8124
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
8125
+ # data: error code, error message, and error details. You can find out more
8126
+ # about this error model and how to work with it in the [API Design Guide](https:
8127
+ # //cloud.google.com/apis/design/errors).
8128
+ # Corresponds to the JSON property `status`
8129
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
8130
+ attr_accessor :status
8131
+
7253
8132
  def initialize(**args)
7254
8133
  update!(**args)
7255
8134
  end
7256
8135
 
7257
8136
  # Update properties of this object
7258
8137
  def update!(**args)
8138
+ @conversation = args[:conversation] if args.key?(:conversation)
8139
+ @status = args[:status] if args.key?(:status)
7259
8140
  end
7260
8141
  end
7261
8142
 
7262
- # The metadata for updating a QaQuestionTag Resource.
7263
- class GoogleCloudContactcenterinsightsV1UpdateQaQuestionTagMetadata
8143
+ # The request to test correlation config.
8144
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigRequest
7264
8145
  include Google::Apis::Core::Hashable
7265
8146
 
7266
- # Output only. The time the operation was created.
7267
- # Corresponds to the JSON property `createTime`
7268
- # @return [String]
7269
- attr_accessor :create_time
8147
+ # Wrapper for a list of conversations.
8148
+ # Corresponds to the JSON property `conversations`
8149
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1TestCorrelationConfigRequestConversations]
8150
+ attr_accessor :conversations
8151
+
8152
+ # A configuration that defines how to correlate conversations for a given a
8153
+ # given project.
8154
+ # Corresponds to the JSON property `correlationConfig`
8155
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1CorrelationConfig]
8156
+ attr_accessor :correlation_config
8157
+
8158
+ # Optional. Filter to select conversations to test correlation against.
8159
+ # Conversations matching this filter will be sampled based on start time. The
8160
+ # most recent `max_sample_count` conversations will be selected. If no
8161
+ # conversations match the filter, the request will fail with an `
8162
+ # INVALID_ARGUMENT` error.
8163
+ # Corresponds to the JSON property `filter`
8164
+ # @return [String]
8165
+ attr_accessor :filter
8166
+
8167
+ # Optional. The maximum number of conversations to sample when using the `filter`
8168
+ # . If not set, defaults to 1000. Values greater than 1000 are coerced to 1000.
8169
+ # This field is ignored if `conversations` is provided.
8170
+ # Corresponds to the JSON property `maxSampleCount`
8171
+ # @return [Fixnum]
8172
+ attr_accessor :max_sample_count
8173
+
8174
+ def initialize(**args)
8175
+ update!(**args)
8176
+ end
8177
+
8178
+ # Update properties of this object
8179
+ def update!(**args)
8180
+ @conversations = args[:conversations] if args.key?(:conversations)
8181
+ @correlation_config = args[:correlation_config] if args.key?(:correlation_config)
8182
+ @filter = args[:filter] if args.key?(:filter)
8183
+ @max_sample_count = args[:max_sample_count] if args.key?(:max_sample_count)
8184
+ end
8185
+ end
8186
+
8187
+ # Wrapper for a list of conversations.
8188
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigRequestConversations
8189
+ include Google::Apis::Core::Hashable
8190
+
8191
+ # Optional. The conversations.
8192
+ # Corresponds to the JSON property `conversations`
8193
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1Conversation>]
8194
+ attr_accessor :conversations
8195
+
8196
+ def initialize(**args)
8197
+ update!(**args)
8198
+ end
8199
+
8200
+ # Update properties of this object
8201
+ def update!(**args)
8202
+ @conversations = args[:conversations] if args.key?(:conversations)
8203
+ end
8204
+ end
8205
+
8206
+ # The response of testing correlation config.
8207
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigResponse
8208
+ include Google::Apis::Core::Hashable
8209
+
8210
+ # Wrapper for detailed, step-by-step results.
8211
+ # Corresponds to the JSON property `detailedResults`
8212
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1TestCorrelationConfigResponseDetailedCorrelationResults]
8213
+ attr_accessor :detailed_results
8214
+
8215
+ # Partial errors during test correlation config operation that might cause the
8216
+ # operation output to be incomplete.
8217
+ # Corresponds to the JSON property `partialErrors`
8218
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
8219
+ attr_accessor :partial_errors
8220
+
8221
+ def initialize(**args)
8222
+ update!(**args)
8223
+ end
8224
+
8225
+ # Update properties of this object
8226
+ def update!(**args)
8227
+ @detailed_results = args[:detailed_results] if args.key?(:detailed_results)
8228
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
8229
+ end
8230
+ end
8231
+
8232
+ # Wrapper for detailed, step-by-step results.
8233
+ class GoogleCloudContactcenterinsightsV1TestCorrelationConfigResponseDetailedCorrelationResults
8234
+ include Google::Apis::Core::Hashable
8235
+
8236
+ # A list of constraint evaluation results for each pair of conversations.
8237
+ # Corresponds to the JSON property `constraintResults`
8238
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConstraintEvaluationResult>]
8239
+ attr_accessor :constraint_results
8240
+
8241
+ # A list of join key correlation results for each conversation tested.
8242
+ # Corresponds to the JSON property `joinKeyResults`
8243
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1ConversationCorrelationResult>]
8244
+ attr_accessor :join_key_results
8245
+
8246
+ def initialize(**args)
8247
+ update!(**args)
8248
+ end
8249
+
8250
+ # Update properties of this object
8251
+ def update!(**args)
8252
+ @constraint_results = args[:constraint_results] if args.key?(:constraint_results)
8253
+ @join_key_results = args[:join_key_results] if args.key?(:join_key_results)
8254
+ end
8255
+ end
8256
+
8257
+ # Request for TuneQaScorecardRevision endpoint.
8258
+ class GoogleCloudContactcenterinsightsV1TuneQaScorecardRevisionRequest
8259
+ include Google::Apis::Core::Hashable
8260
+
8261
+ # Required. Filter for selecting the feedback labels that needs to be used for
8262
+ # training. This filter can be used to limit the feedback labels used for tuning
8263
+ # to a feedback labels created or updated for a specific time-window etc.
8264
+ # Corresponds to the JSON property `filter`
8265
+ # @return [String]
8266
+ attr_accessor :filter
8267
+
8268
+ # Optional. Run in validate only mode, no fine tuning will actually run. Data
8269
+ # quality validations like training data distributions will run. Even when set
8270
+ # to false, the data quality validations will still run but once the validations
8271
+ # complete we will proceed with the fine tune, if applicable.
8272
+ # Corresponds to the JSON property `validateOnly`
8273
+ # @return [Boolean]
8274
+ attr_accessor :validate_only
8275
+ alias_method :validate_only?, :validate_only
8276
+
8277
+ def initialize(**args)
8278
+ update!(**args)
8279
+ end
8280
+
8281
+ # Update properties of this object
8282
+ def update!(**args)
8283
+ @filter = args[:filter] if args.key?(:filter)
8284
+ @validate_only = args[:validate_only] if args.key?(:validate_only)
8285
+ end
8286
+ end
8287
+
8288
+ # Metadata for undeploying an issue model.
8289
+ class GoogleCloudContactcenterinsightsV1UndeployIssueModelMetadata
8290
+ include Google::Apis::Core::Hashable
8291
+
8292
+ # Output only. The time the operation was created.
8293
+ # Corresponds to the JSON property `createTime`
8294
+ # @return [String]
8295
+ attr_accessor :create_time
8296
+
8297
+ # Output only. The time the operation finished running.
8298
+ # Corresponds to the JSON property `endTime`
8299
+ # @return [String]
8300
+ attr_accessor :end_time
8301
+
8302
+ # The request to undeploy an issue model.
8303
+ # Corresponds to the JSON property `request`
8304
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest]
8305
+ attr_accessor :request
8306
+
8307
+ def initialize(**args)
8308
+ update!(**args)
8309
+ end
8310
+
8311
+ # Update properties of this object
8312
+ def update!(**args)
8313
+ @create_time = args[:create_time] if args.key?(:create_time)
8314
+ @end_time = args[:end_time] if args.key?(:end_time)
8315
+ @request = args[:request] if args.key?(:request)
8316
+ end
8317
+ end
8318
+
8319
+ # The request to undeploy an issue model.
8320
+ class GoogleCloudContactcenterinsightsV1UndeployIssueModelRequest
8321
+ include Google::Apis::Core::Hashable
8322
+
8323
+ # Required. The issue model to undeploy.
8324
+ # Corresponds to the JSON property `name`
8325
+ # @return [String]
8326
+ attr_accessor :name
8327
+
8328
+ def initialize(**args)
8329
+ update!(**args)
8330
+ end
8331
+
8332
+ # Update properties of this object
8333
+ def update!(**args)
8334
+ @name = args[:name] if args.key?(:name)
8335
+ end
8336
+ end
8337
+
8338
+ # The response to undeploy an issue model.
8339
+ class GoogleCloudContactcenterinsightsV1UndeployIssueModelResponse
8340
+ include Google::Apis::Core::Hashable
8341
+
8342
+ def initialize(**args)
8343
+ update!(**args)
8344
+ end
8345
+
8346
+ # Update properties of this object
8347
+ def update!(**args)
8348
+ end
8349
+ end
8350
+
8351
+ # The request to undeploy a QaScorecardRevision
8352
+ class GoogleCloudContactcenterinsightsV1UndeployQaScorecardRevisionRequest
8353
+ include Google::Apis::Core::Hashable
8354
+
8355
+ def initialize(**args)
8356
+ update!(**args)
8357
+ end
8358
+
8359
+ # Update properties of this object
8360
+ def update!(**args)
8361
+ end
8362
+ end
8363
+
8364
+ # The metadata for updating a QaQuestionTag Resource.
8365
+ class GoogleCloudContactcenterinsightsV1UpdateQaQuestionTagMetadata
8366
+ include Google::Apis::Core::Hashable
8367
+
8368
+ # Output only. The time the operation was created.
8369
+ # Corresponds to the JSON property `createTime`
8370
+ # @return [String]
8371
+ attr_accessor :create_time
7270
8372
 
7271
8373
  # Output only. The time the operation finished running.
7272
8374
  # Corresponds to the JSON property `endTime`
@@ -8276,6 +9378,74 @@ module Google
8276
9378
  end
8277
9379
  end
8278
9380
 
9381
+ # The result of testing a constraint expression on a pair of conversations.
9382
+ class GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResult
9383
+ include Google::Apis::Core::Hashable
9384
+
9385
+ # The first conversation resource name.
9386
+ # Corresponds to the JSON property `conversationA`
9387
+ # @return [String]
9388
+ attr_accessor :conversation_a
9389
+
9390
+ # The second conversation resource name.
9391
+ # Corresponds to the JSON property `conversationB`
9392
+ # @return [String]
9393
+ attr_accessor :conversation_b
9394
+
9395
+ # The results for each applicable constraint rule.
9396
+ # Corresponds to the JSON property `ruleConstraintResults`
9397
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResultRuleConstraintResult>]
9398
+ attr_accessor :rule_constraint_results
9399
+
9400
+ def initialize(**args)
9401
+ update!(**args)
9402
+ end
9403
+
9404
+ # Update properties of this object
9405
+ def update!(**args)
9406
+ @conversation_a = args[:conversation_a] if args.key?(:conversation_a)
9407
+ @conversation_b = args[:conversation_b] if args.key?(:conversation_b)
9408
+ @rule_constraint_results = args[:rule_constraint_results] if args.key?(:rule_constraint_results)
9409
+ end
9410
+ end
9411
+
9412
+ # The result of a single constraint rule on the pair of conversations.
9413
+ class GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResultRuleConstraintResult
9414
+ include Google::Apis::Core::Hashable
9415
+
9416
+ # Whether the constraint expression evaluated to true for (A, B) or (B, A).
9417
+ # Corresponds to the JSON property `constraintMet`
9418
+ # @return [Boolean]
9419
+ attr_accessor :constraint_met
9420
+ alias_method :constraint_met?, :constraint_met
9421
+
9422
+ # The `Status` type defines a logical error model that is suitable for different
9423
+ # programming environments, including REST APIs and RPC APIs. It is used by [
9424
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
9425
+ # data: error code, error message, and error details. You can find out more
9426
+ # about this error model and how to work with it in the [API Design Guide](https:
9427
+ # //cloud.google.com/apis/design/errors).
9428
+ # Corresponds to the JSON property `error`
9429
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
9430
+ attr_accessor :error
9431
+
9432
+ # The rule ID.
9433
+ # Corresponds to the JSON property `ruleId`
9434
+ # @return [String]
9435
+ attr_accessor :rule_id
9436
+
9437
+ def initialize(**args)
9438
+ update!(**args)
9439
+ end
9440
+
9441
+ # Update properties of this object
9442
+ def update!(**args)
9443
+ @constraint_met = args[:constraint_met] if args.key?(:constraint_met)
9444
+ @error = args[:error] if args.key?(:error)
9445
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
9446
+ end
9447
+ end
9448
+
8279
9449
  # The conversation resource.
8280
9450
  class GoogleCloudContactcenterinsightsV1alpha1Conversation
8281
9451
  include Google::Apis::Core::Hashable
@@ -8291,6 +9461,11 @@ module Google
8291
9461
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationCallMetadata]
8292
9462
  attr_accessor :call_metadata
8293
9463
 
9464
+ # Info for correlating across conversations.
9465
+ # Corresponds to the JSON property `correlationInfo`
9466
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationInfo]
9467
+ attr_accessor :correlation_info
9468
+
8294
9469
  # Output only. The time at which the conversation was created.
8295
9470
  # Corresponds to the JSON property `createTime`
8296
9471
  # @return [String]
@@ -8340,7 +9515,7 @@ module Google
8340
9515
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationSummarizationSuggestionData]
8341
9516
  attr_accessor :latest_summary
8342
9517
 
8343
- # Immutable. The conversation medium, if unspecified will default to PHONE_CALL.
9518
+ # Immutable. The conversation medium.
8344
9519
  # Corresponds to the JSON property `medium`
8345
9520
  # @return [String]
8346
9521
  attr_accessor :medium
@@ -8408,6 +9583,7 @@ module Google
8408
9583
  def update!(**args)
8409
9584
  @agent_id = args[:agent_id] if args.key?(:agent_id)
8410
9585
  @call_metadata = args[:call_metadata] if args.key?(:call_metadata)
9586
+ @correlation_info = args[:correlation_info] if args.key?(:correlation_info)
8411
9587
  @create_time = args[:create_time] if args.key?(:create_time)
8412
9588
  @data_source = args[:data_source] if args.key?(:data_source)
8413
9589
  @dialogflow_intents = args[:dialogflow_intents] if args.key?(:dialogflow_intents)
@@ -8456,6 +9632,102 @@ module Google
8456
9632
  end
8457
9633
  end
8458
9634
 
9635
+ # Info for correlating across conversations.
9636
+ class GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationInfo
9637
+ include Google::Apis::Core::Hashable
9638
+
9639
+ # Output only. The correlation types of this conversation. A single conversation
9640
+ # can have multiple correlation types. For example a conversation that only has
9641
+ # a single segment is both a SEGMENT and a FULL_CONVERSATION.
9642
+ # Corresponds to the JSON property `correlationTypes`
9643
+ # @return [Array<String>]
9644
+ attr_accessor :correlation_types
9645
+
9646
+ # Output only. The full conversation correlation id this conversation is a
9647
+ # segment of.
9648
+ # Corresponds to the JSON property `fullConversationCorrelationId`
9649
+ # @return [String]
9650
+ attr_accessor :full_conversation_correlation_id
9651
+
9652
+ # Output only. The full conversation correlation id this conversation is a
9653
+ # merged conversation of.
9654
+ # Corresponds to the JSON property `mergedFullConversationCorrelationId`
9655
+ # @return [String]
9656
+ attr_accessor :merged_full_conversation_correlation_id
9657
+
9658
+ def initialize(**args)
9659
+ update!(**args)
9660
+ end
9661
+
9662
+ # Update properties of this object
9663
+ def update!(**args)
9664
+ @correlation_types = args[:correlation_types] if args.key?(:correlation_types)
9665
+ @full_conversation_correlation_id = args[:full_conversation_correlation_id] if args.key?(:full_conversation_correlation_id)
9666
+ @merged_full_conversation_correlation_id = args[:merged_full_conversation_correlation_id] if args.key?(:merged_full_conversation_correlation_id)
9667
+ end
9668
+ end
9669
+
9670
+ # The result of testing correlation config on a single conversation.
9671
+ class GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationResult
9672
+ include Google::Apis::Core::Hashable
9673
+
9674
+ # The conversation resource name.
9675
+ # Corresponds to the JSON property `conversation`
9676
+ # @return [String]
9677
+ attr_accessor :conversation
9678
+
9679
+ # The results for each correlation rule.
9680
+ # Corresponds to the JSON property `ruleResults`
9681
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationResultRuleCorrelationResult>]
9682
+ attr_accessor :rule_results
9683
+
9684
+ def initialize(**args)
9685
+ update!(**args)
9686
+ end
9687
+
9688
+ # Update properties of this object
9689
+ def update!(**args)
9690
+ @conversation = args[:conversation] if args.key?(:conversation)
9691
+ @rule_results = args[:rule_results] if args.key?(:rule_results)
9692
+ end
9693
+ end
9694
+
9695
+ # The result of a single correlation rule.
9696
+ class GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationResultRuleCorrelationResult
9697
+ include Google::Apis::Core::Hashable
9698
+
9699
+ # The correlation ID generated by the join key expression.
9700
+ # Corresponds to the JSON property `correlationId`
9701
+ # @return [String]
9702
+ attr_accessor :correlation_id
9703
+
9704
+ # The `Status` type defines a logical error model that is suitable for different
9705
+ # programming environments, including REST APIs and RPC APIs. It is used by [
9706
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
9707
+ # data: error code, error message, and error details. You can find out more
9708
+ # about this error model and how to work with it in the [API Design Guide](https:
9709
+ # //cloud.google.com/apis/design/errors).
9710
+ # Corresponds to the JSON property `error`
9711
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
9712
+ attr_accessor :error
9713
+
9714
+ # The rule ID.
9715
+ # Corresponds to the JSON property `ruleId`
9716
+ # @return [String]
9717
+ attr_accessor :rule_id
9718
+
9719
+ def initialize(**args)
9720
+ update!(**args)
9721
+ end
9722
+
9723
+ # Update properties of this object
9724
+ def update!(**args)
9725
+ @correlation_id = args[:correlation_id] if args.key?(:correlation_id)
9726
+ @error = args[:error] if args.key?(:error)
9727
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
9728
+ end
9729
+ end
9730
+
8459
9731
  # The conversation source, which is a combination of transcript and audio.
8460
9732
  class GoogleCloudContactcenterinsightsV1alpha1ConversationDataSource
8461
9733
  include Google::Apis::Core::Hashable
@@ -11663,6 +12935,11 @@ module Google
11663
12935
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure]
11664
12936
  attr_accessor :conversation_measure
11665
12937
 
12938
+ # The measure related to dialogflow interactions.
12939
+ # Corresponds to the JSON property `dialogflowInteractionMeasure`
12940
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointDialogflowInteractionMeasure]
12941
+ attr_accessor :dialogflow_interaction_measure
12942
+
11666
12943
  # Represents a time interval, encoded as a Timestamp start (inclusive) and a
11667
12944
  # Timestamp end (exclusive). The start must be less than or equal to the end.
11668
12945
  # When the start equals the end, the interval is empty (matches no time). When
@@ -11678,6 +12955,7 @@ module Google
11678
12955
  # Update properties of this object
11679
12956
  def update!(**args)
11680
12957
  @conversation_measure = args[:conversation_measure] if args.key?(:conversation_measure)
12958
+ @dialogflow_interaction_measure = args[:dialogflow_interaction_measure] if args.key?(:dialogflow_interaction_measure)
11681
12959
  @interval = args[:interval] if args.key?(:interval)
11682
12960
  end
11683
12961
  end
@@ -11686,6 +12964,70 @@ module Google
11686
12964
  class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasure
11687
12965
  include Google::Apis::Core::Hashable
11688
12966
 
12967
+ # The number of conversations that were assigned to an AA human supervisor.
12968
+ # Corresponds to the JSON property `aaSupervisorAssignedConversationsCount`
12969
+ # @return [Fixnum]
12970
+ attr_accessor :aa_supervisor_assigned_conversations_count
12971
+
12972
+ # The number of conversations that were dropped, i.e. escalated but not assigned
12973
+ # to an AA human supervisor.
12974
+ # Corresponds to the JSON property `aaSupervisorDroppedConversationsCount`
12975
+ # @return [Fixnum]
12976
+ attr_accessor :aa_supervisor_dropped_conversations_count
12977
+
12978
+ # The number of conversations that were escalated to an AA human supervisor for
12979
+ # intervention.
12980
+ # Corresponds to the JSON property `aaSupervisorEscalatedConversationsCount`
12981
+ # @return [Fixnum]
12982
+ attr_accessor :aa_supervisor_escalated_conversations_count
12983
+
12984
+ # The number of conversations scanned by the AA human supervisor.
12985
+ # Corresponds to the JSON property `aaSupervisorMonitoredConversationsCount`
12986
+ # @return [Fixnum]
12987
+ attr_accessor :aa_supervisor_monitored_conversations_count
12988
+
12989
+ # The number of conversations transferred to a human agent.
12990
+ # Corresponds to the JSON property `aaSupervisorTransferredToHumanAgentConvCount`
12991
+ # @return [Fixnum]
12992
+ attr_accessor :aa_supervisor_transferred_to_human_agent_conv_count
12993
+
12994
+ # Count of agent messages that triggered an Ai Coach Suggestion.
12995
+ # Corresponds to the JSON property `aiCoachSuggestionAgentMessageTriggerCount`
12996
+ # @return [Fixnum]
12997
+ attr_accessor :ai_coach_suggestion_agent_message_trigger_count
12998
+
12999
+ # Count of Ai Coach Suggestion that has been used by agents.
13000
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageCount`
13001
+ # @return [Fixnum]
13002
+ attr_accessor :ai_coach_suggestion_agent_usage_count
13003
+
13004
+ # Proportion of Ai Coach Suggestion that has been used by agents.
13005
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageRatio`
13006
+ # @return [Float]
13007
+ attr_accessor :ai_coach_suggestion_agent_usage_ratio
13008
+
13009
+ # Count of customer messages that triggered an Ai Coach Suggestion.
13010
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerCount`
13011
+ # @return [Fixnum]
13012
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_count
13013
+
13014
+ # Proportion of customer messages that triggered an Ai Coach Suggestion.
13015
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerRatio`
13016
+ # @return [Float]
13017
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_ratio
13018
+
13019
+ # Count of end_of_utterance trigger event messages that triggered an Ai Coach
13020
+ # Suggestion.
13021
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerCount`
13022
+ # @return [Fixnum]
13023
+ attr_accessor :ai_coach_suggestion_message_trigger_count
13024
+
13025
+ # Proportion of end_of_utterance trigger event messages that triggered an Ai
13026
+ # Coach Suggestion.
13027
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerRatio`
13028
+ # @return [Float]
13029
+ attr_accessor :ai_coach_suggestion_message_trigger_ratio
13030
+
11689
13031
  # The average agent's sentiment score.
11690
13032
  # Corresponds to the JSON property `averageAgentSentimentScore`
11691
13033
  # @return [Float]
@@ -11713,41 +13055,248 @@ module Google
11713
13055
  # request specifies a dimension of QA_SCORECARD_ID.
11714
13056
  # Corresponds to the JSON property `averageQaNormalizedScore`
11715
13057
  # @return [Float]
11716
- attr_accessor :average_qa_normalized_score
13058
+ attr_accessor :average_qa_normalized_score
13059
+
13060
+ # Average QA normalized score averaged for questions averaged across all
13061
+ # revisions of the parent scorecard. Will be only populated if the request
13062
+ # specifies a dimension of QA_QUESTION_ID.
13063
+ # Corresponds to the JSON property `averageQaQuestionNormalizedScore`
13064
+ # @return [Float]
13065
+ attr_accessor :average_qa_question_normalized_score
13066
+
13067
+ # The average silence percentage.
13068
+ # Corresponds to the JSON property `averageSilencePercentage`
13069
+ # @return [Float]
13070
+ attr_accessor :average_silence_percentage
13071
+
13072
+ # Average edit distance of the summarization suggestions. Edit distance (also
13073
+ # called as levenshtein distance) is calculated by summing up number of
13074
+ # insertions, deletions and substitutions required to transform the summization
13075
+ # feedback to the original summary suggestion.
13076
+ # Corresponds to the JSON property `averageSummarizationSuggestionEditDistance`
13077
+ # @return [Float]
13078
+ attr_accessor :average_summarization_suggestion_edit_distance
13079
+
13080
+ # Normalized Average edit distance of the summarization suggestions. Edit
13081
+ # distance (also called as levenshtein distance) is calculated by summing up
13082
+ # number of insertions, deletions and substitutions required to transform the
13083
+ # summization feedback to the original summary suggestion. Normalized edit
13084
+ # distance is the average of (edit distance / summary length).
13085
+ # Corresponds to the JSON property `averageSummarizationSuggestionNormalizedEditDistance`
13086
+ # @return [Float]
13087
+ attr_accessor :average_summarization_suggestion_normalized_edit_distance
13088
+
13089
+ # The average turn count.
13090
+ # Corresponds to the JSON property `averageTurnCount`
13091
+ # @return [Float]
13092
+ attr_accessor :average_turn_count
13093
+
13094
+ # The exponential moving average of the sentiment score of client turns in the
13095
+ # conversation.
13096
+ # Corresponds to the JSON property `avgConversationClientTurnSentimentEma`
13097
+ # @return [Float]
13098
+ attr_accessor :avg_conversation_client_turn_sentiment_ema
13099
+
13100
+ # The number of conversations that were contained.
13101
+ # Corresponds to the JSON property `containedConversationCount`
13102
+ # @return [Fixnum]
13103
+ attr_accessor :contained_conversation_count
13104
+
13105
+ # The percentage of conversations that were contained.
13106
+ # Corresponds to the JSON property `containedConversationRatio`
13107
+ # @return [Float]
13108
+ attr_accessor :contained_conversation_ratio
13109
+
13110
+ # Count of conversations that has Ai Coach Suggestions.
13111
+ # Corresponds to the JSON property `conversationAiCoachSuggestionCount`
13112
+ # @return [Fixnum]
13113
+ attr_accessor :conversation_ai_coach_suggestion_count
13114
+
13115
+ # Proportion of conversations that has Ai Coach Suggestions.
13116
+ # Corresponds to the JSON property `conversationAiCoachSuggestionRatio`
13117
+ # @return [Float]
13118
+ attr_accessor :conversation_ai_coach_suggestion_ratio
13119
+
13120
+ # The conversation count.
13121
+ # Corresponds to the JSON property `conversationCount`
13122
+ # @return [Fixnum]
13123
+ attr_accessor :conversation_count
13124
+
13125
+ # Proportion of conversations that had a suggested summary.
13126
+ # Corresponds to the JSON property `conversationSuggestedSummaryRatio`
13127
+ # @return [Float]
13128
+ attr_accessor :conversation_suggested_summary_ratio
13129
+
13130
+ # The agent message count.
13131
+ # Corresponds to the JSON property `conversationTotalAgentMessageCount`
13132
+ # @return [Fixnum]
13133
+ attr_accessor :conversation_total_agent_message_count
13134
+
13135
+ # The customer message count.
13136
+ # Corresponds to the JSON property `conversationTotalCustomerMessageCount`
13137
+ # @return [Fixnum]
13138
+ attr_accessor :conversation_total_customer_message_count
13139
+
13140
+ # The average latency of conversational agents' audio in audio out latency per
13141
+ # interaction. This is computed as the average of the all the interactions'
13142
+ # audio in audio out latencies in a conversation and averaged across
13143
+ # conversations.
13144
+ # Corresponds to the JSON property `conversationalAgentsAverageAudioInAudioOutLatency`
13145
+ # @return [Float]
13146
+ attr_accessor :conversational_agents_average_audio_in_audio_out_latency
13147
+
13148
+ # The average latency of conversational agents' latency per interaction. This is
13149
+ # computed as the average of the all the iteractions' end to end latencies in a
13150
+ # conversation and averaged across conversations. The e2e latency is the time
13151
+ # between the end of the user utterance and the start of the agent utterance on
13152
+ # the interaction level.
13153
+ # Corresponds to the JSON property `conversationalAgentsAverageEndToEndLatency`
13154
+ # @return [Float]
13155
+ attr_accessor :conversational_agents_average_end_to_end_latency
13156
+
13157
+ # The average latency of conversational agents' LLM call latency per interaction.
13158
+ # This is computed as the average of the all the interactions LLM call
13159
+ # latencies in a conversation and averaged across conversations.
13160
+ # Corresponds to the JSON property `conversationalAgentsAverageLlmCallLatency`
13161
+ # @return [Float]
13162
+ attr_accessor :conversational_agents_average_llm_call_latency
13163
+
13164
+ # The macro average latency of conversational agents' TTS latency per
13165
+ # interaction. This is computed as the average of the all the interactions' TTS
13166
+ # latencies in a conversation and averaged across conversations.
13167
+ # Corresponds to the JSON property `conversationalAgentsAverageTtsLatency`
13168
+ # @return [Float]
13169
+ attr_accessor :conversational_agents_average_tts_latency
13170
+
13171
+ # Average latency of dialogflow webhook calls.
13172
+ # Corresponds to the JSON property `dialogflowAverageWebhookLatency`
13173
+ # @return [Float]
13174
+ attr_accessor :dialogflow_average_webhook_latency
13175
+
13176
+ # count of conversations that was handed off from virtual agent to human agent.
13177
+ # Corresponds to the JSON property `dialogflowConversationsEscalationCount`
13178
+ # @return [Float]
13179
+ attr_accessor :dialogflow_conversations_escalation_count
13180
+
13181
+ # Proportion of conversations that was handed off from virtual agent to human
13182
+ # agent.
13183
+ # Corresponds to the JSON property `dialogflowConversationsEscalationRatio`
13184
+ # @return [Float]
13185
+ attr_accessor :dialogflow_conversations_escalation_ratio
13186
+
13187
+ # Proportion of dialogflow interactions that has empty input.
13188
+ # Corresponds to the JSON property `dialogflowInteractionsNoInputRatio`
13189
+ # @return [Float]
13190
+ attr_accessor :dialogflow_interactions_no_input_ratio
13191
+
13192
+ # Proportion of dialogflow interactions that has no intent match for the input.
13193
+ # Corresponds to the JSON property `dialogflowInteractionsNoMatchRatio`
13194
+ # @return [Float]
13195
+ attr_accessor :dialogflow_interactions_no_match_ratio
13196
+
13197
+ # Proportion of dialogflow webhook calls that failed.
13198
+ # Corresponds to the JSON property `dialogflowWebhookFailureRatio`
13199
+ # @return [Float]
13200
+ attr_accessor :dialogflow_webhook_failure_ratio
13201
+
13202
+ # Proportion of dialogflow webhook calls that timed out.
13203
+ # Corresponds to the JSON property `dialogflowWebhookTimeoutRatio`
13204
+ # @return [Float]
13205
+ attr_accessor :dialogflow_webhook_timeout_ratio
13206
+
13207
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
13208
+ # that had negative feedback.
13209
+ # Corresponds to the JSON property `knowledgeAssistNegativeFeedbackRatio`
13210
+ # @return [Float]
13211
+ attr_accessor :knowledge_assist_negative_feedback_ratio
13212
+
13213
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
13214
+ # that had positive feedback.
13215
+ # Corresponds to the JSON property `knowledgeAssistPositiveFeedbackRatio`
13216
+ # @return [Float]
13217
+ attr_accessor :knowledge_assist_positive_feedback_ratio
13218
+
13219
+ # Count of knowledge assist results (Proactive Generative Knowledge Assist)
13220
+ # shown to the user.
13221
+ # Corresponds to the JSON property `knowledgeAssistResultCount`
13222
+ # @return [Fixnum]
13223
+ attr_accessor :knowledge_assist_result_count
13224
+
13225
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
13226
+ # that had a URL clicked.
13227
+ # Corresponds to the JSON property `knowledgeAssistUriClickRatio`
13228
+ # @return [Float]
13229
+ attr_accessor :knowledge_assist_uri_click_ratio
11717
13230
 
11718
- # Average QA normalized score averaged for questions averaged across all
11719
- # revisions of the parent scorecard. Will be only populated if the request
11720
- # specifies a dimension of QA_QUESTION_ID.
11721
- # Corresponds to the JSON property `averageQaQuestionNormalizedScore`
13231
+ # Proportion of knowledge search (Generative Knowledge Assist) queries made by
13232
+ # the agent compared to the total number of knowledge search queries made.
13233
+ # Corresponds to the JSON property `knowledgeSearchAgentQuerySourceRatio`
11722
13234
  # @return [Float]
11723
- attr_accessor :average_qa_question_normalized_score
13235
+ attr_accessor :knowledge_search_agent_query_source_ratio
11724
13236
 
11725
- # The average silence percentage.
11726
- # Corresponds to the JSON property `averageSilencePercentage`
13237
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
13238
+ # negative feedback.
13239
+ # Corresponds to the JSON property `knowledgeSearchNegativeFeedbackRatio`
11727
13240
  # @return [Float]
11728
- attr_accessor :average_silence_percentage
13241
+ attr_accessor :knowledge_search_negative_feedback_ratio
11729
13242
 
11730
- # The average turn count.
11731
- # Corresponds to the JSON property `averageTurnCount`
13243
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
13244
+ # positive feedback.
13245
+ # Corresponds to the JSON property `knowledgeSearchPositiveFeedbackRatio`
11732
13246
  # @return [Float]
11733
- attr_accessor :average_turn_count
13247
+ attr_accessor :knowledge_search_positive_feedback_ratio
11734
13248
 
11735
- # The conversation count.
11736
- # Corresponds to the JSON property `conversationCount`
13249
+ # Count of knowledge search results (Generative Knowledge Assist) shown to the
13250
+ # user.
13251
+ # Corresponds to the JSON property `knowledgeSearchResultCount`
11737
13252
  # @return [Fixnum]
11738
- attr_accessor :conversation_count
13253
+ attr_accessor :knowledge_search_result_count
13254
+
13255
+ # Proportion of knowledge search (Generative Knowledge Assist) queries suggested
13256
+ # compared to the total number of knowledge search queries made.
13257
+ # Corresponds to the JSON property `knowledgeSearchSuggestedQuerySourceRatio`
13258
+ # @return [Float]
13259
+ attr_accessor :knowledge_search_suggested_query_source_ratio
13260
+
13261
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
13262
+ # a URL clicked.
13263
+ # Corresponds to the JSON property `knowledgeSearchUriClickRatio`
13264
+ # @return [Float]
13265
+ attr_accessor :knowledge_search_uri_click_ratio
11739
13266
 
11740
13267
  # Average QA normalized score for all the tags.
11741
13268
  # Corresponds to the JSON property `qaTagScores`
11742
13269
  # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointConversationMeasureQaTagScore>]
11743
13270
  attr_accessor :qa_tag_scores
11744
13271
 
13272
+ # Proportion of summarization suggestions that were manually edited.
13273
+ # Corresponds to the JSON property `summarizationSuggestionEditRatio`
13274
+ # @return [Float]
13275
+ attr_accessor :summarization_suggestion_edit_ratio
13276
+
13277
+ # Count of summarization suggestions results.
13278
+ # Corresponds to the JSON property `summarizationSuggestionResultCount`
13279
+ # @return [Fixnum]
13280
+ attr_accessor :summarization_suggestion_result_count
13281
+
11745
13282
  def initialize(**args)
11746
13283
  update!(**args)
11747
13284
  end
11748
13285
 
11749
13286
  # Update properties of this object
11750
13287
  def update!(**args)
13288
+ @aa_supervisor_assigned_conversations_count = args[:aa_supervisor_assigned_conversations_count] if args.key?(:aa_supervisor_assigned_conversations_count)
13289
+ @aa_supervisor_dropped_conversations_count = args[:aa_supervisor_dropped_conversations_count] if args.key?(:aa_supervisor_dropped_conversations_count)
13290
+ @aa_supervisor_escalated_conversations_count = args[:aa_supervisor_escalated_conversations_count] if args.key?(:aa_supervisor_escalated_conversations_count)
13291
+ @aa_supervisor_monitored_conversations_count = args[:aa_supervisor_monitored_conversations_count] if args.key?(:aa_supervisor_monitored_conversations_count)
13292
+ @aa_supervisor_transferred_to_human_agent_conv_count = args[:aa_supervisor_transferred_to_human_agent_conv_count] if args.key?(:aa_supervisor_transferred_to_human_agent_conv_count)
13293
+ @ai_coach_suggestion_agent_message_trigger_count = args[:ai_coach_suggestion_agent_message_trigger_count] if args.key?(:ai_coach_suggestion_agent_message_trigger_count)
13294
+ @ai_coach_suggestion_agent_usage_count = args[:ai_coach_suggestion_agent_usage_count] if args.key?(:ai_coach_suggestion_agent_usage_count)
13295
+ @ai_coach_suggestion_agent_usage_ratio = args[:ai_coach_suggestion_agent_usage_ratio] if args.key?(:ai_coach_suggestion_agent_usage_ratio)
13296
+ @ai_coach_suggestion_customer_message_trigger_count = args[:ai_coach_suggestion_customer_message_trigger_count] if args.key?(:ai_coach_suggestion_customer_message_trigger_count)
13297
+ @ai_coach_suggestion_customer_message_trigger_ratio = args[:ai_coach_suggestion_customer_message_trigger_ratio] if args.key?(:ai_coach_suggestion_customer_message_trigger_ratio)
13298
+ @ai_coach_suggestion_message_trigger_count = args[:ai_coach_suggestion_message_trigger_count] if args.key?(:ai_coach_suggestion_message_trigger_count)
13299
+ @ai_coach_suggestion_message_trigger_ratio = args[:ai_coach_suggestion_message_trigger_ratio] if args.key?(:ai_coach_suggestion_message_trigger_ratio)
11751
13300
  @average_agent_sentiment_score = args[:average_agent_sentiment_score] if args.key?(:average_agent_sentiment_score)
11752
13301
  @average_client_sentiment_score = args[:average_client_sentiment_score] if args.key?(:average_client_sentiment_score)
11753
13302
  @average_customer_satisfaction_rating = args[:average_customer_satisfaction_rating] if args.key?(:average_customer_satisfaction_rating)
@@ -11755,9 +13304,42 @@ module Google
11755
13304
  @average_qa_normalized_score = args[:average_qa_normalized_score] if args.key?(:average_qa_normalized_score)
11756
13305
  @average_qa_question_normalized_score = args[:average_qa_question_normalized_score] if args.key?(:average_qa_question_normalized_score)
11757
13306
  @average_silence_percentage = args[:average_silence_percentage] if args.key?(:average_silence_percentage)
13307
+ @average_summarization_suggestion_edit_distance = args[:average_summarization_suggestion_edit_distance] if args.key?(:average_summarization_suggestion_edit_distance)
13308
+ @average_summarization_suggestion_normalized_edit_distance = args[:average_summarization_suggestion_normalized_edit_distance] if args.key?(:average_summarization_suggestion_normalized_edit_distance)
11758
13309
  @average_turn_count = args[:average_turn_count] if args.key?(:average_turn_count)
13310
+ @avg_conversation_client_turn_sentiment_ema = args[:avg_conversation_client_turn_sentiment_ema] if args.key?(:avg_conversation_client_turn_sentiment_ema)
13311
+ @contained_conversation_count = args[:contained_conversation_count] if args.key?(:contained_conversation_count)
13312
+ @contained_conversation_ratio = args[:contained_conversation_ratio] if args.key?(:contained_conversation_ratio)
13313
+ @conversation_ai_coach_suggestion_count = args[:conversation_ai_coach_suggestion_count] if args.key?(:conversation_ai_coach_suggestion_count)
13314
+ @conversation_ai_coach_suggestion_ratio = args[:conversation_ai_coach_suggestion_ratio] if args.key?(:conversation_ai_coach_suggestion_ratio)
11759
13315
  @conversation_count = args[:conversation_count] if args.key?(:conversation_count)
13316
+ @conversation_suggested_summary_ratio = args[:conversation_suggested_summary_ratio] if args.key?(:conversation_suggested_summary_ratio)
13317
+ @conversation_total_agent_message_count = args[:conversation_total_agent_message_count] if args.key?(:conversation_total_agent_message_count)
13318
+ @conversation_total_customer_message_count = args[:conversation_total_customer_message_count] if args.key?(:conversation_total_customer_message_count)
13319
+ @conversational_agents_average_audio_in_audio_out_latency = args[:conversational_agents_average_audio_in_audio_out_latency] if args.key?(:conversational_agents_average_audio_in_audio_out_latency)
13320
+ @conversational_agents_average_end_to_end_latency = args[:conversational_agents_average_end_to_end_latency] if args.key?(:conversational_agents_average_end_to_end_latency)
13321
+ @conversational_agents_average_llm_call_latency = args[:conversational_agents_average_llm_call_latency] if args.key?(:conversational_agents_average_llm_call_latency)
13322
+ @conversational_agents_average_tts_latency = args[:conversational_agents_average_tts_latency] if args.key?(:conversational_agents_average_tts_latency)
13323
+ @dialogflow_average_webhook_latency = args[:dialogflow_average_webhook_latency] if args.key?(:dialogflow_average_webhook_latency)
13324
+ @dialogflow_conversations_escalation_count = args[:dialogflow_conversations_escalation_count] if args.key?(:dialogflow_conversations_escalation_count)
13325
+ @dialogflow_conversations_escalation_ratio = args[:dialogflow_conversations_escalation_ratio] if args.key?(:dialogflow_conversations_escalation_ratio)
13326
+ @dialogflow_interactions_no_input_ratio = args[:dialogflow_interactions_no_input_ratio] if args.key?(:dialogflow_interactions_no_input_ratio)
13327
+ @dialogflow_interactions_no_match_ratio = args[:dialogflow_interactions_no_match_ratio] if args.key?(:dialogflow_interactions_no_match_ratio)
13328
+ @dialogflow_webhook_failure_ratio = args[:dialogflow_webhook_failure_ratio] if args.key?(:dialogflow_webhook_failure_ratio)
13329
+ @dialogflow_webhook_timeout_ratio = args[:dialogflow_webhook_timeout_ratio] if args.key?(:dialogflow_webhook_timeout_ratio)
13330
+ @knowledge_assist_negative_feedback_ratio = args[:knowledge_assist_negative_feedback_ratio] if args.key?(:knowledge_assist_negative_feedback_ratio)
13331
+ @knowledge_assist_positive_feedback_ratio = args[:knowledge_assist_positive_feedback_ratio] if args.key?(:knowledge_assist_positive_feedback_ratio)
13332
+ @knowledge_assist_result_count = args[:knowledge_assist_result_count] if args.key?(:knowledge_assist_result_count)
13333
+ @knowledge_assist_uri_click_ratio = args[:knowledge_assist_uri_click_ratio] if args.key?(:knowledge_assist_uri_click_ratio)
13334
+ @knowledge_search_agent_query_source_ratio = args[:knowledge_search_agent_query_source_ratio] if args.key?(:knowledge_search_agent_query_source_ratio)
13335
+ @knowledge_search_negative_feedback_ratio = args[:knowledge_search_negative_feedback_ratio] if args.key?(:knowledge_search_negative_feedback_ratio)
13336
+ @knowledge_search_positive_feedback_ratio = args[:knowledge_search_positive_feedback_ratio] if args.key?(:knowledge_search_positive_feedback_ratio)
13337
+ @knowledge_search_result_count = args[:knowledge_search_result_count] if args.key?(:knowledge_search_result_count)
13338
+ @knowledge_search_suggested_query_source_ratio = args[:knowledge_search_suggested_query_source_ratio] if args.key?(:knowledge_search_suggested_query_source_ratio)
13339
+ @knowledge_search_uri_click_ratio = args[:knowledge_search_uri_click_ratio] if args.key?(:knowledge_search_uri_click_ratio)
11760
13340
  @qa_tag_scores = args[:qa_tag_scores] if args.key?(:qa_tag_scores)
13341
+ @summarization_suggestion_edit_ratio = args[:summarization_suggestion_edit_ratio] if args.key?(:summarization_suggestion_edit_ratio)
13342
+ @summarization_suggestion_result_count = args[:summarization_suggestion_result_count] if args.key?(:summarization_suggestion_result_count)
11761
13343
  end
11762
13344
  end
11763
13345
 
@@ -11786,6 +13368,86 @@ module Google
11786
13368
  end
11787
13369
  end
11788
13370
 
13371
+ # The measure related to dialogflow interactions.
13372
+ class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointDialogflowInteractionMeasure
13373
+ include Google::Apis::Core::Hashable
13374
+
13375
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13376
+ # 99th.
13377
+ # Corresponds to the JSON property `percentileAudioInAudioOutLatency`
13378
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult]
13379
+ attr_accessor :percentile_audio_in_audio_out_latency
13380
+
13381
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13382
+ # 99th.
13383
+ # Corresponds to the JSON property `percentileEndToEndLatency`
13384
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult]
13385
+ attr_accessor :percentile_end_to_end_latency
13386
+
13387
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13388
+ # 99th.
13389
+ # Corresponds to the JSON property `percentileLlmCallLatency`
13390
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult]
13391
+ attr_accessor :percentile_llm_call_latency
13392
+
13393
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13394
+ # 99th.
13395
+ # Corresponds to the JSON property `percentileToolUseLatency`
13396
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult]
13397
+ attr_accessor :percentile_tool_use_latency
13398
+
13399
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13400
+ # 99th.
13401
+ # Corresponds to the JSON property `percentileTtsLatency`
13402
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult]
13403
+ attr_accessor :percentile_tts_latency
13404
+
13405
+ def initialize(**args)
13406
+ update!(**args)
13407
+ end
13408
+
13409
+ # Update properties of this object
13410
+ def update!(**args)
13411
+ @percentile_audio_in_audio_out_latency = args[:percentile_audio_in_audio_out_latency] if args.key?(:percentile_audio_in_audio_out_latency)
13412
+ @percentile_end_to_end_latency = args[:percentile_end_to_end_latency] if args.key?(:percentile_end_to_end_latency)
13413
+ @percentile_llm_call_latency = args[:percentile_llm_call_latency] if args.key?(:percentile_llm_call_latency)
13414
+ @percentile_tool_use_latency = args[:percentile_tool_use_latency] if args.key?(:percentile_tool_use_latency)
13415
+ @percentile_tts_latency = args[:percentile_tts_latency] if args.key?(:percentile_tts_latency)
13416
+ end
13417
+ end
13418
+
13419
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
13420
+ # 99th.
13421
+ class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceDataPointPercentileResult
13422
+ include Google::Apis::Core::Hashable
13423
+
13424
+ # The 50th percentile value.
13425
+ # Corresponds to the JSON property `p50`
13426
+ # @return [Float]
13427
+ attr_accessor :p50
13428
+
13429
+ # The 90th percentile value.
13430
+ # Corresponds to the JSON property `p90`
13431
+ # @return [Float]
13432
+ attr_accessor :p90
13433
+
13434
+ # The 99th percentile value.
13435
+ # Corresponds to the JSON property `p99`
13436
+ # @return [Float]
13437
+ attr_accessor :p99
13438
+
13439
+ def initialize(**args)
13440
+ update!(**args)
13441
+ end
13442
+
13443
+ # Update properties of this object
13444
+ def update!(**args)
13445
+ @p50 = args[:p50] if args.key?(:p50)
13446
+ @p90 = args[:p90] if args.key?(:p90)
13447
+ @p99 = args[:p99] if args.key?(:p99)
13448
+ end
13449
+ end
13450
+
11789
13451
  # A time series of metric values.
11790
13452
  class GoogleCloudContactcenterinsightsV1alpha1QueryMetricsResponseSliceTimeSeries
11791
13453
  include Google::Apis::Core::Hashable
@@ -12300,6 +13962,163 @@ module Google
12300
13962
  end
12301
13963
  end
12302
13964
 
13965
+ # Metadata for testing correlation config.
13966
+ class GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigMetadata
13967
+ include Google::Apis::Core::Hashable
13968
+
13969
+ # Output only. The time the operation was created.
13970
+ # Corresponds to the JSON property `createTime`
13971
+ # @return [String]
13972
+ attr_accessor :create_time
13973
+
13974
+ # The dataset used for sampling conversations.
13975
+ # Corresponds to the JSON property `dataset`
13976
+ # @return [String]
13977
+ attr_accessor :dataset
13978
+
13979
+ # Statistics for TestCorrelationConfig operation.
13980
+ # Corresponds to the JSON property `stats`
13981
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigMetadataFullConversationCorrelationStats]
13982
+ attr_accessor :stats
13983
+
13984
+ def initialize(**args)
13985
+ update!(**args)
13986
+ end
13987
+
13988
+ # Update properties of this object
13989
+ def update!(**args)
13990
+ @create_time = args[:create_time] if args.key?(:create_time)
13991
+ @dataset = args[:dataset] if args.key?(:dataset)
13992
+ @stats = args[:stats] if args.key?(:stats)
13993
+ end
13994
+ end
13995
+
13996
+ # Statistics for TestCorrelationConfig operation.
13997
+ class GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigMetadataFullConversationCorrelationStats
13998
+ include Google::Apis::Core::Hashable
13999
+
14000
+ # A list of errors that occurred during correlation, one for each conversation
14001
+ # that failed.
14002
+ # Corresponds to the JSON property `conversationCorrelationErrors`
14003
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError>]
14004
+ attr_accessor :conversation_correlation_errors
14005
+
14006
+ # The number of conversations correlated.
14007
+ # Corresponds to the JSON property `correlatedConversationsCount`
14008
+ # @return [Fixnum]
14009
+ attr_accessor :correlated_conversations_count
14010
+
14011
+ # The number of conversations that failed correlation.
14012
+ # Corresponds to the JSON property `failedConversationsCount`
14013
+ # @return [Fixnum]
14014
+ attr_accessor :failed_conversations_count
14015
+
14016
+ # Partial errors during test correlation config operation that might cause the
14017
+ # operation output to be incomplete.
14018
+ # Corresponds to the JSON property `partialErrors`
14019
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
14020
+ attr_accessor :partial_errors
14021
+
14022
+ # The number of conversations sampled.
14023
+ # Corresponds to the JSON property `sampledConversationsCount`
14024
+ # @return [Fixnum]
14025
+ attr_accessor :sampled_conversations_count
14026
+
14027
+ def initialize(**args)
14028
+ update!(**args)
14029
+ end
14030
+
14031
+ # Update properties of this object
14032
+ def update!(**args)
14033
+ @conversation_correlation_errors = args[:conversation_correlation_errors] if args.key?(:conversation_correlation_errors)
14034
+ @correlated_conversations_count = args[:correlated_conversations_count] if args.key?(:correlated_conversations_count)
14035
+ @failed_conversations_count = args[:failed_conversations_count] if args.key?(:failed_conversations_count)
14036
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
14037
+ @sampled_conversations_count = args[:sampled_conversations_count] if args.key?(:sampled_conversations_count)
14038
+ end
14039
+ end
14040
+
14041
+ # An error that occurred during correlation for a specific conversation.
14042
+ class GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError
14043
+ include Google::Apis::Core::Hashable
14044
+
14045
+ # The conversation resource name that had an error during correlation.
14046
+ # Corresponds to the JSON property `conversation`
14047
+ # @return [String]
14048
+ attr_accessor :conversation
14049
+
14050
+ # The `Status` type defines a logical error model that is suitable for different
14051
+ # programming environments, including REST APIs and RPC APIs. It is used by [
14052
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
14053
+ # data: error code, error message, and error details. You can find out more
14054
+ # about this error model and how to work with it in the [API Design Guide](https:
14055
+ # //cloud.google.com/apis/design/errors).
14056
+ # Corresponds to the JSON property `status`
14057
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
14058
+ attr_accessor :status
14059
+
14060
+ def initialize(**args)
14061
+ update!(**args)
14062
+ end
14063
+
14064
+ # Update properties of this object
14065
+ def update!(**args)
14066
+ @conversation = args[:conversation] if args.key?(:conversation)
14067
+ @status = args[:status] if args.key?(:status)
14068
+ end
14069
+ end
14070
+
14071
+ # The response of testing correlation config.
14072
+ class GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigResponse
14073
+ include Google::Apis::Core::Hashable
14074
+
14075
+ # Wrapper for detailed, step-by-step results.
14076
+ # Corresponds to the JSON property `detailedResults`
14077
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigResponseDetailedCorrelationResults]
14078
+ attr_accessor :detailed_results
14079
+
14080
+ # Partial errors during test correlation config operation that might cause the
14081
+ # operation output to be incomplete.
14082
+ # Corresponds to the JSON property `partialErrors`
14083
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
14084
+ attr_accessor :partial_errors
14085
+
14086
+ def initialize(**args)
14087
+ update!(**args)
14088
+ end
14089
+
14090
+ # Update properties of this object
14091
+ def update!(**args)
14092
+ @detailed_results = args[:detailed_results] if args.key?(:detailed_results)
14093
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
14094
+ end
14095
+ end
14096
+
14097
+ # Wrapper for detailed, step-by-step results.
14098
+ class GoogleCloudContactcenterinsightsV1alpha1TestCorrelationConfigResponseDetailedCorrelationResults
14099
+ include Google::Apis::Core::Hashable
14100
+
14101
+ # A list of constraint evaluation results for each pair of conversations.
14102
+ # Corresponds to the JSON property `constraintResults`
14103
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConstraintEvaluationResult>]
14104
+ attr_accessor :constraint_results
14105
+
14106
+ # A list of join key correlation results for each conversation tested.
14107
+ # Corresponds to the JSON property `joinKeyResults`
14108
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1alpha1ConversationCorrelationResult>]
14109
+ attr_accessor :join_key_results
14110
+
14111
+ def initialize(**args)
14112
+ update!(**args)
14113
+ end
14114
+
14115
+ # Update properties of this object
14116
+ def update!(**args)
14117
+ @constraint_results = args[:constraint_results] if args.key?(:constraint_results)
14118
+ @join_key_results = args[:join_key_results] if args.key?(:join_key_results)
14119
+ end
14120
+ end
14121
+
12303
14122
  # Metadata for undeploying an issue model.
12304
14123
  class GoogleCloudContactcenterinsightsV1alpha1UndeployIssueModelMetadata
12305
14124
  include Google::Apis::Core::Hashable
@@ -13564,6 +15383,74 @@ module Google
13564
15383
  end
13565
15384
  end
13566
15385
 
15386
+ # The result of testing a constraint expression on a pair of conversations.
15387
+ class GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResult
15388
+ include Google::Apis::Core::Hashable
15389
+
15390
+ # The first conversation resource name.
15391
+ # Corresponds to the JSON property `conversationA`
15392
+ # @return [String]
15393
+ attr_accessor :conversation_a
15394
+
15395
+ # The second conversation resource name.
15396
+ # Corresponds to the JSON property `conversationB`
15397
+ # @return [String]
15398
+ attr_accessor :conversation_b
15399
+
15400
+ # The results for each applicable constraint rule.
15401
+ # Corresponds to the JSON property `ruleConstraintResults`
15402
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResultRuleConstraintResult>]
15403
+ attr_accessor :rule_constraint_results
15404
+
15405
+ def initialize(**args)
15406
+ update!(**args)
15407
+ end
15408
+
15409
+ # Update properties of this object
15410
+ def update!(**args)
15411
+ @conversation_a = args[:conversation_a] if args.key?(:conversation_a)
15412
+ @conversation_b = args[:conversation_b] if args.key?(:conversation_b)
15413
+ @rule_constraint_results = args[:rule_constraint_results] if args.key?(:rule_constraint_results)
15414
+ end
15415
+ end
15416
+
15417
+ # The result of a single constraint rule on the pair of conversations.
15418
+ class GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResultRuleConstraintResult
15419
+ include Google::Apis::Core::Hashable
15420
+
15421
+ # Whether the constraint expression evaluated to true for (A, B) or (B, A).
15422
+ # Corresponds to the JSON property `constraintMet`
15423
+ # @return [Boolean]
15424
+ attr_accessor :constraint_met
15425
+ alias_method :constraint_met?, :constraint_met
15426
+
15427
+ # The `Status` type defines a logical error model that is suitable for different
15428
+ # programming environments, including REST APIs and RPC APIs. It is used by [
15429
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
15430
+ # data: error code, error message, and error details. You can find out more
15431
+ # about this error model and how to work with it in the [API Design Guide](https:
15432
+ # //cloud.google.com/apis/design/errors).
15433
+ # Corresponds to the JSON property `error`
15434
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
15435
+ attr_accessor :error
15436
+
15437
+ # The rule ID.
15438
+ # Corresponds to the JSON property `ruleId`
15439
+ # @return [String]
15440
+ attr_accessor :rule_id
15441
+
15442
+ def initialize(**args)
15443
+ update!(**args)
15444
+ end
15445
+
15446
+ # Update properties of this object
15447
+ def update!(**args)
15448
+ @constraint_met = args[:constraint_met] if args.key?(:constraint_met)
15449
+ @error = args[:error] if args.key?(:error)
15450
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
15451
+ end
15452
+ end
15453
+
13567
15454
  # The conversation resource.
13568
15455
  class GoogleCloudContactcenterinsightsV1mainConversation
13569
15456
  include Google::Apis::Core::Hashable
@@ -13579,6 +15466,11 @@ module Google
13579
15466
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConversationCallMetadata]
13580
15467
  attr_accessor :call_metadata
13581
15468
 
15469
+ # Info for correlating across conversations.
15470
+ # Corresponds to the JSON property `correlationInfo`
15471
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConversationCorrelationInfo]
15472
+ attr_accessor :correlation_info
15473
+
13582
15474
  # Output only. The time at which the conversation was created.
13583
15475
  # Corresponds to the JSON property `createTime`
13584
15476
  # @return [String]
@@ -13628,7 +15520,7 @@ module Google
13628
15520
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConversationSummarizationSuggestionData]
13629
15521
  attr_accessor :latest_summary
13630
15522
 
13631
- # Immutable. The conversation medium, if unspecified will default to PHONE_CALL.
15523
+ # Immutable. The conversation medium.
13632
15524
  # Corresponds to the JSON property `medium`
13633
15525
  # @return [String]
13634
15526
  attr_accessor :medium
@@ -13696,6 +15588,7 @@ module Google
13696
15588
  def update!(**args)
13697
15589
  @agent_id = args[:agent_id] if args.key?(:agent_id)
13698
15590
  @call_metadata = args[:call_metadata] if args.key?(:call_metadata)
15591
+ @correlation_info = args[:correlation_info] if args.key?(:correlation_info)
13699
15592
  @create_time = args[:create_time] if args.key?(:create_time)
13700
15593
  @data_source = args[:data_source] if args.key?(:data_source)
13701
15594
  @dialogflow_intents = args[:dialogflow_intents] if args.key?(:dialogflow_intents)
@@ -13719,19 +15612,114 @@ module Google
13719
15612
  end
13720
15613
  end
13721
15614
 
13722
- # Call-specific metadata.
13723
- class GoogleCloudContactcenterinsightsV1mainConversationCallMetadata
15615
+ # Call-specific metadata.
15616
+ class GoogleCloudContactcenterinsightsV1mainConversationCallMetadata
15617
+ include Google::Apis::Core::Hashable
15618
+
15619
+ # The audio channel that contains the agent.
15620
+ # Corresponds to the JSON property `agentChannel`
15621
+ # @return [Fixnum]
15622
+ attr_accessor :agent_channel
15623
+
15624
+ # The audio channel that contains the customer.
15625
+ # Corresponds to the JSON property `customerChannel`
15626
+ # @return [Fixnum]
15627
+ attr_accessor :customer_channel
15628
+
15629
+ def initialize(**args)
15630
+ update!(**args)
15631
+ end
15632
+
15633
+ # Update properties of this object
15634
+ def update!(**args)
15635
+ @agent_channel = args[:agent_channel] if args.key?(:agent_channel)
15636
+ @customer_channel = args[:customer_channel] if args.key?(:customer_channel)
15637
+ end
15638
+ end
15639
+
15640
+ # Info for correlating across conversations.
15641
+ class GoogleCloudContactcenterinsightsV1mainConversationCorrelationInfo
15642
+ include Google::Apis::Core::Hashable
15643
+
15644
+ # Output only. The correlation types of this conversation. A single conversation
15645
+ # can have multiple correlation types. For example a conversation that only has
15646
+ # a single segment is both a SEGMENT and a FULL_CONVERSATION.
15647
+ # Corresponds to the JSON property `correlationTypes`
15648
+ # @return [Array<String>]
15649
+ attr_accessor :correlation_types
15650
+
15651
+ # Output only. The full conversation correlation id this conversation is a
15652
+ # segment of.
15653
+ # Corresponds to the JSON property `fullConversationCorrelationId`
15654
+ # @return [String]
15655
+ attr_accessor :full_conversation_correlation_id
15656
+
15657
+ # Output only. The full conversation correlation id this conversation is a
15658
+ # merged conversation of.
15659
+ # Corresponds to the JSON property `mergedFullConversationCorrelationId`
15660
+ # @return [String]
15661
+ attr_accessor :merged_full_conversation_correlation_id
15662
+
15663
+ def initialize(**args)
15664
+ update!(**args)
15665
+ end
15666
+
15667
+ # Update properties of this object
15668
+ def update!(**args)
15669
+ @correlation_types = args[:correlation_types] if args.key?(:correlation_types)
15670
+ @full_conversation_correlation_id = args[:full_conversation_correlation_id] if args.key?(:full_conversation_correlation_id)
15671
+ @merged_full_conversation_correlation_id = args[:merged_full_conversation_correlation_id] if args.key?(:merged_full_conversation_correlation_id)
15672
+ end
15673
+ end
15674
+
15675
+ # The result of testing correlation config on a single conversation.
15676
+ class GoogleCloudContactcenterinsightsV1mainConversationCorrelationResult
15677
+ include Google::Apis::Core::Hashable
15678
+
15679
+ # The conversation resource name.
15680
+ # Corresponds to the JSON property `conversation`
15681
+ # @return [String]
15682
+ attr_accessor :conversation
15683
+
15684
+ # The results for each correlation rule.
15685
+ # Corresponds to the JSON property `ruleResults`
15686
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConversationCorrelationResultRuleCorrelationResult>]
15687
+ attr_accessor :rule_results
15688
+
15689
+ def initialize(**args)
15690
+ update!(**args)
15691
+ end
15692
+
15693
+ # Update properties of this object
15694
+ def update!(**args)
15695
+ @conversation = args[:conversation] if args.key?(:conversation)
15696
+ @rule_results = args[:rule_results] if args.key?(:rule_results)
15697
+ end
15698
+ end
15699
+
15700
+ # The result of a single correlation rule.
15701
+ class GoogleCloudContactcenterinsightsV1mainConversationCorrelationResultRuleCorrelationResult
13724
15702
  include Google::Apis::Core::Hashable
13725
15703
 
13726
- # The audio channel that contains the agent.
13727
- # Corresponds to the JSON property `agentChannel`
13728
- # @return [Fixnum]
13729
- attr_accessor :agent_channel
15704
+ # The correlation ID generated by the join key expression.
15705
+ # Corresponds to the JSON property `correlationId`
15706
+ # @return [String]
15707
+ attr_accessor :correlation_id
13730
15708
 
13731
- # The audio channel that contains the customer.
13732
- # Corresponds to the JSON property `customerChannel`
13733
- # @return [Fixnum]
13734
- attr_accessor :customer_channel
15709
+ # The `Status` type defines a logical error model that is suitable for different
15710
+ # programming environments, including REST APIs and RPC APIs. It is used by [
15711
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
15712
+ # data: error code, error message, and error details. You can find out more
15713
+ # about this error model and how to work with it in the [API Design Guide](https:
15714
+ # //cloud.google.com/apis/design/errors).
15715
+ # Corresponds to the JSON property `error`
15716
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
15717
+ attr_accessor :error
15718
+
15719
+ # The rule ID.
15720
+ # Corresponds to the JSON property `ruleId`
15721
+ # @return [String]
15722
+ attr_accessor :rule_id
13735
15723
 
13736
15724
  def initialize(**args)
13737
15725
  update!(**args)
@@ -13739,8 +15727,9 @@ module Google
13739
15727
 
13740
15728
  # Update properties of this object
13741
15729
  def update!(**args)
13742
- @agent_channel = args[:agent_channel] if args.key?(:agent_channel)
13743
- @customer_channel = args[:customer_channel] if args.key?(:customer_channel)
15730
+ @correlation_id = args[:correlation_id] if args.key?(:correlation_id)
15731
+ @error = args[:error] if args.key?(:error)
15732
+ @rule_id = args[:rule_id] if args.key?(:rule_id)
13744
15733
  end
13745
15734
  end
13746
15735
 
@@ -16951,6 +18940,11 @@ module Google
16951
18940
  # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointConversationMeasure]
16952
18941
  attr_accessor :conversation_measure
16953
18942
 
18943
+ # The measure related to dialogflow interactions.
18944
+ # Corresponds to the JSON property `dialogflowInteractionMeasure`
18945
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointDialogflowInteractionMeasure]
18946
+ attr_accessor :dialogflow_interaction_measure
18947
+
16954
18948
  # Represents a time interval, encoded as a Timestamp start (inclusive) and a
16955
18949
  # Timestamp end (exclusive). The start must be less than or equal to the end.
16956
18950
  # When the start equals the end, the interval is empty (matches no time). When
@@ -16966,6 +18960,7 @@ module Google
16966
18960
  # Update properties of this object
16967
18961
  def update!(**args)
16968
18962
  @conversation_measure = args[:conversation_measure] if args.key?(:conversation_measure)
18963
+ @dialogflow_interaction_measure = args[:dialogflow_interaction_measure] if args.key?(:dialogflow_interaction_measure)
16969
18964
  @interval = args[:interval] if args.key?(:interval)
16970
18965
  end
16971
18966
  end
@@ -16974,6 +18969,70 @@ module Google
16974
18969
  class GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointConversationMeasure
16975
18970
  include Google::Apis::Core::Hashable
16976
18971
 
18972
+ # The number of conversations that were assigned to an AA human supervisor.
18973
+ # Corresponds to the JSON property `aaSupervisorAssignedConversationsCount`
18974
+ # @return [Fixnum]
18975
+ attr_accessor :aa_supervisor_assigned_conversations_count
18976
+
18977
+ # The number of conversations that were dropped, i.e. escalated but not assigned
18978
+ # to an AA human supervisor.
18979
+ # Corresponds to the JSON property `aaSupervisorDroppedConversationsCount`
18980
+ # @return [Fixnum]
18981
+ attr_accessor :aa_supervisor_dropped_conversations_count
18982
+
18983
+ # The number of conversations that were escalated to an AA human supervisor for
18984
+ # intervention.
18985
+ # Corresponds to the JSON property `aaSupervisorEscalatedConversationsCount`
18986
+ # @return [Fixnum]
18987
+ attr_accessor :aa_supervisor_escalated_conversations_count
18988
+
18989
+ # The number of conversations scanned by the AA human supervisor.
18990
+ # Corresponds to the JSON property `aaSupervisorMonitoredConversationsCount`
18991
+ # @return [Fixnum]
18992
+ attr_accessor :aa_supervisor_monitored_conversations_count
18993
+
18994
+ # The number of conversations transferred to a human agent.
18995
+ # Corresponds to the JSON property `aaSupervisorTransferredToHumanAgentConvCount`
18996
+ # @return [Fixnum]
18997
+ attr_accessor :aa_supervisor_transferred_to_human_agent_conv_count
18998
+
18999
+ # Count of agent messages that triggered an Ai Coach Suggestion.
19000
+ # Corresponds to the JSON property `aiCoachSuggestionAgentMessageTriggerCount`
19001
+ # @return [Fixnum]
19002
+ attr_accessor :ai_coach_suggestion_agent_message_trigger_count
19003
+
19004
+ # Count of Ai Coach Suggestion that has been used by agents.
19005
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageCount`
19006
+ # @return [Fixnum]
19007
+ attr_accessor :ai_coach_suggestion_agent_usage_count
19008
+
19009
+ # Proportion of Ai Coach Suggestion that has been used by agents.
19010
+ # Corresponds to the JSON property `aiCoachSuggestionAgentUsageRatio`
19011
+ # @return [Float]
19012
+ attr_accessor :ai_coach_suggestion_agent_usage_ratio
19013
+
19014
+ # Count of customer messages that triggered an Ai Coach Suggestion.
19015
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerCount`
19016
+ # @return [Fixnum]
19017
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_count
19018
+
19019
+ # Proportion of customer messages that triggered an Ai Coach Suggestion.
19020
+ # Corresponds to the JSON property `aiCoachSuggestionCustomerMessageTriggerRatio`
19021
+ # @return [Float]
19022
+ attr_accessor :ai_coach_suggestion_customer_message_trigger_ratio
19023
+
19024
+ # Count of end_of_utterance trigger event messages that triggered an Ai Coach
19025
+ # Suggestion.
19026
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerCount`
19027
+ # @return [Fixnum]
19028
+ attr_accessor :ai_coach_suggestion_message_trigger_count
19029
+
19030
+ # Proportion of end_of_utterance trigger event messages that triggered an Ai
19031
+ # Coach Suggestion.
19032
+ # Corresponds to the JSON property `aiCoachSuggestionMessageTriggerRatio`
19033
+ # @return [Float]
19034
+ attr_accessor :ai_coach_suggestion_message_trigger_ratio
19035
+
16977
19036
  # The average agent's sentiment score.
16978
19037
  # Corresponds to the JSON property `averageAgentSentimentScore`
16979
19038
  # @return [Float]
@@ -17015,27 +19074,234 @@ module Google
17015
19074
  # @return [Float]
17016
19075
  attr_accessor :average_silence_percentage
17017
19076
 
19077
+ # Average edit distance of the summarization suggestions. Edit distance (also
19078
+ # called as levenshtein distance) is calculated by summing up number of
19079
+ # insertions, deletions and substitutions required to transform the summization
19080
+ # feedback to the original summary suggestion.
19081
+ # Corresponds to the JSON property `averageSummarizationSuggestionEditDistance`
19082
+ # @return [Float]
19083
+ attr_accessor :average_summarization_suggestion_edit_distance
19084
+
19085
+ # Normalized Average edit distance of the summarization suggestions. Edit
19086
+ # distance (also called as levenshtein distance) is calculated by summing up
19087
+ # number of insertions, deletions and substitutions required to transform the
19088
+ # summization feedback to the original summary suggestion. Normalized edit
19089
+ # distance is the average of (edit distance / summary length).
19090
+ # Corresponds to the JSON property `averageSummarizationSuggestionNormalizedEditDistance`
19091
+ # @return [Float]
19092
+ attr_accessor :average_summarization_suggestion_normalized_edit_distance
19093
+
17018
19094
  # The average turn count.
17019
19095
  # Corresponds to the JSON property `averageTurnCount`
17020
19096
  # @return [Float]
17021
19097
  attr_accessor :average_turn_count
17022
19098
 
19099
+ # The exponential moving average of the sentiment score of client turns in the
19100
+ # conversation.
19101
+ # Corresponds to the JSON property `avgConversationClientTurnSentimentEma`
19102
+ # @return [Float]
19103
+ attr_accessor :avg_conversation_client_turn_sentiment_ema
19104
+
19105
+ # The number of conversations that were contained.
19106
+ # Corresponds to the JSON property `containedConversationCount`
19107
+ # @return [Fixnum]
19108
+ attr_accessor :contained_conversation_count
19109
+
19110
+ # The percentage of conversations that were contained.
19111
+ # Corresponds to the JSON property `containedConversationRatio`
19112
+ # @return [Float]
19113
+ attr_accessor :contained_conversation_ratio
19114
+
19115
+ # Count of conversations that has Ai Coach Suggestions.
19116
+ # Corresponds to the JSON property `conversationAiCoachSuggestionCount`
19117
+ # @return [Fixnum]
19118
+ attr_accessor :conversation_ai_coach_suggestion_count
19119
+
19120
+ # Proportion of conversations that has Ai Coach Suggestions.
19121
+ # Corresponds to the JSON property `conversationAiCoachSuggestionRatio`
19122
+ # @return [Float]
19123
+ attr_accessor :conversation_ai_coach_suggestion_ratio
19124
+
17023
19125
  # The conversation count.
17024
19126
  # Corresponds to the JSON property `conversationCount`
17025
19127
  # @return [Fixnum]
17026
19128
  attr_accessor :conversation_count
17027
19129
 
19130
+ # Proportion of conversations that had a suggested summary.
19131
+ # Corresponds to the JSON property `conversationSuggestedSummaryRatio`
19132
+ # @return [Float]
19133
+ attr_accessor :conversation_suggested_summary_ratio
19134
+
19135
+ # The agent message count.
19136
+ # Corresponds to the JSON property `conversationTotalAgentMessageCount`
19137
+ # @return [Fixnum]
19138
+ attr_accessor :conversation_total_agent_message_count
19139
+
19140
+ # The customer message count.
19141
+ # Corresponds to the JSON property `conversationTotalCustomerMessageCount`
19142
+ # @return [Fixnum]
19143
+ attr_accessor :conversation_total_customer_message_count
19144
+
19145
+ # The average latency of conversational agents' audio in audio out latency per
19146
+ # interaction. This is computed as the average of the all the interactions'
19147
+ # audio in audio out latencies in a conversation and averaged across
19148
+ # conversations.
19149
+ # Corresponds to the JSON property `conversationalAgentsAverageAudioInAudioOutLatency`
19150
+ # @return [Float]
19151
+ attr_accessor :conversational_agents_average_audio_in_audio_out_latency
19152
+
19153
+ # The average latency of conversational agents' latency per interaction. This is
19154
+ # computed as the average of the all the iteractions' end to end latencies in a
19155
+ # conversation and averaged across conversations. The e2e latency is the time
19156
+ # between the end of the user utterance and the start of the agent utterance on
19157
+ # the interaction level.
19158
+ # Corresponds to the JSON property `conversationalAgentsAverageEndToEndLatency`
19159
+ # @return [Float]
19160
+ attr_accessor :conversational_agents_average_end_to_end_latency
19161
+
19162
+ # The average latency of conversational agents' LLM call latency per interaction.
19163
+ # This is computed as the average of the all the interactions LLM call
19164
+ # latencies in a conversation and averaged across conversations.
19165
+ # Corresponds to the JSON property `conversationalAgentsAverageLlmCallLatency`
19166
+ # @return [Float]
19167
+ attr_accessor :conversational_agents_average_llm_call_latency
19168
+
19169
+ # The macro average latency of conversational agents' TTS latency per
19170
+ # interaction. This is computed as the average of the all the interactions' TTS
19171
+ # latencies in a conversation and averaged across conversations.
19172
+ # Corresponds to the JSON property `conversationalAgentsAverageTtsLatency`
19173
+ # @return [Float]
19174
+ attr_accessor :conversational_agents_average_tts_latency
19175
+
19176
+ # Average latency of dialogflow webhook calls.
19177
+ # Corresponds to the JSON property `dialogflowAverageWebhookLatency`
19178
+ # @return [Float]
19179
+ attr_accessor :dialogflow_average_webhook_latency
19180
+
19181
+ # count of conversations that was handed off from virtual agent to human agent.
19182
+ # Corresponds to the JSON property `dialogflowConversationsEscalationCount`
19183
+ # @return [Float]
19184
+ attr_accessor :dialogflow_conversations_escalation_count
19185
+
19186
+ # Proportion of conversations that was handed off from virtual agent to human
19187
+ # agent.
19188
+ # Corresponds to the JSON property `dialogflowConversationsEscalationRatio`
19189
+ # @return [Float]
19190
+ attr_accessor :dialogflow_conversations_escalation_ratio
19191
+
19192
+ # Proportion of dialogflow interactions that has empty input.
19193
+ # Corresponds to the JSON property `dialogflowInteractionsNoInputRatio`
19194
+ # @return [Float]
19195
+ attr_accessor :dialogflow_interactions_no_input_ratio
19196
+
19197
+ # Proportion of dialogflow interactions that has no intent match for the input.
19198
+ # Corresponds to the JSON property `dialogflowInteractionsNoMatchRatio`
19199
+ # @return [Float]
19200
+ attr_accessor :dialogflow_interactions_no_match_ratio
19201
+
19202
+ # Proportion of dialogflow webhook calls that failed.
19203
+ # Corresponds to the JSON property `dialogflowWebhookFailureRatio`
19204
+ # @return [Float]
19205
+ attr_accessor :dialogflow_webhook_failure_ratio
19206
+
19207
+ # Proportion of dialogflow webhook calls that timed out.
19208
+ # Corresponds to the JSON property `dialogflowWebhookTimeoutRatio`
19209
+ # @return [Float]
19210
+ attr_accessor :dialogflow_webhook_timeout_ratio
19211
+
19212
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
19213
+ # that had negative feedback.
19214
+ # Corresponds to the JSON property `knowledgeAssistNegativeFeedbackRatio`
19215
+ # @return [Float]
19216
+ attr_accessor :knowledge_assist_negative_feedback_ratio
19217
+
19218
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
19219
+ # that had positive feedback.
19220
+ # Corresponds to the JSON property `knowledgeAssistPositiveFeedbackRatio`
19221
+ # @return [Float]
19222
+ attr_accessor :knowledge_assist_positive_feedback_ratio
19223
+
19224
+ # Count of knowledge assist results (Proactive Generative Knowledge Assist)
19225
+ # shown to the user.
19226
+ # Corresponds to the JSON property `knowledgeAssistResultCount`
19227
+ # @return [Fixnum]
19228
+ attr_accessor :knowledge_assist_result_count
19229
+
19230
+ # Proportion of knowledge assist (Proactive Generative Knowledge Assist) queries
19231
+ # that had a URL clicked.
19232
+ # Corresponds to the JSON property `knowledgeAssistUriClickRatio`
19233
+ # @return [Float]
19234
+ attr_accessor :knowledge_assist_uri_click_ratio
19235
+
19236
+ # Proportion of knowledge search (Generative Knowledge Assist) queries made by
19237
+ # the agent compared to the total number of knowledge search queries made.
19238
+ # Corresponds to the JSON property `knowledgeSearchAgentQuerySourceRatio`
19239
+ # @return [Float]
19240
+ attr_accessor :knowledge_search_agent_query_source_ratio
19241
+
19242
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
19243
+ # negative feedback.
19244
+ # Corresponds to the JSON property `knowledgeSearchNegativeFeedbackRatio`
19245
+ # @return [Float]
19246
+ attr_accessor :knowledge_search_negative_feedback_ratio
19247
+
19248
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
19249
+ # positive feedback.
19250
+ # Corresponds to the JSON property `knowledgeSearchPositiveFeedbackRatio`
19251
+ # @return [Float]
19252
+ attr_accessor :knowledge_search_positive_feedback_ratio
19253
+
19254
+ # Count of knowledge search results (Generative Knowledge Assist) shown to the
19255
+ # user.
19256
+ # Corresponds to the JSON property `knowledgeSearchResultCount`
19257
+ # @return [Fixnum]
19258
+ attr_accessor :knowledge_search_result_count
19259
+
19260
+ # Proportion of knowledge search (Generative Knowledge Assist) queries suggested
19261
+ # compared to the total number of knowledge search queries made.
19262
+ # Corresponds to the JSON property `knowledgeSearchSuggestedQuerySourceRatio`
19263
+ # @return [Float]
19264
+ attr_accessor :knowledge_search_suggested_query_source_ratio
19265
+
19266
+ # Proportion of knowledge search (Generative Knowledge Assist) queries that had
19267
+ # a URL clicked.
19268
+ # Corresponds to the JSON property `knowledgeSearchUriClickRatio`
19269
+ # @return [Float]
19270
+ attr_accessor :knowledge_search_uri_click_ratio
19271
+
17028
19272
  # Average QA normalized score for all the tags.
17029
19273
  # Corresponds to the JSON property `qaTagScores`
17030
19274
  # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointConversationMeasureQaTagScore>]
17031
19275
  attr_accessor :qa_tag_scores
17032
19276
 
19277
+ # Proportion of summarization suggestions that were manually edited.
19278
+ # Corresponds to the JSON property `summarizationSuggestionEditRatio`
19279
+ # @return [Float]
19280
+ attr_accessor :summarization_suggestion_edit_ratio
19281
+
19282
+ # Count of summarization suggestions results.
19283
+ # Corresponds to the JSON property `summarizationSuggestionResultCount`
19284
+ # @return [Fixnum]
19285
+ attr_accessor :summarization_suggestion_result_count
19286
+
17033
19287
  def initialize(**args)
17034
19288
  update!(**args)
17035
19289
  end
17036
19290
 
17037
19291
  # Update properties of this object
17038
19292
  def update!(**args)
19293
+ @aa_supervisor_assigned_conversations_count = args[:aa_supervisor_assigned_conversations_count] if args.key?(:aa_supervisor_assigned_conversations_count)
19294
+ @aa_supervisor_dropped_conversations_count = args[:aa_supervisor_dropped_conversations_count] if args.key?(:aa_supervisor_dropped_conversations_count)
19295
+ @aa_supervisor_escalated_conversations_count = args[:aa_supervisor_escalated_conversations_count] if args.key?(:aa_supervisor_escalated_conversations_count)
19296
+ @aa_supervisor_monitored_conversations_count = args[:aa_supervisor_monitored_conversations_count] if args.key?(:aa_supervisor_monitored_conversations_count)
19297
+ @aa_supervisor_transferred_to_human_agent_conv_count = args[:aa_supervisor_transferred_to_human_agent_conv_count] if args.key?(:aa_supervisor_transferred_to_human_agent_conv_count)
19298
+ @ai_coach_suggestion_agent_message_trigger_count = args[:ai_coach_suggestion_agent_message_trigger_count] if args.key?(:ai_coach_suggestion_agent_message_trigger_count)
19299
+ @ai_coach_suggestion_agent_usage_count = args[:ai_coach_suggestion_agent_usage_count] if args.key?(:ai_coach_suggestion_agent_usage_count)
19300
+ @ai_coach_suggestion_agent_usage_ratio = args[:ai_coach_suggestion_agent_usage_ratio] if args.key?(:ai_coach_suggestion_agent_usage_ratio)
19301
+ @ai_coach_suggestion_customer_message_trigger_count = args[:ai_coach_suggestion_customer_message_trigger_count] if args.key?(:ai_coach_suggestion_customer_message_trigger_count)
19302
+ @ai_coach_suggestion_customer_message_trigger_ratio = args[:ai_coach_suggestion_customer_message_trigger_ratio] if args.key?(:ai_coach_suggestion_customer_message_trigger_ratio)
19303
+ @ai_coach_suggestion_message_trigger_count = args[:ai_coach_suggestion_message_trigger_count] if args.key?(:ai_coach_suggestion_message_trigger_count)
19304
+ @ai_coach_suggestion_message_trigger_ratio = args[:ai_coach_suggestion_message_trigger_ratio] if args.key?(:ai_coach_suggestion_message_trigger_ratio)
17039
19305
  @average_agent_sentiment_score = args[:average_agent_sentiment_score] if args.key?(:average_agent_sentiment_score)
17040
19306
  @average_client_sentiment_score = args[:average_client_sentiment_score] if args.key?(:average_client_sentiment_score)
17041
19307
  @average_customer_satisfaction_rating = args[:average_customer_satisfaction_rating] if args.key?(:average_customer_satisfaction_rating)
@@ -17043,9 +19309,42 @@ module Google
17043
19309
  @average_qa_normalized_score = args[:average_qa_normalized_score] if args.key?(:average_qa_normalized_score)
17044
19310
  @average_qa_question_normalized_score = args[:average_qa_question_normalized_score] if args.key?(:average_qa_question_normalized_score)
17045
19311
  @average_silence_percentage = args[:average_silence_percentage] if args.key?(:average_silence_percentage)
19312
+ @average_summarization_suggestion_edit_distance = args[:average_summarization_suggestion_edit_distance] if args.key?(:average_summarization_suggestion_edit_distance)
19313
+ @average_summarization_suggestion_normalized_edit_distance = args[:average_summarization_suggestion_normalized_edit_distance] if args.key?(:average_summarization_suggestion_normalized_edit_distance)
17046
19314
  @average_turn_count = args[:average_turn_count] if args.key?(:average_turn_count)
19315
+ @avg_conversation_client_turn_sentiment_ema = args[:avg_conversation_client_turn_sentiment_ema] if args.key?(:avg_conversation_client_turn_sentiment_ema)
19316
+ @contained_conversation_count = args[:contained_conversation_count] if args.key?(:contained_conversation_count)
19317
+ @contained_conversation_ratio = args[:contained_conversation_ratio] if args.key?(:contained_conversation_ratio)
19318
+ @conversation_ai_coach_suggestion_count = args[:conversation_ai_coach_suggestion_count] if args.key?(:conversation_ai_coach_suggestion_count)
19319
+ @conversation_ai_coach_suggestion_ratio = args[:conversation_ai_coach_suggestion_ratio] if args.key?(:conversation_ai_coach_suggestion_ratio)
17047
19320
  @conversation_count = args[:conversation_count] if args.key?(:conversation_count)
19321
+ @conversation_suggested_summary_ratio = args[:conversation_suggested_summary_ratio] if args.key?(:conversation_suggested_summary_ratio)
19322
+ @conversation_total_agent_message_count = args[:conversation_total_agent_message_count] if args.key?(:conversation_total_agent_message_count)
19323
+ @conversation_total_customer_message_count = args[:conversation_total_customer_message_count] if args.key?(:conversation_total_customer_message_count)
19324
+ @conversational_agents_average_audio_in_audio_out_latency = args[:conversational_agents_average_audio_in_audio_out_latency] if args.key?(:conversational_agents_average_audio_in_audio_out_latency)
19325
+ @conversational_agents_average_end_to_end_latency = args[:conversational_agents_average_end_to_end_latency] if args.key?(:conversational_agents_average_end_to_end_latency)
19326
+ @conversational_agents_average_llm_call_latency = args[:conversational_agents_average_llm_call_latency] if args.key?(:conversational_agents_average_llm_call_latency)
19327
+ @conversational_agents_average_tts_latency = args[:conversational_agents_average_tts_latency] if args.key?(:conversational_agents_average_tts_latency)
19328
+ @dialogflow_average_webhook_latency = args[:dialogflow_average_webhook_latency] if args.key?(:dialogflow_average_webhook_latency)
19329
+ @dialogflow_conversations_escalation_count = args[:dialogflow_conversations_escalation_count] if args.key?(:dialogflow_conversations_escalation_count)
19330
+ @dialogflow_conversations_escalation_ratio = args[:dialogflow_conversations_escalation_ratio] if args.key?(:dialogflow_conversations_escalation_ratio)
19331
+ @dialogflow_interactions_no_input_ratio = args[:dialogflow_interactions_no_input_ratio] if args.key?(:dialogflow_interactions_no_input_ratio)
19332
+ @dialogflow_interactions_no_match_ratio = args[:dialogflow_interactions_no_match_ratio] if args.key?(:dialogflow_interactions_no_match_ratio)
19333
+ @dialogflow_webhook_failure_ratio = args[:dialogflow_webhook_failure_ratio] if args.key?(:dialogflow_webhook_failure_ratio)
19334
+ @dialogflow_webhook_timeout_ratio = args[:dialogflow_webhook_timeout_ratio] if args.key?(:dialogflow_webhook_timeout_ratio)
19335
+ @knowledge_assist_negative_feedback_ratio = args[:knowledge_assist_negative_feedback_ratio] if args.key?(:knowledge_assist_negative_feedback_ratio)
19336
+ @knowledge_assist_positive_feedback_ratio = args[:knowledge_assist_positive_feedback_ratio] if args.key?(:knowledge_assist_positive_feedback_ratio)
19337
+ @knowledge_assist_result_count = args[:knowledge_assist_result_count] if args.key?(:knowledge_assist_result_count)
19338
+ @knowledge_assist_uri_click_ratio = args[:knowledge_assist_uri_click_ratio] if args.key?(:knowledge_assist_uri_click_ratio)
19339
+ @knowledge_search_agent_query_source_ratio = args[:knowledge_search_agent_query_source_ratio] if args.key?(:knowledge_search_agent_query_source_ratio)
19340
+ @knowledge_search_negative_feedback_ratio = args[:knowledge_search_negative_feedback_ratio] if args.key?(:knowledge_search_negative_feedback_ratio)
19341
+ @knowledge_search_positive_feedback_ratio = args[:knowledge_search_positive_feedback_ratio] if args.key?(:knowledge_search_positive_feedback_ratio)
19342
+ @knowledge_search_result_count = args[:knowledge_search_result_count] if args.key?(:knowledge_search_result_count)
19343
+ @knowledge_search_suggested_query_source_ratio = args[:knowledge_search_suggested_query_source_ratio] if args.key?(:knowledge_search_suggested_query_source_ratio)
19344
+ @knowledge_search_uri_click_ratio = args[:knowledge_search_uri_click_ratio] if args.key?(:knowledge_search_uri_click_ratio)
17048
19345
  @qa_tag_scores = args[:qa_tag_scores] if args.key?(:qa_tag_scores)
19346
+ @summarization_suggestion_edit_ratio = args[:summarization_suggestion_edit_ratio] if args.key?(:summarization_suggestion_edit_ratio)
19347
+ @summarization_suggestion_result_count = args[:summarization_suggestion_result_count] if args.key?(:summarization_suggestion_result_count)
17049
19348
  end
17050
19349
  end
17051
19350
 
@@ -17074,6 +19373,86 @@ module Google
17074
19373
  end
17075
19374
  end
17076
19375
 
19376
+ # The measure related to dialogflow interactions.
19377
+ class GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointDialogflowInteractionMeasure
19378
+ include Google::Apis::Core::Hashable
19379
+
19380
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19381
+ # 99th.
19382
+ # Corresponds to the JSON property `percentileAudioInAudioOutLatency`
19383
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult]
19384
+ attr_accessor :percentile_audio_in_audio_out_latency
19385
+
19386
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19387
+ # 99th.
19388
+ # Corresponds to the JSON property `percentileEndToEndLatency`
19389
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult]
19390
+ attr_accessor :percentile_end_to_end_latency
19391
+
19392
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19393
+ # 99th.
19394
+ # Corresponds to the JSON property `percentileLlmCallLatency`
19395
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult]
19396
+ attr_accessor :percentile_llm_call_latency
19397
+
19398
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19399
+ # 99th.
19400
+ # Corresponds to the JSON property `percentileToolUseLatency`
19401
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult]
19402
+ attr_accessor :percentile_tool_use_latency
19403
+
19404
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19405
+ # 99th.
19406
+ # Corresponds to the JSON property `percentileTtsLatency`
19407
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult]
19408
+ attr_accessor :percentile_tts_latency
19409
+
19410
+ def initialize(**args)
19411
+ update!(**args)
19412
+ end
19413
+
19414
+ # Update properties of this object
19415
+ def update!(**args)
19416
+ @percentile_audio_in_audio_out_latency = args[:percentile_audio_in_audio_out_latency] if args.key?(:percentile_audio_in_audio_out_latency)
19417
+ @percentile_end_to_end_latency = args[:percentile_end_to_end_latency] if args.key?(:percentile_end_to_end_latency)
19418
+ @percentile_llm_call_latency = args[:percentile_llm_call_latency] if args.key?(:percentile_llm_call_latency)
19419
+ @percentile_tool_use_latency = args[:percentile_tool_use_latency] if args.key?(:percentile_tool_use_latency)
19420
+ @percentile_tts_latency = args[:percentile_tts_latency] if args.key?(:percentile_tts_latency)
19421
+ end
19422
+ end
19423
+
19424
+ # The percentile result. Currently supported percentiles are 50th, 90th, and
19425
+ # 99th.
19426
+ class GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceDataPointPercentileResult
19427
+ include Google::Apis::Core::Hashable
19428
+
19429
+ # The 50th percentile value.
19430
+ # Corresponds to the JSON property `p50`
19431
+ # @return [Float]
19432
+ attr_accessor :p50
19433
+
19434
+ # The 90th percentile value.
19435
+ # Corresponds to the JSON property `p90`
19436
+ # @return [Float]
19437
+ attr_accessor :p90
19438
+
19439
+ # The 99th percentile value.
19440
+ # Corresponds to the JSON property `p99`
19441
+ # @return [Float]
19442
+ attr_accessor :p99
19443
+
19444
+ def initialize(**args)
19445
+ update!(**args)
19446
+ end
19447
+
19448
+ # Update properties of this object
19449
+ def update!(**args)
19450
+ @p50 = args[:p50] if args.key?(:p50)
19451
+ @p90 = args[:p90] if args.key?(:p90)
19452
+ @p99 = args[:p99] if args.key?(:p99)
19453
+ end
19454
+ end
19455
+
17077
19456
  # A time series of metric values.
17078
19457
  class GoogleCloudContactcenterinsightsV1mainQueryMetricsResponseSliceTimeSeries
17079
19458
  include Google::Apis::Core::Hashable
@@ -17588,6 +19967,163 @@ module Google
17588
19967
  end
17589
19968
  end
17590
19969
 
19970
+ # Metadata for testing correlation config.
19971
+ class GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigMetadata
19972
+ include Google::Apis::Core::Hashable
19973
+
19974
+ # Output only. The time the operation was created.
19975
+ # Corresponds to the JSON property `createTime`
19976
+ # @return [String]
19977
+ attr_accessor :create_time
19978
+
19979
+ # The dataset used for sampling conversations.
19980
+ # Corresponds to the JSON property `dataset`
19981
+ # @return [String]
19982
+ attr_accessor :dataset
19983
+
19984
+ # Statistics for TestCorrelationConfig operation.
19985
+ # Corresponds to the JSON property `stats`
19986
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigMetadataFullConversationCorrelationStats]
19987
+ attr_accessor :stats
19988
+
19989
+ def initialize(**args)
19990
+ update!(**args)
19991
+ end
19992
+
19993
+ # Update properties of this object
19994
+ def update!(**args)
19995
+ @create_time = args[:create_time] if args.key?(:create_time)
19996
+ @dataset = args[:dataset] if args.key?(:dataset)
19997
+ @stats = args[:stats] if args.key?(:stats)
19998
+ end
19999
+ end
20000
+
20001
+ # Statistics for TestCorrelationConfig operation.
20002
+ class GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigMetadataFullConversationCorrelationStats
20003
+ include Google::Apis::Core::Hashable
20004
+
20005
+ # A list of errors that occurred during correlation, one for each conversation
20006
+ # that failed.
20007
+ # Corresponds to the JSON property `conversationCorrelationErrors`
20008
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError>]
20009
+ attr_accessor :conversation_correlation_errors
20010
+
20011
+ # The number of conversations correlated.
20012
+ # Corresponds to the JSON property `correlatedConversationsCount`
20013
+ # @return [Fixnum]
20014
+ attr_accessor :correlated_conversations_count
20015
+
20016
+ # The number of conversations that failed correlation.
20017
+ # Corresponds to the JSON property `failedConversationsCount`
20018
+ # @return [Fixnum]
20019
+ attr_accessor :failed_conversations_count
20020
+
20021
+ # Partial errors during test correlation config operation that might cause the
20022
+ # operation output to be incomplete.
20023
+ # Corresponds to the JSON property `partialErrors`
20024
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
20025
+ attr_accessor :partial_errors
20026
+
20027
+ # The number of conversations sampled.
20028
+ # Corresponds to the JSON property `sampledConversationsCount`
20029
+ # @return [Fixnum]
20030
+ attr_accessor :sampled_conversations_count
20031
+
20032
+ def initialize(**args)
20033
+ update!(**args)
20034
+ end
20035
+
20036
+ # Update properties of this object
20037
+ def update!(**args)
20038
+ @conversation_correlation_errors = args[:conversation_correlation_errors] if args.key?(:conversation_correlation_errors)
20039
+ @correlated_conversations_count = args[:correlated_conversations_count] if args.key?(:correlated_conversations_count)
20040
+ @failed_conversations_count = args[:failed_conversations_count] if args.key?(:failed_conversations_count)
20041
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
20042
+ @sampled_conversations_count = args[:sampled_conversations_count] if args.key?(:sampled_conversations_count)
20043
+ end
20044
+ end
20045
+
20046
+ # An error that occurred during correlation for a specific conversation.
20047
+ class GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigMetadataFullConversationCorrelationStatsConversationCorrelationError
20048
+ include Google::Apis::Core::Hashable
20049
+
20050
+ # The conversation resource name that had an error during correlation.
20051
+ # Corresponds to the JSON property `conversation`
20052
+ # @return [String]
20053
+ attr_accessor :conversation
20054
+
20055
+ # The `Status` type defines a logical error model that is suitable for different
20056
+ # programming environments, including REST APIs and RPC APIs. It is used by [
20057
+ # gRPC](https://github.com/grpc). Each `Status` message contains three pieces of
20058
+ # data: error code, error message, and error details. You can find out more
20059
+ # about this error model and how to work with it in the [API Design Guide](https:
20060
+ # //cloud.google.com/apis/design/errors).
20061
+ # Corresponds to the JSON property `status`
20062
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus]
20063
+ attr_accessor :status
20064
+
20065
+ def initialize(**args)
20066
+ update!(**args)
20067
+ end
20068
+
20069
+ # Update properties of this object
20070
+ def update!(**args)
20071
+ @conversation = args[:conversation] if args.key?(:conversation)
20072
+ @status = args[:status] if args.key?(:status)
20073
+ end
20074
+ end
20075
+
20076
+ # The response of testing correlation config.
20077
+ class GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigResponse
20078
+ include Google::Apis::Core::Hashable
20079
+
20080
+ # Wrapper for detailed, step-by-step results.
20081
+ # Corresponds to the JSON property `detailedResults`
20082
+ # @return [Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigResponseDetailedCorrelationResults]
20083
+ attr_accessor :detailed_results
20084
+
20085
+ # Partial errors during test correlation config operation that might cause the
20086
+ # operation output to be incomplete.
20087
+ # Corresponds to the JSON property `partialErrors`
20088
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleRpcStatus>]
20089
+ attr_accessor :partial_errors
20090
+
20091
+ def initialize(**args)
20092
+ update!(**args)
20093
+ end
20094
+
20095
+ # Update properties of this object
20096
+ def update!(**args)
20097
+ @detailed_results = args[:detailed_results] if args.key?(:detailed_results)
20098
+ @partial_errors = args[:partial_errors] if args.key?(:partial_errors)
20099
+ end
20100
+ end
20101
+
20102
+ # Wrapper for detailed, step-by-step results.
20103
+ class GoogleCloudContactcenterinsightsV1mainTestCorrelationConfigResponseDetailedCorrelationResults
20104
+ include Google::Apis::Core::Hashable
20105
+
20106
+ # A list of constraint evaluation results for each pair of conversations.
20107
+ # Corresponds to the JSON property `constraintResults`
20108
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConstraintEvaluationResult>]
20109
+ attr_accessor :constraint_results
20110
+
20111
+ # A list of join key correlation results for each conversation tested.
20112
+ # Corresponds to the JSON property `joinKeyResults`
20113
+ # @return [Array<Google::Apis::ContactcenterinsightsV1::GoogleCloudContactcenterinsightsV1mainConversationCorrelationResult>]
20114
+ attr_accessor :join_key_results
20115
+
20116
+ def initialize(**args)
20117
+ update!(**args)
20118
+ end
20119
+
20120
+ # Update properties of this object
20121
+ def update!(**args)
20122
+ @constraint_results = args[:constraint_results] if args.key?(:constraint_results)
20123
+ @join_key_results = args[:join_key_results] if args.key?(:join_key_results)
20124
+ end
20125
+ end
20126
+
17591
20127
  # Metadata for undeploying an issue model.
17592
20128
  class GoogleCloudContactcenterinsightsV1mainUndeployIssueModelMetadata
17593
20129
  include Google::Apis::Core::Hashable