diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/ContactCenterInsights.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/ContactCenterInsights.php
new file mode 100644
index 000000000000..3a19014a818b
Binary files /dev/null and b/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/ContactCenterInsights.php differ
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/Resources.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/Resources.php
new file mode 100644
index 000000000000..29ff41bf5de9
Binary files /dev/null and b/owl-bot-staging/ContactCenterInsights/v1/proto/src/GPBMetadata/Google/Cloud/Contactcenterinsights/V1/Resources.php differ
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Analysis.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Analysis.php
new file mode 100644
index 000000000000..880a55f553be
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Analysis.php
@@ -0,0 +1,263 @@
+google.cloud.contactcenterinsights.v1.Analysis
+ */
+class Analysis extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the analysis.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * Output only. The time at which the analysis was requested.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp request_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request_time = null;
+ /**
+ * Output only. The time at which the analysis was created, which occurs when
+ * the long-running operation completes.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The result of the analysis, which is populated when the
+ * analysis finishes.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisResult analysis_result = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $analysis_result = null;
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ */
+ protected $annotator_selector = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the analysis.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ * @type \Google\Protobuf\Timestamp $request_time
+ * Output only. The time at which the analysis was requested.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which the analysis was created, which occurs when
+ * the long-running operation completes.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnalysisResult $analysis_result
+ * Output only. The result of the analysis, which is populated when the
+ * analysis finishes.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $annotator_selector
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the analysis.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the analysis.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which the analysis was requested.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp request_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getRequestTime()
+ {
+ return $this->request_time;
+ }
+
+ public function hasRequestTime()
+ {
+ return isset($this->request_time);
+ }
+
+ public function clearRequestTime()
+ {
+ unset($this->request_time);
+ }
+
+ /**
+ * Output only. The time at which the analysis was requested.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp request_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setRequestTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->request_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which the analysis was created, which occurs when
+ * the long-running operation completes.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which the analysis was created, which occurs when
+ * the long-running operation completes.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The result of the analysis, which is populated when the
+ * analysis finishes.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisResult analysis_result = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnalysisResult|null
+ */
+ public function getAnalysisResult()
+ {
+ return $this->analysis_result;
+ }
+
+ public function hasAnalysisResult()
+ {
+ return isset($this->analysis_result);
+ }
+
+ public function clearAnalysisResult()
+ {
+ unset($this->analysis_result);
+ }
+
+ /**
+ * Output only. The result of the analysis, which is populated when the
+ * analysis finishes.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisResult analysis_result = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisResult $var
+ * @return $this
+ */
+ public function setAnalysisResult($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnalysisResult::class);
+ $this->analysis_result = $var;
+
+ return $this;
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector|null
+ */
+ public function getAnnotatorSelector()
+ {
+ return $this->annotator_selector;
+ }
+
+ public function hasAnnotatorSelector()
+ {
+ return isset($this->annotator_selector);
+ }
+
+ public function clearAnnotatorSelector()
+ {
+ unset($this->annotator_selector);
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $var
+ * @return $this
+ */
+ public function setAnnotatorSelector($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector::class);
+ $this->annotator_selector = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult.php
new file mode 100644
index 000000000000..f3f49c60cfdc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult.php
@@ -0,0 +1,119 @@
+google.cloud.contactcenterinsights.v1.AnalysisResult
+ */
+class AnalysisResult extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time at which the analysis ended.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 1;
+ */
+ protected $end_time = null;
+ protected $metadata;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnalysisResult\CallAnalysisMetadata $call_analysis_metadata
+ * Call-specific metadata created by the analysis.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * The time at which the analysis ended.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Call-specific metadata created by the analysis.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisResult.CallAnalysisMetadata call_analysis_metadata = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnalysisResult\CallAnalysisMetadata|null
+ */
+ public function getCallAnalysisMetadata()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasCallAnalysisMetadata()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Call-specific metadata created by the analysis.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisResult.CallAnalysisMetadata call_analysis_metadata = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisResult\CallAnalysisMetadata $var
+ * @return $this
+ */
+ public function setCallAnalysisMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnalysisResult\CallAnalysisMetadata::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * The time at which the analysis ended.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * The time at which the analysis ended.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getMetadata()
+ {
+ return $this->whichOneof("metadata");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult/CallAnalysisMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult/CallAnalysisMetadata.php
new file mode 100644
index 000000000000..b5a9ed49d7e0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisResult/CallAnalysisMetadata.php
@@ -0,0 +1,328 @@
+google.cloud.contactcenterinsights.v1.AnalysisResult.CallAnalysisMetadata
+ */
+class CallAnalysisMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A list of call annotations that apply to this call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CallAnnotation annotations = 2;
+ */
+ private $annotations;
+ /**
+ * All the entities in the call.
+ *
+ * Generated from protobuf field map entities = 3;
+ */
+ private $entities;
+ /**
+ * Overall conversation-level sentiment for each channel of the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.ConversationLevelSentiment sentiments = 4;
+ */
+ private $sentiments;
+ /**
+ * Overall conversation-level silence during the call.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationLevelSilence silence = 11;
+ */
+ protected $silence = null;
+ /**
+ * All the matched intents in the call.
+ *
+ * Generated from protobuf field map intents = 6;
+ */
+ private $intents;
+ /**
+ * All the matched phrase matchers in the call.
+ *
+ * Generated from protobuf field map phrase_matchers = 7;
+ */
+ private $phrase_matchers;
+ /**
+ * Overall conversation-level issue modeling result.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelResult issue_model_result = 8;
+ */
+ protected $issue_model_result = null;
+ /**
+ * Results of scoring QaScorecards.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult qa_scorecard_results = 10;
+ */
+ private $qa_scorecard_results;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\CallAnnotation>|\Google\Protobuf\Internal\RepeatedField $annotations
+ * A list of call annotations that apply to this call.
+ * @type array|\Google\Protobuf\Internal\MapField $entities
+ * All the entities in the call.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\ConversationLevelSentiment>|\Google\Protobuf\Internal\RepeatedField $sentiments
+ * Overall conversation-level sentiment for each channel of the call.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ConversationLevelSilence $silence
+ * Overall conversation-level silence during the call.
+ * @type array|\Google\Protobuf\Internal\MapField $intents
+ * All the matched intents in the call.
+ * @type array|\Google\Protobuf\Internal\MapField $phrase_matchers
+ * All the matched phrase matchers in the call.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModelResult $issue_model_result
+ * Overall conversation-level issue modeling result.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult>|\Google\Protobuf\Internal\RepeatedField $qa_scorecard_results
+ * Results of scoring QaScorecards.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A list of call annotations that apply to this call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CallAnnotation annotations = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAnnotations()
+ {
+ return $this->annotations;
+ }
+
+ /**
+ * A list of call annotations that apply to this call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CallAnnotation annotations = 2;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\CallAnnotation>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAnnotations($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\CallAnnotation::class);
+ $this->annotations = $arr;
+
+ return $this;
+ }
+
+ /**
+ * All the entities in the call.
+ *
+ * Generated from protobuf field map entities = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getEntities()
+ {
+ return $this->entities;
+ }
+
+ /**
+ * All the entities in the call.
+ *
+ * Generated from protobuf field map entities = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setEntities($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Entity::class);
+ $this->entities = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Overall conversation-level sentiment for each channel of the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.ConversationLevelSentiment sentiments = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getSentiments()
+ {
+ return $this->sentiments;
+ }
+
+ /**
+ * Overall conversation-level sentiment for each channel of the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.ConversationLevelSentiment sentiments = 4;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\ConversationLevelSentiment>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setSentiments($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\ConversationLevelSentiment::class);
+ $this->sentiments = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Overall conversation-level silence during the call.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationLevelSilence silence = 11;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ConversationLevelSilence|null
+ */
+ public function getSilence()
+ {
+ return $this->silence;
+ }
+
+ public function hasSilence()
+ {
+ return isset($this->silence);
+ }
+
+ public function clearSilence()
+ {
+ unset($this->silence);
+ }
+
+ /**
+ * Overall conversation-level silence during the call.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationLevelSilence silence = 11;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ConversationLevelSilence $var
+ * @return $this
+ */
+ public function setSilence($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ConversationLevelSilence::class);
+ $this->silence = $var;
+
+ return $this;
+ }
+
+ /**
+ * All the matched intents in the call.
+ *
+ * Generated from protobuf field map intents = 6;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getIntents()
+ {
+ return $this->intents;
+ }
+
+ /**
+ * All the matched intents in the call.
+ *
+ * Generated from protobuf field map intents = 6;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setIntents($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Intent::class);
+ $this->intents = $arr;
+
+ return $this;
+ }
+
+ /**
+ * All the matched phrase matchers in the call.
+ *
+ * Generated from protobuf field map phrase_matchers = 7;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getPhraseMatchers()
+ {
+ return $this->phrase_matchers;
+ }
+
+ /**
+ * All the matched phrase matchers in the call.
+ *
+ * Generated from protobuf field map phrase_matchers = 7;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setPhraseMatchers($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchData::class);
+ $this->phrase_matchers = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Overall conversation-level issue modeling result.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelResult issue_model_result = 8;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModelResult|null
+ */
+ public function getIssueModelResult()
+ {
+ return $this->issue_model_result;
+ }
+
+ public function hasIssueModelResult()
+ {
+ return isset($this->issue_model_result);
+ }
+
+ public function clearIssueModelResult()
+ {
+ unset($this->issue_model_result);
+ }
+
+ /**
+ * Overall conversation-level issue modeling result.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelResult issue_model_result = 8;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModelResult $var
+ * @return $this
+ */
+ public function setIssueModelResult($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModelResult::class);
+ $this->issue_model_result = $var;
+
+ return $this;
+ }
+
+ /**
+ * Results of scoring QaScorecards.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult qa_scorecard_results = 10;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaScorecardResults()
+ {
+ return $this->qa_scorecard_results;
+ }
+
+ /**
+ * Results of scoring QaScorecards.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult qa_scorecard_results = 10;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaScorecardResults($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult::class);
+ $this->qa_scorecard_results = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(CallAnalysisMetadata::class, \Google\Cloud\ContactCenterInsights\V1\AnalysisResult_CallAnalysisMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisRule.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisRule.php
new file mode 100644
index 000000000000..fa22d6f8b1e1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnalysisRule.php
@@ -0,0 +1,389 @@
+google.cloud.contactcenterinsights.v1.AnalysisRule
+ */
+class AnalysisRule extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Identifier. The resource name of the analysis rule.
+ * Format:
+ * projects/{project}/locations/{location}/analysisRules/{analysis_rule}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ */
+ protected $name = '';
+ /**
+ * Output only. The time at which this analysis rule was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which this analysis rule was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * Display Name of the analysis rule.
+ *
+ * Generated from protobuf field optional string display_name = 4;
+ */
+ protected $display_name = null;
+ /**
+ * Filter for the conversations that should apply this analysis
+ * rule. An empty filter means this analysis rule applies to all
+ * conversations.
+ *
+ * Generated from protobuf field string conversation_filter = 5;
+ */
+ protected $conversation_filter = '';
+ /**
+ * Selector of annotators to run and the phrase matchers to use for
+ * conversations that matches the conversation_filter. If not specified, NO
+ * annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 6;
+ */
+ protected $annotator_selector = null;
+ /**
+ * Percentage of conversations that we should apply this analysis setting
+ * automatically, between [0, 1]. For example, 0.1 means 10%. Conversations
+ * are sampled in a determenestic way. The original runtime_percentage &
+ * upload percentage will be replaced by defining filters on the conversation.
+ *
+ * Generated from protobuf field double analysis_percentage = 7;
+ */
+ protected $analysis_percentage = 0.0;
+ /**
+ * If true, apply this rule to conversations. Otherwise, this rule is
+ * inactive and saved as a draft.
+ *
+ * Generated from protobuf field bool active = 8;
+ */
+ protected $active = false;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Identifier. The resource name of the analysis rule.
+ * Format:
+ * projects/{project}/locations/{location}/analysisRules/{analysis_rule}
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this analysis rule was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which this analysis rule was updated.
+ * @type string $display_name
+ * Display Name of the analysis rule.
+ * @type string $conversation_filter
+ * Filter for the conversations that should apply this analysis
+ * rule. An empty filter means this analysis rule applies to all
+ * conversations.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $annotator_selector
+ * Selector of annotators to run and the phrase matchers to use for
+ * conversations that matches the conversation_filter. If not specified, NO
+ * annotators will be run.
+ * @type float $analysis_percentage
+ * Percentage of conversations that we should apply this analysis setting
+ * automatically, between [0, 1]. For example, 0.1 means 10%. Conversations
+ * are sampled in a determenestic way. The original runtime_percentage &
+ * upload percentage will be replaced by defining filters on the conversation.
+ * @type bool $active
+ * If true, apply this rule to conversations. Otherwise, this rule is
+ * inactive and saved as a draft.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Identifier. The resource name of the analysis rule.
+ * Format:
+ * projects/{project}/locations/{location}/analysisRules/{analysis_rule}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Identifier. The resource name of the analysis rule.
+ * Format:
+ * projects/{project}/locations/{location}/analysisRules/{analysis_rule}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this analysis rule was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this analysis rule was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which this analysis rule was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which this analysis rule was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Display Name of the analysis rule.
+ *
+ * Generated from protobuf field optional string display_name = 4;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return isset($this->display_name) ? $this->display_name : '';
+ }
+
+ public function hasDisplayName()
+ {
+ return isset($this->display_name);
+ }
+
+ public function clearDisplayName()
+ {
+ unset($this->display_name);
+ }
+
+ /**
+ * Display Name of the analysis rule.
+ *
+ * Generated from protobuf field optional string display_name = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Filter for the conversations that should apply this analysis
+ * rule. An empty filter means this analysis rule applies to all
+ * conversations.
+ *
+ * Generated from protobuf field string conversation_filter = 5;
+ * @return string
+ */
+ public function getConversationFilter()
+ {
+ return $this->conversation_filter;
+ }
+
+ /**
+ * Filter for the conversations that should apply this analysis
+ * rule. An empty filter means this analysis rule applies to all
+ * conversations.
+ *
+ * Generated from protobuf field string conversation_filter = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation_filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Selector of annotators to run and the phrase matchers to use for
+ * conversations that matches the conversation_filter. If not specified, NO
+ * annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 6;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector|null
+ */
+ public function getAnnotatorSelector()
+ {
+ return $this->annotator_selector;
+ }
+
+ public function hasAnnotatorSelector()
+ {
+ return isset($this->annotator_selector);
+ }
+
+ public function clearAnnotatorSelector()
+ {
+ unset($this->annotator_selector);
+ }
+
+ /**
+ * Selector of annotators to run and the phrase matchers to use for
+ * conversations that matches the conversation_filter. If not specified, NO
+ * annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 6;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $var
+ * @return $this
+ */
+ public function setAnnotatorSelector($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector::class);
+ $this->annotator_selector = $var;
+
+ return $this;
+ }
+
+ /**
+ * Percentage of conversations that we should apply this analysis setting
+ * automatically, between [0, 1]. For example, 0.1 means 10%. Conversations
+ * are sampled in a determenestic way. The original runtime_percentage &
+ * upload percentage will be replaced by defining filters on the conversation.
+ *
+ * Generated from protobuf field double analysis_percentage = 7;
+ * @return float
+ */
+ public function getAnalysisPercentage()
+ {
+ return $this->analysis_percentage;
+ }
+
+ /**
+ * Percentage of conversations that we should apply this analysis setting
+ * automatically, between [0, 1]. For example, 0.1 means 10%. Conversations
+ * are sampled in a determenestic way. The original runtime_percentage &
+ * upload percentage will be replaced by defining filters on the conversation.
+ *
+ * Generated from protobuf field double analysis_percentage = 7;
+ * @param float $var
+ * @return $this
+ */
+ public function setAnalysisPercentage($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->analysis_percentage = $var;
+
+ return $this;
+ }
+
+ /**
+ * If true, apply this rule to conversations. Otherwise, this rule is
+ * inactive and saved as a draft.
+ *
+ * Generated from protobuf field bool active = 8;
+ * @return bool
+ */
+ public function getActive()
+ {
+ return $this->active;
+ }
+
+ /**
+ * If true, apply this rule to conversations. Otherwise, this rule is
+ * inactive and saved as a draft.
+ *
+ * Generated from protobuf field bool active = 8;
+ * @param bool $var
+ * @return $this
+ */
+ public function setActive($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->active = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotationBoundary.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotationBoundary.php
new file mode 100644
index 000000000000..f36dc2dfdf24
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotationBoundary.php
@@ -0,0 +1,116 @@
+google.cloud.contactcenterinsights.v1.AnnotationBoundary
+ */
+class AnnotationBoundary extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The index in the sequence of transcribed pieces of the conversation where
+ * the boundary is located. This index starts at zero.
+ *
+ * Generated from protobuf field int32 transcript_index = 1;
+ */
+ protected $transcript_index = 0;
+ protected $detailed_boundary;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $word_index
+ * The word index of this boundary with respect to the first word in the
+ * transcript piece. This index starts at zero.
+ * @type int $transcript_index
+ * The index in the sequence of transcribed pieces of the conversation where
+ * the boundary is located. This index starts at zero.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The word index of this boundary with respect to the first word in the
+ * transcript piece. This index starts at zero.
+ *
+ * Generated from protobuf field int32 word_index = 3;
+ * @return int
+ */
+ public function getWordIndex()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasWordIndex()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * The word index of this boundary with respect to the first word in the
+ * transcript piece. This index starts at zero.
+ *
+ * Generated from protobuf field int32 word_index = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setWordIndex($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * The index in the sequence of transcribed pieces of the conversation where
+ * the boundary is located. This index starts at zero.
+ *
+ * Generated from protobuf field int32 transcript_index = 1;
+ * @return int
+ */
+ public function getTranscriptIndex()
+ {
+ return $this->transcript_index;
+ }
+
+ /**
+ * The index in the sequence of transcribed pieces of the conversation where
+ * the boundary is located. This index starts at zero.
+ *
+ * Generated from protobuf field int32 transcript_index = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setTranscriptIndex($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->transcript_index = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDetailedBoundary()
+ {
+ return $this->whichOneof("detailed_boundary");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector.php
new file mode 100644
index 000000000000..3aad7aa50ad1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector.php
@@ -0,0 +1,531 @@
+google.cloud.contactcenterinsights.v1.AnnotatorSelector
+ */
+class AnnotatorSelector extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Whether to run the interruption annotator.
+ *
+ * Generated from protobuf field bool run_interruption_annotator = 1;
+ */
+ protected $run_interruption_annotator = false;
+ /**
+ * Whether to run the silence annotator.
+ *
+ * Generated from protobuf field bool run_silence_annotator = 2;
+ */
+ protected $run_silence_annotator = false;
+ /**
+ * Whether to run the active phrase matcher annotator(s).
+ *
+ * Generated from protobuf field bool run_phrase_matcher_annotator = 3;
+ */
+ protected $run_phrase_matcher_annotator = false;
+ /**
+ * The list of phrase matchers to run. If not provided, all active phrase
+ * matchers will be used. If inactive phrase matchers are provided, they will
+ * not be used. Phrase matchers will be run only if
+ * run_phrase_matcher_annotator is set to true. Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field repeated string phrase_matchers = 4 [(.google.api.resource_reference) = {
+ */
+ private $phrase_matchers;
+ /**
+ * Whether to run the sentiment annotator.
+ *
+ * Generated from protobuf field bool run_sentiment_annotator = 5;
+ */
+ protected $run_sentiment_annotator = false;
+ /**
+ * Whether to run the entity annotator.
+ *
+ * Generated from protobuf field bool run_entity_annotator = 6;
+ */
+ protected $run_entity_annotator = false;
+ /**
+ * Whether to run the intent annotator.
+ *
+ * Generated from protobuf field bool run_intent_annotator = 7;
+ */
+ protected $run_intent_annotator = false;
+ /**
+ * Whether to run the issue model annotator. A model should have already been
+ * deployed for this to take effect.
+ *
+ * Generated from protobuf field bool run_issue_model_annotator = 8;
+ */
+ protected $run_issue_model_annotator = false;
+ /**
+ * The issue model to run. If not provided, the most recently deployed topic
+ * model will be used. The provided issue model will only be used for
+ * inference if the issue model is deployed and if run_issue_model_annotator
+ * is set to true. If more than one issue model is provided, only the first
+ * provided issue model will be used for inference.
+ *
+ * Generated from protobuf field repeated string issue_models = 10 [(.google.api.resource_reference) = {
+ */
+ private $issue_models;
+ /**
+ * Whether to run the summarization annotator.
+ *
+ * Generated from protobuf field bool run_summarization_annotator = 9;
+ */
+ protected $run_summarization_annotator = false;
+ /**
+ * Configuration for the summarization annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig summarization_config = 11;
+ */
+ protected $summarization_config = null;
+ /**
+ * Whether to run the QA annotator.
+ *
+ * Generated from protobuf field bool run_qa_annotator = 12;
+ */
+ protected $run_qa_annotator = false;
+ /**
+ * Configuration for the QA annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig qa_config = 13;
+ */
+ protected $qa_config = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type bool $run_interruption_annotator
+ * Whether to run the interruption annotator.
+ * @type bool $run_silence_annotator
+ * Whether to run the silence annotator.
+ * @type bool $run_phrase_matcher_annotator
+ * Whether to run the active phrase matcher annotator(s).
+ * @type array|\Google\Protobuf\Internal\RepeatedField $phrase_matchers
+ * The list of phrase matchers to run. If not provided, all active phrase
+ * matchers will be used. If inactive phrase matchers are provided, they will
+ * not be used. Phrase matchers will be run only if
+ * run_phrase_matcher_annotator is set to true. Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ * @type bool $run_sentiment_annotator
+ * Whether to run the sentiment annotator.
+ * @type bool $run_entity_annotator
+ * Whether to run the entity annotator.
+ * @type bool $run_intent_annotator
+ * Whether to run the intent annotator.
+ * @type bool $run_issue_model_annotator
+ * Whether to run the issue model annotator. A model should have already been
+ * deployed for this to take effect.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $issue_models
+ * The issue model to run. If not provided, the most recently deployed topic
+ * model will be used. The provided issue model will only be used for
+ * inference if the issue model is deployed and if run_issue_model_annotator
+ * is set to true. If more than one issue model is provided, only the first
+ * provided issue model will be used for inference.
+ * @type bool $run_summarization_annotator
+ * Whether to run the summarization annotator.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\SummarizationConfig $summarization_config
+ * Configuration for the summarization annotator.
+ * @type bool $run_qa_annotator
+ * Whether to run the QA annotator.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig $qa_config
+ * Configuration for the QA annotator.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Whether to run the interruption annotator.
+ *
+ * Generated from protobuf field bool run_interruption_annotator = 1;
+ * @return bool
+ */
+ public function getRunInterruptionAnnotator()
+ {
+ return $this->run_interruption_annotator;
+ }
+
+ /**
+ * Whether to run the interruption annotator.
+ *
+ * Generated from protobuf field bool run_interruption_annotator = 1;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunInterruptionAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_interruption_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the silence annotator.
+ *
+ * Generated from protobuf field bool run_silence_annotator = 2;
+ * @return bool
+ */
+ public function getRunSilenceAnnotator()
+ {
+ return $this->run_silence_annotator;
+ }
+
+ /**
+ * Whether to run the silence annotator.
+ *
+ * Generated from protobuf field bool run_silence_annotator = 2;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunSilenceAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_silence_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the active phrase matcher annotator(s).
+ *
+ * Generated from protobuf field bool run_phrase_matcher_annotator = 3;
+ * @return bool
+ */
+ public function getRunPhraseMatcherAnnotator()
+ {
+ return $this->run_phrase_matcher_annotator;
+ }
+
+ /**
+ * Whether to run the active phrase matcher annotator(s).
+ *
+ * Generated from protobuf field bool run_phrase_matcher_annotator = 3;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunPhraseMatcherAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_phrase_matcher_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of phrase matchers to run. If not provided, all active phrase
+ * matchers will be used. If inactive phrase matchers are provided, they will
+ * not be used. Phrase matchers will be run only if
+ * run_phrase_matcher_annotator is set to true. Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field repeated string phrase_matchers = 4 [(.google.api.resource_reference) = {
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPhraseMatchers()
+ {
+ return $this->phrase_matchers;
+ }
+
+ /**
+ * The list of phrase matchers to run. If not provided, all active phrase
+ * matchers will be used. If inactive phrase matchers are provided, they will
+ * not be used. Phrase matchers will be run only if
+ * run_phrase_matcher_annotator is set to true. Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field repeated string phrase_matchers = 4 [(.google.api.resource_reference) = {
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPhraseMatchers($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->phrase_matchers = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the sentiment annotator.
+ *
+ * Generated from protobuf field bool run_sentiment_annotator = 5;
+ * @return bool
+ */
+ public function getRunSentimentAnnotator()
+ {
+ return $this->run_sentiment_annotator;
+ }
+
+ /**
+ * Whether to run the sentiment annotator.
+ *
+ * Generated from protobuf field bool run_sentiment_annotator = 5;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunSentimentAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_sentiment_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the entity annotator.
+ *
+ * Generated from protobuf field bool run_entity_annotator = 6;
+ * @return bool
+ */
+ public function getRunEntityAnnotator()
+ {
+ return $this->run_entity_annotator;
+ }
+
+ /**
+ * Whether to run the entity annotator.
+ *
+ * Generated from protobuf field bool run_entity_annotator = 6;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunEntityAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_entity_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the intent annotator.
+ *
+ * Generated from protobuf field bool run_intent_annotator = 7;
+ * @return bool
+ */
+ public function getRunIntentAnnotator()
+ {
+ return $this->run_intent_annotator;
+ }
+
+ /**
+ * Whether to run the intent annotator.
+ *
+ * Generated from protobuf field bool run_intent_annotator = 7;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunIntentAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_intent_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the issue model annotator. A model should have already been
+ * deployed for this to take effect.
+ *
+ * Generated from protobuf field bool run_issue_model_annotator = 8;
+ * @return bool
+ */
+ public function getRunIssueModelAnnotator()
+ {
+ return $this->run_issue_model_annotator;
+ }
+
+ /**
+ * Whether to run the issue model annotator. A model should have already been
+ * deployed for this to take effect.
+ *
+ * Generated from protobuf field bool run_issue_model_annotator = 8;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunIssueModelAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_issue_model_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * The issue model to run. If not provided, the most recently deployed topic
+ * model will be used. The provided issue model will only be used for
+ * inference if the issue model is deployed and if run_issue_model_annotator
+ * is set to true. If more than one issue model is provided, only the first
+ * provided issue model will be used for inference.
+ *
+ * Generated from protobuf field repeated string issue_models = 10 [(.google.api.resource_reference) = {
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getIssueModels()
+ {
+ return $this->issue_models;
+ }
+
+ /**
+ * The issue model to run. If not provided, the most recently deployed topic
+ * model will be used. The provided issue model will only be used for
+ * inference if the issue model is deployed and if run_issue_model_annotator
+ * is set to true. If more than one issue model is provided, only the first
+ * provided issue model will be used for inference.
+ *
+ * Generated from protobuf field repeated string issue_models = 10 [(.google.api.resource_reference) = {
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setIssueModels($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->issue_models = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the summarization annotator.
+ *
+ * Generated from protobuf field bool run_summarization_annotator = 9;
+ * @return bool
+ */
+ public function getRunSummarizationAnnotator()
+ {
+ return $this->run_summarization_annotator;
+ }
+
+ /**
+ * Whether to run the summarization annotator.
+ *
+ * Generated from protobuf field bool run_summarization_annotator = 9;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunSummarizationAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_summarization_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Configuration for the summarization annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig summarization_config = 11;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\SummarizationConfig|null
+ */
+ public function getSummarizationConfig()
+ {
+ return $this->summarization_config;
+ }
+
+ public function hasSummarizationConfig()
+ {
+ return isset($this->summarization_config);
+ }
+
+ public function clearSummarizationConfig()
+ {
+ unset($this->summarization_config);
+ }
+
+ /**
+ * Configuration for the summarization annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig summarization_config = 11;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\SummarizationConfig $var
+ * @return $this
+ */
+ public function setSummarizationConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\SummarizationConfig::class);
+ $this->summarization_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Whether to run the QA annotator.
+ *
+ * Generated from protobuf field bool run_qa_annotator = 12;
+ * @return bool
+ */
+ public function getRunQaAnnotator()
+ {
+ return $this->run_qa_annotator;
+ }
+
+ /**
+ * Whether to run the QA annotator.
+ *
+ * Generated from protobuf field bool run_qa_annotator = 12;
+ * @param bool $var
+ * @return $this
+ */
+ public function setRunQaAnnotator($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->run_qa_annotator = $var;
+
+ return $this;
+ }
+
+ /**
+ * Configuration for the QA annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig qa_config = 13;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig|null
+ */
+ public function getQaConfig()
+ {
+ return $this->qa_config;
+ }
+
+ public function hasQaConfig()
+ {
+ return isset($this->qa_config);
+ }
+
+ public function clearQaConfig()
+ {
+ unset($this->qa_config);
+ }
+
+ /**
+ * Configuration for the QA annotator.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig qa_config = 13;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig $var
+ * @return $this
+ */
+ public function setQaConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig::class);
+ $this->qa_config = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig.php
new file mode 100644
index 000000000000..48b7e18cf149
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig.php
@@ -0,0 +1,78 @@
+google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig
+ */
+class QaConfig extends \Google\Protobuf\Internal\Message
+{
+ protected $scorecard_source;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig\ScorecardList $scorecard_list
+ * A manual list of scorecards to score.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A manual list of scorecards to score.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig.ScorecardList scorecard_list = 1;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig\ScorecardList|null
+ */
+ public function getScorecardList()
+ {
+ return $this->readOneof(1);
+ }
+
+ public function hasScorecardList()
+ {
+ return $this->hasOneof(1);
+ }
+
+ /**
+ * A manual list of scorecards to score.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig.ScorecardList scorecard_list = 1;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig\ScorecardList $var
+ * @return $this
+ */
+ public function setScorecardList($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\QaConfig\ScorecardList::class);
+ $this->writeOneof(1, $var);
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getScorecardSource()
+ {
+ return $this->whichOneof("scorecard_source");
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaConfig::class, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector_QaConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig/ScorecardList.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig/ScorecardList.php
new file mode 100644
index 000000000000..6ee985adc17c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/QaConfig/ScorecardList.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.AnnotatorSelector.QaConfig.ScorecardList
+ */
+class ScorecardList extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * List of QaScorecardRevisions.
+ *
+ * Generated from protobuf field repeated string qa_scorecard_revisions = 1 [(.google.api.resource_reference) = {
+ */
+ private $qa_scorecard_revisions;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array|\Google\Protobuf\Internal\RepeatedField $qa_scorecard_revisions
+ * List of QaScorecardRevisions.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * List of QaScorecardRevisions.
+ *
+ * Generated from protobuf field repeated string qa_scorecard_revisions = 1 [(.google.api.resource_reference) = {
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaScorecardRevisions()
+ {
+ return $this->qa_scorecard_revisions;
+ }
+
+ /**
+ * List of QaScorecardRevisions.
+ *
+ * Generated from protobuf field repeated string qa_scorecard_revisions = 1 [(.google.api.resource_reference) = {
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaScorecardRevisions($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->qa_scorecard_revisions = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(ScorecardList::class, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector_QaConfig_ScorecardList::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig.php
new file mode 100644
index 000000000000..b050ddc9554a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig.php
@@ -0,0 +1,117 @@
+google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig
+ */
+class SummarizationConfig extends \Google\Protobuf\Internal\Message
+{
+ protected $model_source;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $conversation_profile
+ * Resource name of the Dialogflow conversation profile.
+ * Format:
+ * projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}
+ * @type int $summarization_model
+ * Default summarization model to be used.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Resource name of the Dialogflow conversation profile.
+ * Format:
+ * projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}
+ *
+ * Generated from protobuf field string conversation_profile = 1 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getConversationProfile()
+ {
+ return $this->readOneof(1);
+ }
+
+ public function hasConversationProfile()
+ {
+ return $this->hasOneof(1);
+ }
+
+ /**
+ * Resource name of the Dialogflow conversation profile.
+ * Format:
+ * projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}
+ *
+ * Generated from protobuf field string conversation_profile = 1 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationProfile($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(1, $var);
+
+ return $this;
+ }
+
+ /**
+ * Default summarization model to be used.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig.SummarizationModel summarization_model = 2;
+ * @return int
+ */
+ public function getSummarizationModel()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasSummarizationModel()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Default summarization model to be used.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig.SummarizationModel summarization_model = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setSummarizationModel($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector\SummarizationConfig\SummarizationModel::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getModelSource()
+ {
+ return $this->whichOneof("model_source");
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(SummarizationConfig::class, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector_SummarizationConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig/SummarizationModel.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig/SummarizationModel.php
new file mode 100644
index 000000000000..889963eb5a60
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnnotatorSelector/SummarizationConfig/SummarizationModel.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.AnnotatorSelector.SummarizationConfig.SummarizationModel
+ */
+class SummarizationModel
+{
+ /**
+ * Unspecified summarization model.
+ *
+ * Generated from protobuf enum SUMMARIZATION_MODEL_UNSPECIFIED = 0;
+ */
+ const SUMMARIZATION_MODEL_UNSPECIFIED = 0;
+ /**
+ * The CCAI baseline model.
+ *
+ * Generated from protobuf enum BASELINE_MODEL = 1;
+ */
+ const BASELINE_MODEL = 1;
+ /**
+ * The CCAI baseline model, V2.0.
+ *
+ * Generated from protobuf enum BASELINE_MODEL_V2_0 = 2;
+ */
+ const BASELINE_MODEL_V2_0 = 2;
+
+ private static $valueToName = [
+ self::SUMMARIZATION_MODEL_UNSPECIFIED => 'SUMMARIZATION_MODEL_UNSPECIFIED',
+ self::BASELINE_MODEL => 'BASELINE_MODEL',
+ self::BASELINE_MODEL_V2_0 => 'BASELINE_MODEL_V2_0',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(SummarizationModel::class, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector_SummarizationConfig_SummarizationModel::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback.php
new file mode 100644
index 000000000000..213afb4ccc53
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback.php
@@ -0,0 +1,140 @@
+google.cloud.contactcenterinsights.v1.AnswerFeedback
+ */
+class AnswerFeedback extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The correctness level of an answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback.CorrectnessLevel correctness_level = 1;
+ */
+ protected $correctness_level = 0;
+ /**
+ * Indicates whether an answer or item was clicked by the human agent.
+ *
+ * Generated from protobuf field bool clicked = 2;
+ */
+ protected $clicked = false;
+ /**
+ * Indicates whether an answer or item was displayed to the human agent in the
+ * agent desktop UI.
+ *
+ * Generated from protobuf field bool displayed = 3;
+ */
+ protected $displayed = false;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $correctness_level
+ * The correctness level of an answer.
+ * @type bool $clicked
+ * Indicates whether an answer or item was clicked by the human agent.
+ * @type bool $displayed
+ * Indicates whether an answer or item was displayed to the human agent in the
+ * agent desktop UI.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The correctness level of an answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback.CorrectnessLevel correctness_level = 1;
+ * @return int
+ */
+ public function getCorrectnessLevel()
+ {
+ return $this->correctness_level;
+ }
+
+ /**
+ * The correctness level of an answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback.CorrectnessLevel correctness_level = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setCorrectnessLevel($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback\CorrectnessLevel::class);
+ $this->correctness_level = $var;
+
+ return $this;
+ }
+
+ /**
+ * Indicates whether an answer or item was clicked by the human agent.
+ *
+ * Generated from protobuf field bool clicked = 2;
+ * @return bool
+ */
+ public function getClicked()
+ {
+ return $this->clicked;
+ }
+
+ /**
+ * Indicates whether an answer or item was clicked by the human agent.
+ *
+ * Generated from protobuf field bool clicked = 2;
+ * @param bool $var
+ * @return $this
+ */
+ public function setClicked($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->clicked = $var;
+
+ return $this;
+ }
+
+ /**
+ * Indicates whether an answer or item was displayed to the human agent in the
+ * agent desktop UI.
+ *
+ * Generated from protobuf field bool displayed = 3;
+ * @return bool
+ */
+ public function getDisplayed()
+ {
+ return $this->displayed;
+ }
+
+ /**
+ * Indicates whether an answer or item was displayed to the human agent in the
+ * agent desktop UI.
+ *
+ * Generated from protobuf field bool displayed = 3;
+ * @param bool $var
+ * @return $this
+ */
+ public function setDisplayed($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->displayed = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback/CorrectnessLevel.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback/CorrectnessLevel.php
new file mode 100644
index 000000000000..2695eda6c4bd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/AnswerFeedback/CorrectnessLevel.php
@@ -0,0 +1,71 @@
+google.cloud.contactcenterinsights.v1.AnswerFeedback.CorrectnessLevel
+ */
+class CorrectnessLevel
+{
+ /**
+ * Correctness level unspecified.
+ *
+ * Generated from protobuf enum CORRECTNESS_LEVEL_UNSPECIFIED = 0;
+ */
+ const CORRECTNESS_LEVEL_UNSPECIFIED = 0;
+ /**
+ * Answer is totally wrong.
+ *
+ * Generated from protobuf enum NOT_CORRECT = 1;
+ */
+ const NOT_CORRECT = 1;
+ /**
+ * Answer is partially correct.
+ *
+ * Generated from protobuf enum PARTIALLY_CORRECT = 2;
+ */
+ const PARTIALLY_CORRECT = 2;
+ /**
+ * Answer is fully correct.
+ *
+ * Generated from protobuf enum FULLY_CORRECT = 3;
+ */
+ const FULLY_CORRECT = 3;
+
+ private static $valueToName = [
+ self::CORRECTNESS_LEVEL_UNSPECIFIED => 'CORRECTNESS_LEVEL_UNSPECIFIED',
+ self::NOT_CORRECT => 'NOT_CORRECT',
+ self::PARTIALLY_CORRECT => 'PARTIALLY_CORRECT',
+ self::FULLY_CORRECT => 'FULLY_CORRECT',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(CorrectnessLevel::class, \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback_CorrectnessLevel::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ArticleSuggestionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ArticleSuggestionData.php
new file mode 100644
index 000000000000..e6fec5e3efb9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ArticleSuggestionData.php
@@ -0,0 +1,265 @@
+google.cloud.contactcenterinsights.v1.ArticleSuggestionData
+ */
+class ArticleSuggestionData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Article title.
+ *
+ * Generated from protobuf field string title = 1;
+ */
+ protected $title = '';
+ /**
+ * Article URI.
+ *
+ * Generated from protobuf field string uri = 2;
+ */
+ protected $uri = '';
+ /**
+ * The system's confidence score that this article is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 3;
+ */
+ protected $confidence_score = 0.0;
+ /**
+ * Map that contains metadata about the Article Suggestion and the document
+ * that it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ */
+ private $metadata;
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ */
+ protected $query_record = '';
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}
+ *
+ * Generated from protobuf field string source = 6;
+ */
+ protected $source = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $title
+ * Article title.
+ * @type string $uri
+ * Article URI.
+ * @type float $confidence_score
+ * The system's confidence score that this article is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * Map that contains metadata about the Article Suggestion and the document
+ * that it originates from.
+ * @type string $query_record
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ * @type string $source
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Article title.
+ *
+ * Generated from protobuf field string title = 1;
+ * @return string
+ */
+ public function getTitle()
+ {
+ return $this->title;
+ }
+
+ /**
+ * Article title.
+ *
+ * Generated from protobuf field string title = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setTitle($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->title = $var;
+
+ return $this;
+ }
+
+ /**
+ * Article URI.
+ *
+ * Generated from protobuf field string uri = 2;
+ * @return string
+ */
+ public function getUri()
+ {
+ return $this->uri;
+ }
+
+ /**
+ * Article URI.
+ *
+ * Generated from protobuf field string uri = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->uri = $var;
+
+ return $this;
+ }
+
+ /**
+ * The system's confidence score that this article is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 3;
+ * @return float
+ */
+ public function getConfidenceScore()
+ {
+ return $this->confidence_score;
+ }
+
+ /**
+ * The system's confidence score that this article is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 3;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidenceScore($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Map that contains metadata about the Article Suggestion and the document
+ * that it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * Map that contains metadata about the Article Suggestion and the document
+ * that it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ * @return string
+ */
+ public function getQueryRecord()
+ {
+ return $this->query_record;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setQueryRecord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query_record = $var;
+
+ return $this;
+ }
+
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}
+ *
+ * Generated from protobuf field string source = 6;
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->source;
+ }
+
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}
+ *
+ * Generated from protobuf field string source = 6;
+ * @param string $var
+ * @return $this
+ */
+ public function setSource($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->source = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsMetadata.php
new file mode 100644
index 000000000000..f93ac9e68a44
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsMetadata.php
@@ -0,0 +1,309 @@
+google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsMetadata
+ */
+class BulkAnalyzeConversationsMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ */
+ protected $create_time = null;
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ */
+ protected $end_time = null;
+ /**
+ * The original request for bulk analyze.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsRequest request = 3;
+ */
+ protected $request = null;
+ /**
+ * The number of requested analyses that have completed successfully so far.
+ *
+ * Generated from protobuf field int32 completed_analyses_count = 4;
+ */
+ protected $completed_analyses_count = 0;
+ /**
+ * The number of requested analyses that have failed so far.
+ *
+ * Generated from protobuf field int32 failed_analyses_count = 5;
+ */
+ protected $failed_analyses_count = 0;
+ /**
+ * Total number of analyses requested. Computed by the number of conversations
+ * returned by `filter` multiplied by `analysis_percentage` in the request.
+ *
+ * Generated from protobuf field int32 total_requested_analyses_count = 6;
+ */
+ protected $total_requested_analyses_count = 0;
+ /**
+ * Output only. Partial errors during bulk analyze operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $partial_errors;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsRequest $request
+ * The original request for bulk analyze.
+ * @type int $completed_analyses_count
+ * The number of requested analyses that have completed successfully so far.
+ * @type int $failed_analyses_count
+ * The number of requested analyses that have failed so far.
+ * @type int $total_requested_analyses_count
+ * Total number of analyses requested. Computed by the number of conversations
+ * returned by `filter` multiplied by `analysis_percentage` in the request.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Output only. Partial errors during bulk analyze operation that might cause
+ * the operation output to be incomplete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for bulk analyze.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for bulk analyze.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of requested analyses that have completed successfully so far.
+ *
+ * Generated from protobuf field int32 completed_analyses_count = 4;
+ * @return int
+ */
+ public function getCompletedAnalysesCount()
+ {
+ return $this->completed_analyses_count;
+ }
+
+ /**
+ * The number of requested analyses that have completed successfully so far.
+ *
+ * Generated from protobuf field int32 completed_analyses_count = 4;
+ * @param int $var
+ * @return $this
+ */
+ public function setCompletedAnalysesCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->completed_analyses_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of requested analyses that have failed so far.
+ *
+ * Generated from protobuf field int32 failed_analyses_count = 5;
+ * @return int
+ */
+ public function getFailedAnalysesCount()
+ {
+ return $this->failed_analyses_count;
+ }
+
+ /**
+ * The number of requested analyses that have failed so far.
+ *
+ * Generated from protobuf field int32 failed_analyses_count = 5;
+ * @param int $var
+ * @return $this
+ */
+ public function setFailedAnalysesCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->failed_analyses_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Total number of analyses requested. Computed by the number of conversations
+ * returned by `filter` multiplied by `analysis_percentage` in the request.
+ *
+ * Generated from protobuf field int32 total_requested_analyses_count = 6;
+ * @return int
+ */
+ public function getTotalRequestedAnalysesCount()
+ {
+ return $this->total_requested_analyses_count;
+ }
+
+ /**
+ * Total number of analyses requested. Computed by the number of conversations
+ * returned by `filter` multiplied by `analysis_percentage` in the request.
+ *
+ * Generated from protobuf field int32 total_requested_analyses_count = 6;
+ * @param int $var
+ * @return $this
+ */
+ public function setTotalRequestedAnalysesCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->total_requested_analyses_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Partial errors during bulk analyze operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Output only. Partial errors during bulk analyze operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsRequest.php
new file mode 100644
index 000000000000..b73df51d31e4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsRequest.php
@@ -0,0 +1,206 @@
+google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsRequest
+ */
+class BulkAnalyzeConversationsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource to create analyses in.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. Filter used to select the subset of conversations to analyze.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $filter = '';
+ /**
+ * Required. Percentage of selected conversation to analyze, between
+ * [0, 100].
+ *
+ * Generated from protobuf field float analysis_percentage = 3 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $analysis_percentage = 0.0;
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ */
+ protected $annotator_selector = null;
+
+ /**
+ * @param string $parent Required. The parent resource to create analyses in. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param string $filter Required. Filter used to select the subset of conversations to analyze.
+ * @param float $analysisPercentage Required. Percentage of selected conversation to analyze, between
+ * [0, 100].
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, string $filter, float $analysisPercentage): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setFilter($filter)
+ ->setAnalysisPercentage($analysisPercentage);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource to create analyses in.
+ * @type string $filter
+ * Required. Filter used to select the subset of conversations to analyze.
+ * @type float $analysis_percentage
+ * Required. Percentage of selected conversation to analyze, between
+ * [0, 100].
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $annotator_selector
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource to create analyses in.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource to create analyses in.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. Filter used to select the subset of conversations to analyze.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Required. Filter used to select the subset of conversations to analyze.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. Percentage of selected conversation to analyze, between
+ * [0, 100].
+ *
+ * Generated from protobuf field float analysis_percentage = 3 [(.google.api.field_behavior) = REQUIRED];
+ * @return float
+ */
+ public function getAnalysisPercentage()
+ {
+ return $this->analysis_percentage;
+ }
+
+ /**
+ * Required. Percentage of selected conversation to analyze, between
+ * [0, 100].
+ *
+ * Generated from protobuf field float analysis_percentage = 3 [(.google.api.field_behavior) = REQUIRED];
+ * @param float $var
+ * @return $this
+ */
+ public function setAnalysisPercentage($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->analysis_percentage = $var;
+
+ return $this;
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector|null
+ */
+ public function getAnnotatorSelector()
+ {
+ return $this->annotator_selector;
+ }
+
+ public function hasAnnotatorSelector()
+ {
+ return isset($this->annotator_selector);
+ }
+
+ public function clearAnnotatorSelector()
+ {
+ unset($this->annotator_selector);
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 8;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $var
+ * @return $this
+ */
+ public function setAnnotatorSelector($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector::class);
+ $this->annotator_selector = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsResponse.php
new file mode 100644
index 000000000000..adccae48897f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkAnalyzeConversationsResponse.php
@@ -0,0 +1,101 @@
+google.cloud.contactcenterinsights.v1.BulkAnalyzeConversationsResponse
+ */
+class BulkAnalyzeConversationsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Count of successful analyses.
+ *
+ * Generated from protobuf field int32 successful_analysis_count = 1;
+ */
+ protected $successful_analysis_count = 0;
+ /**
+ * Count of failed analyses.
+ *
+ * Generated from protobuf field int32 failed_analysis_count = 2;
+ */
+ protected $failed_analysis_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $successful_analysis_count
+ * Count of successful analyses.
+ * @type int $failed_analysis_count
+ * Count of failed analyses.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Count of successful analyses.
+ *
+ * Generated from protobuf field int32 successful_analysis_count = 1;
+ * @return int
+ */
+ public function getSuccessfulAnalysisCount()
+ {
+ return $this->successful_analysis_count;
+ }
+
+ /**
+ * Count of successful analyses.
+ *
+ * Generated from protobuf field int32 successful_analysis_count = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setSuccessfulAnalysisCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->successful_analysis_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Count of failed analyses.
+ *
+ * Generated from protobuf field int32 failed_analysis_count = 2;
+ * @return int
+ */
+ public function getFailedAnalysisCount()
+ {
+ return $this->failed_analysis_count;
+ }
+
+ /**
+ * Count of failed analyses.
+ *
+ * Generated from protobuf field int32 failed_analysis_count = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setFailedAnalysisCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->failed_analysis_count = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsMetadata.php
new file mode 100644
index 000000000000..753b1ea23b0e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsMetadata.php
@@ -0,0 +1,203 @@
+google.cloud.contactcenterinsights.v1.BulkDeleteConversationsMetadata
+ */
+class BulkDeleteConversationsMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ */
+ protected $create_time = null;
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ */
+ protected $end_time = null;
+ /**
+ * The original request for bulk delete.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDeleteConversationsRequest request = 3;
+ */
+ protected $request = null;
+ /**
+ * Partial errors during bulk delete conversations operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ */
+ private $partial_errors;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsRequest $request
+ * The original request for bulk delete.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Partial errors during bulk delete conversations operation that might cause
+ * the operation output to be incomplete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for bulk delete.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDeleteConversationsRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for bulk delete.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDeleteConversationsRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Partial errors during bulk delete conversations operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Partial errors during bulk delete conversations operation that might cause
+ * the operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsRequest.php
new file mode 100644
index 000000000000..90e90424bd7f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsRequest.php
@@ -0,0 +1,203 @@
+google.cloud.contactcenterinsights.v1.BulkDeleteConversationsRequest
+ */
+class BulkDeleteConversationsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource to delete conversations from.
+ * Format:
+ * projects/{project}/locations/{location}
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Filter used to select the subset of conversations to delete.
+ *
+ * Generated from protobuf field string filter = 2;
+ */
+ protected $filter = '';
+ /**
+ * Maximum number of conversations to delete.
+ *
+ * Generated from protobuf field int32 max_delete_count = 3;
+ */
+ protected $max_delete_count = 0;
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 4;
+ */
+ protected $force = false;
+
+ /**
+ * @param string $parent Required. The parent resource to delete conversations from.
+ * Format:
+ * projects/{project}/locations/{location}
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param string $filter Filter used to select the subset of conversations to delete.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, string $filter): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setFilter($filter);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource to delete conversations from.
+ * Format:
+ * projects/{project}/locations/{location}
+ * @type string $filter
+ * Filter used to select the subset of conversations to delete.
+ * @type int $max_delete_count
+ * Maximum number of conversations to delete.
+ * @type bool $force
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource to delete conversations from.
+ * Format:
+ * projects/{project}/locations/{location}
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource to delete conversations from.
+ * Format:
+ * projects/{project}/locations/{location}
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Filter used to select the subset of conversations to delete.
+ *
+ * Generated from protobuf field string filter = 2;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Filter used to select the subset of conversations to delete.
+ *
+ * Generated from protobuf field string filter = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Maximum number of conversations to delete.
+ *
+ * Generated from protobuf field int32 max_delete_count = 3;
+ * @return int
+ */
+ public function getMaxDeleteCount()
+ {
+ return $this->max_delete_count;
+ }
+
+ /**
+ * Maximum number of conversations to delete.
+ *
+ * Generated from protobuf field int32 max_delete_count = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setMaxDeleteCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->max_delete_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 4;
+ * @return bool
+ */
+ public function getForce()
+ {
+ return $this->force;
+ }
+
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 4;
+ * @param bool $var
+ * @return $this
+ */
+ public function setForce($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->force = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsResponse.php
new file mode 100644
index 000000000000..ca52f6da6873
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDeleteConversationsResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.BulkDeleteConversationsResponse
+ */
+class BulkDeleteConversationsResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata.php
new file mode 100644
index 000000000000..e38087567c5f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata.php
@@ -0,0 +1,247 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsMetadata
+ */
+class BulkDownloadFeedbackLabelsMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request for download.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ */
+ private $partial_errors;
+ /**
+ * Output only. Statistics for BulkDownloadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsMetadata.DownloadStats download_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $download_stats = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest $request
+ * Output only. The original request for download.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata\DownloadStats $download_stats
+ * Output only. Statistics for BulkDownloadFeedbackLabels operation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request for download.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request for download.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Statistics for BulkDownloadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsMetadata.DownloadStats download_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata\DownloadStats|null
+ */
+ public function getDownloadStats()
+ {
+ return $this->download_stats;
+ }
+
+ public function hasDownloadStats()
+ {
+ return isset($this->download_stats);
+ }
+
+ public function clearDownloadStats()
+ {
+ unset($this->download_stats);
+ }
+
+ /**
+ * Output only. Statistics for BulkDownloadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsMetadata.DownloadStats download_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata\DownloadStats $var
+ * @return $this
+ */
+ public function setDownloadStats($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata\DownloadStats::class);
+ $this->download_stats = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata/DownloadStats.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata/DownloadStats.php
new file mode 100644
index 000000000000..021042f454bf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsMetadata/DownloadStats.php
@@ -0,0 +1,180 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsMetadata.DownloadStats
+ */
+class DownloadStats extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The number of objects processed during the download operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ */
+ protected $processed_object_count = 0;
+ /**
+ * The number of new feedback labels downloaded during this operation.
+ * Different from "processed" because some labels might not be downloaded
+ * because an error.
+ *
+ * Generated from protobuf field int32 successful_download_count = 2;
+ */
+ protected $successful_download_count = 0;
+ /**
+ * Total number of files written to the provided Cloud Storage bucket.
+ *
+ * Generated from protobuf field int32 total_files_written = 3;
+ */
+ protected $total_files_written = 0;
+ /**
+ * Output only. Full name of the files written to Cloud storage.
+ *
+ * Generated from protobuf field repeated string file_names = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $file_names;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $processed_object_count
+ * The number of objects processed during the download operation.
+ * @type int $successful_download_count
+ * The number of new feedback labels downloaded during this operation.
+ * Different from "processed" because some labels might not be downloaded
+ * because an error.
+ * @type int $total_files_written
+ * Total number of files written to the provided Cloud Storage bucket.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $file_names
+ * Output only. Full name of the files written to Cloud storage.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The number of objects processed during the download operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ * @return int
+ */
+ public function getProcessedObjectCount()
+ {
+ return $this->processed_object_count;
+ }
+
+ /**
+ * The number of objects processed during the download operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setProcessedObjectCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->processed_object_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of new feedback labels downloaded during this operation.
+ * Different from "processed" because some labels might not be downloaded
+ * because an error.
+ *
+ * Generated from protobuf field int32 successful_download_count = 2;
+ * @return int
+ */
+ public function getSuccessfulDownloadCount()
+ {
+ return $this->successful_download_count;
+ }
+
+ /**
+ * The number of new feedback labels downloaded during this operation.
+ * Different from "processed" because some labels might not be downloaded
+ * because an error.
+ *
+ * Generated from protobuf field int32 successful_download_count = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setSuccessfulDownloadCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->successful_download_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Total number of files written to the provided Cloud Storage bucket.
+ *
+ * Generated from protobuf field int32 total_files_written = 3;
+ * @return int
+ */
+ public function getTotalFilesWritten()
+ {
+ return $this->total_files_written;
+ }
+
+ /**
+ * Total number of files written to the provided Cloud Storage bucket.
+ *
+ * Generated from protobuf field int32 total_files_written = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setTotalFilesWritten($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->total_files_written = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Full name of the files written to Cloud storage.
+ *
+ * Generated from protobuf field repeated string file_names = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getFileNames()
+ {
+ return $this->file_names;
+ }
+
+ /**
+ * Output only. Full name of the files written to Cloud storage.
+ *
+ * Generated from protobuf field repeated string file_names = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setFileNames($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->file_names = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(DownloadStats::class, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata_DownloadStats::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest.php
new file mode 100644
index 000000000000..1381b1aa78df
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest.php
@@ -0,0 +1,361 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest
+ */
+class BulkDownloadFeedbackLabelsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $filter = '';
+ /**
+ * Optional. Limits the maximum number of feedback labels that will be
+ * downloaded. The first `N` feedback labels will be downloaded.
+ *
+ * Generated from protobuf field int32 max_download_count = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $max_download_count = 0;
+ /**
+ * Optional. The type of feedback labels that will be downloaded.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.FeedbackLabelType feedback_label_type = 5 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $feedback_label_type = 0;
+ /**
+ * Optional. Filter parent conversations to download feedback labels for.
+ * When specified, the feedback labels will be downloaded for the
+ * conversations that match the filter.
+ * If `template_qa_scorecard_id` is set, all the conversations that match the
+ * filter will be paired with the questions under the scorecard for labeling.
+ *
+ * Generated from protobuf field string conversation_filter = 6 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $conversation_filter = '';
+ /**
+ * Optional. If set, a template for labeling conversations and scorecard
+ * questions will be created from the conversation_filter and the questions
+ * under the scorecard(s). The feedback label `filter` will be ignored.
+ *
+ * Generated from protobuf field repeated string template_qa_scorecard_id = 7 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ private $template_qa_scorecard_id;
+ protected $destination;
+
+ /**
+ * @param string $parent Required. The parent resource for new feedback labels. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\GcsDestination $gcs_destination
+ * A cloud storage bucket destination.
+ * @type string $parent
+ * Required. The parent resource for new feedback labels.
+ * @type string $filter
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ * @type int $max_download_count
+ * Optional. Limits the maximum number of feedback labels that will be
+ * downloaded. The first `N` feedback labels will be downloaded.
+ * @type int $feedback_label_type
+ * Optional. The type of feedback labels that will be downloaded.
+ * @type string $conversation_filter
+ * Optional. Filter parent conversations to download feedback labels for.
+ * When specified, the feedback labels will be downloaded for the
+ * conversations that match the filter.
+ * If `template_qa_scorecard_id` is set, all the conversations that match the
+ * filter will be paired with the questions under the scorecard for labeling.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $template_qa_scorecard_id
+ * Optional. If set, a template for labeling conversations and scorecard
+ * questions will be created from the conversation_filter and the questions
+ * under the scorecard(s). The feedback label `filter` will be ignored.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A cloud storage bucket destination.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination gcs_destination = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\GcsDestination|null
+ */
+ public function getGcsDestination()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasGcsDestination()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * A cloud storage bucket destination.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination gcs_destination = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\GcsDestination $var
+ * @return $this
+ */
+ public function setGcsDestination($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\GcsDestination::class);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Limits the maximum number of feedback labels that will be
+ * downloaded. The first `N` feedback labels will be downloaded.
+ *
+ * Generated from protobuf field int32 max_download_count = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getMaxDownloadCount()
+ {
+ return $this->max_download_count;
+ }
+
+ /**
+ * Optional. Limits the maximum number of feedback labels that will be
+ * downloaded. The first `N` feedback labels will be downloaded.
+ *
+ * Generated from protobuf field int32 max_download_count = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setMaxDownloadCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->max_download_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The type of feedback labels that will be downloaded.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.FeedbackLabelType feedback_label_type = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getFeedbackLabelType()
+ {
+ return $this->feedback_label_type;
+ }
+
+ /**
+ * Optional. The type of feedback labels that will be downloaded.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.FeedbackLabelType feedback_label_type = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setFeedbackLabelType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\FeedbackLabelType::class);
+ $this->feedback_label_type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Filter parent conversations to download feedback labels for.
+ * When specified, the feedback labels will be downloaded for the
+ * conversations that match the filter.
+ * If `template_qa_scorecard_id` is set, all the conversations that match the
+ * filter will be paired with the questions under the scorecard for labeling.
+ *
+ * Generated from protobuf field string conversation_filter = 6 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getConversationFilter()
+ {
+ return $this->conversation_filter;
+ }
+
+ /**
+ * Optional. Filter parent conversations to download feedback labels for.
+ * When specified, the feedback labels will be downloaded for the
+ * conversations that match the filter.
+ * If `template_qa_scorecard_id` is set, all the conversations that match the
+ * filter will be paired with the questions under the scorecard for labeling.
+ *
+ * Generated from protobuf field string conversation_filter = 6 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation_filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set, a template for labeling conversations and scorecard
+ * questions will be created from the conversation_filter and the questions
+ * under the scorecard(s). The feedback label `filter` will be ignored.
+ *
+ * Generated from protobuf field repeated string template_qa_scorecard_id = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getTemplateQaScorecardId()
+ {
+ return $this->template_qa_scorecard_id;
+ }
+
+ /**
+ * Optional. If set, a template for labeling conversations and scorecard
+ * questions will be created from the conversation_filter and the questions
+ * under the scorecard(s). The feedback label `filter` will be ignored.
+ *
+ * Generated from protobuf field repeated string template_qa_scorecard_id = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setTemplateQaScorecardId($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->template_qa_scorecard_id = $arr;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDestination()
+ {
+ return $this->whichOneof("destination");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/FeedbackLabelType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/FeedbackLabelType.php
new file mode 100644
index 000000000000..188ef01f8e0c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/FeedbackLabelType.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.FeedbackLabelType
+ */
+class FeedbackLabelType
+{
+ /**
+ * Unspecified format
+ *
+ * Generated from protobuf enum FEEDBACK_LABEL_TYPE_UNSPECIFIED = 0;
+ */
+ const FEEDBACK_LABEL_TYPE_UNSPECIFIED = 0;
+ /**
+ * Downloaded file will contain all Quality AI labels from the latest
+ * scorecard revision.
+ *
+ * Generated from protobuf enum QUALITY_AI = 1;
+ */
+ const QUALITY_AI = 1;
+ /**
+ * Downloaded file will contain only Topic Modeling labels.
+ *
+ * Generated from protobuf enum TOPIC_MODELING = 2;
+ */
+ const TOPIC_MODELING = 2;
+
+ private static $valueToName = [
+ self::FEEDBACK_LABEL_TYPE_UNSPECIFIED => 'FEEDBACK_LABEL_TYPE_UNSPECIFIED',
+ self::QUALITY_AI => 'QUALITY_AI',
+ self::TOPIC_MODELING => 'TOPIC_MODELING',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(FeedbackLabelType::class, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest_FeedbackLabelType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination.php
new file mode 100644
index 000000000000..92fe0335cc24
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination.php
@@ -0,0 +1,238 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination
+ */
+class GcsDestination extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. File format in which the labels will be exported.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $format = 0;
+ /**
+ * Required. The Google Cloud Storage URI to write the feedback labels to.
+ * The file name will be used as a prefix for the files written to the
+ * bucket if the output needs to be split across multiple files, otherwise
+ * it will be used as is. The file extension will be appended to the file
+ * name based on the format selected.
+ * E.g. `gs://bucket_name/object_uri_prefix`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $object_uri = '';
+ /**
+ * Optional. Add whitespace to the JSON file. Makes easier to read, but
+ * increases file size. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool add_whitespace = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $add_whitespace = false;
+ /**
+ * Optional. Always print fields with no presence.
+ * This is useful for printing fields that are not set, like implicit 0
+ * value or empty lists/maps. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool always_print_empty_fields = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $always_print_empty_fields = false;
+ /**
+ * Optional. The number of records per file. Applicable for either format.
+ *
+ * Generated from protobuf field int64 records_per_file_count = 5 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $records_per_file_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $format
+ * Required. File format in which the labels will be exported.
+ * @type string $object_uri
+ * Required. The Google Cloud Storage URI to write the feedback labels to.
+ * The file name will be used as a prefix for the files written to the
+ * bucket if the output needs to be split across multiple files, otherwise
+ * it will be used as is. The file extension will be appended to the file
+ * name based on the format selected.
+ * E.g. `gs://bucket_name/object_uri_prefix`
+ * @type bool $add_whitespace
+ * Optional. Add whitespace to the JSON file. Makes easier to read, but
+ * increases file size. Only applicable for JSON format.
+ * @type bool $always_print_empty_fields
+ * Optional. Always print fields with no presence.
+ * This is useful for printing fields that are not set, like implicit 0
+ * value or empty lists/maps. Only applicable for JSON format.
+ * @type int|string $records_per_file_count
+ * Optional. The number of records per file. Applicable for either format.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. File format in which the labels will be exported.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return int
+ */
+ public function getFormat()
+ {
+ return $this->format;
+ }
+
+ /**
+ * Required. File format in which the labels will be exported.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param int $var
+ * @return $this
+ */
+ public function setFormat($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest\GcsDestination\Format::class);
+ $this->format = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The Google Cloud Storage URI to write the feedback labels to.
+ * The file name will be used as a prefix for the files written to the
+ * bucket if the output needs to be split across multiple files, otherwise
+ * it will be used as is. The file extension will be appended to the file
+ * name based on the format selected.
+ * E.g. `gs://bucket_name/object_uri_prefix`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getObjectUri()
+ {
+ return $this->object_uri;
+ }
+
+ /**
+ * Required. The Google Cloud Storage URI to write the feedback labels to.
+ * The file name will be used as a prefix for the files written to the
+ * bucket if the output needs to be split across multiple files, otherwise
+ * it will be used as is. The file extension will be appended to the file
+ * name based on the format selected.
+ * E.g. `gs://bucket_name/object_uri_prefix`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setObjectUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->object_uri = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Add whitespace to the JSON file. Makes easier to read, but
+ * increases file size. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool add_whitespace = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getAddWhitespace()
+ {
+ return $this->add_whitespace;
+ }
+
+ /**
+ * Optional. Add whitespace to the JSON file. Makes easier to read, but
+ * increases file size. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool add_whitespace = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setAddWhitespace($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->add_whitespace = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Always print fields with no presence.
+ * This is useful for printing fields that are not set, like implicit 0
+ * value or empty lists/maps. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool always_print_empty_fields = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getAlwaysPrintEmptyFields()
+ {
+ return $this->always_print_empty_fields;
+ }
+
+ /**
+ * Optional. Always print fields with no presence.
+ * This is useful for printing fields that are not set, like implicit 0
+ * value or empty lists/maps. Only applicable for JSON format.
+ *
+ * Generated from protobuf field bool always_print_empty_fields = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setAlwaysPrintEmptyFields($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->always_print_empty_fields = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The number of records per file. Applicable for either format.
+ *
+ * Generated from protobuf field int64 records_per_file_count = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int|string
+ */
+ public function getRecordsPerFileCount()
+ {
+ return $this->records_per_file_count;
+ }
+
+ /**
+ * Optional. The number of records per file. Applicable for either format.
+ *
+ * Generated from protobuf field int64 records_per_file_count = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int|string $var
+ * @return $this
+ */
+ public function setRecordsPerFileCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->records_per_file_count = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(GcsDestination::class, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest_GcsDestination::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination/Format.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination/Format.php
new file mode 100644
index 000000000000..dbb6bbb31c9f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsRequest/GcsDestination/Format.php
@@ -0,0 +1,68 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsRequest.GcsDestination.Format
+ */
+class Format
+{
+ /**
+ * Unspecified format.
+ *
+ * Generated from protobuf enum FORMAT_UNSPECIFIED = 0;
+ */
+ const FORMAT_UNSPECIFIED = 0;
+ /**
+ * CSV format.
+ * 1,000 labels are stored per CSV file by default.
+ *
+ * Generated from protobuf enum CSV = 1;
+ */
+ const CSV = 1;
+ /**
+ * JSON format.
+ * 1 label stored per JSON file by default.
+ *
+ * Generated from protobuf enum JSON = 2;
+ */
+ const JSON = 2;
+
+ private static $valueToName = [
+ self::FORMAT_UNSPECIFIED => 'FORMAT_UNSPECIFIED',
+ self::CSV => 'CSV',
+ self::JSON => 'JSON',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Format::class, \Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsRequest_GcsDestination_Format::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsResponse.php
new file mode 100644
index 000000000000..8c490ff1c3df
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkDownloadFeedbackLabelsResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.BulkDownloadFeedbackLabelsResponse
+ */
+class BulkDownloadFeedbackLabelsResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata.php
new file mode 100644
index 000000000000..25939a72557a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata.php
@@ -0,0 +1,247 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsMetadata
+ */
+class BulkUploadFeedbackLabelsMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ */
+ private $partial_errors;
+ /**
+ * Output only. Statistics for BulkUploadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsMetadata.UploadStats upload_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $upload_stats = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest $request
+ * Output only. The original request for ingest.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata\UploadStats $upload_stats
+ * Output only. Statistics for BulkUploadFeedbackLabels operation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Partial errors during ingest operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Statistics for BulkUploadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsMetadata.UploadStats upload_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata\UploadStats|null
+ */
+ public function getUploadStats()
+ {
+ return $this->upload_stats;
+ }
+
+ public function hasUploadStats()
+ {
+ return isset($this->upload_stats);
+ }
+
+ public function clearUploadStats()
+ {
+ unset($this->upload_stats);
+ }
+
+ /**
+ * Output only. Statistics for BulkUploadFeedbackLabels operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsMetadata.UploadStats upload_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata\UploadStats $var
+ * @return $this
+ */
+ public function setUploadStats($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata\UploadStats::class);
+ $this->upload_stats = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata/UploadStats.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata/UploadStats.php
new file mode 100644
index 000000000000..62034d03fa29
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsMetadata/UploadStats.php
@@ -0,0 +1,138 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsMetadata.UploadStats
+ */
+class UploadStats extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The number of objects processed during the upload operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ */
+ protected $processed_object_count = 0;
+ /**
+ * The number of objects skipped because of failed validation
+ *
+ * Generated from protobuf field int32 failed_validation_count = 2;
+ */
+ protected $failed_validation_count = 0;
+ /**
+ * The number of new feedback labels added during this ingest operation.
+ *
+ * Generated from protobuf field int32 successful_upload_count = 3;
+ */
+ protected $successful_upload_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $processed_object_count
+ * The number of objects processed during the upload operation.
+ * @type int $failed_validation_count
+ * The number of objects skipped because of failed validation
+ * @type int $successful_upload_count
+ * The number of new feedback labels added during this ingest operation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The number of objects processed during the upload operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ * @return int
+ */
+ public function getProcessedObjectCount()
+ {
+ return $this->processed_object_count;
+ }
+
+ /**
+ * The number of objects processed during the upload operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setProcessedObjectCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->processed_object_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of objects skipped because of failed validation
+ *
+ * Generated from protobuf field int32 failed_validation_count = 2;
+ * @return int
+ */
+ public function getFailedValidationCount()
+ {
+ return $this->failed_validation_count;
+ }
+
+ /**
+ * The number of objects skipped because of failed validation
+ *
+ * Generated from protobuf field int32 failed_validation_count = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setFailedValidationCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->failed_validation_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of new feedback labels added during this ingest operation.
+ *
+ * Generated from protobuf field int32 successful_upload_count = 3;
+ * @return int
+ */
+ public function getSuccessfulUploadCount()
+ {
+ return $this->successful_upload_count;
+ }
+
+ /**
+ * The number of new feedback labels added during this ingest operation.
+ *
+ * Generated from protobuf field int32 successful_upload_count = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setSuccessfulUploadCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->successful_upload_count = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(UploadStats::class, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata_UploadStats::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest.php
new file mode 100644
index 000000000000..dd4871d7e536
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest
+ */
+class BulkUploadFeedbackLabelsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. If set, upload will not happen and the labels will be validated.
+ * If not set, then default behavior will be to upload the labels after
+ * validation is complete.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $validate_only = false;
+ protected $source;
+
+ /**
+ * @param string $parent Required. The parent resource for new feedback labels. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest\GcsSource $gcs_source
+ * A cloud storage bucket source.
+ * @type string $parent
+ * Required. The parent resource for new feedback labels.
+ * @type bool $validate_only
+ * Optional. If set, upload will not happen and the labels will be validated.
+ * If not set, then default behavior will be to upload the labels after
+ * validation is complete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A cloud storage bucket source.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource gcs_source = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest\GcsSource|null
+ */
+ public function getGcsSource()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasGcsSource()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * A cloud storage bucket source.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource gcs_source = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest\GcsSource $var
+ * @return $this
+ */
+ public function setGcsSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest\GcsSource::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource for new feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set, upload will not happen and the labels will be validated.
+ * If not set, then default behavior will be to upload the labels after
+ * validation is complete.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getValidateOnly()
+ {
+ return $this->validate_only;
+ }
+
+ /**
+ * Optional. If set, upload will not happen and the labels will be validated.
+ * If not set, then default behavior will be to upload the labels after
+ * validation is complete.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setValidateOnly($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->validate_only = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->whichOneof("source");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource.php
new file mode 100644
index 000000000000..a8f49db68ea1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource.php
@@ -0,0 +1,108 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource
+ */
+class GcsSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. File format which will be ingested.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $format = 0;
+ /**
+ * Required. The Google Cloud Storage URI of the file to import.
+ * Format: `gs://bucket_name/object_name`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $object_uri = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $format
+ * Required. File format which will be ingested.
+ * @type string $object_uri
+ * Required. The Google Cloud Storage URI of the file to import.
+ * Format: `gs://bucket_name/object_name`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. File format which will be ingested.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return int
+ */
+ public function getFormat()
+ {
+ return $this->format;
+ }
+
+ /**
+ * Required. File format which will be ingested.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource.Format format = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param int $var
+ * @return $this
+ */
+ public function setFormat($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest\GcsSource\Format::class);
+ $this->format = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The Google Cloud Storage URI of the file to import.
+ * Format: `gs://bucket_name/object_name`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getObjectUri()
+ {
+ return $this->object_uri;
+ }
+
+ /**
+ * Required. The Google Cloud Storage URI of the file to import.
+ * Format: `gs://bucket_name/object_name`
+ *
+ * Generated from protobuf field string object_uri = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setObjectUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->object_uri = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(GcsSource::class, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest_GcsSource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource/Format.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource/Format.php
new file mode 100644
index 000000000000..90a54618977c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsRequest/GcsSource/Format.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsRequest.GcsSource.Format
+ */
+class Format
+{
+ /**
+ * Unspecified format.
+ *
+ * Generated from protobuf enum FORMAT_UNSPECIFIED = 0;
+ */
+ const FORMAT_UNSPECIFIED = 0;
+ /**
+ * CSV format.
+ *
+ * Generated from protobuf enum CSV = 1;
+ */
+ const CSV = 1;
+ /**
+ * JSON format.
+ *
+ * Generated from protobuf enum JSON = 2;
+ */
+ const JSON = 2;
+
+ private static $valueToName = [
+ self::FORMAT_UNSPECIFIED => 'FORMAT_UNSPECIFIED',
+ self::CSV => 'CSV',
+ self::JSON => 'JSON',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Format::class, \Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsRequest_GcsSource_Format::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsResponse.php
new file mode 100644
index 000000000000..284bebd4c3fa
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/BulkUploadFeedbackLabelsResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.BulkUploadFeedbackLabelsResponse
+ */
+class BulkUploadFeedbackLabelsResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsRequest.php
new file mode 100644
index 000000000000..8daa93a4a679
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.CalculateIssueModelStatsRequest
+ */
+class CalculateIssueModelStatsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The resource name of the issue model to query against.
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $issue_model = '';
+
+ /**
+ * @param string $issueModel Required. The resource name of the issue model to query against. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CalculateIssueModelStatsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $issueModel): self
+ {
+ return (new self())
+ ->setIssueModel($issueModel);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $issue_model
+ * Required. The resource name of the issue model to query against.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The resource name of the issue model to query against.
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getIssueModel()
+ {
+ return $this->issue_model;
+ }
+
+ /**
+ * Required. The resource name of the issue model to query against.
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setIssueModel($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue_model = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsResponse.php
new file mode 100644
index 000000000000..932814766c92
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateIssueModelStatsResponse.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.CalculateIssueModelStatsResponse
+ */
+class CalculateIssueModelStatsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The latest label statistics for the queried issue model. Includes results
+ * on both training data and data labeled after deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats current_stats = 4;
+ */
+ protected $current_stats = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats $current_stats
+ * The latest label statistics for the queried issue model. Includes results
+ * on both training data and data labeled after deployment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The latest label statistics for the queried issue model. Includes results
+ * on both training data and data labeled after deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats current_stats = 4;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats|null
+ */
+ public function getCurrentStats()
+ {
+ return $this->current_stats;
+ }
+
+ public function hasCurrentStats()
+ {
+ return isset($this->current_stats);
+ }
+
+ public function clearCurrentStats()
+ {
+ unset($this->current_stats);
+ }
+
+ /**
+ * The latest label statistics for the queried issue model. Includes results
+ * on both training data and data labeled after deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats current_stats = 4;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats $var
+ * @return $this
+ */
+ public function setCurrentStats($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats::class);
+ $this->current_stats = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsRequest.php
new file mode 100644
index 000000000000..5f422bb77f78
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsRequest.php
@@ -0,0 +1,119 @@
+google.cloud.contactcenterinsights.v1.CalculateStatsRequest
+ */
+class CalculateStatsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The location of the conversations.
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $location = '';
+ /**
+ * A filter to reduce results to a specific subset. This field is useful for
+ * getting statistics about conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 2;
+ */
+ protected $filter = '';
+
+ /**
+ * @param string $location Required. The location of the conversations. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CalculateStatsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $location): self
+ {
+ return (new self())
+ ->setLocation($location);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $location
+ * Required. The location of the conversations.
+ * @type string $filter
+ * A filter to reduce results to a specific subset. This field is useful for
+ * getting statistics about conversations with specific properties.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The location of the conversations.
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getLocation()
+ {
+ return $this->location;
+ }
+
+ /**
+ * Required. The location of the conversations.
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setLocation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->location = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. This field is useful for
+ * getting statistics about conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 2;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. This field is useful for
+ * getting statistics about conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse.php
new file mode 100644
index 000000000000..973f3b649b1e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse.php
@@ -0,0 +1,366 @@
+google.cloud.contactcenterinsights.v1.CalculateStatsResponse
+ */
+class CalculateStatsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The average duration of all conversations. The average is calculated using
+ * only conversations that have a time duration.
+ *
+ * Generated from protobuf field .google.protobuf.Duration average_duration = 1;
+ */
+ protected $average_duration = null;
+ /**
+ * The average number of turns per conversation.
+ *
+ * Generated from protobuf field int32 average_turn_count = 2;
+ */
+ protected $average_turn_count = 0;
+ /**
+ * The total number of conversations.
+ *
+ * Generated from protobuf field int32 conversation_count = 3;
+ */
+ protected $conversation_count = 0;
+ /**
+ * A map associating each smart highlighter display name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map smart_highlighter_matches = 4;
+ */
+ private $smart_highlighter_matches;
+ /**
+ * A map associating each custom highlighter resource name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map custom_highlighter_matches = 5;
+ */
+ private $custom_highlighter_matches;
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ * Deprecated, use `issue_matches_stats` field instead.
+ *
+ * Generated from protobuf field map issue_matches = 6 [deprecated = true];
+ * @deprecated
+ */
+ private $issue_matches;
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ *
+ * Generated from protobuf field map issue_matches_stats = 8;
+ */
+ private $issue_matches_stats;
+ /**
+ * A time series representing the count of conversations created over time
+ * that match that requested filter criteria.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries conversation_count_time_series = 7;
+ */
+ protected $conversation_count_time_series = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Duration $average_duration
+ * The average duration of all conversations. The average is calculated using
+ * only conversations that have a time duration.
+ * @type int $average_turn_count
+ * The average number of turns per conversation.
+ * @type int $conversation_count
+ * The total number of conversations.
+ * @type array|\Google\Protobuf\Internal\MapField $smart_highlighter_matches
+ * A map associating each smart highlighter display name with its respective
+ * number of matches in the set of conversations.
+ * @type array|\Google\Protobuf\Internal\MapField $custom_highlighter_matches
+ * A map associating each custom highlighter resource name with its respective
+ * number of matches in the set of conversations.
+ * @type array|\Google\Protobuf\Internal\MapField $issue_matches
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ * Deprecated, use `issue_matches_stats` field instead.
+ * @type array|\Google\Protobuf\Internal\MapField $issue_matches_stats
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ * @type \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries $conversation_count_time_series
+ * A time series representing the count of conversations created over time
+ * that match that requested filter criteria.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The average duration of all conversations. The average is calculated using
+ * only conversations that have a time duration.
+ *
+ * Generated from protobuf field .google.protobuf.Duration average_duration = 1;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getAverageDuration()
+ {
+ return $this->average_duration;
+ }
+
+ public function hasAverageDuration()
+ {
+ return isset($this->average_duration);
+ }
+
+ public function clearAverageDuration()
+ {
+ unset($this->average_duration);
+ }
+
+ /**
+ * The average duration of all conversations. The average is calculated using
+ * only conversations that have a time duration.
+ *
+ * Generated from protobuf field .google.protobuf.Duration average_duration = 1;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setAverageDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->average_duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average number of turns per conversation.
+ *
+ * Generated from protobuf field int32 average_turn_count = 2;
+ * @return int
+ */
+ public function getAverageTurnCount()
+ {
+ return $this->average_turn_count;
+ }
+
+ /**
+ * The average number of turns per conversation.
+ *
+ * Generated from protobuf field int32 average_turn_count = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setAverageTurnCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->average_turn_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The total number of conversations.
+ *
+ * Generated from protobuf field int32 conversation_count = 3;
+ * @return int
+ */
+ public function getConversationCount()
+ {
+ return $this->conversation_count;
+ }
+
+ /**
+ * The total number of conversations.
+ *
+ * Generated from protobuf field int32 conversation_count = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setConversationCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->conversation_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * A map associating each smart highlighter display name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map smart_highlighter_matches = 4;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getSmartHighlighterMatches()
+ {
+ return $this->smart_highlighter_matches;
+ }
+
+ /**
+ * A map associating each smart highlighter display name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map smart_highlighter_matches = 4;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setSmartHighlighterMatches($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::INT32);
+ $this->smart_highlighter_matches = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A map associating each custom highlighter resource name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map custom_highlighter_matches = 5;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getCustomHighlighterMatches()
+ {
+ return $this->custom_highlighter_matches;
+ }
+
+ /**
+ * A map associating each custom highlighter resource name with its respective
+ * number of matches in the set of conversations.
+ *
+ * Generated from protobuf field map custom_highlighter_matches = 5;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setCustomHighlighterMatches($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::INT32);
+ $this->custom_highlighter_matches = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ * Deprecated, use `issue_matches_stats` field instead.
+ *
+ * Generated from protobuf field map issue_matches = 6 [deprecated = true];
+ * @return \Google\Protobuf\Internal\MapField
+ * @deprecated
+ */
+ public function getIssueMatches()
+ {
+ @trigger_error('issue_matches is deprecated.', E_USER_DEPRECATED);
+ return $this->issue_matches;
+ }
+
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ * Deprecated, use `issue_matches_stats` field instead.
+ *
+ * Generated from protobuf field map issue_matches = 6 [deprecated = true];
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ * @deprecated
+ */
+ public function setIssueMatches($var)
+ {
+ @trigger_error('issue_matches is deprecated.', E_USER_DEPRECATED);
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::INT32);
+ $this->issue_matches = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ *
+ * Generated from protobuf field map issue_matches_stats = 8;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getIssueMatchesStats()
+ {
+ return $this->issue_matches_stats;
+ }
+
+ /**
+ * A map associating each issue resource name with its respective number of
+ * matches in the set of conversations. Key has the format:
+ * `projects//locations//issueModels//issues/`
+ *
+ * Generated from protobuf field map issue_matches_stats = 8;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setIssueMatchesStats($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats\IssueStats::class);
+ $this->issue_matches_stats = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A time series representing the count of conversations created over time
+ * that match that requested filter criteria.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries conversation_count_time_series = 7;
+ * @return \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries|null
+ */
+ public function getConversationCountTimeSeries()
+ {
+ return $this->conversation_count_time_series;
+ }
+
+ public function hasConversationCountTimeSeries()
+ {
+ return isset($this->conversation_count_time_series);
+ }
+
+ public function clearConversationCountTimeSeries()
+ {
+ unset($this->conversation_count_time_series);
+ }
+
+ /**
+ * A time series representing the count of conversations created over time
+ * that match that requested filter criteria.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries conversation_count_time_series = 7;
+ * @param \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries $var
+ * @return $this
+ */
+ public function setConversationCountTimeSeries($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries::class);
+ $this->conversation_count_time_series = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries.php
new file mode 100644
index 000000000000..ffe33908677a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries.php
@@ -0,0 +1,122 @@
+google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries
+ */
+class TimeSeries extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The duration of each interval.
+ *
+ * Generated from protobuf field .google.protobuf.Duration interval_duration = 1;
+ */
+ protected $interval_duration = null;
+ /**
+ * An ordered list of intervals from earliest to latest, where each interval
+ * represents the number of conversations that transpired during the time
+ * window.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries.Interval points = 2;
+ */
+ private $points;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Duration $interval_duration
+ * The duration of each interval.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries\Interval>|\Google\Protobuf\Internal\RepeatedField $points
+ * An ordered list of intervals from earliest to latest, where each interval
+ * represents the number of conversations that transpired during the time
+ * window.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The duration of each interval.
+ *
+ * Generated from protobuf field .google.protobuf.Duration interval_duration = 1;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getIntervalDuration()
+ {
+ return $this->interval_duration;
+ }
+
+ public function hasIntervalDuration()
+ {
+ return isset($this->interval_duration);
+ }
+
+ public function clearIntervalDuration()
+ {
+ unset($this->interval_duration);
+ }
+
+ /**
+ * The duration of each interval.
+ *
+ * Generated from protobuf field .google.protobuf.Duration interval_duration = 1;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setIntervalDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->interval_duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * An ordered list of intervals from earliest to latest, where each interval
+ * represents the number of conversations that transpired during the time
+ * window.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries.Interval points = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPoints()
+ {
+ return $this->points;
+ }
+
+ /**
+ * An ordered list of intervals from earliest to latest, where each interval
+ * represents the number of conversations that transpired during the time
+ * window.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries.Interval points = 2;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries\Interval>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPoints($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse\TimeSeries\Interval::class);
+ $this->points = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TimeSeries::class, \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse_TimeSeries::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries/Interval.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries/Interval.php
new file mode 100644
index 000000000000..fd7aa0d92378
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CalculateStatsResponse/TimeSeries/Interval.php
@@ -0,0 +1,114 @@
+google.cloud.contactcenterinsights.v1.CalculateStatsResponse.TimeSeries.Interval
+ */
+class Interval extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The start time of this interval.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 1;
+ */
+ protected $start_time = null;
+ /**
+ * The number of conversations created in this interval.
+ *
+ * Generated from protobuf field int32 conversation_count = 2;
+ */
+ protected $conversation_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $start_time
+ * The start time of this interval.
+ * @type int $conversation_count
+ * The number of conversations created in this interval.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The start time of this interval.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getStartTime()
+ {
+ return $this->start_time;
+ }
+
+ public function hasStartTime()
+ {
+ return isset($this->start_time);
+ }
+
+ public function clearStartTime()
+ {
+ unset($this->start_time);
+ }
+
+ /**
+ * The start time of this interval.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setStartTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->start_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The number of conversations created in this interval.
+ *
+ * Generated from protobuf field int32 conversation_count = 2;
+ * @return int
+ */
+ public function getConversationCount()
+ {
+ return $this->conversation_count;
+ }
+
+ /**
+ * The number of conversations created in this interval.
+ *
+ * Generated from protobuf field int32 conversation_count = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setConversationCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->conversation_count = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Interval::class, \Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse_TimeSeries_Interval::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CallAnnotation.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CallAnnotation.php
new file mode 100644
index 000000000000..9b2679366c44
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CallAnnotation.php
@@ -0,0 +1,432 @@
+google.cloud.contactcenterinsights.v1.CallAnnotation
+ */
+class CallAnnotation extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The channel of the audio where the annotation occurs. For single-channel
+ * audio, this field is not populated.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ */
+ protected $channel_tag = 0;
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_start_boundary = 4;
+ */
+ protected $annotation_start_boundary = null;
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_end_boundary = 5;
+ */
+ protected $annotation_end_boundary = null;
+ protected $data;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\InterruptionData $interruption_data
+ * Data specifying an interruption.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SentimentData $sentiment_data
+ * Data specifying sentiment.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SilenceData $silence_data
+ * Data specifying silence.
+ * @type \Google\Cloud\ContactCenterInsights\V1\HoldData $hold_data
+ * Data specifying a hold.
+ * @type \Google\Cloud\ContactCenterInsights\V1\EntityMentionData $entity_mention_data
+ * Data specifying an entity mention.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IntentMatchData $intent_match_data
+ * Data specifying an intent match.
+ * @type \Google\Cloud\ContactCenterInsights\V1\PhraseMatchData $phrase_match_data
+ * Data specifying a phrase match.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueMatchData $issue_match_data
+ * Data specifying an issue match.
+ * @type int $channel_tag
+ * The channel of the audio where the annotation occurs. For single-channel
+ * audio, this field is not populated.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $annotation_start_boundary
+ * The boundary in the conversation where the annotation starts, inclusive.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $annotation_end_boundary
+ * The boundary in the conversation where the annotation ends, inclusive.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Data specifying an interruption.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.InterruptionData interruption_data = 10;
+ * @return \Google\Cloud\ContactCenterInsights\V1\InterruptionData|null
+ */
+ public function getInterruptionData()
+ {
+ return $this->readOneof(10);
+ }
+
+ public function hasInterruptionData()
+ {
+ return $this->hasOneof(10);
+ }
+
+ /**
+ * Data specifying an interruption.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.InterruptionData interruption_data = 10;
+ * @param \Google\Cloud\ContactCenterInsights\V1\InterruptionData $var
+ * @return $this
+ */
+ public function setInterruptionData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\InterruptionData::class);
+ $this->writeOneof(10, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying sentiment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment_data = 11;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SentimentData|null
+ */
+ public function getSentimentData()
+ {
+ return $this->readOneof(11);
+ }
+
+ public function hasSentimentData()
+ {
+ return $this->hasOneof(11);
+ }
+
+ /**
+ * Data specifying sentiment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment_data = 11;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SentimentData $var
+ * @return $this
+ */
+ public function setSentimentData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SentimentData::class);
+ $this->writeOneof(11, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying silence.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SilenceData silence_data = 12;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SilenceData|null
+ */
+ public function getSilenceData()
+ {
+ return $this->readOneof(12);
+ }
+
+ public function hasSilenceData()
+ {
+ return $this->hasOneof(12);
+ }
+
+ /**
+ * Data specifying silence.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SilenceData silence_data = 12;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SilenceData $var
+ * @return $this
+ */
+ public function setSilenceData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SilenceData::class);
+ $this->writeOneof(12, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying a hold.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.HoldData hold_data = 13;
+ * @return \Google\Cloud\ContactCenterInsights\V1\HoldData|null
+ */
+ public function getHoldData()
+ {
+ return $this->readOneof(13);
+ }
+
+ public function hasHoldData()
+ {
+ return $this->hasOneof(13);
+ }
+
+ /**
+ * Data specifying a hold.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.HoldData hold_data = 13;
+ * @param \Google\Cloud\ContactCenterInsights\V1\HoldData $var
+ * @return $this
+ */
+ public function setHoldData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\HoldData::class);
+ $this->writeOneof(13, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying an entity mention.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EntityMentionData entity_mention_data = 15;
+ * @return \Google\Cloud\ContactCenterInsights\V1\EntityMentionData|null
+ */
+ public function getEntityMentionData()
+ {
+ return $this->readOneof(15);
+ }
+
+ public function hasEntityMentionData()
+ {
+ return $this->hasOneof(15);
+ }
+
+ /**
+ * Data specifying an entity mention.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EntityMentionData entity_mention_data = 15;
+ * @param \Google\Cloud\ContactCenterInsights\V1\EntityMentionData $var
+ * @return $this
+ */
+ public function setEntityMentionData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\EntityMentionData::class);
+ $this->writeOneof(15, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying an intent match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IntentMatchData intent_match_data = 16;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IntentMatchData|null
+ */
+ public function getIntentMatchData()
+ {
+ return $this->readOneof(16);
+ }
+
+ public function hasIntentMatchData()
+ {
+ return $this->hasOneof(16);
+ }
+
+ /**
+ * Data specifying an intent match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IntentMatchData intent_match_data = 16;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IntentMatchData $var
+ * @return $this
+ */
+ public function setIntentMatchData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IntentMatchData::class);
+ $this->writeOneof(16, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying a phrase match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchData phrase_match_data = 17;
+ * @return \Google\Cloud\ContactCenterInsights\V1\PhraseMatchData|null
+ */
+ public function getPhraseMatchData()
+ {
+ return $this->readOneof(17);
+ }
+
+ public function hasPhraseMatchData()
+ {
+ return $this->hasOneof(17);
+ }
+
+ /**
+ * Data specifying a phrase match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchData phrase_match_data = 17;
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatchData $var
+ * @return $this
+ */
+ public function setPhraseMatchData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchData::class);
+ $this->writeOneof(17, $var);
+
+ return $this;
+ }
+
+ /**
+ * Data specifying an issue match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueMatchData issue_match_data = 18;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueMatchData|null
+ */
+ public function getIssueMatchData()
+ {
+ return $this->readOneof(18);
+ }
+
+ public function hasIssueMatchData()
+ {
+ return $this->hasOneof(18);
+ }
+
+ /**
+ * Data specifying an issue match.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueMatchData issue_match_data = 18;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueMatchData $var
+ * @return $this
+ */
+ public function setIssueMatchData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueMatchData::class);
+ $this->writeOneof(18, $var);
+
+ return $this;
+ }
+
+ /**
+ * The channel of the audio where the annotation occurs. For single-channel
+ * audio, this field is not populated.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ * @return int
+ */
+ public function getChannelTag()
+ {
+ return $this->channel_tag;
+ }
+
+ /**
+ * The channel of the audio where the annotation occurs. For single-channel
+ * audio, this field is not populated.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setChannelTag($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->channel_tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_start_boundary = 4;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary|null
+ */
+ public function getAnnotationStartBoundary()
+ {
+ return $this->annotation_start_boundary;
+ }
+
+ public function hasAnnotationStartBoundary()
+ {
+ return isset($this->annotation_start_boundary);
+ }
+
+ public function clearAnnotationStartBoundary()
+ {
+ unset($this->annotation_start_boundary);
+ }
+
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_start_boundary = 4;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $var
+ * @return $this
+ */
+ public function setAnnotationStartBoundary($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary::class);
+ $this->annotation_start_boundary = $var;
+
+ return $this;
+ }
+
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_end_boundary = 5;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary|null
+ */
+ public function getAnnotationEndBoundary()
+ {
+ return $this->annotation_end_boundary;
+ }
+
+ public function hasAnnotationEndBoundary()
+ {
+ return isset($this->annotation_end_boundary);
+ }
+
+ public function clearAnnotationEndBoundary()
+ {
+ unset($this->annotation_end_boundary);
+ }
+
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary annotation_end_boundary = 5;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $var
+ * @return $this
+ */
+ public function setAnnotationEndBoundary($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary::class);
+ $this->annotation_end_boundary = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getData()
+ {
+ return $this->whichOneof("data");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation.php
new file mode 100644
index 000000000000..63d218ed77a6
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation.php
@@ -0,0 +1,932 @@
+google.cloud.contactcenterinsights.v1.Conversation
+ */
+class Conversation extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the conversation.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * The source of the audio and transcription for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationDataSource data_source = 2;
+ */
+ protected $data_source = null;
+ /**
+ * Output only. The time at which the conversation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which the conversation was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * The time at which the conversation started.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 17;
+ */
+ protected $start_time = null;
+ /**
+ * A user-specified language code for the conversation.
+ *
+ * Generated from protobuf field string language_code = 14;
+ */
+ protected $language_code = '';
+ /**
+ * An opaque, user-specified string representing the human agent who handled
+ * the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ */
+ protected $agent_id = '';
+ /**
+ * A map for the user to specify any custom fields. A maximum of 100 labels
+ * per conversation is allowed, with a maximum of 256 characters per entry.
+ *
+ * Generated from protobuf field map labels = 6;
+ */
+ private $labels;
+ /**
+ * Conversation metadata related to quality management.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata quality_metadata = 24;
+ */
+ protected $quality_metadata = null;
+ /**
+ * Input only. JSON metadata encoded as a string.
+ * This field is primarily used by Insights integrations with various telphony
+ * systems and must be in one of Insight's supported formats.
+ *
+ * Generated from protobuf field string metadata_json = 25 [(.google.api.field_behavior) = INPUT_ONLY];
+ */
+ protected $metadata_json = '';
+ /**
+ * Output only. The conversation transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript transcript = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $transcript = null;
+ /**
+ * Immutable. The conversation medium, if unspecified will default to
+ * PHONE_CALL.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 9 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $medium = 0;
+ /**
+ * Output only. The duration of the conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration duration = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $duration = null;
+ /**
+ * Output only. The number of turns in the conversation.
+ *
+ * Generated from protobuf field int32 turn_count = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $turn_count = 0;
+ /**
+ * Output only. The conversation's latest analysis, if one exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis latest_analysis = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $latest_analysis = null;
+ /**
+ * Output only. Latest summary of the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData latest_summary = 20 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $latest_summary = null;
+ /**
+ * Output only. The annotations that were generated during the customer and
+ * agent interaction.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.RuntimeAnnotation runtime_annotations = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $runtime_annotations;
+ /**
+ * Output only. All the matched Dialogflow intents in the call. The key
+ * corresponds to a Dialogflow intent, format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field map dialogflow_intents = 18 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $dialogflow_intents;
+ /**
+ * Obfuscated user ID which the customer sent to us.
+ *
+ * Generated from protobuf field string obfuscated_user_id = 21;
+ */
+ protected $obfuscated_user_id = '';
+ protected $metadata;
+ protected $expiration;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation\CallMetadata $call_metadata
+ * Call-specific metadata.
+ * @type \Google\Protobuf\Timestamp $expire_time
+ * The time at which this conversation should expire. After this time, the
+ * conversation data and any associated analyses will be deleted.
+ * @type \Google\Protobuf\Duration $ttl
+ * Input only. The TTL for this resource. If specified, then this TTL will
+ * be used to calculate the expire time.
+ * @type string $name
+ * Immutable. The resource name of the conversation.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ * @type \Google\Cloud\ContactCenterInsights\V1\ConversationDataSource $data_source
+ * The source of the audio and transcription for the conversation.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which the conversation was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the conversation was updated.
+ * @type \Google\Protobuf\Timestamp $start_time
+ * The time at which the conversation started.
+ * @type string $language_code
+ * A user-specified language code for the conversation.
+ * @type string $agent_id
+ * An opaque, user-specified string representing the human agent who handled
+ * the conversation.
+ * @type array|\Google\Protobuf\Internal\MapField $labels
+ * A map for the user to specify any custom fields. A maximum of 100 labels
+ * per conversation is allowed, with a maximum of 256 characters per entry.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata $quality_metadata
+ * Conversation metadata related to quality management.
+ * @type string $metadata_json
+ * Input only. JSON metadata encoded as a string.
+ * This field is primarily used by Insights integrations with various telphony
+ * systems and must be in one of Insight's supported formats.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript $transcript
+ * Output only. The conversation transcript.
+ * @type int $medium
+ * Immutable. The conversation medium, if unspecified will default to
+ * PHONE_CALL.
+ * @type \Google\Protobuf\Duration $duration
+ * Output only. The duration of the conversation.
+ * @type int $turn_count
+ * Output only. The number of turns in the conversation.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Analysis $latest_analysis
+ * Output only. The conversation's latest analysis, if one exists.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData $latest_summary
+ * Output only. Latest summary of the conversation.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation>|\Google\Protobuf\Internal\RepeatedField $runtime_annotations
+ * Output only. The annotations that were generated during the customer and
+ * agent interaction.
+ * @type array|\Google\Protobuf\Internal\MapField $dialogflow_intents
+ * Output only. All the matched Dialogflow intents in the call. The key
+ * corresponds to a Dialogflow intent, format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ * @type string $obfuscated_user_id
+ * Obfuscated user ID which the customer sent to us.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Call-specific metadata.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.CallMetadata call_metadata = 7;
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation\CallMetadata|null
+ */
+ public function getCallMetadata()
+ {
+ return $this->readOneof(7);
+ }
+
+ public function hasCallMetadata()
+ {
+ return $this->hasOneof(7);
+ }
+
+ /**
+ * Call-specific metadata.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.CallMetadata call_metadata = 7;
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation\CallMetadata $var
+ * @return $this
+ */
+ public function setCallMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\CallMetadata::class);
+ $this->writeOneof(7, $var);
+
+ return $this;
+ }
+
+ /**
+ * The time at which this conversation should expire. After this time, the
+ * conversation data and any associated analyses will be deleted.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp expire_time = 15;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getExpireTime()
+ {
+ return $this->readOneof(15);
+ }
+
+ public function hasExpireTime()
+ {
+ return $this->hasOneof(15);
+ }
+
+ /**
+ * The time at which this conversation should expire. After this time, the
+ * conversation data and any associated analyses will be deleted.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp expire_time = 15;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setExpireTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->writeOneof(15, $var);
+
+ return $this;
+ }
+
+ /**
+ * Input only. The TTL for this resource. If specified, then this TTL will
+ * be used to calculate the expire time.
+ *
+ * Generated from protobuf field .google.protobuf.Duration ttl = 16 [(.google.api.field_behavior) = INPUT_ONLY];
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getTtl()
+ {
+ return $this->readOneof(16);
+ }
+
+ public function hasTtl()
+ {
+ return $this->hasOneof(16);
+ }
+
+ /**
+ * Input only. The TTL for this resource. If specified, then this TTL will
+ * be used to calculate the expire time.
+ *
+ * Generated from protobuf field .google.protobuf.Duration ttl = 16 [(.google.api.field_behavior) = INPUT_ONLY];
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setTtl($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->writeOneof(16, $var);
+
+ return $this;
+ }
+
+ /**
+ * Immutable. The resource name of the conversation.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the conversation.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The source of the audio and transcription for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationDataSource data_source = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ConversationDataSource|null
+ */
+ public function getDataSource()
+ {
+ return $this->data_source;
+ }
+
+ public function hasDataSource()
+ {
+ return isset($this->data_source);
+ }
+
+ public function clearDataSource()
+ {
+ unset($this->data_source);
+ }
+
+ /**
+ * The source of the audio and transcription for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationDataSource data_source = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ConversationDataSource $var
+ * @return $this
+ */
+ public function setDataSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ConversationDataSource::class);
+ $this->data_source = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which the conversation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which the conversation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the conversation was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the conversation was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time at which the conversation started.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 17;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getStartTime()
+ {
+ return $this->start_time;
+ }
+
+ public function hasStartTime()
+ {
+ return isset($this->start_time);
+ }
+
+ public function clearStartTime()
+ {
+ unset($this->start_time);
+ }
+
+ /**
+ * The time at which the conversation started.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp start_time = 17;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setStartTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->start_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * A user-specified language code for the conversation.
+ *
+ * Generated from protobuf field string language_code = 14;
+ * @return string
+ */
+ public function getLanguageCode()
+ {
+ return $this->language_code;
+ }
+
+ /**
+ * A user-specified language code for the conversation.
+ *
+ * Generated from protobuf field string language_code = 14;
+ * @param string $var
+ * @return $this
+ */
+ public function setLanguageCode($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->language_code = $var;
+
+ return $this;
+ }
+
+ /**
+ * An opaque, user-specified string representing the human agent who handled
+ * the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ * @return string
+ */
+ public function getAgentId()
+ {
+ return $this->agent_id;
+ }
+
+ /**
+ * An opaque, user-specified string representing the human agent who handled
+ * the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * A map for the user to specify any custom fields. A maximum of 100 labels
+ * per conversation is allowed, with a maximum of 256 characters per entry.
+ *
+ * Generated from protobuf field map labels = 6;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getLabels()
+ {
+ return $this->labels;
+ }
+
+ /**
+ * A map for the user to specify any custom fields. A maximum of 100 labels
+ * per conversation is allowed, with a maximum of 256 characters per entry.
+ *
+ * Generated from protobuf field map labels = 6;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setLabels($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->labels = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Conversation metadata related to quality management.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata quality_metadata = 24;
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata|null
+ */
+ public function getQualityMetadata()
+ {
+ return $this->quality_metadata;
+ }
+
+ public function hasQualityMetadata()
+ {
+ return isset($this->quality_metadata);
+ }
+
+ public function clearQualityMetadata()
+ {
+ unset($this->quality_metadata);
+ }
+
+ /**
+ * Conversation metadata related to quality management.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata quality_metadata = 24;
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata $var
+ * @return $this
+ */
+ public function setQualityMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata::class);
+ $this->quality_metadata = $var;
+
+ return $this;
+ }
+
+ /**
+ * Input only. JSON metadata encoded as a string.
+ * This field is primarily used by Insights integrations with various telphony
+ * systems and must be in one of Insight's supported formats.
+ *
+ * Generated from protobuf field string metadata_json = 25 [(.google.api.field_behavior) = INPUT_ONLY];
+ * @return string
+ */
+ public function getMetadataJson()
+ {
+ return $this->metadata_json;
+ }
+
+ /**
+ * Input only. JSON metadata encoded as a string.
+ * This field is primarily used by Insights integrations with various telphony
+ * systems and must be in one of Insight's supported formats.
+ *
+ * Generated from protobuf field string metadata_json = 25 [(.google.api.field_behavior) = INPUT_ONLY];
+ * @param string $var
+ * @return $this
+ */
+ public function setMetadataJson($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->metadata_json = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The conversation transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript transcript = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript|null
+ */
+ public function getTranscript()
+ {
+ return $this->transcript;
+ }
+
+ public function hasTranscript()
+ {
+ return isset($this->transcript);
+ }
+
+ public function clearTranscript()
+ {
+ unset($this->transcript);
+ }
+
+ /**
+ * Output only. The conversation transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript transcript = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript $var
+ * @return $this
+ */
+ public function setTranscript($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript::class);
+ $this->transcript = $var;
+
+ return $this;
+ }
+
+ /**
+ * Immutable. The conversation medium, if unspecified will default to
+ * PHONE_CALL.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 9 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return int
+ */
+ public function getMedium()
+ {
+ return $this->medium;
+ }
+
+ /**
+ * Immutable. The conversation medium, if unspecified will default to
+ * PHONE_CALL.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 9 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param int $var
+ * @return $this
+ */
+ public function setMedium($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\Medium::class);
+ $this->medium = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The duration of the conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration duration = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getDuration()
+ {
+ return $this->duration;
+ }
+
+ public function hasDuration()
+ {
+ return isset($this->duration);
+ }
+
+ public function clearDuration()
+ {
+ unset($this->duration);
+ }
+
+ /**
+ * Output only. The duration of the conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration duration = 10 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The number of turns in the conversation.
+ *
+ * Generated from protobuf field int32 turn_count = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getTurnCount()
+ {
+ return $this->turn_count;
+ }
+
+ /**
+ * Output only. The number of turns in the conversation.
+ *
+ * Generated from protobuf field int32 turn_count = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setTurnCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->turn_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The conversation's latest analysis, if one exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis latest_analysis = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Analysis|null
+ */
+ public function getLatestAnalysis()
+ {
+ return $this->latest_analysis;
+ }
+
+ public function hasLatestAnalysis()
+ {
+ return isset($this->latest_analysis);
+ }
+
+ public function clearLatestAnalysis()
+ {
+ unset($this->latest_analysis);
+ }
+
+ /**
+ * Output only. The conversation's latest analysis, if one exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis latest_analysis = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Analysis $var
+ * @return $this
+ */
+ public function setLatestAnalysis($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Analysis::class);
+ $this->latest_analysis = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Latest summary of the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData latest_summary = 20 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData|null
+ */
+ public function getLatestSummary()
+ {
+ return $this->latest_summary;
+ }
+
+ public function hasLatestSummary()
+ {
+ return isset($this->latest_summary);
+ }
+
+ public function clearLatestSummary()
+ {
+ unset($this->latest_summary);
+ }
+
+ /**
+ * Output only. Latest summary of the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData latest_summary = 20 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData $var
+ * @return $this
+ */
+ public function setLatestSummary($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData::class);
+ $this->latest_summary = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The annotations that were generated during the customer and
+ * agent interaction.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.RuntimeAnnotation runtime_annotations = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getRuntimeAnnotations()
+ {
+ return $this->runtime_annotations;
+ }
+
+ /**
+ * Output only. The annotations that were generated during the customer and
+ * agent interaction.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.RuntimeAnnotation runtime_annotations = 13 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setRuntimeAnnotations($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation::class);
+ $this->runtime_annotations = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. All the matched Dialogflow intents in the call. The key
+ * corresponds to a Dialogflow intent, format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field map dialogflow_intents = 18 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getDialogflowIntents()
+ {
+ return $this->dialogflow_intents;
+ }
+
+ /**
+ * Output only. All the matched Dialogflow intents in the call. The key
+ * corresponds to a Dialogflow intent, format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field map dialogflow_intents = 18 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setDialogflowIntents($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\DialogflowIntent::class);
+ $this->dialogflow_intents = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Obfuscated user ID which the customer sent to us.
+ *
+ * Generated from protobuf field string obfuscated_user_id = 21;
+ * @return string
+ */
+ public function getObfuscatedUserId()
+ {
+ return $this->obfuscated_user_id;
+ }
+
+ /**
+ * Obfuscated user ID which the customer sent to us.
+ *
+ * Generated from protobuf field string obfuscated_user_id = 21;
+ * @param string $var
+ * @return $this
+ */
+ public function setObfuscatedUserId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->obfuscated_user_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getMetadata()
+ {
+ return $this->whichOneof("metadata");
+ }
+
+ /**
+ * @return string
+ */
+ public function getExpiration()
+ {
+ return $this->whichOneof("expiration");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/CallMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/CallMetadata.php
new file mode 100644
index 000000000000..3884e88264b0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/CallMetadata.php
@@ -0,0 +1,104 @@
+google.cloud.contactcenterinsights.v1.Conversation.CallMetadata
+ */
+class CallMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The audio channel that contains the customer.
+ *
+ * Generated from protobuf field int32 customer_channel = 1;
+ */
+ protected $customer_channel = 0;
+ /**
+ * The audio channel that contains the agent.
+ *
+ * Generated from protobuf field int32 agent_channel = 2;
+ */
+ protected $agent_channel = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $customer_channel
+ * The audio channel that contains the customer.
+ * @type int $agent_channel
+ * The audio channel that contains the agent.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The audio channel that contains the customer.
+ *
+ * Generated from protobuf field int32 customer_channel = 1;
+ * @return int
+ */
+ public function getCustomerChannel()
+ {
+ return $this->customer_channel;
+ }
+
+ /**
+ * The audio channel that contains the customer.
+ *
+ * Generated from protobuf field int32 customer_channel = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setCustomerChannel($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->customer_channel = $var;
+
+ return $this;
+ }
+
+ /**
+ * The audio channel that contains the agent.
+ *
+ * Generated from protobuf field int32 agent_channel = 2;
+ * @return int
+ */
+ public function getAgentChannel()
+ {
+ return $this->agent_channel;
+ }
+
+ /**
+ * The audio channel that contains the agent.
+ *
+ * Generated from protobuf field int32 agent_channel = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setAgentChannel($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->agent_channel = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(CallMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_CallMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Medium.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Medium.php
new file mode 100644
index 000000000000..21c573d1e54a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Medium.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.Conversation.Medium
+ */
+class Medium
+{
+ /**
+ * Default value, if unspecified will default to PHONE_CALL.
+ *
+ * Generated from protobuf enum MEDIUM_UNSPECIFIED = 0;
+ */
+ const MEDIUM_UNSPECIFIED = 0;
+ /**
+ * The format for conversations that took place over the phone.
+ *
+ * Generated from protobuf enum PHONE_CALL = 1;
+ */
+ const PHONE_CALL = 1;
+ /**
+ * The format for conversations that took place over chat.
+ *
+ * Generated from protobuf enum CHAT = 2;
+ */
+ const CHAT = 2;
+
+ private static $valueToName = [
+ self::MEDIUM_UNSPECIFIED => 'MEDIUM_UNSPECIFIED',
+ self::PHONE_CALL => 'PHONE_CALL',
+ self::CHAT => 'CHAT',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Medium::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_Medium::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata.php
new file mode 100644
index 000000000000..dc583d1d0951
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata.php
@@ -0,0 +1,182 @@
+google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata
+ */
+class QualityMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * An arbitrary integer value indicating the customer's satisfaction rating.
+ *
+ * Generated from protobuf field int32 customer_satisfaction_rating = 1;
+ */
+ protected $customer_satisfaction_rating = 0;
+ /**
+ * The amount of time the customer waited to connect with an agent.
+ *
+ * Generated from protobuf field .google.protobuf.Duration wait_duration = 2;
+ */
+ protected $wait_duration = null;
+ /**
+ * An arbitrary string value specifying the menu path the customer took.
+ *
+ * Generated from protobuf field string menu_path = 3;
+ */
+ protected $menu_path = '';
+ /**
+ * Information about agents involved in the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata.AgentInfo agent_info = 4;
+ */
+ private $agent_info;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $customer_satisfaction_rating
+ * An arbitrary integer value indicating the customer's satisfaction rating.
+ * @type \Google\Protobuf\Duration $wait_duration
+ * The amount of time the customer waited to connect with an agent.
+ * @type string $menu_path
+ * An arbitrary string value specifying the menu path the customer took.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata\AgentInfo>|\Google\Protobuf\Internal\RepeatedField $agent_info
+ * Information about agents involved in the call.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * An arbitrary integer value indicating the customer's satisfaction rating.
+ *
+ * Generated from protobuf field int32 customer_satisfaction_rating = 1;
+ * @return int
+ */
+ public function getCustomerSatisfactionRating()
+ {
+ return $this->customer_satisfaction_rating;
+ }
+
+ /**
+ * An arbitrary integer value indicating the customer's satisfaction rating.
+ *
+ * Generated from protobuf field int32 customer_satisfaction_rating = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setCustomerSatisfactionRating($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->customer_satisfaction_rating = $var;
+
+ return $this;
+ }
+
+ /**
+ * The amount of time the customer waited to connect with an agent.
+ *
+ * Generated from protobuf field .google.protobuf.Duration wait_duration = 2;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getWaitDuration()
+ {
+ return $this->wait_duration;
+ }
+
+ public function hasWaitDuration()
+ {
+ return isset($this->wait_duration);
+ }
+
+ public function clearWaitDuration()
+ {
+ unset($this->wait_duration);
+ }
+
+ /**
+ * The amount of time the customer waited to connect with an agent.
+ *
+ * Generated from protobuf field .google.protobuf.Duration wait_duration = 2;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setWaitDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->wait_duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * An arbitrary string value specifying the menu path the customer took.
+ *
+ * Generated from protobuf field string menu_path = 3;
+ * @return string
+ */
+ public function getMenuPath()
+ {
+ return $this->menu_path;
+ }
+
+ /**
+ * An arbitrary string value specifying the menu path the customer took.
+ *
+ * Generated from protobuf field string menu_path = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setMenuPath($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->menu_path = $var;
+
+ return $this;
+ }
+
+ /**
+ * Information about agents involved in the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata.AgentInfo agent_info = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAgentInfo()
+ {
+ return $this->agent_info;
+ }
+
+ /**
+ * Information about agents involved in the call.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata.AgentInfo agent_info = 4;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata\AgentInfo>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAgentInfo($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Conversation\QualityMetadata\AgentInfo::class);
+ $this->agent_info = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QualityMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_QualityMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata/AgentInfo.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata/AgentInfo.php
new file mode 100644
index 000000000000..a3d6217bf2f4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/QualityMetadata/AgentInfo.php
@@ -0,0 +1,210 @@
+google.cloud.contactcenterinsights.v1.Conversation.QualityMetadata.AgentInfo
+ */
+class AgentInfo extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1;
+ */
+ protected $agent_id = '';
+ /**
+ * The agent's name.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+ /**
+ * A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string team = 3;
+ */
+ protected $team = '';
+ /**
+ * A user-provided string indicating the outcome of the agent's segment of
+ * the call.
+ *
+ * Generated from protobuf field string disposition_code = 4;
+ */
+ protected $disposition_code = '';
+ /**
+ * The agent type, e.g. HUMAN_AGENT.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role agent_type = 5;
+ */
+ protected $agent_type = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $agent_id
+ * A user-specified string representing the agent.
+ * @type string $display_name
+ * The agent's name.
+ * @type string $team
+ * A user-specified string representing the agent's team.
+ * @type string $disposition_code
+ * A user-provided string indicating the outcome of the agent's segment of
+ * the call.
+ * @type int $agent_type
+ * The agent type, e.g. HUMAN_AGENT.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1;
+ * @return string
+ */
+ public function getAgentId()
+ {
+ return $this->agent_id;
+ }
+
+ /**
+ * A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The agent's name.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The agent's name.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string team = 3;
+ * @return string
+ */
+ public function getTeam()
+ {
+ return $this->team;
+ }
+
+ /**
+ * A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string team = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setTeam($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->team = $var;
+
+ return $this;
+ }
+
+ /**
+ * A user-provided string indicating the outcome of the agent's segment of
+ * the call.
+ *
+ * Generated from protobuf field string disposition_code = 4;
+ * @return string
+ */
+ public function getDispositionCode()
+ {
+ return $this->disposition_code;
+ }
+
+ /**
+ * A user-provided string indicating the outcome of the agent's segment of
+ * the call.
+ *
+ * Generated from protobuf field string disposition_code = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setDispositionCode($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->disposition_code = $var;
+
+ return $this;
+ }
+
+ /**
+ * The agent type, e.g. HUMAN_AGENT.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role agent_type = 5;
+ * @return int
+ */
+ public function getAgentType()
+ {
+ return $this->agent_type;
+ }
+
+ /**
+ * The agent type, e.g. HUMAN_AGENT.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role agent_type = 5;
+ * @param int $var
+ * @return $this
+ */
+ public function setAgentType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant\Role::class);
+ $this->agent_type = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AgentInfo::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_QualityMetadata_AgentInfo::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript.php
new file mode 100644
index 000000000000..5387fe5354ae
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.Conversation.Transcript
+ */
+class Transcript extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A list of sequential transcript segments that comprise the conversation.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment transcript_segments = 1;
+ */
+ private $transcript_segments;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment>|\Google\Protobuf\Internal\RepeatedField $transcript_segments
+ * A list of sequential transcript segments that comprise the conversation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A list of sequential transcript segments that comprise the conversation.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment transcript_segments = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getTranscriptSegments()
+ {
+ return $this->transcript_segments;
+ }
+
+ /**
+ * A list of sequential transcript segments that comprise the conversation.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment transcript_segments = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setTranscriptSegments($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment::class);
+ $this->transcript_segments = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Transcript::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_Transcript::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment.php
new file mode 100644
index 000000000000..1c98cf068b8c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment.php
@@ -0,0 +1,406 @@
+google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment
+ */
+class TranscriptSegment extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time that the message occurred, if provided.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp message_time = 6;
+ */
+ protected $message_time = null;
+ /**
+ * The text of this segment.
+ *
+ * Generated from protobuf field string text = 1;
+ */
+ protected $text = '';
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * segment. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 2;
+ */
+ protected $confidence = 0.0;
+ /**
+ * A list of the word-specific information for each word in the segment.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.WordInfo words = 3;
+ */
+ private $words;
+ /**
+ * The language code of this segment as a
+ * [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
+ * Example: "en-US".
+ *
+ * Generated from protobuf field string language_code = 4;
+ */
+ protected $language_code = '';
+ /**
+ * For conversations derived from multi-channel audio, this is the channel
+ * number corresponding to the audio from that channel. For
+ * audioChannelCount = N, its output values can range from '1' to 'N'. A
+ * channel tag of 0 indicates that the audio is mono.
+ *
+ * Generated from protobuf field int32 channel_tag = 5;
+ */
+ protected $channel_tag = 0;
+ /**
+ * The participant of this segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant segment_participant = 9;
+ */
+ protected $segment_participant = null;
+ /**
+ * CCAI metadata relating to the current transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.DialogflowSegmentMetadata dialogflow_segment_metadata = 10;
+ */
+ protected $dialogflow_segment_metadata = null;
+ /**
+ * The sentiment for this transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 11;
+ */
+ protected $sentiment = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $message_time
+ * The time that the message occurred, if provided.
+ * @type string $text
+ * The text of this segment.
+ * @type float $confidence
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * segment. A default value of 0.0 indicates that the value is unset.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\WordInfo>|\Google\Protobuf\Internal\RepeatedField $words
+ * A list of the word-specific information for each word in the segment.
+ * @type string $language_code
+ * The language code of this segment as a
+ * [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
+ * Example: "en-US".
+ * @type int $channel_tag
+ * For conversations derived from multi-channel audio, this is the channel
+ * number corresponding to the audio from that channel. For
+ * audioChannelCount = N, its output values can range from '1' to 'N'. A
+ * channel tag of 0 indicates that the audio is mono.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant $segment_participant
+ * The participant of this segment.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\DialogflowSegmentMetadata $dialogflow_segment_metadata
+ * CCAI metadata relating to the current transcript segment.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SentimentData $sentiment
+ * The sentiment for this transcript segment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The time that the message occurred, if provided.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp message_time = 6;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getMessageTime()
+ {
+ return $this->message_time;
+ }
+
+ public function hasMessageTime()
+ {
+ return isset($this->message_time);
+ }
+
+ public function clearMessageTime()
+ {
+ unset($this->message_time);
+ }
+
+ /**
+ * The time that the message occurred, if provided.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp message_time = 6;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setMessageTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->message_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The text of this segment.
+ *
+ * Generated from protobuf field string text = 1;
+ * @return string
+ */
+ public function getText()
+ {
+ return $this->text;
+ }
+
+ /**
+ * The text of this segment.
+ *
+ * Generated from protobuf field string text = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setText($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->text = $var;
+
+ return $this;
+ }
+
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * segment. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @return float
+ */
+ public function getConfidence()
+ {
+ return $this->confidence;
+ }
+
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * segment. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidence($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of the word-specific information for each word in the segment.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.WordInfo words = 3;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getWords()
+ {
+ return $this->words;
+ }
+
+ /**
+ * A list of the word-specific information for each word in the segment.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.WordInfo words = 3;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\WordInfo>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setWords($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\WordInfo::class);
+ $this->words = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The language code of this segment as a
+ * [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
+ * Example: "en-US".
+ *
+ * Generated from protobuf field string language_code = 4;
+ * @return string
+ */
+ public function getLanguageCode()
+ {
+ return $this->language_code;
+ }
+
+ /**
+ * The language code of this segment as a
+ * [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt) language tag.
+ * Example: "en-US".
+ *
+ * Generated from protobuf field string language_code = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setLanguageCode($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->language_code = $var;
+
+ return $this;
+ }
+
+ /**
+ * For conversations derived from multi-channel audio, this is the channel
+ * number corresponding to the audio from that channel. For
+ * audioChannelCount = N, its output values can range from '1' to 'N'. A
+ * channel tag of 0 indicates that the audio is mono.
+ *
+ * Generated from protobuf field int32 channel_tag = 5;
+ * @return int
+ */
+ public function getChannelTag()
+ {
+ return $this->channel_tag;
+ }
+
+ /**
+ * For conversations derived from multi-channel audio, this is the channel
+ * number corresponding to the audio from that channel. For
+ * audioChannelCount = N, its output values can range from '1' to 'N'. A
+ * channel tag of 0 indicates that the audio is mono.
+ *
+ * Generated from protobuf field int32 channel_tag = 5;
+ * @param int $var
+ * @return $this
+ */
+ public function setChannelTag($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->channel_tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * The participant of this segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant segment_participant = 9;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant|null
+ */
+ public function getSegmentParticipant()
+ {
+ return $this->segment_participant;
+ }
+
+ public function hasSegmentParticipant()
+ {
+ return isset($this->segment_participant);
+ }
+
+ public function clearSegmentParticipant()
+ {
+ unset($this->segment_participant);
+ }
+
+ /**
+ * The participant of this segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant segment_participant = 9;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant $var
+ * @return $this
+ */
+ public function setSegmentParticipant($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant::class);
+ $this->segment_participant = $var;
+
+ return $this;
+ }
+
+ /**
+ * CCAI metadata relating to the current transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.DialogflowSegmentMetadata dialogflow_segment_metadata = 10;
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\DialogflowSegmentMetadata|null
+ */
+ public function getDialogflowSegmentMetadata()
+ {
+ return $this->dialogflow_segment_metadata;
+ }
+
+ public function hasDialogflowSegmentMetadata()
+ {
+ return isset($this->dialogflow_segment_metadata);
+ }
+
+ public function clearDialogflowSegmentMetadata()
+ {
+ unset($this->dialogflow_segment_metadata);
+ }
+
+ /**
+ * CCAI metadata relating to the current transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.DialogflowSegmentMetadata dialogflow_segment_metadata = 10;
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\DialogflowSegmentMetadata $var
+ * @return $this
+ */
+ public function setDialogflowSegmentMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\Transcript\TranscriptSegment\DialogflowSegmentMetadata::class);
+ $this->dialogflow_segment_metadata = $var;
+
+ return $this;
+ }
+
+ /**
+ * The sentiment for this transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 11;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SentimentData|null
+ */
+ public function getSentiment()
+ {
+ return $this->sentiment;
+ }
+
+ public function hasSentiment()
+ {
+ return isset($this->sentiment);
+ }
+
+ public function clearSentiment()
+ {
+ unset($this->sentiment);
+ }
+
+ /**
+ * The sentiment for this transcript segment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 11;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SentimentData $var
+ * @return $this
+ */
+ public function setSentiment($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SentimentData::class);
+ $this->sentiment = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TranscriptSegment::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_Transcript_TranscriptSegment::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/DialogflowSegmentMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/DialogflowSegmentMetadata.php
new file mode 100644
index 000000000000..86b130b36b18
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/DialogflowSegmentMetadata.php
@@ -0,0 +1,74 @@
+google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.DialogflowSegmentMetadata
+ */
+class DialogflowSegmentMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Whether the transcript segment was covered under the configured smart
+ * reply allowlist in Agent Assist.
+ *
+ * Generated from protobuf field bool smart_reply_allowlist_covered = 1;
+ */
+ protected $smart_reply_allowlist_covered = false;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type bool $smart_reply_allowlist_covered
+ * Whether the transcript segment was covered under the configured smart
+ * reply allowlist in Agent Assist.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Whether the transcript segment was covered under the configured smart
+ * reply allowlist in Agent Assist.
+ *
+ * Generated from protobuf field bool smart_reply_allowlist_covered = 1;
+ * @return bool
+ */
+ public function getSmartReplyAllowlistCovered()
+ {
+ return $this->smart_reply_allowlist_covered;
+ }
+
+ /**
+ * Whether the transcript segment was covered under the configured smart
+ * reply allowlist in Agent Assist.
+ *
+ * Generated from protobuf field bool smart_reply_allowlist_covered = 1;
+ * @param bool $var
+ * @return $this
+ */
+ public function setSmartReplyAllowlistCovered($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->smart_reply_allowlist_covered = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(DialogflowSegmentMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_Transcript_TranscriptSegment_DialogflowSegmentMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/WordInfo.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/WordInfo.php
new file mode 100644
index 000000000000..8070e337828e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Conversation/Transcript/TranscriptSegment/WordInfo.php
@@ -0,0 +1,204 @@
+google.cloud.contactcenterinsights.v1.Conversation.Transcript.TranscriptSegment.WordInfo
+ */
+class WordInfo extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Time offset of the start of this word relative to the beginning of
+ * the total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration start_offset = 1;
+ */
+ protected $start_offset = null;
+ /**
+ * Time offset of the end of this word relative to the beginning of the
+ * total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration end_offset = 2;
+ */
+ protected $end_offset = null;
+ /**
+ * The word itself. Includes punctuation marks that surround the word.
+ *
+ * Generated from protobuf field string word = 3;
+ */
+ protected $word = '';
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * word. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 4;
+ */
+ protected $confidence = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Duration $start_offset
+ * Time offset of the start of this word relative to the beginning of
+ * the total conversation.
+ * @type \Google\Protobuf\Duration $end_offset
+ * Time offset of the end of this word relative to the beginning of the
+ * total conversation.
+ * @type string $word
+ * The word itself. Includes punctuation marks that surround the word.
+ * @type float $confidence
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * word. A default value of 0.0 indicates that the value is unset.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Time offset of the start of this word relative to the beginning of
+ * the total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration start_offset = 1;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getStartOffset()
+ {
+ return $this->start_offset;
+ }
+
+ public function hasStartOffset()
+ {
+ return isset($this->start_offset);
+ }
+
+ public function clearStartOffset()
+ {
+ unset($this->start_offset);
+ }
+
+ /**
+ * Time offset of the start of this word relative to the beginning of
+ * the total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration start_offset = 1;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setStartOffset($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->start_offset = $var;
+
+ return $this;
+ }
+
+ /**
+ * Time offset of the end of this word relative to the beginning of the
+ * total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration end_offset = 2;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getEndOffset()
+ {
+ return $this->end_offset;
+ }
+
+ public function hasEndOffset()
+ {
+ return isset($this->end_offset);
+ }
+
+ public function clearEndOffset()
+ {
+ unset($this->end_offset);
+ }
+
+ /**
+ * Time offset of the end of this word relative to the beginning of the
+ * total conversation.
+ *
+ * Generated from protobuf field .google.protobuf.Duration end_offset = 2;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setEndOffset($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->end_offset = $var;
+
+ return $this;
+ }
+
+ /**
+ * The word itself. Includes punctuation marks that surround the word.
+ *
+ * Generated from protobuf field string word = 3;
+ * @return string
+ */
+ public function getWord()
+ {
+ return $this->word;
+ }
+
+ /**
+ * The word itself. Includes punctuation marks that surround the word.
+ *
+ * Generated from protobuf field string word = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setWord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->word = $var;
+
+ return $this;
+ }
+
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * word. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 4;
+ * @return float
+ */
+ public function getConfidence()
+ {
+ return $this->confidence;
+ }
+
+ /**
+ * A confidence estimate between 0.0 and 1.0 of the fidelity of this
+ * word. A default value of 0.0 indicates that the value is unset.
+ *
+ * Generated from protobuf field float confidence = 4;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidence($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(WordInfo::class, \Google\Cloud\ContactCenterInsights\V1\Conversation_Transcript_TranscriptSegment_WordInfo::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationDataSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationDataSource.php
new file mode 100644
index 000000000000..13fa956a91a1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationDataSource.php
@@ -0,0 +1,108 @@
+google.cloud.contactcenterinsights.v1.ConversationDataSource
+ */
+class ConversationDataSource extends \Google\Protobuf\Internal\Message
+{
+ protected $source;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\GcsSource $gcs_source
+ * A Cloud Storage location specification for the audio and transcript.
+ * @type \Google\Cloud\ContactCenterInsights\V1\DialogflowSource $dialogflow_source
+ * The source when the conversation comes from Dialogflow.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A Cloud Storage location specification for the audio and transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.GcsSource gcs_source = 1;
+ * @return \Google\Cloud\ContactCenterInsights\V1\GcsSource|null
+ */
+ public function getGcsSource()
+ {
+ return $this->readOneof(1);
+ }
+
+ public function hasGcsSource()
+ {
+ return $this->hasOneof(1);
+ }
+
+ /**
+ * A Cloud Storage location specification for the audio and transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.GcsSource gcs_source = 1;
+ * @param \Google\Cloud\ContactCenterInsights\V1\GcsSource $var
+ * @return $this
+ */
+ public function setGcsSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\GcsSource::class);
+ $this->writeOneof(1, $var);
+
+ return $this;
+ }
+
+ /**
+ * The source when the conversation comes from Dialogflow.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DialogflowSource dialogflow_source = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\DialogflowSource|null
+ */
+ public function getDialogflowSource()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasDialogflowSource()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * The source when the conversation comes from Dialogflow.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DialogflowSource dialogflow_source = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\DialogflowSource $var
+ * @return $this
+ */
+ public function setDialogflowSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\DialogflowSource::class);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->whichOneof("source");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSentiment.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSentiment.php
new file mode 100644
index 000000000000..c716a63ac554
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSentiment.php
@@ -0,0 +1,111 @@
+google.cloud.contactcenterinsights.v1.ConversationLevelSentiment
+ */
+class ConversationLevelSentiment extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The channel of the audio that the data applies to.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ */
+ protected $channel_tag = 0;
+ /**
+ * Data specifying sentiment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment_data = 2;
+ */
+ protected $sentiment_data = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $channel_tag
+ * The channel of the audio that the data applies to.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SentimentData $sentiment_data
+ * Data specifying sentiment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The channel of the audio that the data applies to.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ * @return int
+ */
+ public function getChannelTag()
+ {
+ return $this->channel_tag;
+ }
+
+ /**
+ * The channel of the audio that the data applies to.
+ *
+ * Generated from protobuf field int32 channel_tag = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setChannelTag($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->channel_tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * Data specifying sentiment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment_data = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SentimentData|null
+ */
+ public function getSentimentData()
+ {
+ return $this->sentiment_data;
+ }
+
+ public function hasSentimentData()
+ {
+ return isset($this->sentiment_data);
+ }
+
+ public function clearSentimentData()
+ {
+ unset($this->sentiment_data);
+ }
+
+ /**
+ * Data specifying sentiment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment_data = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SentimentData $var
+ * @return $this
+ */
+ public function setSentimentData($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SentimentData::class);
+ $this->sentiment_data = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSilence.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSilence.php
new file mode 100644
index 000000000000..859ffc656498
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationLevelSilence.php
@@ -0,0 +1,111 @@
+google.cloud.contactcenterinsights.v1.ConversationLevelSilence
+ */
+class ConversationLevelSilence extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Amount of time calculated to be in silence.
+ *
+ * Generated from protobuf field .google.protobuf.Duration silence_duration = 1;
+ */
+ protected $silence_duration = null;
+ /**
+ * Percentage of the total conversation spent in silence.
+ *
+ * Generated from protobuf field float silence_percentage = 2;
+ */
+ protected $silence_percentage = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Duration $silence_duration
+ * Amount of time calculated to be in silence.
+ * @type float $silence_percentage
+ * Percentage of the total conversation spent in silence.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Amount of time calculated to be in silence.
+ *
+ * Generated from protobuf field .google.protobuf.Duration silence_duration = 1;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getSilenceDuration()
+ {
+ return $this->silence_duration;
+ }
+
+ public function hasSilenceDuration()
+ {
+ return isset($this->silence_duration);
+ }
+
+ public function clearSilenceDuration()
+ {
+ unset($this->silence_duration);
+ }
+
+ /**
+ * Amount of time calculated to be in silence.
+ *
+ * Generated from protobuf field .google.protobuf.Duration silence_duration = 1;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setSilenceDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->silence_duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * Percentage of the total conversation spent in silence.
+ *
+ * Generated from protobuf field float silence_percentage = 2;
+ * @return float
+ */
+ public function getSilencePercentage()
+ {
+ return $this->silence_percentage;
+ }
+
+ /**
+ * Percentage of the total conversation spent in silence.
+ *
+ * Generated from protobuf field float silence_percentage = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setSilencePercentage($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->silence_percentage = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant.php
new file mode 100644
index 000000000000..88a7157efd55
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant.php
@@ -0,0 +1,226 @@
+google.cloud.contactcenterinsights.v1.ConversationParticipant
+ */
+class ConversationParticipant extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Deprecated. Use `dialogflow_participant_name` instead.
+ * The name of the Dialogflow participant. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ *
+ * Generated from protobuf field string dialogflow_participant = 1 [deprecated = true];
+ * @deprecated
+ */
+ protected $dialogflow_participant = '';
+ /**
+ * Obfuscated user ID from Dialogflow.
+ *
+ * Generated from protobuf field string obfuscated_external_user_id = 3;
+ */
+ protected $obfuscated_external_user_id = '';
+ /**
+ * The role of the participant.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role = 2;
+ */
+ protected $role = 0;
+ protected $participant;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $dialogflow_participant_name
+ * The name of the participant provided by Dialogflow. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ * @type string $user_id
+ * A user-specified ID representing the participant.
+ * @type string $dialogflow_participant
+ * Deprecated. Use `dialogflow_participant_name` instead.
+ * The name of the Dialogflow participant. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ * @type string $obfuscated_external_user_id
+ * Obfuscated user ID from Dialogflow.
+ * @type int $role
+ * The role of the participant.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The name of the participant provided by Dialogflow. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ *
+ * Generated from protobuf field string dialogflow_participant_name = 5 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getDialogflowParticipantName()
+ {
+ return $this->readOneof(5);
+ }
+
+ public function hasDialogflowParticipantName()
+ {
+ return $this->hasOneof(5);
+ }
+
+ /**
+ * The name of the participant provided by Dialogflow. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ *
+ * Generated from protobuf field string dialogflow_participant_name = 5 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setDialogflowParticipantName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(5, $var);
+
+ return $this;
+ }
+
+ /**
+ * A user-specified ID representing the participant.
+ *
+ * Generated from protobuf field string user_id = 6;
+ * @return string
+ */
+ public function getUserId()
+ {
+ return $this->readOneof(6);
+ }
+
+ public function hasUserId()
+ {
+ return $this->hasOneof(6);
+ }
+
+ /**
+ * A user-specified ID representing the participant.
+ *
+ * Generated from protobuf field string user_id = 6;
+ * @param string $var
+ * @return $this
+ */
+ public function setUserId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(6, $var);
+
+ return $this;
+ }
+
+ /**
+ * Deprecated. Use `dialogflow_participant_name` instead.
+ * The name of the Dialogflow participant. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ *
+ * Generated from protobuf field string dialogflow_participant = 1 [deprecated = true];
+ * @return string
+ * @deprecated
+ */
+ public function getDialogflowParticipant()
+ {
+ @trigger_error('dialogflow_participant is deprecated.', E_USER_DEPRECATED);
+ return $this->dialogflow_participant;
+ }
+
+ /**
+ * Deprecated. Use `dialogflow_participant_name` instead.
+ * The name of the Dialogflow participant. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ *
+ * Generated from protobuf field string dialogflow_participant = 1 [deprecated = true];
+ * @param string $var
+ * @return $this
+ * @deprecated
+ */
+ public function setDialogflowParticipant($var)
+ {
+ @trigger_error('dialogflow_participant is deprecated.', E_USER_DEPRECATED);
+ GPBUtil::checkString($var, True);
+ $this->dialogflow_participant = $var;
+
+ return $this;
+ }
+
+ /**
+ * Obfuscated user ID from Dialogflow.
+ *
+ * Generated from protobuf field string obfuscated_external_user_id = 3;
+ * @return string
+ */
+ public function getObfuscatedExternalUserId()
+ {
+ return $this->obfuscated_external_user_id;
+ }
+
+ /**
+ * Obfuscated user ID from Dialogflow.
+ *
+ * Generated from protobuf field string obfuscated_external_user_id = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setObfuscatedExternalUserId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->obfuscated_external_user_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The role of the participant.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role = 2;
+ * @return int
+ */
+ public function getRole()
+ {
+ return $this->role;
+ }
+
+ /**
+ * The role of the participant.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setRole($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant\Role::class);
+ $this->role = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getParticipant()
+ {
+ return $this->whichOneof("participant");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant/Role.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant/Role.php
new file mode 100644
index 000000000000..e90baab44257
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationParticipant/Role.php
@@ -0,0 +1,78 @@
+google.cloud.contactcenterinsights.v1.ConversationParticipant.Role
+ */
+class Role
+{
+ /**
+ * Participant's role is not set.
+ *
+ * Generated from protobuf enum ROLE_UNSPECIFIED = 0;
+ */
+ const ROLE_UNSPECIFIED = 0;
+ /**
+ * Participant is a human agent.
+ *
+ * Generated from protobuf enum HUMAN_AGENT = 1;
+ */
+ const HUMAN_AGENT = 1;
+ /**
+ * Participant is an automated agent.
+ *
+ * Generated from protobuf enum AUTOMATED_AGENT = 2;
+ */
+ const AUTOMATED_AGENT = 2;
+ /**
+ * Participant is an end user who conversed with the contact center.
+ *
+ * Generated from protobuf enum END_USER = 3;
+ */
+ const END_USER = 3;
+ /**
+ * Participant is either a human or automated agent.
+ *
+ * Generated from protobuf enum ANY_AGENT = 4;
+ */
+ const ANY_AGENT = 4;
+
+ private static $valueToName = [
+ self::ROLE_UNSPECIFIED => 'ROLE_UNSPECIFIED',
+ self::HUMAN_AGENT => 'HUMAN_AGENT',
+ self::AUTOMATED_AGENT => 'AUTOMATED_AGENT',
+ self::END_USER => 'END_USER',
+ self::ANY_AGENT => 'ANY_AGENT',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Role::class, \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant_Role::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationSummarizationSuggestionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationSummarizationSuggestionData.php
new file mode 100644
index 000000000000..d4f5e94ae1eb
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationSummarizationSuggestionData.php
@@ -0,0 +1,265 @@
+google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData
+ */
+class ConversationSummarizationSuggestionData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The summarization content that is concatenated into one string.
+ *
+ * Generated from protobuf field string text = 1;
+ */
+ protected $text = '';
+ /**
+ * The summarization content that is divided into sections. The key is the
+ * section's name and the value is the section's content. There is no
+ * specific format for the key or value.
+ *
+ * Generated from protobuf field map text_sections = 5;
+ */
+ private $text_sections;
+ /**
+ * The confidence score of the summarization.
+ *
+ * Generated from protobuf field float confidence = 2;
+ */
+ protected $confidence = 0.0;
+ /**
+ * A map that contains metadata about the summarization and the document
+ * from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ */
+ private $metadata;
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string answer_record = 4;
+ */
+ protected $answer_record = '';
+ /**
+ * The name of the model that generates this summary.
+ * Format:
+ * projects/{project}/locations/{location}/conversationModels/{conversation_model}
+ *
+ * Generated from protobuf field string conversation_model = 6;
+ */
+ protected $conversation_model = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $text
+ * The summarization content that is concatenated into one string.
+ * @type array|\Google\Protobuf\Internal\MapField $text_sections
+ * The summarization content that is divided into sections. The key is the
+ * section's name and the value is the section's content. There is no
+ * specific format for the key or value.
+ * @type float $confidence
+ * The confidence score of the summarization.
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * A map that contains metadata about the summarization and the document
+ * from which it originates.
+ * @type string $answer_record
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ * @type string $conversation_model
+ * The name of the model that generates this summary.
+ * Format:
+ * projects/{project}/locations/{location}/conversationModels/{conversation_model}
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The summarization content that is concatenated into one string.
+ *
+ * Generated from protobuf field string text = 1;
+ * @return string
+ */
+ public function getText()
+ {
+ return $this->text;
+ }
+
+ /**
+ * The summarization content that is concatenated into one string.
+ *
+ * Generated from protobuf field string text = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setText($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->text = $var;
+
+ return $this;
+ }
+
+ /**
+ * The summarization content that is divided into sections. The key is the
+ * section's name and the value is the section's content. There is no
+ * specific format for the key or value.
+ *
+ * Generated from protobuf field map text_sections = 5;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getTextSections()
+ {
+ return $this->text_sections;
+ }
+
+ /**
+ * The summarization content that is divided into sections. The key is the
+ * section's name and the value is the section's content. There is no
+ * specific format for the key or value.
+ *
+ * Generated from protobuf field map text_sections = 5;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setTextSections($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->text_sections = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The confidence score of the summarization.
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @return float
+ */
+ public function getConfidence()
+ {
+ return $this->confidence;
+ }
+
+ /**
+ * The confidence score of the summarization.
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidence($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence = $var;
+
+ return $this;
+ }
+
+ /**
+ * A map that contains metadata about the summarization and the document
+ * from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * A map that contains metadata about the summarization and the document
+ * from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string answer_record = 4;
+ * @return string
+ */
+ public function getAnswerRecord()
+ {
+ return $this->answer_record;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string answer_record = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setAnswerRecord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->answer_record = $var;
+
+ return $this;
+ }
+
+ /**
+ * The name of the model that generates this summary.
+ * Format:
+ * projects/{project}/locations/{location}/conversationModels/{conversation_model}
+ *
+ * Generated from protobuf field string conversation_model = 6;
+ * @return string
+ */
+ public function getConversationModel()
+ {
+ return $this->conversation_model;
+ }
+
+ /**
+ * The name of the model that generates this summary.
+ * Format:
+ * projects/{project}/locations/{location}/conversationModels/{conversation_model}
+ *
+ * Generated from protobuf field string conversation_model = 6;
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationModel($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation_model = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationView.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationView.php
new file mode 100644
index 000000000000..de0d08f51b29
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ConversationView.php
@@ -0,0 +1,63 @@
+google.cloud.contactcenterinsights.v1.ConversationView
+ */
+class ConversationView
+{
+ /**
+ * The conversation view is not specified.
+ * * Defaults to `FULL` in `GetConversationRequest`.
+ * * Defaults to `BASIC` in `ListConversationsRequest`.
+ *
+ * Generated from protobuf enum CONVERSATION_VIEW_UNSPECIFIED = 0;
+ */
+ const CONVERSATION_VIEW_UNSPECIFIED = 0;
+ /**
+ * Populates all fields in the conversation.
+ *
+ * Generated from protobuf enum FULL = 2;
+ */
+ const FULL = 2;
+ /**
+ * Populates all fields in the conversation except the transcript.
+ *
+ * Generated from protobuf enum BASIC = 1;
+ */
+ const BASIC = 1;
+
+ private static $valueToName = [
+ self::CONVERSATION_VIEW_UNSPECIFIED => 'CONVERSATION_VIEW_UNSPECIFIED',
+ self::FULL => 'FULL',
+ self::BASIC => 'BASIC',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisOperationMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisOperationMetadata.php
new file mode 100644
index 000000000000..7afe57a43f92
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisOperationMetadata.php
@@ -0,0 +1,199 @@
+google.cloud.contactcenterinsights.v1.CreateAnalysisOperationMetadata
+ */
+class CreateAnalysisOperationMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The Conversation that this Analysis Operation belongs to.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ */
+ protected $conversation = '';
+ /**
+ * Output only. The annotator selector used for the analysis (if any).
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $annotator_selector = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type string $conversation
+ * Output only. The Conversation that this Analysis Operation belongs to.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $annotator_selector
+ * Output only. The annotator selector used for the analysis (if any).
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The Conversation that this Analysis Operation belongs to.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ /**
+ * Output only. The Conversation that this Analysis Operation belongs to.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The annotator selector used for the analysis (if any).
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector|null
+ */
+ public function getAnnotatorSelector()
+ {
+ return $this->annotator_selector;
+ }
+
+ public function hasAnnotatorSelector()
+ {
+ return isset($this->annotator_selector);
+ }
+
+ public function clearAnnotatorSelector()
+ {
+ unset($this->annotator_selector);
+ }
+
+ /**
+ * Output only. The annotator selector used for the analysis (if any).
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $var
+ * @return $this
+ */
+ public function setAnnotatorSelector($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector::class);
+ $this->annotator_selector = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRequest.php
new file mode 100644
index 000000000000..08fb29f0ae68
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRequest.php
@@ -0,0 +1,127 @@
+google.cloud.contactcenterinsights.v1.CreateAnalysisRequest
+ */
+class CreateAnalysisRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the analysis.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The analysis to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis analysis = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $analysis = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the analysis. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\Analysis $analysis Required. The analysis to create.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateAnalysisRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\Analysis $analysis): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setAnalysis($analysis);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the analysis.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Analysis $analysis
+ * Required. The analysis to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the analysis.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the analysis.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The analysis to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis analysis = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Analysis|null
+ */
+ public function getAnalysis()
+ {
+ return $this->analysis;
+ }
+
+ public function hasAnalysis()
+ {
+ return isset($this->analysis);
+ }
+
+ public function clearAnalysis()
+ {
+ unset($this->analysis);
+ }
+
+ /**
+ * Required. The analysis to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Analysis analysis = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Analysis $var
+ * @return $this
+ */
+ public function setAnalysis($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Analysis::class);
+ $this->analysis = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRuleRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRuleRequest.php
new file mode 100644
index 000000000000..21a929607024
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateAnalysisRuleRequest.php
@@ -0,0 +1,143 @@
+google.cloud.contactcenterinsights.v1.CreateAnalysisRuleRequest
+ */
+class CreateAnalysisRuleRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the analysis rule. Required. The location
+ * to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The analysis rule resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $analysis_rule = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the analysis rule. Required. The location
+ * to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysisRule Required. The analysis rule resource to create.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateAnalysisRuleRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysisRule): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setAnalysisRule($analysisRule);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the analysis rule. Required. The location
+ * to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysis_rule
+ * Required. The analysis rule resource to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the analysis rule. Required. The location
+ * to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the analysis rule. Required. The location
+ * to create a analysis rule for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The analysis rule resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnalysisRule|null
+ */
+ public function getAnalysisRule()
+ {
+ return $this->analysis_rule;
+ }
+
+ public function hasAnalysisRule()
+ {
+ return isset($this->analysis_rule);
+ }
+
+ public function clearAnalysisRule()
+ {
+ unset($this->analysis_rule);
+ }
+
+ /**
+ * Required. The analysis rule resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $var
+ * @return $this
+ */
+ public function setAnalysisRule($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnalysisRule::class);
+ $this->analysis_rule = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateConversationRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateConversationRequest.php
new file mode 100644
index 000000000000..b0ee61eaae6c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateConversationRequest.php
@@ -0,0 +1,184 @@
+google.cloud.contactcenterinsights.v1.CreateConversationRequest
+ */
+class CreateConversationRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $conversation = null;
+ /**
+ * A unique ID for the new conversation. This ID will become the final
+ * component of the conversation's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3;
+ */
+ protected $conversation_id = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the conversation. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation Required. The conversation resource to create.
+ * @param string $conversationId A unique ID for the new conversation. This ID will become the final
+ * component of the conversation's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ *
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateConversationRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation, string $conversationId): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setConversation($conversation)
+ ->setConversationId($conversationId);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the conversation.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation
+ * Required. The conversation resource to create.
+ * @type string $conversation_id
+ * A unique ID for the new conversation. This ID will become the final
+ * component of the conversation's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation|null
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ public function hasConversation()
+ {
+ return isset($this->conversation);
+ }
+
+ public function clearConversation()
+ {
+ unset($this->conversation);
+ }
+
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation::class);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * A unique ID for the new conversation. This ID will become the final
+ * component of the conversation's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3;
+ * @return string
+ */
+ public function getConversationId()
+ {
+ return $this->conversation_id;
+ }
+
+ /**
+ * A unique ID for the new conversation. This ID will become the final
+ * component of the conversation's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation_id = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateFeedbackLabelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateFeedbackLabelRequest.php
new file mode 100644
index 000000000000..50a5c0c2082c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateFeedbackLabelRequest.php
@@ -0,0 +1,168 @@
+google.cloud.contactcenterinsights.v1.CreateFeedbackLabelRequest
+ */
+class CreateFeedbackLabelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the feedback label.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The ID of the feedback label to create.
+ * If one is not specified it will be generated by the server.
+ *
+ * Generated from protobuf field string feedback_label_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $feedback_label_id = '';
+ /**
+ * Required. The feedback label to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 3 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $feedback_label = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the feedback label. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedbackLabel Required. The feedback label to create.
+ * @param string $feedbackLabelId Optional. The ID of the feedback label to create.
+ * If one is not specified it will be generated by the server.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateFeedbackLabelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedbackLabel, string $feedbackLabelId): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setFeedbackLabel($feedbackLabel)
+ ->setFeedbackLabelId($feedbackLabelId);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the feedback label.
+ * @type string $feedback_label_id
+ * Optional. The ID of the feedback label to create.
+ * If one is not specified it will be generated by the server.
+ * @type \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedback_label
+ * Required. The feedback label to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the feedback label.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the feedback label.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The ID of the feedback label to create.
+ * If one is not specified it will be generated by the server.
+ *
+ * Generated from protobuf field string feedback_label_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getFeedbackLabelId()
+ {
+ return $this->feedback_label_id;
+ }
+
+ /**
+ * Optional. The ID of the feedback label to create.
+ * If one is not specified it will be generated by the server.
+ *
+ * Generated from protobuf field string feedback_label_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setFeedbackLabelId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->feedback_label_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The feedback label to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 3 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel|null
+ */
+ public function getFeedbackLabel()
+ {
+ return $this->feedback_label;
+ }
+
+ public function hasFeedbackLabel()
+ {
+ return isset($this->feedback_label);
+ }
+
+ public function clearFeedbackLabel()
+ {
+ unset($this->feedback_label);
+ }
+
+ /**
+ * Required. The feedback label to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 3 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $var
+ * @return $this
+ */
+ public function setFeedbackLabel($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel::class);
+ $this->feedback_label = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelMetadata.php
new file mode 100644
index 000000000000..17845309a6c8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.CreateIssueModelMetadata
+ */
+class CreateIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * The original request for creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CreateIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\CreateIssueModelRequest $request
+ * The original request for creation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CreateIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.CreateIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\CreateIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\CreateIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelRequest.php
new file mode 100644
index 000000000000..8b1409a079c1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateIssueModelRequest.php
@@ -0,0 +1,127 @@
+google.cloud.contactcenterinsights.v1.CreateIssueModelRequest
+ */
+class CreateIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The issue model to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $issue_model = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the issue model. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModel $issueModel Required. The issue model to create.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\IssueModel $issueModel): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setIssueModel($issueModel);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the issue model.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModel $issue_model
+ * Required. The issue model to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The issue model to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModel|null
+ */
+ public function getIssueModel()
+ {
+ return $this->issue_model;
+ }
+
+ public function hasIssueModel()
+ {
+ return isset($this->issue_model);
+ }
+
+ public function clearIssueModel()
+ {
+ unset($this->issue_model);
+ }
+
+ /**
+ * Required. The issue model to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModel $var
+ * @return $this
+ */
+ public function setIssueModel($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModel::class);
+ $this->issue_model = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreatePhraseMatcherRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreatePhraseMatcherRequest.php
new file mode 100644
index 000000000000..e92bfabbf423
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreatePhraseMatcherRequest.php
@@ -0,0 +1,142 @@
+google.cloud.contactcenterinsights.v1.CreatePhraseMatcherRequest
+ */
+class CreatePhraseMatcherRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the phrase matcher. Required. The location
+ * to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The phrase matcher resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $phrase_matcher = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the phrase matcher. Required. The location
+ * to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phraseMatcher Required. The phrase matcher resource to create.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreatePhraseMatcherRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phraseMatcher): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setPhraseMatcher($phraseMatcher);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the phrase matcher. Required. The location
+ * to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`
+ * @type \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phrase_matcher
+ * Required. The phrase matcher resource to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the phrase matcher. Required. The location
+ * to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the phrase matcher. Required. The location
+ * to create a phrase matcher for. Format: `projects//locations/` or `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The phrase matcher resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher|null
+ */
+ public function getPhraseMatcher()
+ {
+ return $this->phrase_matcher;
+ }
+
+ public function hasPhraseMatcher()
+ {
+ return isset($this->phrase_matcher);
+ }
+
+ public function clearPhraseMatcher()
+ {
+ unset($this->phrase_matcher);
+ }
+
+ /**
+ * Required. The phrase matcher resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $var
+ * @return $this
+ */
+ public function setPhraseMatcher($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher::class);
+ $this->phrase_matcher = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaQuestionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaQuestionRequest.php
new file mode 100644
index 000000000000..31601d96bdd5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaQuestionRequest.php
@@ -0,0 +1,184 @@
+google.cloud.contactcenterinsights.v1.CreateQaQuestionRequest
+ */
+class CreateQaQuestionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the QaQuestion.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The QaQuestion to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $qa_question = null;
+ /**
+ * Optional. A unique ID for the new question. This ID will become the final
+ * component of the question's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_question_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_question_id = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the QaQuestion. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardRevisionName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion $qaQuestion Required. The QaQuestion to create.
+ * @param string $qaQuestionId Optional. A unique ID for the new question. This ID will become the final
+ * component of the question's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ *
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateQaQuestionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\QaQuestion $qaQuestion, string $qaQuestionId): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setQaQuestion($qaQuestion)
+ ->setQaQuestionId($qaQuestionId);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the QaQuestion.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaQuestion $qa_question
+ * Required. The QaQuestion to create.
+ * @type string $qa_question_id
+ * Optional. A unique ID for the new question. This ID will become the final
+ * component of the question's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the QaQuestion.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the QaQuestion.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The QaQuestion to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaQuestion|null
+ */
+ public function getQaQuestion()
+ {
+ return $this->qa_question;
+ }
+
+ public function hasQaQuestion()
+ {
+ return isset($this->qa_question);
+ }
+
+ public function clearQaQuestion()
+ {
+ unset($this->qa_question);
+ }
+
+ /**
+ * Required. The QaQuestion to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion $var
+ * @return $this
+ */
+ public function setQaQuestion($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaQuestion::class);
+ $this->qa_question = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A unique ID for the new question. This ID will become the final
+ * component of the question's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_question_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaQuestionId()
+ {
+ return $this->qa_question_id;
+ }
+
+ /**
+ * Optional. A unique ID for the new question. This ID will become the final
+ * component of the question's resource name. If no ID is specified, a
+ * server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_question_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaQuestionId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_question_id = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRequest.php
new file mode 100644
index 000000000000..e2b75165ff8e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRequest.php
@@ -0,0 +1,184 @@
+google.cloud.contactcenterinsights.v1.CreateQaScorecardRequest
+ */
+class CreateQaScorecardRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the QaScorecard.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The QaScorecard to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $qa_scorecard = null;
+ /**
+ * Optional. A unique ID for the new QaScorecard. This ID will become the
+ * final component of the QaScorecard's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_scorecard_id = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the QaScorecard. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecard $qaScorecard Required. The QaScorecard to create.
+ * @param string $qaScorecardId Optional. A unique ID for the new QaScorecard. This ID will become the
+ * final component of the QaScorecard's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ *
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateQaScorecardRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\QaScorecard $qaScorecard, string $qaScorecardId): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setQaScorecard($qaScorecard)
+ ->setQaScorecardId($qaScorecardId);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the QaScorecard.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaScorecard $qa_scorecard
+ * Required. The QaScorecard to create.
+ * @type string $qa_scorecard_id
+ * Optional. A unique ID for the new QaScorecard. This ID will become the
+ * final component of the QaScorecard's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the QaScorecard.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the QaScorecard.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The QaScorecard to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaScorecard|null
+ */
+ public function getQaScorecard()
+ {
+ return $this->qa_scorecard;
+ }
+
+ public function hasQaScorecard()
+ {
+ return isset($this->qa_scorecard);
+ }
+
+ public function clearQaScorecard()
+ {
+ unset($this->qa_scorecard);
+ }
+
+ /**
+ * Required. The QaScorecard to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecard $var
+ * @return $this
+ */
+ public function setQaScorecard($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecard::class);
+ $this->qa_scorecard = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A unique ID for the new QaScorecard. This ID will become the
+ * final component of the QaScorecard's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaScorecardId()
+ {
+ return $this->qa_scorecard_id;
+ }
+
+ /**
+ * Optional. A unique ID for the new QaScorecard. This ID will become the
+ * final component of the QaScorecard's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaScorecardId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_scorecard_id = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..9a55b26b8168
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateQaScorecardRevisionRequest.php
@@ -0,0 +1,184 @@
+google.cloud.contactcenterinsights.v1.CreateQaScorecardRevisionRequest
+ */
+class CreateQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the QaScorecardRevision.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The QaScorecardRevision to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revision = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $qa_scorecard_revision = null;
+ /**
+ * Optional. A unique ID for the new QaScorecardRevision. This ID will become
+ * the final component of the QaScorecardRevision's resource name. If no ID is
+ * specified, a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_revision_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_scorecard_revision_id = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the QaScorecardRevision. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision $qaScorecardRevision Required. The QaScorecardRevision to create.
+ * @param string $qaScorecardRevisionId Optional. A unique ID for the new QaScorecardRevision. This ID will become
+ * the final component of the QaScorecardRevision's resource name. If no ID is
+ * specified, a server-generated ID will be used.
+ *
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateQaScorecardRevisionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision $qaScorecardRevision, string $qaScorecardRevisionId): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setQaScorecardRevision($qaScorecardRevision)
+ ->setQaScorecardRevisionId($qaScorecardRevisionId);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the QaScorecardRevision.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision $qa_scorecard_revision
+ * Required. The QaScorecardRevision to create.
+ * @type string $qa_scorecard_revision_id
+ * Optional. A unique ID for the new QaScorecardRevision. This ID will become
+ * the final component of the QaScorecardRevision's resource name. If no ID is
+ * specified, a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the QaScorecardRevision.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the QaScorecardRevision.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The QaScorecardRevision to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revision = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision|null
+ */
+ public function getQaScorecardRevision()
+ {
+ return $this->qa_scorecard_revision;
+ }
+
+ public function hasQaScorecardRevision()
+ {
+ return isset($this->qa_scorecard_revision);
+ }
+
+ public function clearQaScorecardRevision()
+ {
+ unset($this->qa_scorecard_revision);
+ }
+
+ /**
+ * Required. The QaScorecardRevision to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revision = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision $var
+ * @return $this
+ */
+ public function setQaScorecardRevision($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision::class);
+ $this->qa_scorecard_revision = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A unique ID for the new QaScorecardRevision. This ID will become
+ * the final component of the QaScorecardRevision's resource name. If no ID is
+ * specified, a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_revision_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaScorecardRevisionId()
+ {
+ return $this->qa_scorecard_revision_id;
+ }
+
+ /**
+ * Optional. A unique ID for the new QaScorecardRevision. This ID will become
+ * the final component of the QaScorecardRevision's resource name. If no ID is
+ * specified, a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`.
+ *
+ * Generated from protobuf field string qa_scorecard_revision_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaScorecardRevisionId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_scorecard_revision_id = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateViewRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateViewRequest.php
new file mode 100644
index 000000000000..f87e03ecb161
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/CreateViewRequest.php
@@ -0,0 +1,142 @@
+google.cloud.contactcenterinsights.v1.CreateViewRequest
+ */
+class CreateViewRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the view. Required. The location to create
+ * a view for.
+ * Format: `projects//locations/` or
+ * `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The view resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $view = null;
+
+ /**
+ * @param string $parent Required. The parent resource of the view. Required. The location to create
+ * a view for.
+ * Format: `projects//locations/` or
+ * `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param \Google\Cloud\ContactCenterInsights\V1\View $view Required. The view resource to create.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\CreateViewRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, \Google\Cloud\ContactCenterInsights\V1\View $view): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setView($view);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the view. Required. The location to create
+ * a view for.
+ * Format: `projects//locations/` or
+ * `projects//locations/`
+ * @type \Google\Cloud\ContactCenterInsights\V1\View $view
+ * Required. The view resource to create.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the view. Required. The location to create
+ * a view for.
+ * Format: `projects//locations/` or
+ * `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the view. Required. The location to create
+ * a view for.
+ * Format: `projects//locations/` or
+ * `projects//locations/`
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The view resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\View|null
+ */
+ public function getView()
+ {
+ return $this->view;
+ }
+
+ public function hasView()
+ {
+ return isset($this->view);
+ }
+
+ public function clearView()
+ {
+ unset($this->view);
+ }
+
+ /**
+ * Required. The view resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\View $var
+ * @return $this
+ */
+ public function setView($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\View::class);
+ $this->view = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DatasetValidationWarning.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DatasetValidationWarning.php
new file mode 100644
index 000000000000..d7e898af1a6f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DatasetValidationWarning.php
@@ -0,0 +1,79 @@
+google.cloud.contactcenterinsights.v1.DatasetValidationWarning
+ */
+class DatasetValidationWarning
+{
+ /**
+ * Unspecified data validation warning.
+ *
+ * Generated from protobuf enum DATASET_VALIDATION_WARNING_UNSPECIFIED = 0;
+ */
+ const DATASET_VALIDATION_WARNING_UNSPECIFIED = 0;
+ /**
+ * A non-trivial percentage of the feedback labels are invalid.
+ *
+ * Generated from protobuf enum TOO_MANY_INVALID_FEEDBACK_LABELS = 1;
+ */
+ const TOO_MANY_INVALID_FEEDBACK_LABELS = 1;
+ /**
+ * The quantity of valid feedback labels provided is less than the
+ * recommended minimum.
+ *
+ * Generated from protobuf enum INSUFFICIENT_FEEDBACK_LABELS = 2;
+ */
+ const INSUFFICIENT_FEEDBACK_LABELS = 2;
+ /**
+ * One or more of the answers have less than the recommended minimum of
+ * feedback labels.
+ *
+ * Generated from protobuf enum INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER = 3;
+ */
+ const INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER = 3;
+ /**
+ * All the labels in the dataset come from a single answer choice.
+ *
+ * Generated from protobuf enum ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER = 4;
+ */
+ const ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER = 4;
+
+ private static $valueToName = [
+ self::DATASET_VALIDATION_WARNING_UNSPECIFIED => 'DATASET_VALIDATION_WARNING_UNSPECIFIED',
+ self::TOO_MANY_INVALID_FEEDBACK_LABELS => 'TOO_MANY_INVALID_FEEDBACK_LABELS',
+ self::INSUFFICIENT_FEEDBACK_LABELS => 'INSUFFICIENT_FEEDBACK_LABELS',
+ self::INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER => 'INSUFFICIENT_FEEDBACK_LABELS_PER_ANSWER',
+ self::ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER => 'ALL_FEEDBACK_LABELS_HAVE_THE_SAME_ANSWER',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRequest.php
new file mode 100644
index 000000000000..b8265d5a574d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteAnalysisRequest
+ */
+class DeleteAnalysisRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the analysis to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the analysis to delete. Please see
+ * {@see ContactCenterInsightsClient::analysisName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteAnalysisRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the analysis to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the analysis to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the analysis to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRuleRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRuleRequest.php
new file mode 100644
index 000000000000..2d693b7c329e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteAnalysisRuleRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteAnalysisRuleRequest
+ */
+class DeleteAnalysisRuleRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the analysis rule to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the analysis rule to delete. Please see
+ * {@see ContactCenterInsightsClient::analysisRuleName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteAnalysisRuleRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the analysis rule to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the analysis rule to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the analysis rule to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteConversationRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteConversationRequest.php
new file mode 100644
index 000000000000..78a161a7339e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteConversationRequest.php
@@ -0,0 +1,123 @@
+google.cloud.contactcenterinsights.v1.DeleteConversationRequest
+ */
+class DeleteConversationRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the conversation to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 2;
+ */
+ protected $force = false;
+
+ /**
+ * @param string $name Required. The name of the conversation to delete. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteConversationRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the conversation to delete.
+ * @type bool $force
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the conversation to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the conversation to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 2;
+ * @return bool
+ */
+ public function getForce()
+ {
+ return $this->force;
+ }
+
+ /**
+ * If set to true, all of this conversation's analyses will also be deleted.
+ * Otherwise, the request will only succeed if the conversation has no
+ * analyses.
+ *
+ * Generated from protobuf field bool force = 2;
+ * @param bool $var
+ * @return $this
+ */
+ public function setForce($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->force = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteFeedbackLabelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteFeedbackLabelRequest.php
new file mode 100644
index 000000000000..cf448a2a09a5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteFeedbackLabelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteFeedbackLabelRequest
+ */
+class DeleteFeedbackLabelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the feedback label to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the feedback label to delete. Please see
+ * {@see ContactCenterInsightsClient::feedbackLabelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteFeedbackLabelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the feedback label to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the feedback label to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the feedback label to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelMetadata.php
new file mode 100644
index 000000000000..87dafed4f5f2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.DeleteIssueModelMetadata
+ */
+class DeleteIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * The original request for deletion.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeleteIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelRequest $request
+ * The original request for deletion.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for deletion.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeleteIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for deletion.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeleteIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelRequest.php
new file mode 100644
index 000000000000..7c7da6389c8d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueModelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteIssueModelRequest
+ */
+class DeleteIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the issue model to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the issue model to delete. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the issue model to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the issue model to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the issue model to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueRequest.php
new file mode 100644
index 000000000000..8096f2bda03b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteIssueRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteIssueRequest
+ */
+class DeleteIssueRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the issue to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the issue to delete. Please see
+ * {@see ContactCenterInsightsClient::issueName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteIssueRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the issue to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the issue to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the issue to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeletePhraseMatcherRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeletePhraseMatcherRequest.php
new file mode 100644
index 000000000000..b3ea8b0caeb4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeletePhraseMatcherRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeletePhraseMatcherRequest
+ */
+class DeletePhraseMatcherRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the phrase matcher to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the phrase matcher to delete. Please see
+ * {@see ContactCenterInsightsClient::phraseMatcherName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeletePhraseMatcherRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the phrase matcher to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the phrase matcher to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the phrase matcher to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaQuestionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaQuestionRequest.php
new file mode 100644
index 000000000000..b7994758c941
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaQuestionRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteQaQuestionRequest
+ */
+class DeleteQaQuestionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaQuestion to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the QaQuestion to delete. Please see
+ * {@see ContactCenterInsightsClient::qaQuestionName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteQaQuestionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaQuestion to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaQuestion to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaQuestion to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRequest.php
new file mode 100644
index 000000000000..ecf15d68b5a5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRequest.php
@@ -0,0 +1,119 @@
+google.cloud.contactcenterinsights.v1.DeleteQaScorecardRequest
+ */
+class DeleteQaScorecardRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecard to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+ /**
+ * Optional. If set to true, all of this QaScorecard's child resources will
+ * also be deleted. Otherwise, the request will only succeed if it has none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $force = false;
+
+ /**
+ * @param string $name Required. The name of the QaScorecard to delete. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteQaScorecardRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecard to delete.
+ * @type bool $force
+ * Optional. If set to true, all of this QaScorecard's child resources will
+ * also be deleted. Otherwise, the request will only succeed if it has none.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecard to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecard to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set to true, all of this QaScorecard's child resources will
+ * also be deleted. Otherwise, the request will only succeed if it has none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getForce()
+ {
+ return $this->force;
+ }
+
+ /**
+ * Optional. If set to true, all of this QaScorecard's child resources will
+ * also be deleted. Otherwise, the request will only succeed if it has none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setForce($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->force = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..f3178e0d913b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteQaScorecardRevisionRequest.php
@@ -0,0 +1,123 @@
+google.cloud.contactcenterinsights.v1.DeleteQaScorecardRevisionRequest
+ */
+class DeleteQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecardRevision to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+ /**
+ * Optional. If set to true, all of this QaScorecardRevision's child resources
+ * will also be deleted. Otherwise, the request will only succeed if it has
+ * none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $force = false;
+
+ /**
+ * @param string $name Required. The name of the QaScorecardRevision to delete. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardRevisionName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteQaScorecardRevisionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecardRevision to delete.
+ * @type bool $force
+ * Optional. If set to true, all of this QaScorecardRevision's child resources
+ * will also be deleted. Otherwise, the request will only succeed if it has
+ * none.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set to true, all of this QaScorecardRevision's child resources
+ * will also be deleted. Otherwise, the request will only succeed if it has
+ * none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getForce()
+ {
+ return $this->force;
+ }
+
+ /**
+ * Optional. If set to true, all of this QaScorecardRevision's child resources
+ * will also be deleted. Otherwise, the request will only succeed if it has
+ * none.
+ *
+ * Generated from protobuf field bool force = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setForce($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->force = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteViewRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteViewRequest.php
new file mode 100644
index 000000000000..2980595cc4e5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeleteViewRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeleteViewRequest
+ */
+class DeleteViewRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the view to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the view to delete. Please see
+ * {@see ContactCenterInsightsClient::viewName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeleteViewRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the view to delete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the view to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the view to delete.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelMetadata.php
new file mode 100644
index 000000000000..b9fc941ac602
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.DeployIssueModelMetadata
+ */
+class DeployIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * The original request for deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeployIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\DeployIssueModelRequest $request
+ * The original request for deployment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeployIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeployIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for deployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DeployIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\DeployIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\DeployIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelRequest.php
new file mode 100644
index 000000000000..05417f098460
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.DeployIssueModelRequest
+ */
+class DeployIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The issue model to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The issue model to deploy. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\DeployIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The issue model to deploy.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The issue model to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The issue model to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelResponse.php
new file mode 100644
index 000000000000..59ac7be188d0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployIssueModelResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.DeployIssueModelResponse
+ */
+class DeployIssueModelResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..9df7d1cefd8f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DeployQaScorecardRevisionRequest.php
@@ -0,0 +1,67 @@
+google.cloud.contactcenterinsights.v1.DeployQaScorecardRevisionRequest
+ */
+class DeployQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecardRevision to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecardRevision to deploy.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to deploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowIntent.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowIntent.php
new file mode 100644
index 000000000000..43c3bee200f3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowIntent.php
@@ -0,0 +1,68 @@
+google.cloud.contactcenterinsights.v1.DialogflowIntent
+ */
+class DialogflowIntent extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 1;
+ */
+ protected $display_name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $display_name
+ * The human-readable name of the intent.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 1;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowInteractionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowInteractionData.php
new file mode 100644
index 000000000000..c651d75b244f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowInteractionData.php
@@ -0,0 +1,109 @@
+google.cloud.contactcenterinsights.v1.DialogflowInteractionData
+ */
+class DialogflowInteractionData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The Dialogflow intent resource path. Format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field string dialogflow_intent_id = 1;
+ */
+ protected $dialogflow_intent_id = '';
+ /**
+ * The confidence of the match ranging from 0.0 (completely uncertain) to 1.0
+ * (completely certain).
+ *
+ * Generated from protobuf field float confidence = 2;
+ */
+ protected $confidence = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $dialogflow_intent_id
+ * The Dialogflow intent resource path. Format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ * @type float $confidence
+ * The confidence of the match ranging from 0.0 (completely uncertain) to 1.0
+ * (completely certain).
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The Dialogflow intent resource path. Format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field string dialogflow_intent_id = 1;
+ * @return string
+ */
+ public function getDialogflowIntentId()
+ {
+ return $this->dialogflow_intent_id;
+ }
+
+ /**
+ * The Dialogflow intent resource path. Format:
+ * projects/{project}/agent/{agent}/intents/{intent}
+ *
+ * Generated from protobuf field string dialogflow_intent_id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setDialogflowIntentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->dialogflow_intent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The confidence of the match ranging from 0.0 (completely uncertain) to 1.0
+ * (completely certain).
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @return float
+ */
+ public function getConfidence()
+ {
+ return $this->confidence;
+ }
+
+ /**
+ * The confidence of the match ranging from 0.0 (completely uncertain) to 1.0
+ * (completely certain).
+ *
+ * Generated from protobuf field float confidence = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidence($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowSource.php
new file mode 100644
index 000000000000..34caa82bc523
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/DialogflowSource.php
@@ -0,0 +1,113 @@
+google.cloud.contactcenterinsights.v1.DialogflowSource
+ */
+class DialogflowSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The name of the Dialogflow conversation that this conversation
+ * resource is derived from. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string dialogflow_conversation = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $dialogflow_conversation = '';
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 3;
+ */
+ protected $audio_uri = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $dialogflow_conversation
+ * Output only. The name of the Dialogflow conversation that this conversation
+ * resource is derived from. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ * @type string $audio_uri
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The name of the Dialogflow conversation that this conversation
+ * resource is derived from. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string dialogflow_conversation = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return string
+ */
+ public function getDialogflowConversation()
+ {
+ return $this->dialogflow_conversation;
+ }
+
+ /**
+ * Output only. The name of the Dialogflow conversation that this conversation
+ * resource is derived from. Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}
+ *
+ * Generated from protobuf field string dialogflow_conversation = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param string $var
+ * @return $this
+ */
+ public function setDialogflowConversation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->dialogflow_conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 3;
+ * @return string
+ */
+ public function getAudioUri()
+ {
+ return $this->audio_uri;
+ }
+
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setAudioUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->audio_uri = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension.php
new file mode 100644
index 000000000000..a6abb3ae6da3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension.php
@@ -0,0 +1,209 @@
+google.cloud.contactcenterinsights.v1.Dimension
+ */
+class Dimension extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The key of the dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.DimensionKey dimension_key = 1;
+ */
+ protected $dimension_key = 0;
+ protected $dimension_metadata;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\Dimension\IssueDimensionMetadata $issue_dimension_metadata
+ * Output only. Metadata about the issue dimension.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Dimension\AgentDimensionMetadata $agent_dimension_metadata
+ * Output only. Metadata about the agent dimension.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionDimensionMetadata $qa_question_dimension_metadata
+ * Output only. Metadata about the QA question dimension.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionAnswerDimensionMetadata $qa_question_answer_dimension_metadata
+ * Output only. Metadata about the QA question-answer dimension.
+ * @type int $dimension_key
+ * The key of the dimension.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. Metadata about the issue dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.IssueDimensionMetadata issue_dimension_metadata = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Dimension\IssueDimensionMetadata|null
+ */
+ public function getIssueDimensionMetadata()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasIssueDimensionMetadata()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Output only. Metadata about the issue dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.IssueDimensionMetadata issue_dimension_metadata = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Dimension\IssueDimensionMetadata $var
+ * @return $this
+ */
+ public function setIssueDimensionMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Dimension\IssueDimensionMetadata::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Output only. Metadata about the agent dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.AgentDimensionMetadata agent_dimension_metadata = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Dimension\AgentDimensionMetadata|null
+ */
+ public function getAgentDimensionMetadata()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasAgentDimensionMetadata()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * Output only. Metadata about the agent dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.AgentDimensionMetadata agent_dimension_metadata = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Dimension\AgentDimensionMetadata $var
+ * @return $this
+ */
+ public function setAgentDimensionMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Dimension\AgentDimensionMetadata::class);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * Output only. Metadata about the QA question dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.QaQuestionDimensionMetadata qa_question_dimension_metadata = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionDimensionMetadata|null
+ */
+ public function getQaQuestionDimensionMetadata()
+ {
+ return $this->readOneof(4);
+ }
+
+ public function hasQaQuestionDimensionMetadata()
+ {
+ return $this->hasOneof(4);
+ }
+
+ /**
+ * Output only. Metadata about the QA question dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.QaQuestionDimensionMetadata qa_question_dimension_metadata = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionDimensionMetadata $var
+ * @return $this
+ */
+ public function setQaQuestionDimensionMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionDimensionMetadata::class);
+ $this->writeOneof(4, $var);
+
+ return $this;
+ }
+
+ /**
+ * Output only. Metadata about the QA question-answer dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.QaQuestionAnswerDimensionMetadata qa_question_answer_dimension_metadata = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionAnswerDimensionMetadata|null
+ */
+ public function getQaQuestionAnswerDimensionMetadata()
+ {
+ return $this->readOneof(5);
+ }
+
+ public function hasQaQuestionAnswerDimensionMetadata()
+ {
+ return $this->hasOneof(5);
+ }
+
+ /**
+ * Output only. Metadata about the QA question-answer dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.QaQuestionAnswerDimensionMetadata qa_question_answer_dimension_metadata = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionAnswerDimensionMetadata $var
+ * @return $this
+ */
+ public function setQaQuestionAnswerDimensionMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Dimension\QaQuestionAnswerDimensionMetadata::class);
+ $this->writeOneof(5, $var);
+
+ return $this;
+ }
+
+ /**
+ * The key of the dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.DimensionKey dimension_key = 1;
+ * @return int
+ */
+ public function getDimensionKey()
+ {
+ return $this->dimension_key;
+ }
+
+ /**
+ * The key of the dimension.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Dimension.DimensionKey dimension_key = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setDimensionKey($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\Dimension\DimensionKey::class);
+ $this->dimension_key = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDimensionMetadata()
+ {
+ return $this->whichOneof("dimension_metadata");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/AgentDimensionMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/AgentDimensionMetadata.php
new file mode 100644
index 000000000000..a399ed72e0ef
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/AgentDimensionMetadata.php
@@ -0,0 +1,138 @@
+google.cloud.contactcenterinsights.v1.Dimension.AgentDimensionMetadata
+ */
+class AgentDimensionMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Optional. A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $agent_id = '';
+ /**
+ * Optional. The agent's name
+ *
+ * Generated from protobuf field string agent_display_name = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $agent_display_name = '';
+ /**
+ * Optional. A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string agent_team = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $agent_team = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $agent_id
+ * Optional. A user-specified string representing the agent.
+ * @type string $agent_display_name
+ * Optional. The agent's name
+ * @type string $agent_team
+ * Optional. A user-specified string representing the agent's team.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Optional. A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getAgentId()
+ {
+ return $this->agent_id;
+ }
+
+ /**
+ * Optional. A user-specified string representing the agent.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The agent's name
+ *
+ * Generated from protobuf field string agent_display_name = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getAgentDisplayName()
+ {
+ return $this->agent_display_name;
+ }
+
+ /**
+ * Optional. The agent's name
+ *
+ * Generated from protobuf field string agent_display_name = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string agent_team = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getAgentTeam()
+ {
+ return $this->agent_team;
+ }
+
+ /**
+ * Optional. A user-specified string representing the agent's team.
+ *
+ * Generated from protobuf field string agent_team = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentTeam($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_team = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AgentDimensionMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Dimension_AgentDimensionMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/DimensionKey.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/DimensionKey.php
new file mode 100644
index 000000000000..1e7301b366f3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/DimensionKey.php
@@ -0,0 +1,99 @@
+google.cloud.contactcenterinsights.v1.Dimension.DimensionKey
+ */
+class DimensionKey
+{
+ /**
+ * The key of the dimension is unspecified.
+ *
+ * Generated from protobuf enum DIMENSION_KEY_UNSPECIFIED = 0;
+ */
+ const DIMENSION_KEY_UNSPECIFIED = 0;
+ /**
+ * The dimension is keyed by issues.
+ *
+ * Generated from protobuf enum ISSUE = 1;
+ */
+ const ISSUE = 1;
+ /**
+ * The dimension is keyed by agents.
+ *
+ * Generated from protobuf enum AGENT = 2;
+ */
+ const AGENT = 2;
+ /**
+ * The dimension is keyed by agent teams.
+ *
+ * Generated from protobuf enum AGENT_TEAM = 3;
+ */
+ const AGENT_TEAM = 3;
+ /**
+ * The dimension is keyed by QaQuestionIds.
+ * Note that: We only group by the QuestionId and not the revision-id of the
+ * scorecard this question is a part of. This allows for showing stats for
+ * the same question across different scorecard revisions.
+ *
+ * Generated from protobuf enum QA_QUESTION_ID = 4;
+ */
+ const QA_QUESTION_ID = 4;
+ /**
+ * The dimension is keyed by QaQuestionIds-Answer value pairs.
+ * Note that: We only group by the QuestionId and not the revision-id of the
+ * scorecard this question is a part of. This allows for showing
+ * distribution of answers per question across different scorecard
+ * revisions.
+ *
+ * Generated from protobuf enum QA_QUESTION_ANSWER_VALUE = 5;
+ */
+ const QA_QUESTION_ANSWER_VALUE = 5;
+ /**
+ * The dimension is keyed by the conversation profile ID.
+ *
+ * Generated from protobuf enum CONVERSATION_PROFILE_ID = 6;
+ */
+ const CONVERSATION_PROFILE_ID = 6;
+
+ private static $valueToName = [
+ self::DIMENSION_KEY_UNSPECIFIED => 'DIMENSION_KEY_UNSPECIFIED',
+ self::ISSUE => 'ISSUE',
+ self::AGENT => 'AGENT',
+ self::AGENT_TEAM => 'AGENT_TEAM',
+ self::QA_QUESTION_ID => 'QA_QUESTION_ID',
+ self::QA_QUESTION_ANSWER_VALUE => 'QA_QUESTION_ANSWER_VALUE',
+ self::CONVERSATION_PROFILE_ID => 'CONVERSATION_PROFILE_ID',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(DimensionKey::class, \Google\Cloud\ContactCenterInsights\V1\Dimension_DimensionKey::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/IssueDimensionMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/IssueDimensionMetadata.php
new file mode 100644
index 000000000000..de16f37d96e0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/IssueDimensionMetadata.php
@@ -0,0 +1,138 @@
+google.cloud.contactcenterinsights.v1.Dimension.IssueDimensionMetadata
+ */
+class IssueDimensionMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The issue ID.
+ *
+ * Generated from protobuf field string issue_id = 1 [(.google.api.resource_reference) = {
+ */
+ protected $issue_id = '';
+ /**
+ * The issue display name.
+ *
+ * Generated from protobuf field string issue_display_name = 2;
+ */
+ protected $issue_display_name = '';
+ /**
+ * The parent issue model ID.
+ *
+ * Generated from protobuf field string issue_model_id = 3 [(.google.api.resource_reference) = {
+ */
+ protected $issue_model_id = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $issue_id
+ * The issue ID.
+ * @type string $issue_display_name
+ * The issue display name.
+ * @type string $issue_model_id
+ * The parent issue model ID.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The issue ID.
+ *
+ * Generated from protobuf field string issue_id = 1 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getIssueId()
+ {
+ return $this->issue_id;
+ }
+
+ /**
+ * The issue ID.
+ *
+ * Generated from protobuf field string issue_id = 1 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setIssueId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The issue display name.
+ *
+ * Generated from protobuf field string issue_display_name = 2;
+ * @return string
+ */
+ public function getIssueDisplayName()
+ {
+ return $this->issue_display_name;
+ }
+
+ /**
+ * The issue display name.
+ *
+ * Generated from protobuf field string issue_display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setIssueDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue_display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The parent issue model ID.
+ *
+ * Generated from protobuf field string issue_model_id = 3 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getIssueModelId()
+ {
+ return $this->issue_model_id;
+ }
+
+ /**
+ * The parent issue model ID.
+ *
+ * Generated from protobuf field string issue_model_id = 3 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setIssueModelId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue_model_id = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(IssueDimensionMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Dimension_IssueDimensionMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionAnswerDimensionMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionAnswerDimensionMetadata.php
new file mode 100644
index 000000000000..29adc05c82f8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionAnswerDimensionMetadata.php
@@ -0,0 +1,174 @@
+google.cloud.contactcenterinsights.v1.Dimension.QaQuestionAnswerDimensionMetadata
+ */
+class QaQuestionAnswerDimensionMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_scorecard_id = '';
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_question_id = '';
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $question_body = '';
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string answer_value = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $answer_value = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $qa_scorecard_id
+ * Optional. The QA scorecard ID.
+ * @type string $qa_question_id
+ * Optional. The QA question ID.
+ * @type string $question_body
+ * Optional. The full body of the question.
+ * @type string $answer_value
+ * Optional. The full body of the question.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaScorecardId()
+ {
+ return $this->qa_scorecard_id;
+ }
+
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaScorecardId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_scorecard_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaQuestionId()
+ {
+ return $this->qa_question_id;
+ }
+
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaQuestionId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_question_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQuestionBody()
+ {
+ return $this->question_body;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestionBody($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question_body = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string answer_value = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getAnswerValue()
+ {
+ return $this->answer_value;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string answer_value = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setAnswerValue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->answer_value = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaQuestionAnswerDimensionMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Dimension_QaQuestionAnswerDimensionMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionDimensionMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionDimensionMetadata.php
new file mode 100644
index 000000000000..5a0fb45bb016
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Dimension/QaQuestionDimensionMetadata.php
@@ -0,0 +1,138 @@
+google.cloud.contactcenterinsights.v1.Dimension.QaQuestionDimensionMetadata
+ */
+class QaQuestionDimensionMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_scorecard_id = '';
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $qa_question_id = '';
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $question_body = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $qa_scorecard_id
+ * Optional. The QA scorecard ID.
+ * @type string $qa_question_id
+ * Optional. The QA question ID.
+ * @type string $question_body
+ * Optional. The full body of the question.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaScorecardId()
+ {
+ return $this->qa_scorecard_id;
+ }
+
+ /**
+ * Optional. The QA scorecard ID.
+ *
+ * Generated from protobuf field string qa_scorecard_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaScorecardId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_scorecard_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQaQuestionId()
+ {
+ return $this->qa_question_id;
+ }
+
+ /**
+ * Optional. The QA question ID.
+ *
+ * Generated from protobuf field string qa_question_id = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQaQuestionId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_question_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getQuestionBody()
+ {
+ return $this->question_body;
+ }
+
+ /**
+ * Optional. The full body of the question.
+ *
+ * Generated from protobuf field string question_body = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestionBody($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question_body = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaQuestionDimensionMetadata::class, \Google\Cloud\ContactCenterInsights\V1\Dimension_QaQuestionDimensionMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EncryptionSpec.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EncryptionSpec.php
new file mode 100644
index 000000000000..a91fa3437b17
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EncryptionSpec.php
@@ -0,0 +1,126 @@
+google.cloud.contactcenterinsights.v1.EncryptionSpec
+ */
+class EncryptionSpec extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the encryption key specification resource.
+ * Format:
+ * projects/{project}/locations/{location}/encryptionSpec
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * Required. The name of customer-managed encryption key that is used to
+ * secure a resource and its sub-resources. If empty, the resource is secured
+ * by our default encryption key. Only the key in the same location as this
+ * resource is allowed to be used for encryption. Format:
+ * `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`
+ *
+ * Generated from protobuf field string kms_key = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $kms_key = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the encryption key specification resource.
+ * Format:
+ * projects/{project}/locations/{location}/encryptionSpec
+ * @type string $kms_key
+ * Required. The name of customer-managed encryption key that is used to
+ * secure a resource and its sub-resources. If empty, the resource is secured
+ * by our default encryption key. Only the key in the same location as this
+ * resource is allowed to be used for encryption. Format:
+ * `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the encryption key specification resource.
+ * Format:
+ * projects/{project}/locations/{location}/encryptionSpec
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the encryption key specification resource.
+ * Format:
+ * projects/{project}/locations/{location}/encryptionSpec
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The name of customer-managed encryption key that is used to
+ * secure a resource and its sub-resources. If empty, the resource is secured
+ * by our default encryption key. Only the key in the same location as this
+ * resource is allowed to be used for encryption. Format:
+ * `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`
+ *
+ * Generated from protobuf field string kms_key = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getKmsKey()
+ {
+ return $this->kms_key;
+ }
+
+ /**
+ * Required. The name of customer-managed encryption key that is used to
+ * secure a resource and its sub-resources. If empty, the resource is secured
+ * by our default encryption key. Only the key in the same location as this
+ * resource is allowed to be used for encryption. Format:
+ * `projects/{project}/locations/{location}/keyRings/{keyRing}/cryptoKeys/{key}`
+ *
+ * Generated from protobuf field string kms_key = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setKmsKey($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->kms_key = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity.php
new file mode 100644
index 000000000000..0d8782c3a647
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity.php
@@ -0,0 +1,243 @@
+google.cloud.contactcenterinsights.v1.Entity
+ */
+class Entity extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The representative name for the entity.
+ *
+ * Generated from protobuf field string display_name = 1;
+ */
+ protected $display_name = '';
+ /**
+ * The entity type.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Entity.Type type = 2;
+ */
+ protected $type = 0;
+ /**
+ * Metadata associated with the entity.
+ * For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`)
+ * and Knowledge Graph MID (`mid`), if they are available. For the metadata
+ * associated with other entity types, see the Type table below.
+ *
+ * Generated from protobuf field map metadata = 3;
+ */
+ private $metadata;
+ /**
+ * The salience score associated with the entity in the [0, 1.0] range.
+ * The salience score for an entity provides information about the
+ * importance or centrality of that entity to the entire document text.
+ * Scores closer to 0 are less salient, while scores closer to 1.0 are highly
+ * salient.
+ *
+ * Generated from protobuf field float salience = 4;
+ */
+ protected $salience = 0.0;
+ /**
+ * The aggregate sentiment expressed for this entity in the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 5;
+ */
+ protected $sentiment = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $display_name
+ * The representative name for the entity.
+ * @type int $type
+ * The entity type.
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * Metadata associated with the entity.
+ * For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`)
+ * and Knowledge Graph MID (`mid`), if they are available. For the metadata
+ * associated with other entity types, see the Type table below.
+ * @type float $salience
+ * The salience score associated with the entity in the [0, 1.0] range.
+ * The salience score for an entity provides information about the
+ * importance or centrality of that entity to the entire document text.
+ * Scores closer to 0 are less salient, while scores closer to 1.0 are highly
+ * salient.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SentimentData $sentiment
+ * The aggregate sentiment expressed for this entity in the conversation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The representative name for the entity.
+ *
+ * Generated from protobuf field string display_name = 1;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The representative name for the entity.
+ *
+ * Generated from protobuf field string display_name = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The entity type.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Entity.Type type = 2;
+ * @return int
+ */
+ public function getType()
+ {
+ return $this->type;
+ }
+
+ /**
+ * The entity type.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Entity.Type type = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\Entity\Type::class);
+ $this->type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Metadata associated with the entity.
+ * For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`)
+ * and Knowledge Graph MID (`mid`), if they are available. For the metadata
+ * associated with other entity types, see the Type table below.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * Metadata associated with the entity.
+ * For most entity types, the metadata is a Wikipedia URL (`wikipedia_url`)
+ * and Knowledge Graph MID (`mid`), if they are available. For the metadata
+ * associated with other entity types, see the Type table below.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The salience score associated with the entity in the [0, 1.0] range.
+ * The salience score for an entity provides information about the
+ * importance or centrality of that entity to the entire document text.
+ * Scores closer to 0 are less salient, while scores closer to 1.0 are highly
+ * salient.
+ *
+ * Generated from protobuf field float salience = 4;
+ * @return float
+ */
+ public function getSalience()
+ {
+ return $this->salience;
+ }
+
+ /**
+ * The salience score associated with the entity in the [0, 1.0] range.
+ * The salience score for an entity provides information about the
+ * importance or centrality of that entity to the entire document text.
+ * Scores closer to 0 are less salient, while scores closer to 1.0 are highly
+ * salient.
+ *
+ * Generated from protobuf field float salience = 4;
+ * @param float $var
+ * @return $this
+ */
+ public function setSalience($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->salience = $var;
+
+ return $this;
+ }
+
+ /**
+ * The aggregate sentiment expressed for this entity in the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 5;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SentimentData|null
+ */
+ public function getSentiment()
+ {
+ return $this->sentiment;
+ }
+
+ public function hasSentiment()
+ {
+ return isset($this->sentiment);
+ }
+
+ public function clearSentiment()
+ {
+ unset($this->sentiment);
+ }
+
+ /**
+ * The aggregate sentiment expressed for this entity in the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 5;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SentimentData $var
+ * @return $this
+ */
+ public function setSentiment($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SentimentData::class);
+ $this->sentiment = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity/Type.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity/Type.php
new file mode 100644
index 000000000000..c5720f6505ae
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Entity/Type.php
@@ -0,0 +1,163 @@
+google.cloud.contactcenterinsights.v1.Entity.Type
+ */
+class Type
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum TYPE_UNSPECIFIED = 0;
+ */
+ const TYPE_UNSPECIFIED = 0;
+ /**
+ * Person.
+ *
+ * Generated from protobuf enum PERSON = 1;
+ */
+ const PERSON = 1;
+ /**
+ * Location.
+ *
+ * Generated from protobuf enum LOCATION = 2;
+ */
+ const LOCATION = 2;
+ /**
+ * Organization.
+ *
+ * Generated from protobuf enum ORGANIZATION = 3;
+ */
+ const ORGANIZATION = 3;
+ /**
+ * Event.
+ *
+ * Generated from protobuf enum EVENT = 4;
+ */
+ const EVENT = 4;
+ /**
+ * Artwork.
+ *
+ * Generated from protobuf enum WORK_OF_ART = 5;
+ */
+ const WORK_OF_ART = 5;
+ /**
+ * Consumer product.
+ *
+ * Generated from protobuf enum CONSUMER_GOOD = 6;
+ */
+ const CONSUMER_GOOD = 6;
+ /**
+ * Other types of entities.
+ *
+ * Generated from protobuf enum OTHER = 7;
+ */
+ const OTHER = 7;
+ /**
+ * Phone number.
+ * The metadata lists the phone number (formatted according to local
+ * convention), plus whichever additional elements appear in the text:
+ * * `number` - The actual number, broken down into sections according to
+ * local convention.
+ * * `national_prefix` - Country code, if detected.
+ * * `area_code` - Region or area code, if detected.
+ * * `extension` - Phone extension (to be dialed after connection), if
+ * detected.
+ *
+ * Generated from protobuf enum PHONE_NUMBER = 9;
+ */
+ const PHONE_NUMBER = 9;
+ /**
+ * Address.
+ * The metadata identifies the street number and locality plus whichever
+ * additional elements appear in the text:
+ * * `street_number` - Street number.
+ * * `locality` - City or town.
+ * * `street_name` - Street/route name, if detected.
+ * * `postal_code` - Postal code, if detected.
+ * * `country` - Country, if detected.
+ * * `broad_region` - Administrative area, such as the state, if detected.
+ * * `narrow_region` - Smaller administrative area, such as county, if
+ * detected.
+ * * `sublocality` - Used in Asian addresses to demark a district within a
+ * city, if detected.
+ *
+ * Generated from protobuf enum ADDRESS = 10;
+ */
+ const ADDRESS = 10;
+ /**
+ * Date.
+ * The metadata identifies the components of the date:
+ * * `year` - Four digit year, if detected.
+ * * `month` - Two digit month number, if detected.
+ * * `day` - Two digit day number, if detected.
+ *
+ * Generated from protobuf enum DATE = 11;
+ */
+ const DATE = 11;
+ /**
+ * Number.
+ * The metadata is the number itself.
+ *
+ * Generated from protobuf enum NUMBER = 12;
+ */
+ const NUMBER = 12;
+ /**
+ * Price.
+ * The metadata identifies the `value` and `currency`.
+ *
+ * Generated from protobuf enum PRICE = 13;
+ */
+ const PRICE = 13;
+
+ private static $valueToName = [
+ self::TYPE_UNSPECIFIED => 'TYPE_UNSPECIFIED',
+ self::PERSON => 'PERSON',
+ self::LOCATION => 'LOCATION',
+ self::ORGANIZATION => 'ORGANIZATION',
+ self::EVENT => 'EVENT',
+ self::WORK_OF_ART => 'WORK_OF_ART',
+ self::CONSUMER_GOOD => 'CONSUMER_GOOD',
+ self::OTHER => 'OTHER',
+ self::PHONE_NUMBER => 'PHONE_NUMBER',
+ self::ADDRESS => 'ADDRESS',
+ self::DATE => 'DATE',
+ self::NUMBER => 'NUMBER',
+ self::PRICE => 'PRICE',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Type::class, \Google\Cloud\ContactCenterInsights\V1\Entity_Type::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData.php
new file mode 100644
index 000000000000..eba6ca9bc46f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData.php
@@ -0,0 +1,150 @@
+google.cloud.contactcenterinsights.v1.EntityMentionData
+ */
+class EntityMentionData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The key of this entity in conversation entities.
+ * Can be used to retrieve the exact `Entity` this mention is attached to.
+ *
+ * Generated from protobuf field string entity_unique_id = 1;
+ */
+ protected $entity_unique_id = '';
+ /**
+ * The type of the entity mention.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EntityMentionData.MentionType type = 2;
+ */
+ protected $type = 0;
+ /**
+ * Sentiment expressed for this mention of the entity.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 3;
+ */
+ protected $sentiment = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $entity_unique_id
+ * The key of this entity in conversation entities.
+ * Can be used to retrieve the exact `Entity` this mention is attached to.
+ * @type int $type
+ * The type of the entity mention.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SentimentData $sentiment
+ * Sentiment expressed for this mention of the entity.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The key of this entity in conversation entities.
+ * Can be used to retrieve the exact `Entity` this mention is attached to.
+ *
+ * Generated from protobuf field string entity_unique_id = 1;
+ * @return string
+ */
+ public function getEntityUniqueId()
+ {
+ return $this->entity_unique_id;
+ }
+
+ /**
+ * The key of this entity in conversation entities.
+ * Can be used to retrieve the exact `Entity` this mention is attached to.
+ *
+ * Generated from protobuf field string entity_unique_id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setEntityUniqueId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->entity_unique_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The type of the entity mention.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EntityMentionData.MentionType type = 2;
+ * @return int
+ */
+ public function getType()
+ {
+ return $this->type;
+ }
+
+ /**
+ * The type of the entity mention.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EntityMentionData.MentionType type = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\EntityMentionData\MentionType::class);
+ $this->type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Sentiment expressed for this mention of the entity.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SentimentData|null
+ */
+ public function getSentiment()
+ {
+ return $this->sentiment;
+ }
+
+ public function hasSentiment()
+ {
+ return isset($this->sentiment);
+ }
+
+ public function clearSentiment()
+ {
+ unset($this->sentiment);
+ }
+
+ /**
+ * Sentiment expressed for this mention of the entity.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SentimentData sentiment = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SentimentData $var
+ * @return $this
+ */
+ public function setSentiment($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SentimentData::class);
+ $this->sentiment = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData/MentionType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData/MentionType.php
new file mode 100644
index 000000000000..307fbc01afa5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/EntityMentionData/MentionType.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.EntityMentionData.MentionType
+ */
+class MentionType
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum MENTION_TYPE_UNSPECIFIED = 0;
+ */
+ const MENTION_TYPE_UNSPECIFIED = 0;
+ /**
+ * Proper noun.
+ *
+ * Generated from protobuf enum PROPER = 1;
+ */
+ const PROPER = 1;
+ /**
+ * Common noun (or noun compound).
+ *
+ * Generated from protobuf enum COMMON = 2;
+ */
+ const COMMON = 2;
+
+ private static $valueToName = [
+ self::MENTION_TYPE_UNSPECIFIED => 'MENTION_TYPE_UNSPECIFIED',
+ self::PROPER => 'PROPER',
+ self::COMMON => 'COMMON',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(MentionType::class, \Google\Cloud\ContactCenterInsights\V1\EntityMentionData_MentionType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExactMatchConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExactMatchConfig.php
new file mode 100644
index 000000000000..f9f8af221b17
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExactMatchConfig.php
@@ -0,0 +1,67 @@
+google.cloud.contactcenterinsights.v1.ExactMatchConfig
+ */
+class ExactMatchConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Whether to consider case sensitivity when performing an exact match.
+ *
+ * Generated from protobuf field bool case_sensitive = 1;
+ */
+ protected $case_sensitive = false;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type bool $case_sensitive
+ * Whether to consider case sensitivity when performing an exact match.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Whether to consider case sensitivity when performing an exact match.
+ *
+ * Generated from protobuf field bool case_sensitive = 1;
+ * @return bool
+ */
+ public function getCaseSensitive()
+ {
+ return $this->case_sensitive;
+ }
+
+ /**
+ * Whether to consider case sensitivity when performing an exact match.
+ *
+ * Generated from protobuf field bool case_sensitive = 1;
+ * @param bool $var
+ * @return $this
+ */
+ public function setCaseSensitive($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->case_sensitive = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataMetadata.php
new file mode 100644
index 000000000000..f4808758212b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataMetadata.php
@@ -0,0 +1,203 @@
+google.cloud.contactcenterinsights.v1.ExportInsightsDataMetadata
+ */
+class ExportInsightsDataMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * The original request for export.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest request = 3;
+ */
+ protected $request = null;
+ /**
+ * Partial errors during export operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ */
+ private $partial_errors;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest $request
+ * The original request for export.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Partial errors during export operation that might cause the operation
+ * output to be incomplete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for export.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for export.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Partial errors during export operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Partial errors during export operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest.php
new file mode 100644
index 000000000000..6e4f506ab972
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest.php
@@ -0,0 +1,237 @@
+google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest
+ */
+class ExportInsightsDataRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource to export data from.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * A filter to reduce results to a specific subset. Useful for exporting
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 3;
+ */
+ protected $filter = '';
+ /**
+ * A fully qualified KMS key name for BigQuery tables protected by CMEK.
+ * Format:
+ * projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}
+ *
+ * Generated from protobuf field string kms_key = 4;
+ */
+ protected $kms_key = '';
+ /**
+ * Options for what to do if the destination table already exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.WriteDisposition write_disposition = 5;
+ */
+ protected $write_disposition = 0;
+ protected $destination;
+
+ /**
+ * @param string $parent Required. The parent resource to export data from. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest\BigQueryDestination $big_query_destination
+ * Specified if sink is a BigQuery table.
+ * @type string $parent
+ * Required. The parent resource to export data from.
+ * @type string $filter
+ * A filter to reduce results to a specific subset. Useful for exporting
+ * conversations with specific properties.
+ * @type string $kms_key
+ * A fully qualified KMS key name for BigQuery tables protected by CMEK.
+ * Format:
+ * projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}
+ * @type int $write_disposition
+ * Options for what to do if the destination table already exists.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Specified if sink is a BigQuery table.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.BigQueryDestination big_query_destination = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest\BigQueryDestination|null
+ */
+ public function getBigQueryDestination()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasBigQueryDestination()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Specified if sink is a BigQuery table.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.BigQueryDestination big_query_destination = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest\BigQueryDestination $var
+ * @return $this
+ */
+ public function setBigQueryDestination($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest\BigQueryDestination::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The parent resource to export data from.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource to export data from.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for exporting
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 3;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for exporting
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * A fully qualified KMS key name for BigQuery tables protected by CMEK.
+ * Format:
+ * projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}
+ *
+ * Generated from protobuf field string kms_key = 4;
+ * @return string
+ */
+ public function getKmsKey()
+ {
+ return $this->kms_key;
+ }
+
+ /**
+ * A fully qualified KMS key name for BigQuery tables protected by CMEK.
+ * Format:
+ * projects/{project}/locations/{location}/keyRings/{keyring}/cryptoKeys/{key}/cryptoKeyVersions/{version}
+ *
+ * Generated from protobuf field string kms_key = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setKmsKey($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->kms_key = $var;
+
+ return $this;
+ }
+
+ /**
+ * Options for what to do if the destination table already exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.WriteDisposition write_disposition = 5;
+ * @return int
+ */
+ public function getWriteDisposition()
+ {
+ return $this->write_disposition;
+ }
+
+ /**
+ * Options for what to do if the destination table already exists.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.WriteDisposition write_disposition = 5;
+ * @param int $var
+ * @return $this
+ */
+ public function setWriteDisposition($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest\WriteDisposition::class);
+ $this->write_disposition = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDestination()
+ {
+ return $this->whichOneof("destination");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/BigQueryDestination.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/BigQueryDestination.php
new file mode 100644
index 000000000000..329de57ac90f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/BigQueryDestination.php
@@ -0,0 +1,162 @@
+google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.BigQueryDestination
+ */
+class BigQueryDestination extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A project ID or number. If specified, then export will attempt to
+ * write data to this project instead of the resource project. Otherwise,
+ * the resource project will be used.
+ *
+ * Generated from protobuf field string project_id = 3;
+ */
+ protected $project_id = '';
+ /**
+ * Required. The name of the BigQuery dataset that the snapshot result
+ * should be exported to. If this dataset does not exist, the export call
+ * returns an INVALID_ARGUMENT error.
+ *
+ * Generated from protobuf field string dataset = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $dataset = '';
+ /**
+ * The BigQuery table name to which the insights data should be written.
+ * If this table does not exist, the export call returns an INVALID_ARGUMENT
+ * error.
+ *
+ * Generated from protobuf field string table = 2;
+ */
+ protected $table = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $project_id
+ * A project ID or number. If specified, then export will attempt to
+ * write data to this project instead of the resource project. Otherwise,
+ * the resource project will be used.
+ * @type string $dataset
+ * Required. The name of the BigQuery dataset that the snapshot result
+ * should be exported to. If this dataset does not exist, the export call
+ * returns an INVALID_ARGUMENT error.
+ * @type string $table
+ * The BigQuery table name to which the insights data should be written.
+ * If this table does not exist, the export call returns an INVALID_ARGUMENT
+ * error.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A project ID or number. If specified, then export will attempt to
+ * write data to this project instead of the resource project. Otherwise,
+ * the resource project will be used.
+ *
+ * Generated from protobuf field string project_id = 3;
+ * @return string
+ */
+ public function getProjectId()
+ {
+ return $this->project_id;
+ }
+
+ /**
+ * A project ID or number. If specified, then export will attempt to
+ * write data to this project instead of the resource project. Otherwise,
+ * the resource project will be used.
+ *
+ * Generated from protobuf field string project_id = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setProjectId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->project_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The name of the BigQuery dataset that the snapshot result
+ * should be exported to. If this dataset does not exist, the export call
+ * returns an INVALID_ARGUMENT error.
+ *
+ * Generated from protobuf field string dataset = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getDataset()
+ {
+ return $this->dataset;
+ }
+
+ /**
+ * Required. The name of the BigQuery dataset that the snapshot result
+ * should be exported to. If this dataset does not exist, the export call
+ * returns an INVALID_ARGUMENT error.
+ *
+ * Generated from protobuf field string dataset = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setDataset($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->dataset = $var;
+
+ return $this;
+ }
+
+ /**
+ * The BigQuery table name to which the insights data should be written.
+ * If this table does not exist, the export call returns an INVALID_ARGUMENT
+ * error.
+ *
+ * Generated from protobuf field string table = 2;
+ * @return string
+ */
+ public function getTable()
+ {
+ return $this->table;
+ }
+
+ /**
+ * The BigQuery table name to which the insights data should be written.
+ * If this table does not exist, the export call returns an INVALID_ARGUMENT
+ * error.
+ *
+ * Generated from protobuf field string table = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setTable($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->table = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(BigQueryDestination::class, \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest_BigQueryDestination::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/WriteDisposition.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/WriteDisposition.php
new file mode 100644
index 000000000000..66d34f848fc5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataRequest/WriteDisposition.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.ExportInsightsDataRequest.WriteDisposition
+ */
+class WriteDisposition
+{
+ /**
+ * Write disposition is not specified. Defaults to WRITE_TRUNCATE.
+ *
+ * Generated from protobuf enum WRITE_DISPOSITION_UNSPECIFIED = 0;
+ */
+ const WRITE_DISPOSITION_UNSPECIFIED = 0;
+ /**
+ * If the table already exists, BigQuery will overwrite the table data and
+ * use the schema from the load.
+ *
+ * Generated from protobuf enum WRITE_TRUNCATE = 1;
+ */
+ const WRITE_TRUNCATE = 1;
+ /**
+ * If the table already exists, BigQuery will append data to the table.
+ *
+ * Generated from protobuf enum WRITE_APPEND = 2;
+ */
+ const WRITE_APPEND = 2;
+
+ private static $valueToName = [
+ self::WRITE_DISPOSITION_UNSPECIFIED => 'WRITE_DISPOSITION_UNSPECIFIED',
+ self::WRITE_TRUNCATE => 'WRITE_TRUNCATE',
+ self::WRITE_APPEND => 'WRITE_APPEND',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(WriteDisposition::class, \Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataRequest_WriteDisposition::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataResponse.php
new file mode 100644
index 000000000000..32c0c790acf4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportInsightsDataResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.ExportInsightsDataResponse
+ */
+class ExportInsightsDataResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelMetadata.php
new file mode 100644
index 000000000000..7a6e77bd3038
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.ExportIssueModelMetadata
+ */
+class ExportIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ */
+ protected $create_time = null;
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ */
+ protected $end_time = null;
+ /**
+ * The original export request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest $request
+ * The original export request.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original export request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original export request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest.php
new file mode 100644
index 000000000000..5fc916d35604
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest.php
@@ -0,0 +1,123 @@
+google.cloud.contactcenterinsights.v1.ExportIssueModelRequest
+ */
+class ExportIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The issue model to export.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+ protected $Destination;
+
+ /**
+ * @param string $name Required. The issue model to export. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest\GcsDestination $gcs_destination
+ * Google Cloud Storage URI to export the issue model to.
+ * @type string $name
+ * Required. The issue model to export.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Google Cloud Storage URI to export the issue model to.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportIssueModelRequest.GcsDestination gcs_destination = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest\GcsDestination|null
+ */
+ public function getGcsDestination()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasGcsDestination()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Google Cloud Storage URI to export the issue model to.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExportIssueModelRequest.GcsDestination gcs_destination = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest\GcsDestination $var
+ * @return $this
+ */
+ public function setGcsDestination($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest\GcsDestination::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The issue model to export.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The issue model to export.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getDestination()
+ {
+ return $this->whichOneof("Destination");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest/GcsDestination.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest/GcsDestination.php
new file mode 100644
index 000000000000..c6d3e475c2d4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelRequest/GcsDestination.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.ExportIssueModelRequest.GcsDestination
+ */
+class GcsDestination extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $object_uri = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $object_uri
+ * Required. Format: `gs:///`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getObjectUri()
+ {
+ return $this->object_uri;
+ }
+
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setObjectUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->object_uri = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(GcsDestination::class, \Google\Cloud\ContactCenterInsights\V1\ExportIssueModelRequest_GcsDestination::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelResponse.php
new file mode 100644
index 000000000000..cb2c757dea28
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ExportIssueModelResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.ExportIssueModelResponse
+ */
+class ExportIssueModelResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FaqAnswerData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FaqAnswerData.php
new file mode 100644
index 000000000000..e6d8e8c35931
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FaqAnswerData.php
@@ -0,0 +1,265 @@
+google.cloud.contactcenterinsights.v1.FaqAnswerData
+ */
+class FaqAnswerData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The piece of text from the `source` knowledge base document.
+ *
+ * Generated from protobuf field string answer = 1;
+ */
+ protected $answer = '';
+ /**
+ * The system's confidence score that this answer is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 2;
+ */
+ protected $confidence_score = 0.0;
+ /**
+ * The corresponding FAQ question.
+ *
+ * Generated from protobuf field string question = 3;
+ */
+ protected $question = '';
+ /**
+ * Map that contains metadata about the FAQ answer and the document that
+ * it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ */
+ private $metadata;
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ */
+ protected $query_record = '';
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.
+ *
+ * Generated from protobuf field string source = 6;
+ */
+ protected $source = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $answer
+ * The piece of text from the `source` knowledge base document.
+ * @type float $confidence_score
+ * The system's confidence score that this answer is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ * @type string $question
+ * The corresponding FAQ question.
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * Map that contains metadata about the FAQ answer and the document that
+ * it originates from.
+ * @type string $query_record
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ * @type string $source
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The piece of text from the `source` knowledge base document.
+ *
+ * Generated from protobuf field string answer = 1;
+ * @return string
+ */
+ public function getAnswer()
+ {
+ return $this->answer;
+ }
+
+ /**
+ * The piece of text from the `source` knowledge base document.
+ *
+ * Generated from protobuf field string answer = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setAnswer($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->answer = $var;
+
+ return $this;
+ }
+
+ /**
+ * The system's confidence score that this answer is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 2;
+ * @return float
+ */
+ public function getConfidenceScore()
+ {
+ return $this->confidence_score;
+ }
+
+ /**
+ * The system's confidence score that this answer is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field float confidence_score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidenceScore($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->confidence_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The corresponding FAQ question.
+ *
+ * Generated from protobuf field string question = 3;
+ * @return string
+ */
+ public function getQuestion()
+ {
+ return $this->question;
+ }
+
+ /**
+ * The corresponding FAQ question.
+ *
+ * Generated from protobuf field string question = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestion($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question = $var;
+
+ return $this;
+ }
+
+ /**
+ * Map that contains metadata about the FAQ answer and the document that
+ * it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * Map that contains metadata about the FAQ answer and the document that
+ * it originates from.
+ *
+ * Generated from protobuf field map metadata = 4;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ * @return string
+ */
+ public function getQueryRecord()
+ {
+ return $this->query_record;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setQueryRecord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query_record = $var;
+
+ return $this;
+ }
+
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.
+ *
+ * Generated from protobuf field string source = 6;
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->source;
+ }
+
+ /**
+ * The knowledge document that this answer was extracted from.
+ * Format:
+ * projects/{project}/knowledgeBases/{knowledge_base}/documents/{document}.
+ *
+ * Generated from protobuf field string source = 6;
+ * @param string $var
+ * @return $this
+ */
+ public function setSource($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->source = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FeedbackLabel.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FeedbackLabel.php
new file mode 100644
index 000000000000..e59875d7d42d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/FeedbackLabel.php
@@ -0,0 +1,272 @@
+google.cloud.contactcenterinsights.v1.FeedbackLabel
+ */
+class FeedbackLabel extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. Resource name of the FeedbackLabel.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * Resource name of the resource to be labeled.
+ *
+ * Generated from protobuf field string labeled_resource = 3;
+ */
+ protected $labeled_resource = '';
+ /**
+ * Output only. Create time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. Update time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ protected $label_type;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $label
+ * String label.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $qa_answer_label
+ * QaAnswer label.
+ * @type string $name
+ * Immutable. Resource name of the FeedbackLabel.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ * @type string $labeled_resource
+ * Resource name of the resource to be labeled.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. Create time of the label.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. Update time of the label.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * String label.
+ *
+ * Generated from protobuf field string label = 4;
+ * @return string
+ */
+ public function getLabel()
+ {
+ return $this->readOneof(4);
+ }
+
+ public function hasLabel()
+ {
+ return $this->hasOneof(4);
+ }
+
+ /**
+ * String label.
+ *
+ * Generated from protobuf field string label = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setLabel($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(4, $var);
+
+ return $this;
+ }
+
+ /**
+ * QaAnswer label.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue qa_answer_label = 7;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue|null
+ */
+ public function getQaAnswerLabel()
+ {
+ return $this->readOneof(7);
+ }
+
+ public function hasQaAnswerLabel()
+ {
+ return $this->hasOneof(7);
+ }
+
+ /**
+ * QaAnswer label.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue qa_answer_label = 7;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $var
+ * @return $this
+ */
+ public function setQaAnswerLabel($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue::class);
+ $this->writeOneof(7, $var);
+
+ return $this;
+ }
+
+ /**
+ * Immutable. Resource name of the FeedbackLabel.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. Resource name of the FeedbackLabel.
+ * Format:
+ * projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Resource name of the resource to be labeled.
+ *
+ * Generated from protobuf field string labeled_resource = 3;
+ * @return string
+ */
+ public function getLabeledResource()
+ {
+ return $this->labeled_resource;
+ }
+
+ /**
+ * Resource name of the resource to be labeled.
+ *
+ * Generated from protobuf field string labeled_resource = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setLabeledResource($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->labeled_resource = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Create time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. Create time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Update time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. Update time of the label.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getLabelType()
+ {
+ return $this->whichOneof("label_type");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GcsSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GcsSource.php
new file mode 100644
index 000000000000..2125a846c4af
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GcsSource.php
@@ -0,0 +1,109 @@
+google.cloud.contactcenterinsights.v1.GcsSource
+ */
+class GcsSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 1;
+ */
+ protected $audio_uri = '';
+ /**
+ * Immutable. Cloud Storage URI that points to a file that contains the
+ * conversation transcript.
+ *
+ * Generated from protobuf field string transcript_uri = 2 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $transcript_uri = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $audio_uri
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ * @type string $transcript_uri
+ * Immutable. Cloud Storage URI that points to a file that contains the
+ * conversation transcript.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 1;
+ * @return string
+ */
+ public function getAudioUri()
+ {
+ return $this->audio_uri;
+ }
+
+ /**
+ * Cloud Storage URI that points to a file that contains the conversation
+ * audio.
+ *
+ * Generated from protobuf field string audio_uri = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setAudioUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->audio_uri = $var;
+
+ return $this;
+ }
+
+ /**
+ * Immutable. Cloud Storage URI that points to a file that contains the
+ * conversation transcript.
+ *
+ * Generated from protobuf field string transcript_uri = 2 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getTranscriptUri()
+ {
+ return $this->transcript_uri;
+ }
+
+ /**
+ * Immutable. Cloud Storage URI that points to a file that contains the
+ * conversation transcript.
+ *
+ * Generated from protobuf field string transcript_uri = 2 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setTranscriptUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->transcript_uri = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRequest.php
new file mode 100644
index 000000000000..a46e863a67e9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetAnalysisRequest
+ */
+class GetAnalysisRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the analysis to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the analysis to get. Please see
+ * {@see ContactCenterInsightsClient::analysisName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetAnalysisRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the analysis to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the analysis to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the analysis to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRuleRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRuleRequest.php
new file mode 100644
index 000000000000..06b729e7dfc0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetAnalysisRuleRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetAnalysisRuleRequest
+ */
+class GetAnalysisRuleRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the AnalysisRule to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the AnalysisRule to get. Please see
+ * {@see ContactCenterInsightsClient::analysisRuleName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetAnalysisRuleRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the AnalysisRule to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the AnalysisRule to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the AnalysisRule to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetConversationRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetConversationRequest.php
new file mode 100644
index 000000000000..7c69e507e417
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetConversationRequest.php
@@ -0,0 +1,115 @@
+google.cloud.contactcenterinsights.v1.GetConversationRequest
+ */
+class GetConversationRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the conversation to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+ /**
+ * The level of details of the conversation. Default is `FULL`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 2;
+ */
+ protected $view = 0;
+
+ /**
+ * @param string $name Required. The name of the conversation to get. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetConversationRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the conversation to get.
+ * @type int $view
+ * The level of details of the conversation. Default is `FULL`.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the conversation to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the conversation to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The level of details of the conversation. Default is `FULL`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 2;
+ * @return int
+ */
+ public function getView()
+ {
+ return $this->view;
+ }
+
+ /**
+ * The level of details of the conversation. Default is `FULL`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setView($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ConversationView::class);
+ $this->view = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetEncryptionSpecRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetEncryptionSpecRequest.php
new file mode 100644
index 000000000000..c0076eb9be97
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetEncryptionSpecRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetEncryptionSpecRequest
+ */
+class GetEncryptionSpecRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the encryption spec resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the encryption spec resource to get. Please see
+ * {@see ContactCenterInsightsClient::encryptionSpecName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetEncryptionSpecRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the encryption spec resource to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the encryption spec resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the encryption spec resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetFeedbackLabelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetFeedbackLabelRequest.php
new file mode 100644
index 000000000000..e9b96851b796
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetFeedbackLabelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetFeedbackLabelRequest
+ */
+class GetFeedbackLabelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the feedback label to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the feedback label to get. Please see
+ * {@see ContactCenterInsightsClient::feedbackLabelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetFeedbackLabelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the feedback label to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the feedback label to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the feedback label to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueModelRequest.php
new file mode 100644
index 000000000000..0de9b87c59ea
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueModelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetIssueModelRequest
+ */
+class GetIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the issue model to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the issue model to get. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the issue model to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the issue model to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the issue model to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueRequest.php
new file mode 100644
index 000000000000..6ce5364cc99a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetIssueRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetIssueRequest
+ */
+class GetIssueRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the issue to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the issue to get. Please see
+ * {@see ContactCenterInsightsClient::issueName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetIssueRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the issue to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the issue to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the issue to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetPhraseMatcherRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetPhraseMatcherRequest.php
new file mode 100644
index 000000000000..cfdbf04b0d0f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetPhraseMatcherRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetPhraseMatcherRequest
+ */
+class GetPhraseMatcherRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the phrase matcher to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the phrase matcher to get. Please see
+ * {@see ContactCenterInsightsClient::phraseMatcherName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetPhraseMatcherRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the phrase matcher to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the phrase matcher to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the phrase matcher to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaQuestionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaQuestionRequest.php
new file mode 100644
index 000000000000..583d9137487c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaQuestionRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetQaQuestionRequest
+ */
+class GetQaQuestionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaQuestion to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the QaQuestion to get. Please see
+ * {@see ContactCenterInsightsClient::qaQuestionName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetQaQuestionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaQuestion to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaQuestion to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaQuestion to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRequest.php
new file mode 100644
index 000000000000..c88916de02d3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetQaScorecardRequest
+ */
+class GetQaScorecardRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecard to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the QaScorecard to get. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetQaScorecardRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecard to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecard to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecard to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..33e32dde8325
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetQaScorecardRevisionRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetQaScorecardRevisionRequest
+ */
+class GetQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecardRevision to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the QaScorecardRevision to get. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardRevisionName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetQaScorecardRevisionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecardRevision to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetSettingsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetSettingsRequest.php
new file mode 100644
index 000000000000..91add76d1818
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetSettingsRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetSettingsRequest
+ */
+class GetSettingsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the settings resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the settings resource to get. Please see
+ * {@see ContactCenterInsightsClient::settingsName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetSettingsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the settings resource to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the settings resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the settings resource to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetViewRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetViewRequest.php
new file mode 100644
index 000000000000..0f38bc1c31e2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/GetViewRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.GetViewRequest
+ */
+class GetViewRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the view to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The name of the view to get. Please see
+ * {@see ContactCenterInsightsClient::viewName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\GetViewRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the view to get.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the view to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the view to get.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/HoldData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/HoldData.php
new file mode 100644
index 000000000000..bd7f70e930ef
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/HoldData.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.HoldData
+ */
+class HoldData extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelMetadata.php
new file mode 100644
index 000000000000..ed2259957dce
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.ImportIssueModelMetadata
+ */
+class ImportIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ */
+ protected $create_time = null;
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ */
+ protected $end_time = null;
+ /**
+ * The original import request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ImportIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest $request
+ * The original import request.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original import request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ImportIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original import request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ImportIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest.php
new file mode 100644
index 000000000000..871dd620e2c9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.ImportIssueModelRequest
+ */
+class ImportIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. If set to true, will create an issue model from the imported file
+ * with randomly generated IDs for the issue model and corresponding issues.
+ * Otherwise, replaces an existing model with the same ID as the file.
+ *
+ * Generated from protobuf field bool create_new_model = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $create_new_model = false;
+ protected $Source;
+
+ /**
+ * @param string $parent Required. The parent resource of the issue model. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest\GcsSource $gcs_source
+ * Google Cloud Storage source message.
+ * @type string $parent
+ * Required. The parent resource of the issue model.
+ * @type bool $create_new_model
+ * Optional. If set to true, will create an issue model from the imported file
+ * with randomly generated IDs for the issue model and corresponding issues.
+ * Otherwise, replaces an existing model with the same ID as the file.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Google Cloud Storage source message.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ImportIssueModelRequest.GcsSource gcs_source = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest\GcsSource|null
+ */
+ public function getGcsSource()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasGcsSource()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * Google Cloud Storage source message.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ImportIssueModelRequest.GcsSource gcs_source = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest\GcsSource $var
+ * @return $this
+ */
+ public function setGcsSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest\GcsSource::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set to true, will create an issue model from the imported file
+ * with randomly generated IDs for the issue model and corresponding issues.
+ * Otherwise, replaces an existing model with the same ID as the file.
+ *
+ * Generated from protobuf field bool create_new_model = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getCreateNewModel()
+ {
+ return $this->create_new_model;
+ }
+
+ /**
+ * Optional. If set to true, will create an issue model from the imported file
+ * with randomly generated IDs for the issue model and corresponding issues.
+ * Otherwise, replaces an existing model with the same ID as the file.
+ *
+ * Generated from protobuf field bool create_new_model = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setCreateNewModel($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->create_new_model = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->whichOneof("Source");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest/GcsSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest/GcsSource.php
new file mode 100644
index 000000000000..27c9d9d67715
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelRequest/GcsSource.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.ImportIssueModelRequest.GcsSource
+ */
+class GcsSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $object_uri = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $object_uri
+ * Required. Format: `gs:///`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getObjectUri()
+ {
+ return $this->object_uri;
+ }
+
+ /**
+ * Required. Format: `gs:///`
+ *
+ * Generated from protobuf field string object_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setObjectUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->object_uri = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(GcsSource::class, \Google\Cloud\ContactCenterInsights\V1\ImportIssueModelRequest_GcsSource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelResponse.php
new file mode 100644
index 000000000000..0bd1db15abb5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ImportIssueModelResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.ImportIssueModelResponse
+ */
+class ImportIssueModelResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata.php
new file mode 100644
index 000000000000..5923845b70e2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata.php
@@ -0,0 +1,247 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsMetadata
+ */
+class IngestConversationsMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Output only. Partial errors during ingest operation that might cause the
+ * operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $partial_errors;
+ /**
+ * Output only. Statistics for IngestConversations operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsMetadata.IngestConversationsStats ingest_conversations_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $ingest_conversations_stats = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest $request
+ * Output only. The original request for ingest.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Output only. Partial errors during ingest operation that might cause the
+ * operation output to be incomplete.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata\IngestConversationsStats $ingest_conversations_stats
+ * Output only. Statistics for IngestConversations operation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request for ingest.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Partial errors during ingest operation that might cause the
+ * operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Output only. Partial errors during ingest operation that might cause the
+ * operation output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Statistics for IngestConversations operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsMetadata.IngestConversationsStats ingest_conversations_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata\IngestConversationsStats|null
+ */
+ public function getIngestConversationsStats()
+ {
+ return $this->ingest_conversations_stats;
+ }
+
+ public function hasIngestConversationsStats()
+ {
+ return isset($this->ingest_conversations_stats);
+ }
+
+ public function clearIngestConversationsStats()
+ {
+ unset($this->ingest_conversations_stats);
+ }
+
+ /**
+ * Output only. Statistics for IngestConversations operation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsMetadata.IngestConversationsStats ingest_conversations_stats = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata\IngestConversationsStats $var
+ * @return $this
+ */
+ public function setIngestConversationsStats($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata\IngestConversationsStats::class);
+ $this->ingest_conversations_stats = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata/IngestConversationsStats.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata/IngestConversationsStats.php
new file mode 100644
index 000000000000..eb1243032ccd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsMetadata/IngestConversationsStats.php
@@ -0,0 +1,184 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsMetadata.IngestConversationsStats
+ */
+class IngestConversationsStats extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The number of objects processed during the ingest operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $processed_object_count = 0;
+ /**
+ * Output only. The number of objects skipped because another conversation
+ * with the same transcript uri had already been ingested.
+ *
+ * Generated from protobuf field int32 duplicates_skipped_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $duplicates_skipped_count = 0;
+ /**
+ * Output only. The number of new conversations added during this ingest
+ * operation.
+ *
+ * Generated from protobuf field int32 successful_ingest_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $successful_ingest_count = 0;
+ /**
+ * Output only. The number of objects which were unable to be ingested due
+ * to errors. The errors are populated in the partial_errors field.
+ *
+ * Generated from protobuf field int32 failed_ingest_count = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $failed_ingest_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $processed_object_count
+ * Output only. The number of objects processed during the ingest operation.
+ * @type int $duplicates_skipped_count
+ * Output only. The number of objects skipped because another conversation
+ * with the same transcript uri had already been ingested.
+ * @type int $successful_ingest_count
+ * Output only. The number of new conversations added during this ingest
+ * operation.
+ * @type int $failed_ingest_count
+ * Output only. The number of objects which were unable to be ingested due
+ * to errors. The errors are populated in the partial_errors field.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The number of objects processed during the ingest operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getProcessedObjectCount()
+ {
+ return $this->processed_object_count;
+ }
+
+ /**
+ * Output only. The number of objects processed during the ingest operation.
+ *
+ * Generated from protobuf field int32 processed_object_count = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setProcessedObjectCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->processed_object_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The number of objects skipped because another conversation
+ * with the same transcript uri had already been ingested.
+ *
+ * Generated from protobuf field int32 duplicates_skipped_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getDuplicatesSkippedCount()
+ {
+ return $this->duplicates_skipped_count;
+ }
+
+ /**
+ * Output only. The number of objects skipped because another conversation
+ * with the same transcript uri had already been ingested.
+ *
+ * Generated from protobuf field int32 duplicates_skipped_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setDuplicatesSkippedCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->duplicates_skipped_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The number of new conversations added during this ingest
+ * operation.
+ *
+ * Generated from protobuf field int32 successful_ingest_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getSuccessfulIngestCount()
+ {
+ return $this->successful_ingest_count;
+ }
+
+ /**
+ * Output only. The number of new conversations added during this ingest
+ * operation.
+ *
+ * Generated from protobuf field int32 successful_ingest_count = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setSuccessfulIngestCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->successful_ingest_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The number of objects which were unable to be ingested due
+ * to errors. The errors are populated in the partial_errors field.
+ *
+ * Generated from protobuf field int32 failed_ingest_count = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getFailedIngestCount()
+ {
+ return $this->failed_ingest_count;
+ }
+
+ /**
+ * Output only. The number of objects which were unable to be ingested due
+ * to errors. The errors are populated in the partial_errors field.
+ *
+ * Generated from protobuf field int32 failed_ingest_count = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setFailedIngestCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->failed_ingest_count = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(IngestConversationsStats::class, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata_IngestConversationsStats::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest.php
new file mode 100644
index 000000000000..435d372507c8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest.php
@@ -0,0 +1,364 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsRequest
+ */
+class IngestConversationsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource for new conversations.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Configuration that applies to all conversations.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.ConversationConfig conversation_config = 4;
+ */
+ protected $conversation_config = null;
+ /**
+ * Optional. DLP settings for transcript redaction. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 5 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $redaction_config = null;
+ /**
+ * Optional. Default Speech-to-Text configuration. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 6 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $speech_config = null;
+ /**
+ * Optional. If set, this fields indicates the number of objects to ingest
+ * from the Cloud Storage bucket. If empty, the entire bucket will be
+ * ingested. Unless they are first deleted, conversations produced through
+ * sampling won't be ingested by subsequent ingest requests.
+ *
+ * Generated from protobuf field optional int32 sample_size = 7 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $sample_size = null;
+ protected $source;
+ protected $object_config;
+
+ /**
+ * @param string $parent Required. The parent resource for new conversations. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\GcsSource $gcs_source
+ * A cloud storage bucket source. Note that any previously ingested objects
+ * from the source will be skipped to avoid duplication.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\TranscriptObjectConfig $transcript_object_config
+ * Configuration for when `source` contains conversation transcripts.
+ * @type string $parent
+ * Required. The parent resource for new conversations.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\ConversationConfig $conversation_config
+ * Configuration that applies to all conversations.
+ * @type \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $redaction_config
+ * Optional. DLP settings for transcript redaction. Optional, will default to
+ * the config specified in Settings.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $speech_config
+ * Optional. Default Speech-to-Text configuration. Optional, will default to
+ * the config specified in Settings.
+ * @type int $sample_size
+ * Optional. If set, this fields indicates the number of objects to ingest
+ * from the Cloud Storage bucket. If empty, the entire bucket will be
+ * ingested. Unless they are first deleted, conversations produced through
+ * sampling won't be ingested by subsequent ingest requests.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A cloud storage bucket source. Note that any previously ingested objects
+ * from the source will be skipped to avoid duplication.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource gcs_source = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\GcsSource|null
+ */
+ public function getGcsSource()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasGcsSource()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * A cloud storage bucket source. Note that any previously ingested objects
+ * from the source will be skipped to avoid duplication.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource gcs_source = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\GcsSource $var
+ * @return $this
+ */
+ public function setGcsSource($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\GcsSource::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Configuration for when `source` contains conversation transcripts.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.TranscriptObjectConfig transcript_object_config = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\TranscriptObjectConfig|null
+ */
+ public function getTranscriptObjectConfig()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasTranscriptObjectConfig()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * Configuration for when `source` contains conversation transcripts.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.TranscriptObjectConfig transcript_object_config = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\TranscriptObjectConfig $var
+ * @return $this
+ */
+ public function setTranscriptObjectConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\TranscriptObjectConfig::class);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * Required. The parent resource for new conversations.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource for new conversations.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Configuration that applies to all conversations.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.ConversationConfig conversation_config = 4;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\ConversationConfig|null
+ */
+ public function getConversationConfig()
+ {
+ return $this->conversation_config;
+ }
+
+ public function hasConversationConfig()
+ {
+ return isset($this->conversation_config);
+ }
+
+ public function clearConversationConfig()
+ {
+ unset($this->conversation_config);
+ }
+
+ /**
+ * Configuration that applies to all conversations.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.ConversationConfig conversation_config = 4;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\ConversationConfig $var
+ * @return $this
+ */
+ public function setConversationConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\ConversationConfig::class);
+ $this->conversation_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. DLP settings for transcript redaction. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Cloud\ContactCenterInsights\V1\RedactionConfig|null
+ */
+ public function getRedactionConfig()
+ {
+ return $this->redaction_config;
+ }
+
+ public function hasRedactionConfig()
+ {
+ return isset($this->redaction_config);
+ }
+
+ public function clearRedactionConfig()
+ {
+ unset($this->redaction_config);
+ }
+
+ /**
+ * Optional. DLP settings for transcript redaction. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 5 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $var
+ * @return $this
+ */
+ public function setRedactionConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\RedactionConfig::class);
+ $this->redaction_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Default Speech-to-Text configuration. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 6 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Cloud\ContactCenterInsights\V1\SpeechConfig|null
+ */
+ public function getSpeechConfig()
+ {
+ return $this->speech_config;
+ }
+
+ public function hasSpeechConfig()
+ {
+ return isset($this->speech_config);
+ }
+
+ public function clearSpeechConfig()
+ {
+ unset($this->speech_config);
+ }
+
+ /**
+ * Optional. Default Speech-to-Text configuration. Optional, will default to
+ * the config specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 6 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $var
+ * @return $this
+ */
+ public function setSpeechConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SpeechConfig::class);
+ $this->speech_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. If set, this fields indicates the number of objects to ingest
+ * from the Cloud Storage bucket. If empty, the entire bucket will be
+ * ingested. Unless they are first deleted, conversations produced through
+ * sampling won't be ingested by subsequent ingest requests.
+ *
+ * Generated from protobuf field optional int32 sample_size = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getSampleSize()
+ {
+ return isset($this->sample_size) ? $this->sample_size : 0;
+ }
+
+ public function hasSampleSize()
+ {
+ return isset($this->sample_size);
+ }
+
+ public function clearSampleSize()
+ {
+ unset($this->sample_size);
+ }
+
+ /**
+ * Optional. If set, this fields indicates the number of objects to ingest
+ * from the Cloud Storage bucket. If empty, the entire bucket will be
+ * ingested. Unless they are first deleted, conversations produced through
+ * sampling won't be ingested by subsequent ingest requests.
+ *
+ * Generated from protobuf field optional int32 sample_size = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setSampleSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->sample_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getSource()
+ {
+ return $this->whichOneof("source");
+ }
+
+ /**
+ * @return string
+ */
+ public function getObjectConfig()
+ {
+ return $this->whichOneof("object_config");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/ConversationConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/ConversationConfig.php
new file mode 100644
index 000000000000..8a001dbd3064
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/ConversationConfig.php
@@ -0,0 +1,166 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsRequest.ConversationConfig
+ */
+class ConversationConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Optional. An opaque, user-specified string representing a human agent who
+ * handled all conversations in the import. Note that this will be
+ * overridden if per-conversation metadata is provided through the
+ * `metadata_bucket_uri`.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $agent_id = '';
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 agent_channel = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $agent_channel = 0;
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 customer_channel = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $customer_channel = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $agent_id
+ * Optional. An opaque, user-specified string representing a human agent who
+ * handled all conversations in the import. Note that this will be
+ * overridden if per-conversation metadata is provided through the
+ * `metadata_bucket_uri`.
+ * @type int $agent_channel
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ * @type int $customer_channel
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Optional. An opaque, user-specified string representing a human agent who
+ * handled all conversations in the import. Note that this will be
+ * overridden if per-conversation metadata is provided through the
+ * `metadata_bucket_uri`.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getAgentId()
+ {
+ return $this->agent_id;
+ }
+
+ /**
+ * Optional. An opaque, user-specified string representing a human agent who
+ * handled all conversations in the import. Note that this will be
+ * overridden if per-conversation metadata is provided through the
+ * `metadata_bucket_uri`.
+ *
+ * Generated from protobuf field string agent_id = 1 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 agent_channel = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getAgentChannel()
+ {
+ return $this->agent_channel;
+ }
+
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 agent_channel = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setAgentChannel($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->agent_channel = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 customer_channel = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getCustomerChannel()
+ {
+ return $this->customer_channel;
+ }
+
+ /**
+ * Optional. Indicates which of the channels, 1 or 2, contains the agent.
+ * Note that this must be set for conversations to be properly displayed and
+ * analyzed.
+ *
+ * Generated from protobuf field int32 customer_channel = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setCustomerChannel($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->customer_channel = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(ConversationConfig::class, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest_ConversationConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource.php
new file mode 100644
index 000000000000..76011c6fff5b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource.php
@@ -0,0 +1,218 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource
+ */
+class GcsSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The Cloud Storage bucket containing source objects.
+ *
+ * Generated from protobuf field string bucket_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $bucket_uri = '';
+ /**
+ * Optional. Specifies the type of the objects in `bucket_uri`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource.BucketObjectType bucket_object_type = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $bucket_object_type = 0;
+ /**
+ * Optional. The Cloud Storage path to the conversation metadata. Note that:
+ * [1] Metadata files are expected to be in JSON format.
+ * [2] Metadata and source files (transcripts or audio) must be in
+ * separate buckets.
+ * [3] A source file and its corresponding metadata file must share the same
+ * name to
+ * be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and
+ * `gs://bucket/metadata/conversation1.json`.
+ *
+ * Generated from protobuf field optional string metadata_bucket_uri = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $metadata_bucket_uri = null;
+ /**
+ * Optional. Custom keys to extract as conversation labels from metadata
+ * files in `metadata_bucket_uri`. Keys not included in this field will be
+ * ignored. Note that there is a limit of 100 labels per conversation.
+ *
+ * Generated from protobuf field repeated string custom_metadata_keys = 12 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ private $custom_metadata_keys;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $bucket_uri
+ * Required. The Cloud Storage bucket containing source objects.
+ * @type int $bucket_object_type
+ * Optional. Specifies the type of the objects in `bucket_uri`.
+ * @type string $metadata_bucket_uri
+ * Optional. The Cloud Storage path to the conversation metadata. Note that:
+ * [1] Metadata files are expected to be in JSON format.
+ * [2] Metadata and source files (transcripts or audio) must be in
+ * separate buckets.
+ * [3] A source file and its corresponding metadata file must share the same
+ * name to
+ * be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and
+ * `gs://bucket/metadata/conversation1.json`.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $custom_metadata_keys
+ * Optional. Custom keys to extract as conversation labels from metadata
+ * files in `metadata_bucket_uri`. Keys not included in this field will be
+ * ignored. Note that there is a limit of 100 labels per conversation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The Cloud Storage bucket containing source objects.
+ *
+ * Generated from protobuf field string bucket_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getBucketUri()
+ {
+ return $this->bucket_uri;
+ }
+
+ /**
+ * Required. The Cloud Storage bucket containing source objects.
+ *
+ * Generated from protobuf field string bucket_uri = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setBucketUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->bucket_uri = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Specifies the type of the objects in `bucket_uri`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource.BucketObjectType bucket_object_type = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getBucketObjectType()
+ {
+ return $this->bucket_object_type;
+ }
+
+ /**
+ * Optional. Specifies the type of the objects in `bucket_uri`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource.BucketObjectType bucket_object_type = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setBucketObjectType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest\GcsSource\BucketObjectType::class);
+ $this->bucket_object_type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The Cloud Storage path to the conversation metadata. Note that:
+ * [1] Metadata files are expected to be in JSON format.
+ * [2] Metadata and source files (transcripts or audio) must be in
+ * separate buckets.
+ * [3] A source file and its corresponding metadata file must share the same
+ * name to
+ * be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and
+ * `gs://bucket/metadata/conversation1.json`.
+ *
+ * Generated from protobuf field optional string metadata_bucket_uri = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getMetadataBucketUri()
+ {
+ return isset($this->metadata_bucket_uri) ? $this->metadata_bucket_uri : '';
+ }
+
+ public function hasMetadataBucketUri()
+ {
+ return isset($this->metadata_bucket_uri);
+ }
+
+ public function clearMetadataBucketUri()
+ {
+ unset($this->metadata_bucket_uri);
+ }
+
+ /**
+ * Optional. The Cloud Storage path to the conversation metadata. Note that:
+ * [1] Metadata files are expected to be in JSON format.
+ * [2] Metadata and source files (transcripts or audio) must be in
+ * separate buckets.
+ * [3] A source file and its corresponding metadata file must share the same
+ * name to
+ * be properly ingested, E.g. `gs://bucket/audio/conversation1.mp3` and
+ * `gs://bucket/metadata/conversation1.json`.
+ *
+ * Generated from protobuf field optional string metadata_bucket_uri = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setMetadataBucketUri($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->metadata_bucket_uri = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Custom keys to extract as conversation labels from metadata
+ * files in `metadata_bucket_uri`. Keys not included in this field will be
+ * ignored. Note that there is a limit of 100 labels per conversation.
+ *
+ * Generated from protobuf field repeated string custom_metadata_keys = 12 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getCustomMetadataKeys()
+ {
+ return $this->custom_metadata_keys;
+ }
+
+ /**
+ * Optional. Custom keys to extract as conversation labels from metadata
+ * files in `metadata_bucket_uri`. Keys not included in this field will be
+ * ignored. Note that there is a limit of 100 labels per conversation.
+ *
+ * Generated from protobuf field repeated string custom_metadata_keys = 12 [(.google.api.field_behavior) = OPTIONAL];
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setCustomMetadataKeys($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->custom_metadata_keys = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(GcsSource::class, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest_GcsSource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource/BucketObjectType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource/BucketObjectType.php
new file mode 100644
index 000000000000..826704c5a327
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/GcsSource/BucketObjectType.php
@@ -0,0 +1,62 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsRequest.GcsSource.BucketObjectType
+ */
+class BucketObjectType
+{
+ /**
+ * The object type is unspecified and will default to `TRANSCRIPT`.
+ *
+ * Generated from protobuf enum BUCKET_OBJECT_TYPE_UNSPECIFIED = 0;
+ */
+ const BUCKET_OBJECT_TYPE_UNSPECIFIED = 0;
+ /**
+ * The object is a transcript.
+ *
+ * Generated from protobuf enum TRANSCRIPT = 1;
+ */
+ const TRANSCRIPT = 1;
+ /**
+ * The object is an audio file.
+ *
+ * Generated from protobuf enum AUDIO = 2;
+ */
+ const AUDIO = 2;
+
+ private static $valueToName = [
+ self::BUCKET_OBJECT_TYPE_UNSPECIFIED => 'BUCKET_OBJECT_TYPE_UNSPECIFIED',
+ self::TRANSCRIPT => 'TRANSCRIPT',
+ self::AUDIO => 'AUDIO',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(BucketObjectType::class, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest_GcsSource_BucketObjectType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/TranscriptObjectConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/TranscriptObjectConfig.php
new file mode 100644
index 000000000000..928cc9f5e174
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsRequest/TranscriptObjectConfig.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsRequest.TranscriptObjectConfig
+ */
+class TranscriptObjectConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The medium transcript objects represent.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $medium = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $medium
+ * Required. The medium transcript objects represent.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The medium transcript objects represent.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return int
+ */
+ public function getMedium()
+ {
+ return $this->medium;
+ }
+
+ /**
+ * Required. The medium transcript objects represent.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param int $var
+ * @return $this
+ */
+ public function setMedium($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\Medium::class);
+ $this->medium = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TranscriptObjectConfig::class, \Google\Cloud\ContactCenterInsights\V1\IngestConversationsRequest_TranscriptObjectConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsResponse.php
new file mode 100644
index 000000000000..97d2e9727617
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IngestConversationsResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.IngestConversationsResponse
+ */
+class IngestConversationsResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecMetadata.php
new file mode 100644
index 000000000000..861225e3918f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecMetadata.php
@@ -0,0 +1,203 @@
+google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecMetadata
+ */
+class InitializeEncryptionSpecMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request for initialization.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Partial errors during initializing operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ */
+ private $partial_errors;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecRequest $request
+ * Output only. The original request for initialization.
+ * @type array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $partial_errors
+ * Partial errors during initializing operation that might cause the operation
+ * output to be incomplete.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request for initialization.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request for initialization.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Partial errors during initializing operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPartialErrors()
+ {
+ return $this->partial_errors;
+ }
+
+ /**
+ * Partial errors during initializing operation that might cause the operation
+ * output to be incomplete.
+ *
+ * Generated from protobuf field repeated .google.rpc.Status partial_errors = 4;
+ * @param array<\Google\Rpc\Status>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPartialErrors($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Rpc\Status::class);
+ $this->partial_errors = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecRequest.php
new file mode 100644
index 000000000000..46e5af435e5d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecRequest.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecRequest
+ */
+class InitializeEncryptionSpecRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The encryption spec used for CMEK encryption. It is required that
+ * the kms key is in the same region as the endpoint. The same key will be
+ * used for all provisioned resources, if encryption is available. If the
+ * `kms_key_name` field is left empty, no encryption will be enforced.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EncryptionSpec encryption_spec = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $encryption_spec = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\EncryptionSpec $encryptionSpec Required. The encryption spec used for CMEK encryption. It is required that
+ * the kms key is in the same region as the endpoint. The same key will be
+ * used for all provisioned resources, if encryption is available. If the
+ * `kms_key_name` field is left empty, no encryption will be enforced.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\EncryptionSpec $encryptionSpec): self
+ {
+ return (new self())
+ ->setEncryptionSpec($encryptionSpec);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\EncryptionSpec $encryption_spec
+ * Required. The encryption spec used for CMEK encryption. It is required that
+ * the kms key is in the same region as the endpoint. The same key will be
+ * used for all provisioned resources, if encryption is available. If the
+ * `kms_key_name` field is left empty, no encryption will be enforced.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The encryption spec used for CMEK encryption. It is required that
+ * the kms key is in the same region as the endpoint. The same key will be
+ * used for all provisioned resources, if encryption is available. If the
+ * `kms_key_name` field is left empty, no encryption will be enforced.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EncryptionSpec encryption_spec = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\EncryptionSpec|null
+ */
+ public function getEncryptionSpec()
+ {
+ return $this->encryption_spec;
+ }
+
+ public function hasEncryptionSpec()
+ {
+ return isset($this->encryption_spec);
+ }
+
+ public function clearEncryptionSpec()
+ {
+ unset($this->encryption_spec);
+ }
+
+ /**
+ * Required. The encryption spec used for CMEK encryption. It is required that
+ * the kms key is in the same region as the endpoint. The same key will be
+ * used for all provisioned resources, if encryption is available. If the
+ * `kms_key_name` field is left empty, no encryption will be enforced.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.EncryptionSpec encryption_spec = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\EncryptionSpec $var
+ * @return $this
+ */
+ public function setEncryptionSpec($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\EncryptionSpec::class);
+ $this->encryption_spec = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecResponse.php
new file mode 100644
index 000000000000..a56abe51d282
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InitializeEncryptionSpecResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.InitializeEncryptionSpecResponse
+ */
+class InitializeEncryptionSpecResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Intent.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Intent.php
new file mode 100644
index 000000000000..74f40304f91e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Intent.php
@@ -0,0 +1,102 @@
+google.cloud.contactcenterinsights.v1.Intent
+ */
+class Intent extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The unique identifier of the intent.
+ *
+ * Generated from protobuf field string id = 1;
+ */
+ protected $id = '';
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $id
+ * The unique identifier of the intent.
+ * @type string $display_name
+ * The human-readable name of the intent.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The unique identifier of the intent.
+ *
+ * Generated from protobuf field string id = 1;
+ * @return string
+ */
+ public function getId()
+ {
+ return $this->id;
+ }
+
+ /**
+ * The unique identifier of the intent.
+ *
+ * Generated from protobuf field string id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The human-readable name of the intent.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IntentMatchData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IntentMatchData.php
new file mode 100644
index 000000000000..7997dc89a081
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IntentMatchData.php
@@ -0,0 +1,74 @@
+google.cloud.contactcenterinsights.v1.IntentMatchData
+ */
+class IntentMatchData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The id of the matched intent.
+ * Can be used to retrieve the corresponding intent information.
+ *
+ * Generated from protobuf field string intent_unique_id = 1;
+ */
+ protected $intent_unique_id = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $intent_unique_id
+ * The id of the matched intent.
+ * Can be used to retrieve the corresponding intent information.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The id of the matched intent.
+ * Can be used to retrieve the corresponding intent information.
+ *
+ * Generated from protobuf field string intent_unique_id = 1;
+ * @return string
+ */
+ public function getIntentUniqueId()
+ {
+ return $this->intent_unique_id;
+ }
+
+ /**
+ * The id of the matched intent.
+ * Can be used to retrieve the corresponding intent information.
+ *
+ * Generated from protobuf field string intent_unique_id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setIntentUniqueId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->intent_unique_id = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InterruptionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InterruptionData.php
new file mode 100644
index 000000000000..c6692b654dbc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/InterruptionData.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.InterruptionData
+ */
+class InterruptionData extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Issue.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Issue.php
new file mode 100644
index 000000000000..710d57742358
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Issue.php
@@ -0,0 +1,269 @@
+google.cloud.contactcenterinsights.v1.Issue
+ */
+class Issue extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the issue.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * The representative name for the issue.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+ /**
+ * Output only. The time at which this issue was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time that this issue was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * Output only. Resource names of the sample representative utterances that
+ * match to this issue.
+ *
+ * Generated from protobuf field repeated string sample_utterances = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $sample_utterances;
+ /**
+ * Representative description of the issue.
+ *
+ * Generated from protobuf field string display_description = 14;
+ */
+ protected $display_description = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the issue.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ * @type string $display_name
+ * The representative name for the issue.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this issue was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time that this issue was updated.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $sample_utterances
+ * Output only. Resource names of the sample representative utterances that
+ * match to this issue.
+ * @type string $display_description
+ * Representative description of the issue.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the issue.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the issue.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The representative name for the issue.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The representative name for the issue.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this issue was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this issue was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time that this issue was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time that this issue was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Resource names of the sample representative utterances that
+ * match to this issue.
+ *
+ * Generated from protobuf field repeated string sample_utterances = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getSampleUtterances()
+ {
+ return $this->sample_utterances;
+ }
+
+ /**
+ * Output only. Resource names of the sample representative utterances that
+ * match to this issue.
+ *
+ * Generated from protobuf field repeated string sample_utterances = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setSampleUtterances($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->sample_utterances = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Representative description of the issue.
+ *
+ * Generated from protobuf field string display_description = 14;
+ * @return string
+ */
+ public function getDisplayDescription()
+ {
+ return $this->display_description;
+ }
+
+ /**
+ * Representative description of the issue.
+ *
+ * Generated from protobuf field string display_description = 14;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayDescription($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_description = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueAssignment.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueAssignment.php
new file mode 100644
index 000000000000..bfe826f1fadc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueAssignment.php
@@ -0,0 +1,143 @@
+google.cloud.contactcenterinsights.v1.IssueAssignment
+ */
+class IssueAssignment extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Resource name of the assigned issue.
+ *
+ * Generated from protobuf field string issue = 1;
+ */
+ protected $issue = '';
+ /**
+ * Score indicating the likelihood of the issue assignment.
+ * currently bounded on [0,1].
+ *
+ * Generated from protobuf field double score = 2;
+ */
+ protected $score = 0.0;
+ /**
+ * Immutable. Display name of the assigned issue. This field is set at time of
+ * analyis and immutable since then.
+ *
+ * Generated from protobuf field string display_name = 3 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $display_name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $issue
+ * Resource name of the assigned issue.
+ * @type float $score
+ * Score indicating the likelihood of the issue assignment.
+ * currently bounded on [0,1].
+ * @type string $display_name
+ * Immutable. Display name of the assigned issue. This field is set at time of
+ * analyis and immutable since then.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Resource name of the assigned issue.
+ *
+ * Generated from protobuf field string issue = 1;
+ * @return string
+ */
+ public function getIssue()
+ {
+ return $this->issue;
+ }
+
+ /**
+ * Resource name of the assigned issue.
+ *
+ * Generated from protobuf field string issue = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setIssue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue = $var;
+
+ return $this;
+ }
+
+ /**
+ * Score indicating the likelihood of the issue assignment.
+ * currently bounded on [0,1].
+ *
+ * Generated from protobuf field double score = 2;
+ * @return float
+ */
+ public function getScore()
+ {
+ return $this->score;
+ }
+
+ /**
+ * Score indicating the likelihood of the issue assignment.
+ * currently bounded on [0,1].
+ *
+ * Generated from protobuf field double score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Immutable. Display name of the assigned issue. This field is set at time of
+ * analyis and immutable since then.
+ *
+ * Generated from protobuf field string display_name = 3 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * Immutable. Display name of the assigned issue. This field is set at time of
+ * analyis and immutable since then.
+ *
+ * Generated from protobuf field string display_name = 3 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueMatchData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueMatchData.php
new file mode 100644
index 000000000000..a0efc3fe72dd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueMatchData.php
@@ -0,0 +1,77 @@
+google.cloud.contactcenterinsights.v1.IssueMatchData
+ */
+class IssueMatchData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Information about the issue's assignment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueAssignment issue_assignment = 1;
+ */
+ protected $issue_assignment = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueAssignment $issue_assignment
+ * Information about the issue's assignment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Information about the issue's assignment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueAssignment issue_assignment = 1;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueAssignment|null
+ */
+ public function getIssueAssignment()
+ {
+ return $this->issue_assignment;
+ }
+
+ public function hasIssueAssignment()
+ {
+ return isset($this->issue_assignment);
+ }
+
+ public function clearIssueAssignment()
+ {
+ unset($this->issue_assignment);
+ }
+
+ /**
+ * Information about the issue's assignment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueAssignment issue_assignment = 1;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueAssignment $var
+ * @return $this
+ */
+ public function setIssueAssignment($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueAssignment::class);
+ $this->issue_assignment = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel.php
new file mode 100644
index 000000000000..5f48567214a1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel.php
@@ -0,0 +1,425 @@
+google.cloud.contactcenterinsights.v1.IssueModel
+ */
+class IssueModel extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the issue model.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * The representative name for the issue model.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+ /**
+ * Output only. The time at which this issue model was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which the issue model was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * Output only. Number of issues in this issue model.
+ *
+ * Generated from protobuf field int64 issue_count = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $issue_count = 0;
+ /**
+ * Output only. State of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $state = 0;
+ /**
+ * Configs for the input data that used to create the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.InputDataConfig input_data_config = 6;
+ */
+ protected $input_data_config = null;
+ /**
+ * Output only. Immutable. The issue model's label statistics on its training
+ * data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats training_stats = 7 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $training_stats = null;
+ /**
+ * Type of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.ModelType model_type = 9;
+ */
+ protected $model_type = 0;
+ /**
+ * Language of the model.
+ *
+ * Generated from protobuf field string language_code = 10;
+ */
+ protected $language_code = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the issue model.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}
+ * @type string $display_name
+ * The representative name for the issue model.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this issue model was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the issue model was updated.
+ * @type int|string $issue_count
+ * Output only. Number of issues in this issue model.
+ * @type int $state
+ * Output only. State of the model.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModel\InputDataConfig $input_data_config
+ * Configs for the input data that used to create the issue model.
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats $training_stats
+ * Output only. Immutable. The issue model's label statistics on its training
+ * data.
+ * @type int $model_type
+ * Type of the model.
+ * @type string $language_code
+ * Language of the model.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the issue model.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the issue model.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The representative name for the issue model.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The representative name for the issue model.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this issue model was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this issue model was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the issue model was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the issue model was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Number of issues in this issue model.
+ *
+ * Generated from protobuf field int64 issue_count = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int|string
+ */
+ public function getIssueCount()
+ {
+ return $this->issue_count;
+ }
+
+ /**
+ * Output only. Number of issues in this issue model.
+ *
+ * Generated from protobuf field int64 issue_count = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int|string $var
+ * @return $this
+ */
+ public function setIssueCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->issue_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. State of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getState()
+ {
+ return $this->state;
+ }
+
+ /**
+ * Output only. State of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setState($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\IssueModel\State::class);
+ $this->state = $var;
+
+ return $this;
+ }
+
+ /**
+ * Configs for the input data that used to create the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.InputDataConfig input_data_config = 6;
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModel\InputDataConfig|null
+ */
+ public function getInputDataConfig()
+ {
+ return $this->input_data_config;
+ }
+
+ public function hasInputDataConfig()
+ {
+ return isset($this->input_data_config);
+ }
+
+ public function clearInputDataConfig()
+ {
+ unset($this->input_data_config);
+ }
+
+ /**
+ * Configs for the input data that used to create the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.InputDataConfig input_data_config = 6;
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModel\InputDataConfig $var
+ * @return $this
+ */
+ public function setInputDataConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModel\InputDataConfig::class);
+ $this->input_data_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Immutable. The issue model's label statistics on its training
+ * data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats training_stats = 7 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE];
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats|null
+ */
+ public function getTrainingStats()
+ {
+ return $this->training_stats;
+ }
+
+ public function hasTrainingStats()
+ {
+ return isset($this->training_stats);
+ }
+
+ public function clearTrainingStats()
+ {
+ unset($this->training_stats);
+ }
+
+ /**
+ * Output only. Immutable. The issue model's label statistics on its training
+ * data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModelLabelStats training_stats = 7 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.field_behavior) = IMMUTABLE];
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats $var
+ * @return $this
+ */
+ public function setTrainingStats($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats::class);
+ $this->training_stats = $var;
+
+ return $this;
+ }
+
+ /**
+ * Type of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.ModelType model_type = 9;
+ * @return int
+ */
+ public function getModelType()
+ {
+ return $this->model_type;
+ }
+
+ /**
+ * Type of the model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel.ModelType model_type = 9;
+ * @param int $var
+ * @return $this
+ */
+ public function setModelType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\IssueModel\ModelType::class);
+ $this->model_type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Language of the model.
+ *
+ * Generated from protobuf field string language_code = 10;
+ * @return string
+ */
+ public function getLanguageCode()
+ {
+ return $this->language_code;
+ }
+
+ /**
+ * Language of the model.
+ *
+ * Generated from protobuf field string language_code = 10;
+ * @param string $var
+ * @return $this
+ */
+ public function setLanguageCode($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->language_code = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/InputDataConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/InputDataConfig.php
new file mode 100644
index 000000000000..4a40b7cb1ee0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/InputDataConfig.php
@@ -0,0 +1,155 @@
+google.cloud.contactcenterinsights.v1.IssueModel.InputDataConfig
+ */
+class InputDataConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Medium of conversations used in training data. This field is being
+ * deprecated. To specify the medium to be used in training a new issue
+ * model, set the `medium` field on `filter`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [deprecated = true];
+ * @deprecated
+ */
+ protected $medium = 0;
+ /**
+ * Output only. Number of conversations used in training. Output only.
+ *
+ * Generated from protobuf field int64 training_conversations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $training_conversations_count = 0;
+ /**
+ * A filter to reduce the conversations used for training the model to a
+ * specific subset.
+ *
+ * Generated from protobuf field string filter = 3;
+ */
+ protected $filter = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $medium
+ * Medium of conversations used in training data. This field is being
+ * deprecated. To specify the medium to be used in training a new issue
+ * model, set the `medium` field on `filter`.
+ * @type int|string $training_conversations_count
+ * Output only. Number of conversations used in training. Output only.
+ * @type string $filter
+ * A filter to reduce the conversations used for training the model to a
+ * specific subset.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Medium of conversations used in training data. This field is being
+ * deprecated. To specify the medium to be used in training a new issue
+ * model, set the `medium` field on `filter`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [deprecated = true];
+ * @return int
+ * @deprecated
+ */
+ public function getMedium()
+ {
+ @trigger_error('medium is deprecated.', E_USER_DEPRECATED);
+ return $this->medium;
+ }
+
+ /**
+ * Medium of conversations used in training data. This field is being
+ * deprecated. To specify the medium to be used in training a new issue
+ * model, set the `medium` field on `filter`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation.Medium medium = 1 [deprecated = true];
+ * @param int $var
+ * @return $this
+ * @deprecated
+ */
+ public function setMedium($var)
+ {
+ @trigger_error('medium is deprecated.', E_USER_DEPRECATED);
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\Conversation\Medium::class);
+ $this->medium = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Number of conversations used in training. Output only.
+ *
+ * Generated from protobuf field int64 training_conversations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int|string
+ */
+ public function getTrainingConversationsCount()
+ {
+ return $this->training_conversations_count;
+ }
+
+ /**
+ * Output only. Number of conversations used in training. Output only.
+ *
+ * Generated from protobuf field int64 training_conversations_count = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int|string $var
+ * @return $this
+ */
+ public function setTrainingConversationsCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->training_conversations_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce the conversations used for training the model to a
+ * specific subset.
+ *
+ * Generated from protobuf field string filter = 3;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce the conversations used for training the model to a
+ * specific subset.
+ *
+ * Generated from protobuf field string filter = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(InputDataConfig::class, \Google\Cloud\ContactCenterInsights\V1\IssueModel_InputDataConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/ModelType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/ModelType.php
new file mode 100644
index 000000000000..f92a0416a08b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/ModelType.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.IssueModel.ModelType
+ */
+class ModelType
+{
+ /**
+ * Unspecified model type.
+ *
+ * Generated from protobuf enum MODEL_TYPE_UNSPECIFIED = 0;
+ */
+ const MODEL_TYPE_UNSPECIFIED = 0;
+ /**
+ * Type V1.
+ *
+ * Generated from protobuf enum TYPE_V1 = 1;
+ */
+ const TYPE_V1 = 1;
+ /**
+ * Type V2.
+ *
+ * Generated from protobuf enum TYPE_V2 = 2;
+ */
+ const TYPE_V2 = 2;
+
+ private static $valueToName = [
+ self::MODEL_TYPE_UNSPECIFIED => 'MODEL_TYPE_UNSPECIFIED',
+ self::TYPE_V1 => 'TYPE_V1',
+ self::TYPE_V2 => 'TYPE_V2',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(ModelType::class, \Google\Cloud\ContactCenterInsights\V1\IssueModel_ModelType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/State.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/State.php
new file mode 100644
index 000000000000..9092c5c9a341
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModel/State.php
@@ -0,0 +1,86 @@
+google.cloud.contactcenterinsights.v1.IssueModel.State
+ */
+class State
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum STATE_UNSPECIFIED = 0;
+ */
+ const STATE_UNSPECIFIED = 0;
+ /**
+ * Model is not deployed but is ready to deploy.
+ *
+ * Generated from protobuf enum UNDEPLOYED = 1;
+ */
+ const UNDEPLOYED = 1;
+ /**
+ * Model is being deployed.
+ *
+ * Generated from protobuf enum DEPLOYING = 2;
+ */
+ const DEPLOYING = 2;
+ /**
+ * Model is deployed and is ready to be used. A model can only be used in
+ * analysis if it's in this state.
+ *
+ * Generated from protobuf enum DEPLOYED = 3;
+ */
+ const DEPLOYED = 3;
+ /**
+ * Model is being undeployed.
+ *
+ * Generated from protobuf enum UNDEPLOYING = 4;
+ */
+ const UNDEPLOYING = 4;
+ /**
+ * Model is being deleted.
+ *
+ * Generated from protobuf enum DELETING = 5;
+ */
+ const DELETING = 5;
+
+ private static $valueToName = [
+ self::STATE_UNSPECIFIED => 'STATE_UNSPECIFIED',
+ self::UNDEPLOYED => 'UNDEPLOYED',
+ self::DEPLOYING => 'DEPLOYING',
+ self::DEPLOYED => 'DEPLOYED',
+ self::UNDEPLOYING => 'UNDEPLOYING',
+ self::DELETING => 'DELETING',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(State::class, \Google\Cloud\ContactCenterInsights\V1\IssueModel_State::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats.php
new file mode 100644
index 000000000000..13e20a42460f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats.php
@@ -0,0 +1,139 @@
+google.cloud.contactcenterinsights.v1.IssueModelLabelStats
+ */
+class IssueModelLabelStats extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Number of conversations the issue model has analyzed at this point in time.
+ *
+ * Generated from protobuf field int64 analyzed_conversations_count = 1;
+ */
+ protected $analyzed_conversations_count = 0;
+ /**
+ * Number of analyzed conversations for which no issue was applicable at this
+ * point in time.
+ *
+ * Generated from protobuf field int64 unclassified_conversations_count = 2;
+ */
+ protected $unclassified_conversations_count = 0;
+ /**
+ * Statistics on each issue. Key is the issue's resource name.
+ *
+ * Generated from protobuf field map issue_stats = 3;
+ */
+ private $issue_stats;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int|string $analyzed_conversations_count
+ * Number of conversations the issue model has analyzed at this point in time.
+ * @type int|string $unclassified_conversations_count
+ * Number of analyzed conversations for which no issue was applicable at this
+ * point in time.
+ * @type array|\Google\Protobuf\Internal\MapField $issue_stats
+ * Statistics on each issue. Key is the issue's resource name.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Number of conversations the issue model has analyzed at this point in time.
+ *
+ * Generated from protobuf field int64 analyzed_conversations_count = 1;
+ * @return int|string
+ */
+ public function getAnalyzedConversationsCount()
+ {
+ return $this->analyzed_conversations_count;
+ }
+
+ /**
+ * Number of conversations the issue model has analyzed at this point in time.
+ *
+ * Generated from protobuf field int64 analyzed_conversations_count = 1;
+ * @param int|string $var
+ * @return $this
+ */
+ public function setAnalyzedConversationsCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->analyzed_conversations_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Number of analyzed conversations for which no issue was applicable at this
+ * point in time.
+ *
+ * Generated from protobuf field int64 unclassified_conversations_count = 2;
+ * @return int|string
+ */
+ public function getUnclassifiedConversationsCount()
+ {
+ return $this->unclassified_conversations_count;
+ }
+
+ /**
+ * Number of analyzed conversations for which no issue was applicable at this
+ * point in time.
+ *
+ * Generated from protobuf field int64 unclassified_conversations_count = 2;
+ * @param int|string $var
+ * @return $this
+ */
+ public function setUnclassifiedConversationsCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->unclassified_conversations_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Statistics on each issue. Key is the issue's resource name.
+ *
+ * Generated from protobuf field map issue_stats = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getIssueStats()
+ {
+ return $this->issue_stats;
+ }
+
+ /**
+ * Statistics on each issue. Key is the issue's resource name.
+ *
+ * Generated from protobuf field map issue_stats = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setIssueStats($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats\IssueStats::class);
+ $this->issue_stats = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats/IssueStats.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats/IssueStats.php
new file mode 100644
index 000000000000..b6e19bb189f4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelLabelStats/IssueStats.php
@@ -0,0 +1,146 @@
+google.cloud.contactcenterinsights.v1.IssueModelLabelStats.IssueStats
+ */
+class IssueStats extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Issue resource.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string issue = 1;
+ */
+ protected $issue = '';
+ /**
+ * Number of conversations attached to the issue at this point in time.
+ *
+ * Generated from protobuf field int64 labeled_conversations_count = 2;
+ */
+ protected $labeled_conversations_count = 0;
+ /**
+ * Display name of the issue.
+ *
+ * Generated from protobuf field string display_name = 3;
+ */
+ protected $display_name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $issue
+ * Issue resource.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ * @type int|string $labeled_conversations_count
+ * Number of conversations attached to the issue at this point in time.
+ * @type string $display_name
+ * Display name of the issue.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Issue resource.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string issue = 1;
+ * @return string
+ */
+ public function getIssue()
+ {
+ return $this->issue;
+ }
+
+ /**
+ * Issue resource.
+ * Format:
+ * projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ *
+ * Generated from protobuf field string issue = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setIssue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue = $var;
+
+ return $this;
+ }
+
+ /**
+ * Number of conversations attached to the issue at this point in time.
+ *
+ * Generated from protobuf field int64 labeled_conversations_count = 2;
+ * @return int|string
+ */
+ public function getLabeledConversationsCount()
+ {
+ return $this->labeled_conversations_count;
+ }
+
+ /**
+ * Number of conversations attached to the issue at this point in time.
+ *
+ * Generated from protobuf field int64 labeled_conversations_count = 2;
+ * @param int|string $var
+ * @return $this
+ */
+ public function setLabeledConversationsCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->labeled_conversations_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * Display name of the issue.
+ *
+ * Generated from protobuf field string display_name = 3;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * Display name of the issue.
+ *
+ * Generated from protobuf field string display_name = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(IssueStats::class, \Google\Cloud\ContactCenterInsights\V1\IssueModelLabelStats_IssueStats::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelResult.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelResult.php
new file mode 100644
index 000000000000..80a0ea58e065
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/IssueModelResult.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.IssueModelResult
+ */
+class IssueModelResult extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Issue model that generates the result.
+ * Format: projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.resource_reference) = {
+ */
+ protected $issue_model = '';
+ /**
+ * All the matched issues.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueAssignment issues = 2;
+ */
+ private $issues;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $issue_model
+ * Issue model that generates the result.
+ * Format: projects/{project}/locations/{location}/issueModels/{issue_model}
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\IssueAssignment>|\Google\Protobuf\Internal\RepeatedField $issues
+ * All the matched issues.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Issue model that generates the result.
+ * Format: projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getIssueModel()
+ {
+ return $this->issue_model;
+ }
+
+ /**
+ * Issue model that generates the result.
+ * Format: projects/{project}/locations/{location}/issueModels/{issue_model}
+ *
+ * Generated from protobuf field string issue_model = 1 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setIssueModel($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->issue_model = $var;
+
+ return $this;
+ }
+
+ /**
+ * All the matched issues.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueAssignment issues = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getIssues()
+ {
+ return $this->issues;
+ }
+
+ /**
+ * All the matched issues.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueAssignment issues = 2;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\IssueAssignment>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setIssues($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\IssueAssignment::class);
+ $this->issues = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsRequest.php
new file mode 100644
index 000000000000..ef9e60d9bc14
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsRequest.php
@@ -0,0 +1,243 @@
+google.cloud.contactcenterinsights.v1.ListAllFeedbackLabelsRequest
+ */
+class ListAllFeedbackLabelsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of all feedback labels per project.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last `ListAllFeedbackLabelsResponse`.
+ * This value indicates that this is a continuation of a prior
+ * `ListAllFeedbackLabels` call and that the system should return the next
+ * page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+ /**
+ * Optional. A filter to reduce results to a specific subset in the entire
+ * project. Supports disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $filter = '';
+
+ /**
+ * @param string $parent Required. The parent resource of all feedback labels per project. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListAllFeedbackLabelsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of all feedback labels per project.
+ * @type int $page_size
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ * @type string $page_token
+ * Optional. The value returned by the last `ListAllFeedbackLabelsResponse`.
+ * This value indicates that this is a continuation of a prior
+ * `ListAllFeedbackLabels` call and that the system should return the next
+ * page of data.
+ * @type string $filter
+ * Optional. A filter to reduce results to a specific subset in the entire
+ * project. Supports disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of all feedback labels per project.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of all feedback labels per project.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListAllFeedbackLabelsResponse`.
+ * This value indicates that this is a continuation of a prior
+ * `ListAllFeedbackLabels` call and that the system should return the next
+ * page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListAllFeedbackLabelsResponse`.
+ * This value indicates that this is a continuation of a prior
+ * `ListAllFeedbackLabels` call and that the system should return the next
+ * page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset in the entire
+ * project. Supports disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset in the entire
+ * project. Supports disjunctions (OR) and conjunctions (AND).
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsResponse.php
new file mode 100644
index 000000000000..91eba08eec2c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAllFeedbackLabelsResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListAllFeedbackLabelsResponse
+ */
+class ListAllFeedbackLabelsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ */
+ private $feedback_labels;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\FeedbackLabel>|\Google\Protobuf\Internal\RepeatedField $feedback_labels
+ * The feedback labels that match the request.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getFeedbackLabels()
+ {
+ return $this->feedback_labels;
+ }
+
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\FeedbackLabel>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setFeedbackLabels($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel::class);
+ $this->feedback_labels = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesRequest.php
new file mode 100644
index 000000000000..0ca0f63bbf9a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesRequest.php
@@ -0,0 +1,207 @@
+google.cloud.contactcenterinsights.v1.ListAnalysesRequest
+ */
+class ListAnalysesRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the analyses.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * The maximum number of analyses to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ */
+ protected $page_size = 0;
+ /**
+ * The value returned by the last `ListAnalysesResponse`; indicates
+ * that this is a continuation of a prior `ListAnalyses` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ */
+ protected $page_token = '';
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ */
+ protected $filter = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the analyses. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListAnalysesRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the analyses.
+ * @type int $page_size
+ * The maximum number of analyses to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ * @type string $page_token
+ * The value returned by the last `ListAnalysesResponse`; indicates
+ * that this is a continuation of a prior `ListAnalyses` call and
+ * the system should return the next page of data.
+ * @type string $filter
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the analyses.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the analyses.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum number of analyses to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * The maximum number of analyses to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * The value returned by the last `ListAnalysesResponse`; indicates
+ * that this is a continuation of a prior `ListAnalyses` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * The value returned by the last `ListAnalysesResponse`; indicates
+ * that this is a continuation of a prior `ListAnalyses` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesResponse.php
new file mode 100644
index 000000000000..c1a8d2ea3c7c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysesResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListAnalysesResponse
+ */
+class ListAnalysesResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The analyses that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Analysis analyses = 1;
+ */
+ private $analyses;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Analysis>|\Google\Protobuf\Internal\RepeatedField $analyses
+ * The analyses that match the request.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The analyses that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Analysis analyses = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAnalyses()
+ {
+ return $this->analyses;
+ }
+
+ /**
+ * The analyses that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Analysis analyses = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Analysis>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAnalyses($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Analysis::class);
+ $this->analyses = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesRequest.php
new file mode 100644
index 000000000000..669c2c1a5bb4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesRequest.php
@@ -0,0 +1,169 @@
+google.cloud.contactcenterinsights.v1.ListAnalysisRulesRequest
+ */
+class ListAnalysisRulesRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the analysis rules.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The maximum number of analysis rule to return in the response. If
+ * this value is zero, the service will select a default size. A call may
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last `ListAnalysisRulesResponse`;
+ * indicates that this is a continuation of a prior `ListAnalysisRules` call
+ * and the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the analysis rules. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListAnalysisRulesRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the analysis rules.
+ * @type int $page_size
+ * Optional. The maximum number of analysis rule to return in the response. If
+ * this value is zero, the service will select a default size. A call may
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ * @type string $page_token
+ * Optional. The value returned by the last `ListAnalysisRulesResponse`;
+ * indicates that this is a continuation of a prior `ListAnalysisRules` call
+ * and the system should return the next page of data.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the analysis rules.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the analysis rules.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of analysis rule to return in the response. If
+ * this value is zero, the service will select a default size. A call may
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of analysis rule to return in the response. If
+ * this value is zero, the service will select a default size. A call may
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListAnalysisRulesResponse`;
+ * indicates that this is a continuation of a prior `ListAnalysisRules` call
+ * and the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListAnalysisRulesResponse`;
+ * indicates that this is a continuation of a prior `ListAnalysisRules` call
+ * and the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesResponse.php
new file mode 100644
index 000000000000..9ac585f2aeea
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListAnalysisRulesResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListAnalysisRulesResponse
+ */
+class ListAnalysisRulesResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The analysis_rule that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rules = 1;
+ */
+ private $analysis_rules;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\AnalysisRule>|\Google\Protobuf\Internal\RepeatedField $analysis_rules
+ * The analysis_rule that match the request.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The analysis_rule that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rules = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAnalysisRules()
+ {
+ return $this->analysis_rules;
+ }
+
+ /**
+ * The analysis_rule that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rules = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\AnalysisRule>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAnalysisRules($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\AnalysisRule::class);
+ $this->analysis_rules = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsRequest.php
new file mode 100644
index 000000000000..42dfc06a5ec7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsRequest.php
@@ -0,0 +1,323 @@
+google.cloud.contactcenterinsights.v1.ListConversationsRequest
+ */
+class ListConversationsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * The maximum number of conversations to return in the response. A valid page
+ * size ranges from 0 to 100,000 inclusive. If the page size is zero or
+ * unspecified, a default page size of 100 will be chosen. Note that a call
+ * might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ */
+ protected $page_size = 0;
+ /**
+ * The value returned by the last `ListConversationsResponse`. This value
+ * indicates that this is a continuation of a prior `ListConversations` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ */
+ protected $page_token = '';
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ */
+ protected $filter = '';
+ /**
+ * Optional. The attribute by which to order conversations in the response.
+ * If empty, conversations will be ordered by descending creation time.
+ * Supported values are one of the following:
+ * * create_time
+ * * customer_satisfaction_rating
+ * * duration
+ * * latest_analysis
+ * * start_time
+ * * turn_count
+ * The default sort order is ascending. To specify order, append `asc` or
+ * `desc` (`create_time desc`).
+ * For more details, see [Google AIPs
+ * Ordering](https://google.aip.dev/132#ordering).
+ *
+ * Generated from protobuf field string order_by = 7 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $order_by = '';
+ /**
+ * The level of details of the conversation. Default is `BASIC`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 5;
+ */
+ protected $view = 0;
+
+ /**
+ * @param string $parent Required. The parent resource of the conversation. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListConversationsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the conversation.
+ * @type int $page_size
+ * The maximum number of conversations to return in the response. A valid page
+ * size ranges from 0 to 100,000 inclusive. If the page size is zero or
+ * unspecified, a default page size of 100 will be chosen. Note that a call
+ * might return fewer results than the requested page size.
+ * @type string $page_token
+ * The value returned by the last `ListConversationsResponse`. This value
+ * indicates that this is a continuation of a prior `ListConversations` call
+ * and that the system should return the next page of data.
+ * @type string $filter
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ * @type string $order_by
+ * Optional. The attribute by which to order conversations in the response.
+ * If empty, conversations will be ordered by descending creation time.
+ * Supported values are one of the following:
+ * * create_time
+ * * customer_satisfaction_rating
+ * * duration
+ * * latest_analysis
+ * * start_time
+ * * turn_count
+ * The default sort order is ascending. To specify order, append `asc` or
+ * `desc` (`create_time desc`).
+ * For more details, see [Google AIPs
+ * Ordering](https://google.aip.dev/132#ordering).
+ * @type int $view
+ * The level of details of the conversation. Default is `BASIC`.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum number of conversations to return in the response. A valid page
+ * size ranges from 0 to 100,000 inclusive. If the page size is zero or
+ * unspecified, a default page size of 100 will be chosen. Note that a call
+ * might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * The maximum number of conversations to return in the response. A valid page
+ * size ranges from 0 to 100,000 inclusive. If the page size is zero or
+ * unspecified, a default page size of 100 will be chosen. Note that a call
+ * might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * The value returned by the last `ListConversationsResponse`. This value
+ * indicates that this is a continuation of a prior `ListConversations` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * The value returned by the last `ListConversationsResponse`. This value
+ * indicates that this is a continuation of a prior `ListConversations` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * conversations with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The attribute by which to order conversations in the response.
+ * If empty, conversations will be ordered by descending creation time.
+ * Supported values are one of the following:
+ * * create_time
+ * * customer_satisfaction_rating
+ * * duration
+ * * latest_analysis
+ * * start_time
+ * * turn_count
+ * The default sort order is ascending. To specify order, append `asc` or
+ * `desc` (`create_time desc`).
+ * For more details, see [Google AIPs
+ * Ordering](https://google.aip.dev/132#ordering).
+ *
+ * Generated from protobuf field string order_by = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getOrderBy()
+ {
+ return $this->order_by;
+ }
+
+ /**
+ * Optional. The attribute by which to order conversations in the response.
+ * If empty, conversations will be ordered by descending creation time.
+ * Supported values are one of the following:
+ * * create_time
+ * * customer_satisfaction_rating
+ * * duration
+ * * latest_analysis
+ * * start_time
+ * * turn_count
+ * The default sort order is ascending. To specify order, append `asc` or
+ * `desc` (`create_time desc`).
+ * For more details, see [Google AIPs
+ * Ordering](https://google.aip.dev/132#ordering).
+ *
+ * Generated from protobuf field string order_by = 7 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setOrderBy($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->order_by = $var;
+
+ return $this;
+ }
+
+ /**
+ * The level of details of the conversation. Default is `BASIC`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 5;
+ * @return int
+ */
+ public function getView()
+ {
+ return $this->view;
+ }
+
+ /**
+ * The level of details of the conversation. Default is `BASIC`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationView view = 5;
+ * @param int $var
+ * @return $this
+ */
+ public function setView($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ConversationView::class);
+ $this->view = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsResponse.php
new file mode 100644
index 000000000000..d43bf9bd86f7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListConversationsResponse.php
@@ -0,0 +1,109 @@
+google.cloud.contactcenterinsights.v1.ListConversationsResponse
+ */
+class ListConversationsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The conversations that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation conversations = 1;
+ */
+ private $conversations;
+ /**
+ * A token which can be sent as `page_token` to retrieve the next page. If
+ * this field is set, it means there is another page available. If it is not
+ * set, it means no other pages are available.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Conversation>|\Google\Protobuf\Internal\RepeatedField $conversations
+ * The conversations that match the request.
+ * @type string $next_page_token
+ * A token which can be sent as `page_token` to retrieve the next page. If
+ * this field is set, it means there is another page available. If it is not
+ * set, it means no other pages are available.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The conversations that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation conversations = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getConversations()
+ {
+ return $this->conversations;
+ }
+
+ /**
+ * The conversations that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Conversation conversations = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Conversation>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setConversations($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Conversation::class);
+ $this->conversations = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token which can be sent as `page_token` to retrieve the next page. If
+ * this field is set, it means there is another page available. If it is not
+ * set, it means no other pages are available.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token which can be sent as `page_token` to retrieve the next page. If
+ * this field is set, it means there is another page available. If it is not
+ * set, it means no other pages are available.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsRequest.php
new file mode 100644
index 000000000000..d8d7ac6fe694
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsRequest.php
@@ -0,0 +1,251 @@
+google.cloud.contactcenterinsights.v1.ListFeedbackLabelsRequest
+ */
+class ListFeedbackLabelsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND). Automatically sorts by
+ * conversation ID. To sort by all feedback labels in a project see
+ * ListAllFeedbackLabels.
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $filter = '';
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last `ListFeedbackLabelsResponse`. This
+ * value indicates that this is a continuation of a prior `ListFeedbackLabels`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the feedback labels. Please see
+ * {@see ContactCenterInsightsClient::conversationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListFeedbackLabelsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the feedback labels.
+ * @type string $filter
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND). Automatically sorts by
+ * conversation ID. To sort by all feedback labels in a project see
+ * ListAllFeedbackLabels.
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ * @type int $page_size
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ * @type string $page_token
+ * Optional. The value returned by the last `ListFeedbackLabelsResponse`. This
+ * value indicates that this is a continuation of a prior `ListFeedbackLabels`
+ * call and that the system should return the next page of data.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the feedback labels.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND). Automatically sorts by
+ * conversation ID. To sort by all feedback labels in a project see
+ * ListAllFeedbackLabels.
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Supports
+ * disjunctions (OR) and conjunctions (AND). Automatically sorts by
+ * conversation ID. To sort by all feedback labels in a project see
+ * ListAllFeedbackLabels.
+ * Supported fields:
+ * * `issue_model_id`
+ * * `qa_question_id`
+ * * `qa_scorecard_id`
+ * * `min_create_time`
+ * * `max_create_time`
+ * * `min_update_time`
+ * * `max_update_time`
+ * * `feedback_label_type`: QUALITY_AI, TOPIC_MODELING
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of feedback labels to return in the response.
+ * A valid page size ranges from 0 to 100,000 inclusive. If the page size is
+ * zero or unspecified, a default page size of 100 will be chosen. Note that a
+ * call might return fewer results than the requested page size.
+ *
+ * Generated from protobuf field int32 page_size = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListFeedbackLabelsResponse`. This
+ * value indicates that this is a continuation of a prior `ListFeedbackLabels`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListFeedbackLabelsResponse`. This
+ * value indicates that this is a continuation of a prior `ListFeedbackLabels`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsResponse.php
new file mode 100644
index 000000000000..de015c00ba02
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListFeedbackLabelsResponse.php
@@ -0,0 +1,101 @@
+google.cloud.contactcenterinsights.v1.ListFeedbackLabelsResponse
+ */
+class ListFeedbackLabelsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ */
+ private $feedback_labels;
+ /**
+ * The next page token.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\FeedbackLabel>|\Google\Protobuf\Internal\RepeatedField $feedback_labels
+ * The feedback labels that match the request.
+ * @type string $next_page_token
+ * The next page token.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getFeedbackLabels()
+ {
+ return $this->feedback_labels;
+ }
+
+ /**
+ * The feedback labels that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_labels = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\FeedbackLabel>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setFeedbackLabels($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel::class);
+ $this->feedback_labels = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The next page token.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * The next page token.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsRequest.php
new file mode 100644
index 000000000000..797cc70091fb
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.ListIssueModelsRequest
+ */
+class ListIssueModelsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the issue model. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListIssueModelsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the issue model.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the issue model.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsResponse.php
new file mode 100644
index 000000000000..fd1955c2afaf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssueModelsResponse.php
@@ -0,0 +1,67 @@
+google.cloud.contactcenterinsights.v1.ListIssueModelsResponse
+ */
+class ListIssueModelsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The issue models that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueModel issue_models = 1;
+ */
+ private $issue_models;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\IssueModel>|\Google\Protobuf\Internal\RepeatedField $issue_models
+ * The issue models that match the request.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The issue models that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueModel issue_models = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getIssueModels()
+ {
+ return $this->issue_models;
+ }
+
+ /**
+ * The issue models that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.IssueModel issue_models = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\IssueModel>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setIssueModels($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\IssueModel::class);
+ $this->issue_models = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesRequest.php
new file mode 100644
index 000000000000..9c33a0640c2a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.ListIssuesRequest
+ */
+class ListIssuesRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the issue.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the issue. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListIssuesRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the issue.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the issue.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the issue.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesResponse.php
new file mode 100644
index 000000000000..3bb883650053
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListIssuesResponse.php
@@ -0,0 +1,67 @@
+google.cloud.contactcenterinsights.v1.ListIssuesResponse
+ */
+class ListIssuesResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The issues that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Issue issues = 1;
+ */
+ private $issues;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Issue>|\Google\Protobuf\Internal\RepeatedField $issues
+ * The issues that match the request.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The issues that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Issue issues = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getIssues()
+ {
+ return $this->issues;
+ }
+
+ /**
+ * The issues that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Issue issues = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Issue>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setIssues($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Issue::class);
+ $this->issues = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersRequest.php
new file mode 100644
index 000000000000..531bf84f176f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersRequest.php
@@ -0,0 +1,207 @@
+google.cloud.contactcenterinsights.v1.ListPhraseMatchersRequest
+ */
+class ListPhraseMatchersRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the phrase matcher.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * The maximum number of phrase matchers to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ */
+ protected $page_size = 0;
+ /**
+ * The value returned by the last `ListPhraseMatchersResponse`. This value
+ * indicates that this is a continuation of a prior `ListPhraseMatchers` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ */
+ protected $page_token = '';
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * phrase matchers with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ */
+ protected $filter = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the phrase matcher. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListPhraseMatchersRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the phrase matcher.
+ * @type int $page_size
+ * The maximum number of phrase matchers to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ * @type string $page_token
+ * The value returned by the last `ListPhraseMatchersResponse`. This value
+ * indicates that this is a continuation of a prior `ListPhraseMatchers` call
+ * and that the system should return the next page of data.
+ * @type string $filter
+ * A filter to reduce results to a specific subset. Useful for querying
+ * phrase matchers with specific properties.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the phrase matcher.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the phrase matcher.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum number of phrase matchers to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * The maximum number of phrase matchers to return in the response. If this
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * The value returned by the last `ListPhraseMatchersResponse`. This value
+ * indicates that this is a continuation of a prior `ListPhraseMatchers` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * The value returned by the last `ListPhraseMatchersResponse`. This value
+ * indicates that this is a continuation of a prior `ListPhraseMatchers` call
+ * and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * phrase matchers with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * A filter to reduce results to a specific subset. Useful for querying
+ * phrase matchers with specific properties.
+ *
+ * Generated from protobuf field string filter = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersResponse.php
new file mode 100644
index 000000000000..a757fadd7624
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListPhraseMatchersResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListPhraseMatchersResponse
+ */
+class ListPhraseMatchersResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The phrase matchers that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matchers = 1;
+ */
+ private $phrase_matchers;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatcher>|\Google\Protobuf\Internal\RepeatedField $phrase_matchers
+ * The phrase matchers that match the request.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The phrase matchers that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matchers = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPhraseMatchers()
+ {
+ return $this->phrase_matchers;
+ }
+
+ /**
+ * The phrase matchers that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matchers = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatcher>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPhraseMatchers($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher::class);
+ $this->phrase_matchers = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsRequest.php
new file mode 100644
index 000000000000..7f6fe2028e34
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsRequest.php
@@ -0,0 +1,169 @@
+google.cloud.contactcenterinsights.v1.ListQaQuestionsRequest
+ */
+class ListQaQuestionsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the questions.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The maximum number of questions to return in the response. If the
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last `ListQaQuestionsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaQuestions`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the questions. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardRevisionName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListQaQuestionsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the questions.
+ * @type int $page_size
+ * Optional. The maximum number of questions to return in the response. If the
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ * @type string $page_token
+ * Optional. The value returned by the last `ListQaQuestionsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaQuestions`
+ * call and that the system should return the next page of data.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the questions.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the questions.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of questions to return in the response. If the
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of questions to return in the response. If the
+ * value is zero, the service will select a default size. A call might return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListQaQuestionsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaQuestions`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListQaQuestionsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaQuestions`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsResponse.php
new file mode 100644
index 000000000000..dd2b4921404d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaQuestionsResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListQaQuestionsResponse
+ */
+class ListQaQuestionsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The QaQuestions under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion qa_questions = 1;
+ */
+ private $qa_questions;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaQuestion>|\Google\Protobuf\Internal\RepeatedField $qa_questions
+ * The QaQuestions under the parent.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The QaQuestions under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion qa_questions = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaQuestions()
+ {
+ return $this->qa_questions;
+ }
+
+ /**
+ * The QaQuestions under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion qa_questions = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaQuestion>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaQuestions($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaQuestion::class);
+ $this->qa_questions = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsRequest.php
new file mode 100644
index 000000000000..101d88e101b5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsRequest.php
@@ -0,0 +1,221 @@
+google.cloud.contactcenterinsights.v1.ListQaScorecardRevisionsRequest
+ */
+class ListQaScorecardRevisionsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the scorecard revisions. To list all
+ * revisions of all scorecards, substitute the QaScorecard ID with a '-'
+ * character.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The maximum number of scorecard revisions to return in the
+ * response. If the value is zero, the service will select a default size. A
+ * call might return fewer objects than requested. A non-empty
+ * `next_page_token` in the response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last
+ * `ListQaScorecardRevisionsResponse`. This value indicates that this is a
+ * continuation of a prior `ListQaScorecardRevisions` call and that the system
+ * should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+ /**
+ * Optional. A filter to reduce results to a specific subset. Useful for
+ * querying scorecard revisions with specific properties.
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $filter = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the scorecard revisions. To list all
+ * revisions of all scorecards, substitute the QaScorecard ID with a '-'
+ * character. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListQaScorecardRevisionsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the scorecard revisions. To list all
+ * revisions of all scorecards, substitute the QaScorecard ID with a '-'
+ * character.
+ * @type int $page_size
+ * Optional. The maximum number of scorecard revisions to return in the
+ * response. If the value is zero, the service will select a default size. A
+ * call might return fewer objects than requested. A non-empty
+ * `next_page_token` in the response indicates that more data is available.
+ * @type string $page_token
+ * Optional. The value returned by the last
+ * `ListQaScorecardRevisionsResponse`. This value indicates that this is a
+ * continuation of a prior `ListQaScorecardRevisions` call and that the system
+ * should return the next page of data.
+ * @type string $filter
+ * Optional. A filter to reduce results to a specific subset. Useful for
+ * querying scorecard revisions with specific properties.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the scorecard revisions. To list all
+ * revisions of all scorecards, substitute the QaScorecard ID with a '-'
+ * character.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the scorecard revisions. To list all
+ * revisions of all scorecards, substitute the QaScorecard ID with a '-'
+ * character.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of scorecard revisions to return in the
+ * response. If the value is zero, the service will select a default size. A
+ * call might return fewer objects than requested. A non-empty
+ * `next_page_token` in the response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of scorecard revisions to return in the
+ * response. If the value is zero, the service will select a default size. A
+ * call might return fewer objects than requested. A non-empty
+ * `next_page_token` in the response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last
+ * `ListQaScorecardRevisionsResponse`. This value indicates that this is a
+ * continuation of a prior `ListQaScorecardRevisions` call and that the system
+ * should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last
+ * `ListQaScorecardRevisionsResponse`. This value indicates that this is a
+ * continuation of a prior `ListQaScorecardRevisions` call and that the system
+ * should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Useful for
+ * querying scorecard revisions with specific properties.
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Optional. A filter to reduce results to a specific subset. Useful for
+ * querying scorecard revisions with specific properties.
+ *
+ * Generated from protobuf field string filter = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsResponse.php
new file mode 100644
index 000000000000..94602098bcc8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardRevisionsResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListQaScorecardRevisionsResponse
+ */
+class ListQaScorecardRevisionsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revisions = 1;
+ */
+ private $qa_scorecard_revisions;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision>|\Google\Protobuf\Internal\RepeatedField $qa_scorecard_revisions
+ * The QaScorecards under the parent.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revisions = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaScorecardRevisions()
+ {
+ return $this->qa_scorecard_revisions;
+ }
+
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardRevision qa_scorecard_revisions = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaScorecardRevisions($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision::class);
+ $this->qa_scorecard_revisions = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsRequest.php
new file mode 100644
index 000000000000..2c3c43c14352
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsRequest.php
@@ -0,0 +1,169 @@
+google.cloud.contactcenterinsights.v1.ListQaScorecardsRequest
+ */
+class ListQaScorecardsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the scorecards.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Optional. The maximum number of scorecards to return in the response. If
+ * the value is zero, the service will select a default size. A call might
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_size = 0;
+ /**
+ * Optional. The value returned by the last `ListQaScorecardsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaScorecards`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $page_token = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the scorecards. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListQaScorecardsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the scorecards.
+ * @type int $page_size
+ * Optional. The maximum number of scorecards to return in the response. If
+ * the value is zero, the service will select a default size. A call might
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ * @type string $page_token
+ * Optional. The value returned by the last `ListQaScorecardsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaScorecards`
+ * call and that the system should return the next page of data.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the scorecards.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the scorecards.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The maximum number of scorecards to return in the response. If
+ * the value is zero, the service will select a default size. A call might
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * Optional. The maximum number of scorecards to return in the response. If
+ * the value is zero, the service will select a default size. A call might
+ * return fewer objects than requested. A non-empty `next_page_token` in the
+ * response indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListQaScorecardsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaScorecards`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * Optional. The value returned by the last `ListQaScorecardsResponse`. This
+ * value indicates that this is a continuation of a prior `ListQaScorecards`
+ * call and that the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsResponse.php
new file mode 100644
index 000000000000..0ba9b256c4df
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListQaScorecardsResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListQaScorecardsResponse
+ */
+class ListQaScorecardsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecards = 1;
+ */
+ private $qa_scorecards;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecard>|\Google\Protobuf\Internal\RepeatedField $qa_scorecards
+ * The QaScorecards under the parent.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecards = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaScorecards()
+ {
+ return $this->qa_scorecards;
+ }
+
+ /**
+ * The QaScorecards under the parent.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecards = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecard>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaScorecards($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecard::class);
+ $this->qa_scorecards = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsRequest.php
new file mode 100644
index 000000000000..6beedf23a10a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsRequest.php
@@ -0,0 +1,169 @@
+google.cloud.contactcenterinsights.v1.ListViewsRequest
+ */
+class ListViewsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the views.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * The maximum number of views to return in the response. If this
+ * value is zero, the service will select a default size. A call may return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ */
+ protected $page_size = 0;
+ /**
+ * The value returned by the last `ListViewsResponse`; indicates
+ * that this is a continuation of a prior `ListViews` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ */
+ protected $page_token = '';
+
+ /**
+ * @param string $parent Required. The parent resource of the views. Please see
+ * {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\ListViewsRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent): self
+ {
+ return (new self())
+ ->setParent($parent);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the views.
+ * @type int $page_size
+ * The maximum number of views to return in the response. If this
+ * value is zero, the service will select a default size. A call may return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ * @type string $page_token
+ * The value returned by the last `ListViewsResponse`; indicates
+ * that this is a continuation of a prior `ListViews` call and
+ * the system should return the next page of data.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the views.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the views.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum number of views to return in the response. If this
+ * value is zero, the service will select a default size. A call may return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @return int
+ */
+ public function getPageSize()
+ {
+ return $this->page_size;
+ }
+
+ /**
+ * The maximum number of views to return in the response. If this
+ * value is zero, the service will select a default size. A call may return
+ * fewer objects than requested. A non-empty `next_page_token` in the response
+ * indicates that more data is available.
+ *
+ * Generated from protobuf field int32 page_size = 2;
+ * @param int $var
+ * @return $this
+ */
+ public function setPageSize($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->page_size = $var;
+
+ return $this;
+ }
+
+ /**
+ * The value returned by the last `ListViewsResponse`; indicates
+ * that this is a continuation of a prior `ListViews` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @return string
+ */
+ public function getPageToken()
+ {
+ return $this->page_token;
+ }
+
+ /**
+ * The value returned by the last `ListViewsResponse`; indicates
+ * that this is a continuation of a prior `ListViews` call and
+ * the system should return the next page of data.
+ *
+ * Generated from protobuf field string page_token = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsResponse.php
new file mode 100644
index 000000000000..18ad9605fc2b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/ListViewsResponse.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.ListViewsResponse
+ */
+class ListViewsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The views that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.View views = 1;
+ */
+ private $views;
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ */
+ protected $next_page_token = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\View>|\Google\Protobuf\Internal\RepeatedField $views
+ * The views that match the request.
+ * @type string $next_page_token
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The views that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.View views = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getViews()
+ {
+ return $this->views;
+ }
+
+ /**
+ * The views that match the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.View views = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\View>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setViews($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\View::class);
+ $this->views = $arr;
+
+ return $this;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @return string
+ */
+ public function getNextPageToken()
+ {
+ return $this->next_page_token;
+ }
+
+ /**
+ * A token, which can be sent as `page_token` to retrieve the next page.
+ * If this field is omitted, there are no subsequent pages.
+ *
+ * Generated from protobuf field string next_page_token = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setNextPageToken($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->next_page_token = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchData.php
new file mode 100644
index 000000000000..976b4005d028
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchData.php
@@ -0,0 +1,102 @@
+google.cloud.contactcenterinsights.v1.PhraseMatchData
+ */
+class PhraseMatchData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The unique identifier (the resource name) of the phrase matcher.
+ *
+ * Generated from protobuf field string phrase_matcher = 1;
+ */
+ protected $phrase_matcher = '';
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $phrase_matcher
+ * The unique identifier (the resource name) of the phrase matcher.
+ * @type string $display_name
+ * The human-readable name of the phrase matcher.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The unique identifier (the resource name) of the phrase matcher.
+ *
+ * Generated from protobuf field string phrase_matcher = 1;
+ * @return string
+ */
+ public function getPhraseMatcher()
+ {
+ return $this->phrase_matcher;
+ }
+
+ /**
+ * The unique identifier (the resource name) of the phrase matcher.
+ *
+ * Generated from protobuf field string phrase_matcher = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setPhraseMatcher($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->phrase_matcher = $var;
+
+ return $this;
+ }
+
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRule.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRule.php
new file mode 100644
index 000000000000..7c378d92751c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRule.php
@@ -0,0 +1,153 @@
+google.cloud.contactcenterinsights.v1.PhraseMatchRule
+ */
+class PhraseMatchRule extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The phrase to be matched.
+ *
+ * Generated from protobuf field string query = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $query = '';
+ /**
+ * Specifies whether the phrase must be missing from the transcript segment or
+ * present in the transcript segment.
+ *
+ * Generated from protobuf field bool negated = 2;
+ */
+ protected $negated = false;
+ /**
+ * Provides additional information about the rule that specifies how to apply
+ * the rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleConfig config = 3;
+ */
+ protected $config = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $query
+ * Required. The phrase to be matched.
+ * @type bool $negated
+ * Specifies whether the phrase must be missing from the transcript segment or
+ * present in the transcript segment.
+ * @type \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleConfig $config
+ * Provides additional information about the rule that specifies how to apply
+ * the rule.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The phrase to be matched.
+ *
+ * Generated from protobuf field string query = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getQuery()
+ {
+ return $this->query;
+ }
+
+ /**
+ * Required. The phrase to be matched.
+ *
+ * Generated from protobuf field string query = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setQuery($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query = $var;
+
+ return $this;
+ }
+
+ /**
+ * Specifies whether the phrase must be missing from the transcript segment or
+ * present in the transcript segment.
+ *
+ * Generated from protobuf field bool negated = 2;
+ * @return bool
+ */
+ public function getNegated()
+ {
+ return $this->negated;
+ }
+
+ /**
+ * Specifies whether the phrase must be missing from the transcript segment or
+ * present in the transcript segment.
+ *
+ * Generated from protobuf field bool negated = 2;
+ * @param bool $var
+ * @return $this
+ */
+ public function setNegated($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->negated = $var;
+
+ return $this;
+ }
+
+ /**
+ * Provides additional information about the rule that specifies how to apply
+ * the rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleConfig config = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleConfig|null
+ */
+ public function getConfig()
+ {
+ return $this->config;
+ }
+
+ public function hasConfig()
+ {
+ return isset($this->config);
+ }
+
+ public function clearConfig()
+ {
+ unset($this->config);
+ }
+
+ /**
+ * Provides additional information about the rule that specifies how to apply
+ * the rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleConfig config = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleConfig $var
+ * @return $this
+ */
+ public function setConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleConfig::class);
+ $this->config = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleConfig.php
new file mode 100644
index 000000000000..bc1b1f53a206
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleConfig.php
@@ -0,0 +1,75 @@
+google.cloud.contactcenterinsights.v1.PhraseMatchRuleConfig
+ */
+class PhraseMatchRuleConfig extends \Google\Protobuf\Internal\Message
+{
+ protected $config;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\ExactMatchConfig $exact_match_config
+ * The configuration for the exact match rule.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The configuration for the exact match rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExactMatchConfig exact_match_config = 1;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ExactMatchConfig|null
+ */
+ public function getExactMatchConfig()
+ {
+ return $this->readOneof(1);
+ }
+
+ public function hasExactMatchConfig()
+ {
+ return $this->hasOneof(1);
+ }
+
+ /**
+ * The configuration for the exact match rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ExactMatchConfig exact_match_config = 1;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ExactMatchConfig $var
+ * @return $this
+ */
+ public function setExactMatchConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ExactMatchConfig::class);
+ $this->writeOneof(1, $var);
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getConfig()
+ {
+ return $this->whichOneof("config");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup.php
new file mode 100644
index 000000000000..3349ff2378e3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup.php
@@ -0,0 +1,101 @@
+google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup
+ */
+class PhraseMatchRuleGroup extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The type of this phrase match rule group.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup.PhraseMatchRuleGroupType type = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $type = 0;
+ /**
+ * A list of phrase match rules that are included in this group.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRule phrase_match_rules = 2;
+ */
+ private $phrase_match_rules;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $type
+ * Required. The type of this phrase match rule group.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatchRule>|\Google\Protobuf\Internal\RepeatedField $phrase_match_rules
+ * A list of phrase match rules that are included in this group.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The type of this phrase match rule group.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup.PhraseMatchRuleGroupType type = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return int
+ */
+ public function getType()
+ {
+ return $this->type;
+ }
+
+ /**
+ * Required. The type of this phrase match rule group.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup.PhraseMatchRuleGroupType type = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param int $var
+ * @return $this
+ */
+ public function setType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleGroup\PhraseMatchRuleGroupType::class);
+ $this->type = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of phrase match rules that are included in this group.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRule phrase_match_rules = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPhraseMatchRules()
+ {
+ return $this->phrase_match_rules;
+ }
+
+ /**
+ * A list of phrase match rules that are included in this group.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRule phrase_match_rules = 2;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatchRule>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPhraseMatchRules($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRule::class);
+ $this->phrase_match_rules = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup/PhraseMatchRuleGroupType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup/PhraseMatchRuleGroupType.php
new file mode 100644
index 000000000000..109fdfea30d9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatchRuleGroup/PhraseMatchRuleGroupType.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup.PhraseMatchRuleGroupType
+ */
+class PhraseMatchRuleGroupType
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED = 0;
+ */
+ const PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED = 0;
+ /**
+ * Must meet all phrase match rules or there is no match.
+ *
+ * Generated from protobuf enum ALL_OF = 1;
+ */
+ const ALL_OF = 1;
+ /**
+ * If any of the phrase match rules are met, there is a match.
+ *
+ * Generated from protobuf enum ANY_OF = 2;
+ */
+ const ANY_OF = 2;
+
+ private static $valueToName = [
+ self::PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED => 'PHRASE_MATCH_RULE_GROUP_TYPE_UNSPECIFIED',
+ self::ALL_OF => 'ALL_OF',
+ self::ANY_OF => 'ANY_OF',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(PhraseMatchRuleGroupType::class, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleGroup_PhraseMatchRuleGroupType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher.php
new file mode 100644
index 000000000000..44a2e86faddd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher.php
@@ -0,0 +1,477 @@
+google.cloud.contactcenterinsights.v1.PhraseMatcher
+ */
+class PhraseMatcher extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The resource name of the phrase matcher.
+ * Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field string name = 1;
+ */
+ protected $name = '';
+ /**
+ * Output only. Immutable. The revision ID of the phrase matcher.
+ * A new revision is committed whenever the matcher is changed, except when it
+ * is activated or deactivated. A server generated random ID will be used.
+ * Example: locations/global/phraseMatchers/my-first-matcher@1234567
+ *
+ * Generated from protobuf field string revision_id = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $revision_id = '';
+ /**
+ * The customized version tag to use for the phrase matcher. If not specified,
+ * it will default to `revision_id`.
+ *
+ * Generated from protobuf field string version_tag = 3;
+ */
+ protected $version_tag = '';
+ /**
+ * Output only. The timestamp of when the revision was created. It is also the
+ * create time when a new matcher is added.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp revision_create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $revision_create_time = null;
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 5;
+ */
+ protected $display_name = '';
+ /**
+ * Required. The type of this phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher.PhraseMatcherType type = 6 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $type = 0;
+ /**
+ * Applies the phrase matcher only when it is active.
+ *
+ * Generated from protobuf field bool active = 7;
+ */
+ protected $active = false;
+ /**
+ * A list of phase match rule groups that are included in this matcher.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup phrase_match_rule_groups = 8;
+ */
+ private $phrase_match_rule_groups;
+ /**
+ * Output only. The most recent time at which the activation status was
+ * updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp activation_update_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $activation_update_time = null;
+ /**
+ * The role whose utterances the phrase matcher should be matched
+ * against. If the role is ROLE_UNSPECIFIED it will be matched against any
+ * utterances in the transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role_match = 10;
+ */
+ protected $role_match = 0;
+ /**
+ * Output only. The most recent time at which the phrase matcher was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * The resource name of the phrase matcher.
+ * Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ * @type string $revision_id
+ * Output only. Immutable. The revision ID of the phrase matcher.
+ * A new revision is committed whenever the matcher is changed, except when it
+ * is activated or deactivated. A server generated random ID will be used.
+ * Example: locations/global/phraseMatchers/my-first-matcher@1234567
+ * @type string $version_tag
+ * The customized version tag to use for the phrase matcher. If not specified,
+ * it will default to `revision_id`.
+ * @type \Google\Protobuf\Timestamp $revision_create_time
+ * Output only. The timestamp of when the revision was created. It is also the
+ * create time when a new matcher is added.
+ * @type string $display_name
+ * The human-readable name of the phrase matcher.
+ * @type int $type
+ * Required. The type of this phrase matcher.
+ * @type bool $active
+ * Applies the phrase matcher only when it is active.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleGroup>|\Google\Protobuf\Internal\RepeatedField $phrase_match_rule_groups
+ * A list of phase match rule groups that are included in this matcher.
+ * @type \Google\Protobuf\Timestamp $activation_update_time
+ * Output only. The most recent time at which the activation status was
+ * updated.
+ * @type int $role_match
+ * The role whose utterances the phrase matcher should be matched
+ * against. If the role is ROLE_UNSPECIFIED it will be matched against any
+ * utterances in the transcript.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the phrase matcher was updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The resource name of the phrase matcher.
+ * Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field string name = 1;
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * The resource name of the phrase matcher.
+ * Format:
+ * projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ *
+ * Generated from protobuf field string name = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Immutable. The revision ID of the phrase matcher.
+ * A new revision is committed whenever the matcher is changed, except when it
+ * is activated or deactivated. A server generated random ID will be used.
+ * Example: locations/global/phraseMatchers/my-first-matcher@1234567
+ *
+ * Generated from protobuf field string revision_id = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return string
+ */
+ public function getRevisionId()
+ {
+ return $this->revision_id;
+ }
+
+ /**
+ * Output only. Immutable. The revision ID of the phrase matcher.
+ * A new revision is committed whenever the matcher is changed, except when it
+ * is activated or deactivated. A server generated random ID will be used.
+ * Example: locations/global/phraseMatchers/my-first-matcher@1234567
+ *
+ * Generated from protobuf field string revision_id = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param string $var
+ * @return $this
+ */
+ public function setRevisionId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->revision_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The customized version tag to use for the phrase matcher. If not specified,
+ * it will default to `revision_id`.
+ *
+ * Generated from protobuf field string version_tag = 3;
+ * @return string
+ */
+ public function getVersionTag()
+ {
+ return $this->version_tag;
+ }
+
+ /**
+ * The customized version tag to use for the phrase matcher. If not specified,
+ * it will default to `revision_id`.
+ *
+ * Generated from protobuf field string version_tag = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setVersionTag($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->version_tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The timestamp of when the revision was created. It is also the
+ * create time when a new matcher is added.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp revision_create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getRevisionCreateTime()
+ {
+ return $this->revision_create_time;
+ }
+
+ public function hasRevisionCreateTime()
+ {
+ return isset($this->revision_create_time);
+ }
+
+ public function clearRevisionCreateTime()
+ {
+ unset($this->revision_create_time);
+ }
+
+ /**
+ * Output only. The timestamp of when the revision was created. It is also the
+ * create time when a new matcher is added.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp revision_create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setRevisionCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->revision_create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 5;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The human-readable name of the phrase matcher.
+ *
+ * Generated from protobuf field string display_name = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The type of this phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher.PhraseMatcherType type = 6 [(.google.api.field_behavior) = REQUIRED];
+ * @return int
+ */
+ public function getType()
+ {
+ return $this->type;
+ }
+
+ /**
+ * Required. The type of this phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher.PhraseMatcherType type = 6 [(.google.api.field_behavior) = REQUIRED];
+ * @param int $var
+ * @return $this
+ */
+ public function setType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher\PhraseMatcherType::class);
+ $this->type = $var;
+
+ return $this;
+ }
+
+ /**
+ * Applies the phrase matcher only when it is active.
+ *
+ * Generated from protobuf field bool active = 7;
+ * @return bool
+ */
+ public function getActive()
+ {
+ return $this->active;
+ }
+
+ /**
+ * Applies the phrase matcher only when it is active.
+ *
+ * Generated from protobuf field bool active = 7;
+ * @param bool $var
+ * @return $this
+ */
+ public function setActive($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->active = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of phase match rule groups that are included in this matcher.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup phrase_match_rule_groups = 8;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getPhraseMatchRuleGroups()
+ {
+ return $this->phrase_match_rule_groups;
+ }
+
+ /**
+ * A list of phase match rule groups that are included in this matcher.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.PhraseMatchRuleGroup phrase_match_rule_groups = 8;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleGroup>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setPhraseMatchRuleGroups($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\PhraseMatchRuleGroup::class);
+ $this->phrase_match_rule_groups = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the activation status was
+ * updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp activation_update_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getActivationUpdateTime()
+ {
+ return $this->activation_update_time;
+ }
+
+ public function hasActivationUpdateTime()
+ {
+ return isset($this->activation_update_time);
+ }
+
+ public function clearActivationUpdateTime()
+ {
+ unset($this->activation_update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the activation status was
+ * updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp activation_update_time = 9 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setActivationUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->activation_update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The role whose utterances the phrase matcher should be matched
+ * against. If the role is ROLE_UNSPECIFIED it will be matched against any
+ * utterances in the transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role_match = 10;
+ * @return int
+ */
+ public function getRoleMatch()
+ {
+ return $this->role_match;
+ }
+
+ /**
+ * The role whose utterances the phrase matcher should be matched
+ * against. If the role is ROLE_UNSPECIFIED it will be matched against any
+ * utterances in the transcript.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationParticipant.Role role_match = 10;
+ * @param int $var
+ * @return $this
+ */
+ public function setRoleMatch($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\ConversationParticipant\Role::class);
+ $this->role_match = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the phrase matcher was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the phrase matcher was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 11 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher/PhraseMatcherType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher/PhraseMatcherType.php
new file mode 100644
index 000000000000..ba37adcff295
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/PhraseMatcher/PhraseMatcherType.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.PhraseMatcher.PhraseMatcherType
+ */
+class PhraseMatcherType
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum PHRASE_MATCHER_TYPE_UNSPECIFIED = 0;
+ */
+ const PHRASE_MATCHER_TYPE_UNSPECIFIED = 0;
+ /**
+ * Must meet all phrase match rule groups or there is no match.
+ *
+ * Generated from protobuf enum ALL_OF = 1;
+ */
+ const ALL_OF = 1;
+ /**
+ * If any of the phrase match rule groups are met, there is a match.
+ *
+ * Generated from protobuf enum ANY_OF = 2;
+ */
+ const ANY_OF = 2;
+
+ private static $valueToName = [
+ self::PHRASE_MATCHER_TYPE_UNSPECIFIED => 'PHRASE_MATCHER_TYPE_UNSPECIFIED',
+ self::ALL_OF => 'ALL_OF',
+ self::ANY_OF => 'ANY_OF',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(PhraseMatcherType::class, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher_PhraseMatcherType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer.php
new file mode 100644
index 000000000000..5c63506b940d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer.php
@@ -0,0 +1,255 @@
+google.cloud.contactcenterinsights.v1.QaAnswer
+ */
+class QaAnswer extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The QaQuestion answered by this answer.
+ *
+ * Generated from protobuf field string qa_question = 7 [(.google.api.resource_reference) = {
+ */
+ protected $qa_question = '';
+ /**
+ * The conversation the answer applies to.
+ *
+ * Generated from protobuf field string conversation = 2 [(.google.api.resource_reference) = {
+ */
+ protected $conversation = '';
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 6;
+ */
+ protected $question_body = '';
+ /**
+ * The main answer value, incorporating any manual edits if they exist.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 3;
+ */
+ protected $answer_value = null;
+ /**
+ * User-defined list of arbitrary tags. Matches the value from
+ * QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and
+ * for weighting the score of each answer.
+ *
+ * Generated from protobuf field repeated string tags = 5;
+ */
+ private $tags;
+ /**
+ * List of all individual answers given to the question.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource answer_sources = 8;
+ */
+ private $answer_sources;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $qa_question
+ * The QaQuestion answered by this answer.
+ * @type string $conversation
+ * The conversation the answer applies to.
+ * @type string $question_body
+ * Question text. E.g., "Did the agent greet the customer?"
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $answer_value
+ * The main answer value, incorporating any manual edits if they exist.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $tags
+ * User-defined list of arbitrary tags. Matches the value from
+ * QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and
+ * for weighting the score of each answer.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerSource>|\Google\Protobuf\Internal\RepeatedField $answer_sources
+ * List of all individual answers given to the question.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The QaQuestion answered by this answer.
+ *
+ * Generated from protobuf field string qa_question = 7 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getQaQuestion()
+ {
+ return $this->qa_question;
+ }
+
+ /**
+ * The QaQuestion answered by this answer.
+ *
+ * Generated from protobuf field string qa_question = 7 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setQaQuestion($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_question = $var;
+
+ return $this;
+ }
+
+ /**
+ * The conversation the answer applies to.
+ *
+ * Generated from protobuf field string conversation = 2 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ /**
+ * The conversation the answer applies to.
+ *
+ * Generated from protobuf field string conversation = 2 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 6;
+ * @return string
+ */
+ public function getQuestionBody()
+ {
+ return $this->question_body;
+ }
+
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 6;
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestionBody($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question_body = $var;
+
+ return $this;
+ }
+
+ /**
+ * The main answer value, incorporating any manual edits if they exist.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue|null
+ */
+ public function getAnswerValue()
+ {
+ return $this->answer_value;
+ }
+
+ public function hasAnswerValue()
+ {
+ return isset($this->answer_value);
+ }
+
+ public function clearAnswerValue()
+ {
+ unset($this->answer_value);
+ }
+
+ /**
+ * The main answer value, incorporating any manual edits if they exist.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $var
+ * @return $this
+ */
+ public function setAnswerValue($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue::class);
+ $this->answer_value = $var;
+
+ return $this;
+ }
+
+ /**
+ * User-defined list of arbitrary tags. Matches the value from
+ * QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and
+ * for weighting the score of each answer.
+ *
+ * Generated from protobuf field repeated string tags = 5;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getTags()
+ {
+ return $this->tags;
+ }
+
+ /**
+ * User-defined list of arbitrary tags. Matches the value from
+ * QaScorecard.ScorecardQuestion.tags. Used for grouping/organization and
+ * for weighting the score of each answer.
+ *
+ * Generated from protobuf field repeated string tags = 5;
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setTags($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->tags = $arr;
+
+ return $this;
+ }
+
+ /**
+ * List of all individual answers given to the question.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource answer_sources = 8;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAnswerSources()
+ {
+ return $this->answer_sources;
+ }
+
+ /**
+ * List of all individual answers given to the question.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource answer_sources = 8;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerSource>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAnswerSources($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerSource::class);
+ $this->answer_sources = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource.php
new file mode 100644
index 000000000000..e6d3d6cd2c45
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource.php
@@ -0,0 +1,116 @@
+google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource
+ */
+class AnswerSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * What created the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource.SourceType source_type = 1;
+ */
+ protected $source_type = 0;
+ /**
+ * The answer value from this source.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 2;
+ */
+ protected $answer_value = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $source_type
+ * What created the answer.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $answer_value
+ * The answer value from this source.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * What created the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource.SourceType source_type = 1;
+ * @return int
+ */
+ public function getSourceType()
+ {
+ return $this->source_type;
+ }
+
+ /**
+ * What created the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource.SourceType source_type = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setSourceType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerSource\SourceType::class);
+ $this->source_type = $var;
+
+ return $this;
+ }
+
+ /**
+ * The answer value from this source.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue|null
+ */
+ public function getAnswerValue()
+ {
+ return $this->answer_value;
+ }
+
+ public function hasAnswerValue()
+ {
+ return isset($this->answer_value);
+ }
+
+ public function clearAnswerValue()
+ {
+ unset($this->answer_value);
+ }
+
+ /**
+ * The answer value from this source.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue answer_value = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue $var
+ * @return $this
+ */
+ public function setAnswerValue($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaAnswer\AnswerValue::class);
+ $this->answer_value = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AnswerSource::class, \Google\Cloud\ContactCenterInsights\V1\QaAnswer_AnswerSource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource/SourceType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource/SourceType.php
new file mode 100644
index 000000000000..4417eb016a6e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerSource/SourceType.php
@@ -0,0 +1,64 @@
+google.cloud.contactcenterinsights.v1.QaAnswer.AnswerSource.SourceType
+ */
+class SourceType
+{
+ /**
+ * Source type is unspecified.
+ *
+ * Generated from protobuf enum SOURCE_TYPE_UNSPECIFIED = 0;
+ */
+ const SOURCE_TYPE_UNSPECIFIED = 0;
+ /**
+ * Answer was system-generated; created during an Insights analysis.
+ *
+ * Generated from protobuf enum SYSTEM_GENERATED = 1;
+ */
+ const SYSTEM_GENERATED = 1;
+ /**
+ * Answer was created by a human via manual edit.
+ *
+ * Generated from protobuf enum MANUAL_EDIT = 2;
+ */
+ const MANUAL_EDIT = 2;
+
+ private static $valueToName = [
+ self::SOURCE_TYPE_UNSPECIFIED => 'SOURCE_TYPE_UNSPECIFIED',
+ self::SYSTEM_GENERATED => 'SYSTEM_GENERATED',
+ self::MANUAL_EDIT => 'MANUAL_EDIT',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(SourceType::class, \Google\Cloud\ContactCenterInsights\V1\QaAnswer_AnswerSource_SourceType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerValue.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerValue.php
new file mode 100644
index 000000000000..f638b26a83a7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaAnswer/AnswerValue.php
@@ -0,0 +1,354 @@
+google.cloud.contactcenterinsights.v1.QaAnswer.AnswerValue
+ */
+class AnswerValue extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A short string used as an identifier. Matches the value used in
+ * QaQuestion.AnswerChoice.key.
+ *
+ * Generated from protobuf field string key = 1;
+ */
+ protected $key = '';
+ /**
+ * Output only. Numerical score of the answer.
+ *
+ * Generated from protobuf field optional double score = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $score = null;
+ /**
+ * Output only. The maximum potential score of the question.
+ *
+ * Generated from protobuf field optional double potential_score = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $potential_score = null;
+ /**
+ * Output only. Normalized score of the questions. Calculated as score /
+ * potential_score.
+ *
+ * Generated from protobuf field optional double normalized_score = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $normalized_score = null;
+ protected $value;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $str_value
+ * String value.
+ * @type float $num_value
+ * Numerical value.
+ * @type bool $bool_value
+ * Boolean value.
+ * @type bool $na_value
+ * A value of "Not Applicable (N/A)". Should only ever be `true`.
+ * @type string $key
+ * A short string used as an identifier. Matches the value used in
+ * QaQuestion.AnswerChoice.key.
+ * @type float $score
+ * Output only. Numerical score of the answer.
+ * @type float $potential_score
+ * Output only. The maximum potential score of the question.
+ * @type float $normalized_score
+ * Output only. Normalized score of the questions. Calculated as score /
+ * potential_score.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * String value.
+ *
+ * Generated from protobuf field string str_value = 2;
+ * @return string
+ */
+ public function getStrValue()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasStrValue()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * String value.
+ *
+ * Generated from protobuf field string str_value = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setStrValue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Numerical value.
+ *
+ * Generated from protobuf field double num_value = 3;
+ * @return float
+ */
+ public function getNumValue()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasNumValue()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * Numerical value.
+ *
+ * Generated from protobuf field double num_value = 3;
+ * @param float $var
+ * @return $this
+ */
+ public function setNumValue($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * Boolean value.
+ *
+ * Generated from protobuf field bool bool_value = 4;
+ * @return bool
+ */
+ public function getBoolValue()
+ {
+ return $this->readOneof(4);
+ }
+
+ public function hasBoolValue()
+ {
+ return $this->hasOneof(4);
+ }
+
+ /**
+ * Boolean value.
+ *
+ * Generated from protobuf field bool bool_value = 4;
+ * @param bool $var
+ * @return $this
+ */
+ public function setBoolValue($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->writeOneof(4, $var);
+
+ return $this;
+ }
+
+ /**
+ * A value of "Not Applicable (N/A)". Should only ever be `true`.
+ *
+ * Generated from protobuf field bool na_value = 5;
+ * @return bool
+ */
+ public function getNaValue()
+ {
+ return $this->readOneof(5);
+ }
+
+ public function hasNaValue()
+ {
+ return $this->hasOneof(5);
+ }
+
+ /**
+ * A value of "Not Applicable (N/A)". Should only ever be `true`.
+ *
+ * Generated from protobuf field bool na_value = 5;
+ * @param bool $var
+ * @return $this
+ */
+ public function setNaValue($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->writeOneof(5, $var);
+
+ return $this;
+ }
+
+ /**
+ * A short string used as an identifier. Matches the value used in
+ * QaQuestion.AnswerChoice.key.
+ *
+ * Generated from protobuf field string key = 1;
+ * @return string
+ */
+ public function getKey()
+ {
+ return $this->key;
+ }
+
+ /**
+ * A short string used as an identifier. Matches the value used in
+ * QaQuestion.AnswerChoice.key.
+ *
+ * Generated from protobuf field string key = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setKey($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->key = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Numerical score of the answer.
+ *
+ * Generated from protobuf field optional double score = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return float
+ */
+ public function getScore()
+ {
+ return isset($this->score) ? $this->score : 0.0;
+ }
+
+ public function hasScore()
+ {
+ return isset($this->score);
+ }
+
+ public function clearScore()
+ {
+ unset($this->score);
+ }
+
+ /**
+ * Output only. Numerical score of the answer.
+ *
+ * Generated from protobuf field optional double score = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The maximum potential score of the question.
+ *
+ * Generated from protobuf field optional double potential_score = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return float
+ */
+ public function getPotentialScore()
+ {
+ return isset($this->potential_score) ? $this->potential_score : 0.0;
+ }
+
+ public function hasPotentialScore()
+ {
+ return isset($this->potential_score);
+ }
+
+ public function clearPotentialScore()
+ {
+ unset($this->potential_score);
+ }
+
+ /**
+ * Output only. The maximum potential score of the question.
+ *
+ * Generated from protobuf field optional double potential_score = 7 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param float $var
+ * @return $this
+ */
+ public function setPotentialScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->potential_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Normalized score of the questions. Calculated as score /
+ * potential_score.
+ *
+ * Generated from protobuf field optional double normalized_score = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return float
+ */
+ public function getNormalizedScore()
+ {
+ return isset($this->normalized_score) ? $this->normalized_score : 0.0;
+ }
+
+ public function hasNormalizedScore()
+ {
+ return isset($this->normalized_score);
+ }
+
+ public function clearNormalizedScore()
+ {
+ unset($this->normalized_score);
+ }
+
+ /**
+ * Output only. Normalized score of the questions. Calculated as score /
+ * potential_score.
+ *
+ * Generated from protobuf field optional double normalized_score = 8 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param float $var
+ * @return $this
+ */
+ public function setNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->normalized_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getValue()
+ {
+ return $this->whichOneof("value");
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AnswerValue::class, \Google\Cloud\ContactCenterInsights\V1\QaAnswer_AnswerValue::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion.php
new file mode 100644
index 000000000000..5bad7f28f6b3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion.php
@@ -0,0 +1,483 @@
+google.cloud.contactcenterinsights.v1.QaQuestion
+ */
+class QaQuestion extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Identifier. The resource name of the question.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ */
+ protected $name = '';
+ /**
+ * Short, descriptive string, used in the UI where it's not practical
+ * to display the full question body. E.g., "Greeting".
+ *
+ * Generated from protobuf field string abbreviation = 2;
+ */
+ protected $abbreviation = '';
+ /**
+ * Output only. The time at which this question was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which the question was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 5;
+ */
+ protected $question_body = '';
+ /**
+ * Instructions describing how to determine the answer.
+ *
+ * Generated from protobuf field string answer_instructions = 9;
+ */
+ protected $answer_instructions = '';
+ /**
+ * A list of valid answers to the question, which the LLM must choose from.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion.AnswerChoice answer_choices = 6;
+ */
+ private $answer_choices;
+ /**
+ * User-defined list of arbitrary tags for the question. Used for
+ * grouping/organization and for weighting the score of each question.
+ *
+ * Generated from protobuf field repeated string tags = 7;
+ */
+ private $tags;
+ /**
+ * Defines the order of the question within its parent scorecard revision.
+ *
+ * Generated from protobuf field int32 order = 8;
+ */
+ protected $order = 0;
+ /**
+ * Metrics of the underlying tuned LLM over a holdout/test set while fine
+ * tuning the underlying LLM for the given question. This field will only be
+ * populated if and only if the question is part of a scorecard revision that
+ * has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.Metrics metrics = 10;
+ */
+ protected $metrics = null;
+ /**
+ * Metadata about the tuning operation for the question.This field will only
+ * be populated if and only if the question is part of a scorecard revision
+ * that has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.TuningMetadata tuning_metadata = 11;
+ */
+ protected $tuning_metadata = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Identifier. The resource name of the question.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}
+ * @type string $abbreviation
+ * Short, descriptive string, used in the UI where it's not practical
+ * to display the full question body. E.g., "Greeting".
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this question was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the question was updated.
+ * @type string $question_body
+ * Question text. E.g., "Did the agent greet the customer?"
+ * @type string $answer_instructions
+ * Instructions describing how to determine the answer.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaQuestion\AnswerChoice>|\Google\Protobuf\Internal\RepeatedField $answer_choices
+ * A list of valid answers to the question, which the LLM must choose from.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $tags
+ * User-defined list of arbitrary tags for the question. Used for
+ * grouping/organization and for weighting the score of each question.
+ * @type int $order
+ * Defines the order of the question within its parent scorecard revision.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaQuestion\Metrics $metrics
+ * Metrics of the underlying tuned LLM over a holdout/test set while fine
+ * tuning the underlying LLM for the given question. This field will only be
+ * populated if and only if the question is part of a scorecard revision that
+ * has been tuned.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaQuestion\TuningMetadata $tuning_metadata
+ * Metadata about the tuning operation for the question.This field will only
+ * be populated if and only if the question is part of a scorecard revision
+ * that has been tuned.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Identifier. The resource name of the question.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Identifier. The resource name of the question.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Short, descriptive string, used in the UI where it's not practical
+ * to display the full question body. E.g., "Greeting".
+ *
+ * Generated from protobuf field string abbreviation = 2;
+ * @return string
+ */
+ public function getAbbreviation()
+ {
+ return $this->abbreviation;
+ }
+
+ /**
+ * Short, descriptive string, used in the UI where it's not practical
+ * to display the full question body. E.g., "Greeting".
+ *
+ * Generated from protobuf field string abbreviation = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setAbbreviation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->abbreviation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this question was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this question was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the question was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the question was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 5;
+ * @return string
+ */
+ public function getQuestionBody()
+ {
+ return $this->question_body;
+ }
+
+ /**
+ * Question text. E.g., "Did the agent greet the customer?"
+ *
+ * Generated from protobuf field string question_body = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestionBody($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question_body = $var;
+
+ return $this;
+ }
+
+ /**
+ * Instructions describing how to determine the answer.
+ *
+ * Generated from protobuf field string answer_instructions = 9;
+ * @return string
+ */
+ public function getAnswerInstructions()
+ {
+ return $this->answer_instructions;
+ }
+
+ /**
+ * Instructions describing how to determine the answer.
+ *
+ * Generated from protobuf field string answer_instructions = 9;
+ * @param string $var
+ * @return $this
+ */
+ public function setAnswerInstructions($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->answer_instructions = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of valid answers to the question, which the LLM must choose from.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion.AnswerChoice answer_choices = 6;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAnswerChoices()
+ {
+ return $this->answer_choices;
+ }
+
+ /**
+ * A list of valid answers to the question, which the LLM must choose from.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaQuestion.AnswerChoice answer_choices = 6;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaQuestion\AnswerChoice>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAnswerChoices($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaQuestion\AnswerChoice::class);
+ $this->answer_choices = $arr;
+
+ return $this;
+ }
+
+ /**
+ * User-defined list of arbitrary tags for the question. Used for
+ * grouping/organization and for weighting the score of each question.
+ *
+ * Generated from protobuf field repeated string tags = 7;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getTags()
+ {
+ return $this->tags;
+ }
+
+ /**
+ * User-defined list of arbitrary tags for the question. Used for
+ * grouping/organization and for weighting the score of each question.
+ *
+ * Generated from protobuf field repeated string tags = 7;
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setTags($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->tags = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Defines the order of the question within its parent scorecard revision.
+ *
+ * Generated from protobuf field int32 order = 8;
+ * @return int
+ */
+ public function getOrder()
+ {
+ return $this->order;
+ }
+
+ /**
+ * Defines the order of the question within its parent scorecard revision.
+ *
+ * Generated from protobuf field int32 order = 8;
+ * @param int $var
+ * @return $this
+ */
+ public function setOrder($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->order = $var;
+
+ return $this;
+ }
+
+ /**
+ * Metrics of the underlying tuned LLM over a holdout/test set while fine
+ * tuning the underlying LLM for the given question. This field will only be
+ * populated if and only if the question is part of a scorecard revision that
+ * has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.Metrics metrics = 10;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaQuestion\Metrics|null
+ */
+ public function getMetrics()
+ {
+ return $this->metrics;
+ }
+
+ public function hasMetrics()
+ {
+ return isset($this->metrics);
+ }
+
+ public function clearMetrics()
+ {
+ unset($this->metrics);
+ }
+
+ /**
+ * Metrics of the underlying tuned LLM over a holdout/test set while fine
+ * tuning the underlying LLM for the given question. This field will only be
+ * populated if and only if the question is part of a scorecard revision that
+ * has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.Metrics metrics = 10;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion\Metrics $var
+ * @return $this
+ */
+ public function setMetrics($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaQuestion\Metrics::class);
+ $this->metrics = $var;
+
+ return $this;
+ }
+
+ /**
+ * Metadata about the tuning operation for the question.This field will only
+ * be populated if and only if the question is part of a scorecard revision
+ * that has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.TuningMetadata tuning_metadata = 11;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaQuestion\TuningMetadata|null
+ */
+ public function getTuningMetadata()
+ {
+ return $this->tuning_metadata;
+ }
+
+ public function hasTuningMetadata()
+ {
+ return isset($this->tuning_metadata);
+ }
+
+ public function clearTuningMetadata()
+ {
+ unset($this->tuning_metadata);
+ }
+
+ /**
+ * Metadata about the tuning operation for the question.This field will only
+ * be populated if and only if the question is part of a scorecard revision
+ * that has been tuned.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion.TuningMetadata tuning_metadata = 11;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion\TuningMetadata $var
+ * @return $this
+ */
+ public function setTuningMetadata($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaQuestion\TuningMetadata::class);
+ $this->tuning_metadata = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/AnswerChoice.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/AnswerChoice.php
new file mode 100644
index 000000000000..6b11242c2069
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/AnswerChoice.php
@@ -0,0 +1,265 @@
+google.cloud.contactcenterinsights.v1.QaQuestion.AnswerChoice
+ */
+class AnswerChoice extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A short string used as an identifier.
+ *
+ * Generated from protobuf field string key = 1;
+ */
+ protected $key = '';
+ /**
+ * Numerical score of the answer, used for generating the overall score of
+ * a QaScorecardResult. If the answer uses na_value, this field is unused.
+ *
+ * Generated from protobuf field optional double score = 6;
+ */
+ protected $score = null;
+ protected $value;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $str_value
+ * String value.
+ * @type float $num_value
+ * Numerical value.
+ * @type bool $bool_value
+ * Boolean value.
+ * @type bool $na_value
+ * A value of "Not Applicable (N/A)". If provided, this field may only
+ * be set to `true`. If a question receives this answer, it will be
+ * excluded from any score calculations.
+ * @type string $key
+ * A short string used as an identifier.
+ * @type float $score
+ * Numerical score of the answer, used for generating the overall score of
+ * a QaScorecardResult. If the answer uses na_value, this field is unused.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * String value.
+ *
+ * Generated from protobuf field string str_value = 2;
+ * @return string
+ */
+ public function getStrValue()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasStrValue()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * String value.
+ *
+ * Generated from protobuf field string str_value = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setStrValue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * Numerical value.
+ *
+ * Generated from protobuf field double num_value = 3;
+ * @return float
+ */
+ public function getNumValue()
+ {
+ return $this->readOneof(3);
+ }
+
+ public function hasNumValue()
+ {
+ return $this->hasOneof(3);
+ }
+
+ /**
+ * Numerical value.
+ *
+ * Generated from protobuf field double num_value = 3;
+ * @param float $var
+ * @return $this
+ */
+ public function setNumValue($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->writeOneof(3, $var);
+
+ return $this;
+ }
+
+ /**
+ * Boolean value.
+ *
+ * Generated from protobuf field bool bool_value = 4;
+ * @return bool
+ */
+ public function getBoolValue()
+ {
+ return $this->readOneof(4);
+ }
+
+ public function hasBoolValue()
+ {
+ return $this->hasOneof(4);
+ }
+
+ /**
+ * Boolean value.
+ *
+ * Generated from protobuf field bool bool_value = 4;
+ * @param bool $var
+ * @return $this
+ */
+ public function setBoolValue($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->writeOneof(4, $var);
+
+ return $this;
+ }
+
+ /**
+ * A value of "Not Applicable (N/A)". If provided, this field may only
+ * be set to `true`. If a question receives this answer, it will be
+ * excluded from any score calculations.
+ *
+ * Generated from protobuf field bool na_value = 5;
+ * @return bool
+ */
+ public function getNaValue()
+ {
+ return $this->readOneof(5);
+ }
+
+ public function hasNaValue()
+ {
+ return $this->hasOneof(5);
+ }
+
+ /**
+ * A value of "Not Applicable (N/A)". If provided, this field may only
+ * be set to `true`. If a question receives this answer, it will be
+ * excluded from any score calculations.
+ *
+ * Generated from protobuf field bool na_value = 5;
+ * @param bool $var
+ * @return $this
+ */
+ public function setNaValue($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->writeOneof(5, $var);
+
+ return $this;
+ }
+
+ /**
+ * A short string used as an identifier.
+ *
+ * Generated from protobuf field string key = 1;
+ * @return string
+ */
+ public function getKey()
+ {
+ return $this->key;
+ }
+
+ /**
+ * A short string used as an identifier.
+ *
+ * Generated from protobuf field string key = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setKey($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->key = $var;
+
+ return $this;
+ }
+
+ /**
+ * Numerical score of the answer, used for generating the overall score of
+ * a QaScorecardResult. If the answer uses na_value, this field is unused.
+ *
+ * Generated from protobuf field optional double score = 6;
+ * @return float
+ */
+ public function getScore()
+ {
+ return isset($this->score) ? $this->score : 0.0;
+ }
+
+ public function hasScore()
+ {
+ return isset($this->score);
+ }
+
+ public function clearScore()
+ {
+ unset($this->score);
+ }
+
+ /**
+ * Numerical score of the answer, used for generating the overall score of
+ * a QaScorecardResult. If the answer uses na_value, this field is unused.
+ *
+ * Generated from protobuf field optional double score = 6;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getValue()
+ {
+ return $this->whichOneof("value");
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AnswerChoice::class, \Google\Cloud\ContactCenterInsights\V1\QaQuestion_AnswerChoice::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/Metrics.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/Metrics.php
new file mode 100644
index 000000000000..55cd17c10140
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/Metrics.php
@@ -0,0 +1,75 @@
+google.cloud.contactcenterinsights.v1.QaQuestion.Metrics
+ */
+class Metrics extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. Accuracy of the model. Measures the percentage of correct
+ * answers the model gave on the test set.
+ *
+ * Generated from protobuf field double accuracy = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $accuracy = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type float $accuracy
+ * Output only. Accuracy of the model. Measures the percentage of correct
+ * answers the model gave on the test set.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. Accuracy of the model. Measures the percentage of correct
+ * answers the model gave on the test set.
+ *
+ * Generated from protobuf field double accuracy = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return float
+ */
+ public function getAccuracy()
+ {
+ return $this->accuracy;
+ }
+
+ /**
+ * Output only. Accuracy of the model. Measures the percentage of correct
+ * answers the model gave on the test set.
+ *
+ * Generated from protobuf field double accuracy = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param float $var
+ * @return $this
+ */
+ public function setAccuracy($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->accuracy = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Metrics::class, \Google\Cloud\ContactCenterInsights\V1\QaQuestion_Metrics::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/TuningMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/TuningMetadata.php
new file mode 100644
index 000000000000..8ed8453815cf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaQuestion/TuningMetadata.php
@@ -0,0 +1,151 @@
+google.cloud.contactcenterinsights.v1.QaQuestion.TuningMetadata
+ */
+class TuningMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Total number of valid labels provided for the question at the time of
+ * tuining.
+ *
+ * Generated from protobuf field int64 total_valid_label_count = 1;
+ */
+ protected $total_valid_label_count = 0;
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ */
+ private $dataset_validation_warnings;
+ /**
+ * Error status of the tuning operation for the question. Will only be set
+ * if the tuning operation failed.
+ *
+ * Generated from protobuf field string tuning_error = 3;
+ */
+ protected $tuning_error = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int|string $total_valid_label_count
+ * Total number of valid labels provided for the question at the time of
+ * tuining.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $dataset_validation_warnings
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ * @type string $tuning_error
+ * Error status of the tuning operation for the question. Will only be set
+ * if the tuning operation failed.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Total number of valid labels provided for the question at the time of
+ * tuining.
+ *
+ * Generated from protobuf field int64 total_valid_label_count = 1;
+ * @return int|string
+ */
+ public function getTotalValidLabelCount()
+ {
+ return $this->total_valid_label_count;
+ }
+
+ /**
+ * Total number of valid labels provided for the question at the time of
+ * tuining.
+ *
+ * Generated from protobuf field int64 total_valid_label_count = 1;
+ * @param int|string $var
+ * @return $this
+ */
+ public function setTotalValidLabelCount($var)
+ {
+ GPBUtil::checkInt64($var);
+ $this->total_valid_label_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getDatasetValidationWarnings()
+ {
+ return $this->dataset_validation_warnings;
+ }
+
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setDatasetValidationWarnings($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::ENUM, \Google\Cloud\ContactCenterInsights\V1\DatasetValidationWarning::class);
+ $this->dataset_validation_warnings = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Error status of the tuning operation for the question. Will only be set
+ * if the tuning operation failed.
+ *
+ * Generated from protobuf field string tuning_error = 3;
+ * @return string
+ */
+ public function getTuningError()
+ {
+ return $this->tuning_error;
+ }
+
+ /**
+ * Error status of the tuning operation for the question. Will only be set
+ * if the tuning operation failed.
+ *
+ * Generated from protobuf field string tuning_error = 3;
+ * @param string $var
+ * @return $this
+ */
+ public function setTuningError($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->tuning_error = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TuningMetadata::class, \Google\Cloud\ContactCenterInsights\V1\QaQuestion_TuningMetadata::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecard.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecard.php
new file mode 100644
index 000000000000..7a80c6edb141
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecard.php
@@ -0,0 +1,232 @@
+google.cloud.contactcenterinsights.v1.QaScorecard
+ */
+class QaScorecard extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Identifier. The scorecard name.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ */
+ protected $name = '';
+ /**
+ * The user-specified display name of the scorecard.
+ *
+ * Generated from protobuf field string display_name = 7;
+ */
+ protected $display_name = '';
+ /**
+ * A text description explaining the intent of the scorecard.
+ *
+ * Generated from protobuf field string description = 2;
+ */
+ protected $description = '';
+ /**
+ * Output only. The time at which this scorecard was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which the scorecard was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Identifier. The scorecard name.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}
+ * @type string $display_name
+ * The user-specified display name of the scorecard.
+ * @type string $description
+ * A text description explaining the intent of the scorecard.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this scorecard was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the scorecard was updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Identifier. The scorecard name.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Identifier. The scorecard name.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The user-specified display name of the scorecard.
+ *
+ * Generated from protobuf field string display_name = 7;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The user-specified display name of the scorecard.
+ *
+ * Generated from protobuf field string display_name = 7;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * A text description explaining the intent of the scorecard.
+ *
+ * Generated from protobuf field string description = 2;
+ * @return string
+ */
+ public function getDescription()
+ {
+ return $this->description;
+ }
+
+ /**
+ * A text description explaining the intent of the scorecard.
+ *
+ * Generated from protobuf field string description = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDescription($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->description = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this scorecard was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this scorecard was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the scorecard was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the scorecard was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult.php
new file mode 100644
index 000000000000..82da408ddbc2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult.php
@@ -0,0 +1,468 @@
+google.cloud.contactcenterinsights.v1.QaScorecardResult
+ */
+class QaScorecardResult extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Identifier. The name of the scorecard result.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ */
+ protected $name = '';
+ /**
+ * The QaScorecardRevision scored by this result.
+ *
+ * Generated from protobuf field string qa_scorecard_revision = 2 [(.google.api.resource_reference) = {
+ */
+ protected $qa_scorecard_revision = '';
+ /**
+ * The conversation scored by this result.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.resource_reference) = {
+ */
+ protected $conversation = '';
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * ID of the agent that handled the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ */
+ protected $agent_id = '';
+ /**
+ * Set of QaAnswers represented in the result.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer qa_answers = 6;
+ */
+ private $qa_answers;
+ /**
+ * The overall numerical score of the result, incorporating any manual edits
+ * if they exist.
+ *
+ * Generated from protobuf field optional double score = 7;
+ */
+ protected $score = null;
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 8;
+ */
+ protected $potential_score = null;
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ * Any manual edits are included if they exist.
+ *
+ * Generated from protobuf field optional double normalized_score = 9;
+ */
+ protected $normalized_score = null;
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 10;
+ */
+ private $qa_tag_results;
+ /**
+ * List of all individual score sets.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource score_sources = 11;
+ */
+ private $score_sources;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Identifier. The name of the scorecard result.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}
+ * @type string $qa_scorecard_revision
+ * The QaScorecardRevision scored by this result.
+ * @type string $conversation
+ * The conversation scored by this result.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The timestamp that the revision was created.
+ * @type string $agent_id
+ * ID of the agent that handled the conversation.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaAnswer>|\Google\Protobuf\Internal\RepeatedField $qa_answers
+ * Set of QaAnswers represented in the result.
+ * @type float $score
+ * The overall numerical score of the result, incorporating any manual edits
+ * if they exist.
+ * @type float $potential_score
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ * @type float $normalized_score
+ * The normalized score, which is the score divided by the potential score.
+ * Any manual edits are included if they exist.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult>|\Google\Protobuf\Internal\RepeatedField $qa_tag_results
+ * Collection of tags and their scores.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\ScoreSource>|\Google\Protobuf\Internal\RepeatedField $score_sources
+ * List of all individual score sets.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Identifier. The name of the scorecard result.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Identifier. The name of the scorecard result.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The QaScorecardRevision scored by this result.
+ *
+ * Generated from protobuf field string qa_scorecard_revision = 2 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getQaScorecardRevision()
+ {
+ return $this->qa_scorecard_revision;
+ }
+
+ /**
+ * The QaScorecardRevision scored by this result.
+ *
+ * Generated from protobuf field string qa_scorecard_revision = 2 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setQaScorecardRevision($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->qa_scorecard_revision = $var;
+
+ return $this;
+ }
+
+ /**
+ * The conversation scored by this result.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ /**
+ * The conversation scored by this result.
+ *
+ * Generated from protobuf field string conversation = 3 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * ID of the agent that handled the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ * @return string
+ */
+ public function getAgentId()
+ {
+ return $this->agent_id;
+ }
+
+ /**
+ * ID of the agent that handled the conversation.
+ *
+ * Generated from protobuf field string agent_id = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setAgentId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->agent_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Set of QaAnswers represented in the result.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer qa_answers = 6;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaAnswers()
+ {
+ return $this->qa_answers;
+ }
+
+ /**
+ * Set of QaAnswers represented in the result.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaAnswer qa_answers = 6;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaAnswer>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaAnswers($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaAnswer::class);
+ $this->qa_answers = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The overall numerical score of the result, incorporating any manual edits
+ * if they exist.
+ *
+ * Generated from protobuf field optional double score = 7;
+ * @return float
+ */
+ public function getScore()
+ {
+ return isset($this->score) ? $this->score : 0.0;
+ }
+
+ public function hasScore()
+ {
+ return isset($this->score);
+ }
+
+ public function clearScore()
+ {
+ unset($this->score);
+ }
+
+ /**
+ * The overall numerical score of the result, incorporating any manual edits
+ * if they exist.
+ *
+ * Generated from protobuf field optional double score = 7;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 8;
+ * @return float
+ */
+ public function getPotentialScore()
+ {
+ return isset($this->potential_score) ? $this->potential_score : 0.0;
+ }
+
+ public function hasPotentialScore()
+ {
+ return isset($this->potential_score);
+ }
+
+ public function clearPotentialScore()
+ {
+ unset($this->potential_score);
+ }
+
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 8;
+ * @param float $var
+ * @return $this
+ */
+ public function setPotentialScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->potential_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ * Any manual edits are included if they exist.
+ *
+ * Generated from protobuf field optional double normalized_score = 9;
+ * @return float
+ */
+ public function getNormalizedScore()
+ {
+ return isset($this->normalized_score) ? $this->normalized_score : 0.0;
+ }
+
+ public function hasNormalizedScore()
+ {
+ return isset($this->normalized_score);
+ }
+
+ public function clearNormalizedScore()
+ {
+ unset($this->normalized_score);
+ }
+
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ * Any manual edits are included if they exist.
+ *
+ * Generated from protobuf field optional double normalized_score = 9;
+ * @param float $var
+ * @return $this
+ */
+ public function setNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->normalized_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 10;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaTagResults()
+ {
+ return $this->qa_tag_results;
+ }
+
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 10;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaTagResults($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult::class);
+ $this->qa_tag_results = $arr;
+
+ return $this;
+ }
+
+ /**
+ * List of all individual score sets.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource score_sources = 11;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getScoreSources()
+ {
+ return $this->score_sources;
+ }
+
+ /**
+ * List of all individual score sets.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource score_sources = 11;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\ScoreSource>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setScoreSources($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\ScoreSource::class);
+ $this->score_sources = $arr;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/QaTagResult.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/QaTagResult.php
new file mode 100644
index 000000000000..544ea4aafaf7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/QaTagResult.php
@@ -0,0 +1,202 @@
+google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult
+ */
+class QaTagResult extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The tag the score applies to.
+ *
+ * Generated from protobuf field string tag = 1;
+ */
+ protected $tag = '';
+ /**
+ * The score the tag applies to.
+ *
+ * Generated from protobuf field optional double score = 2;
+ */
+ protected $score = null;
+ /**
+ * The potential score the tag applies to.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ */
+ protected $potential_score = null;
+ /**
+ * The normalized score the tag applies to.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ */
+ protected $normalized_score = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $tag
+ * The tag the score applies to.
+ * @type float $score
+ * The score the tag applies to.
+ * @type float $potential_score
+ * The potential score the tag applies to.
+ * @type float $normalized_score
+ * The normalized score the tag applies to.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The tag the score applies to.
+ *
+ * Generated from protobuf field string tag = 1;
+ * @return string
+ */
+ public function getTag()
+ {
+ return $this->tag;
+ }
+
+ /**
+ * The tag the score applies to.
+ *
+ * Generated from protobuf field string tag = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setTag($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * The score the tag applies to.
+ *
+ * Generated from protobuf field optional double score = 2;
+ * @return float
+ */
+ public function getScore()
+ {
+ return isset($this->score) ? $this->score : 0.0;
+ }
+
+ public function hasScore()
+ {
+ return isset($this->score);
+ }
+
+ public function clearScore()
+ {
+ unset($this->score);
+ }
+
+ /**
+ * The score the tag applies to.
+ *
+ * Generated from protobuf field optional double score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The potential score the tag applies to.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ * @return float
+ */
+ public function getPotentialScore()
+ {
+ return isset($this->potential_score) ? $this->potential_score : 0.0;
+ }
+
+ public function hasPotentialScore()
+ {
+ return isset($this->potential_score);
+ }
+
+ public function clearPotentialScore()
+ {
+ unset($this->potential_score);
+ }
+
+ /**
+ * The potential score the tag applies to.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ * @param float $var
+ * @return $this
+ */
+ public function setPotentialScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->potential_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The normalized score the tag applies to.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ * @return float
+ */
+ public function getNormalizedScore()
+ {
+ return isset($this->normalized_score) ? $this->normalized_score : 0.0;
+ }
+
+ public function hasNormalizedScore()
+ {
+ return isset($this->normalized_score);
+ }
+
+ public function clearNormalizedScore()
+ {
+ unset($this->normalized_score);
+ }
+
+ /**
+ * The normalized score the tag applies to.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ * @param float $var
+ * @return $this
+ */
+ public function setNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->normalized_score = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaTagResult::class, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult_QaTagResult::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource.php
new file mode 100644
index 000000000000..4280d7e4d867
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource.php
@@ -0,0 +1,242 @@
+google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource
+ */
+class ScoreSource extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * What created the score.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource.SourceType source_type = 1;
+ */
+ protected $source_type = 0;
+ /**
+ * The overall numerical score of the result.
+ *
+ * Generated from protobuf field optional double score = 2;
+ */
+ protected $score = null;
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ */
+ protected $potential_score = null;
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ */
+ protected $normalized_score = null;
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 5;
+ */
+ private $qa_tag_results;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $source_type
+ * What created the score.
+ * @type float $score
+ * The overall numerical score of the result.
+ * @type float $potential_score
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ * @type float $normalized_score
+ * The normalized score, which is the score divided by the potential score.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult>|\Google\Protobuf\Internal\RepeatedField $qa_tag_results
+ * Collection of tags and their scores.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * What created the score.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource.SourceType source_type = 1;
+ * @return int
+ */
+ public function getSourceType()
+ {
+ return $this->source_type;
+ }
+
+ /**
+ * What created the score.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource.SourceType source_type = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setSourceType($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\ScoreSource\SourceType::class);
+ $this->source_type = $var;
+
+ return $this;
+ }
+
+ /**
+ * The overall numerical score of the result.
+ *
+ * Generated from protobuf field optional double score = 2;
+ * @return float
+ */
+ public function getScore()
+ {
+ return isset($this->score) ? $this->score : 0.0;
+ }
+
+ public function hasScore()
+ {
+ return isset($this->score);
+ }
+
+ public function clearScore()
+ {
+ unset($this->score);
+ }
+
+ /**
+ * The overall numerical score of the result.
+ *
+ * Generated from protobuf field optional double score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ * @return float
+ */
+ public function getPotentialScore()
+ {
+ return isset($this->potential_score) ? $this->potential_score : 0.0;
+ }
+
+ public function hasPotentialScore()
+ {
+ return isset($this->potential_score);
+ }
+
+ public function clearPotentialScore()
+ {
+ unset($this->potential_score);
+ }
+
+ /**
+ * The maximum potential overall score of the scorecard. Any questions
+ * answered using `na_value` are excluded from this calculation.
+ *
+ * Generated from protobuf field optional double potential_score = 3;
+ * @param float $var
+ * @return $this
+ */
+ public function setPotentialScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->potential_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ * @return float
+ */
+ public function getNormalizedScore()
+ {
+ return isset($this->normalized_score) ? $this->normalized_score : 0.0;
+ }
+
+ public function hasNormalizedScore()
+ {
+ return isset($this->normalized_score);
+ }
+
+ public function clearNormalizedScore()
+ {
+ unset($this->normalized_score);
+ }
+
+ /**
+ * The normalized score, which is the score divided by the potential score.
+ *
+ * Generated from protobuf field optional double normalized_score = 4;
+ * @param float $var
+ * @return $this
+ */
+ public function setNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->normalized_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 5;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaTagResults()
+ {
+ return $this->qa_tag_results;
+ }
+
+ /**
+ * Collection of tags and their scores.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QaScorecardResult.QaTagResult qa_tag_results = 5;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaTagResults($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult\QaTagResult::class);
+ $this->qa_tag_results = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(ScoreSource::class, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult_ScoreSource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource/SourceType.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource/SourceType.php
new file mode 100644
index 000000000000..607f418d1cb0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardResult/ScoreSource/SourceType.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.QaScorecardResult.ScoreSource.SourceType
+ */
+class SourceType
+{
+ /**
+ * Source type is unspecified.
+ *
+ * Generated from protobuf enum SOURCE_TYPE_UNSPECIFIED = 0;
+ */
+ const SOURCE_TYPE_UNSPECIFIED = 0;
+ /**
+ * Score is derived only from system-generated answers.
+ *
+ * Generated from protobuf enum SYSTEM_GENERATED_ONLY = 1;
+ */
+ const SYSTEM_GENERATED_ONLY = 1;
+ /**
+ * Score is derived from both system-generated answers, and includes
+ * any manual edits if they exist.
+ *
+ * Generated from protobuf enum INCLUDES_MANUAL_EDITS = 2;
+ */
+ const INCLUDES_MANUAL_EDITS = 2;
+
+ private static $valueToName = [
+ self::SOURCE_TYPE_UNSPECIFIED => 'SOURCE_TYPE_UNSPECIFIED',
+ self::SYSTEM_GENERATED_ONLY => 'SYSTEM_GENERATED_ONLY',
+ self::INCLUDES_MANUAL_EDITS => 'INCLUDES_MANUAL_EDITS',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(SourceType::class, \Google\Cloud\ContactCenterInsights\V1\QaScorecardResult_ScoreSource_SourceType::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision.php
new file mode 100644
index 000000000000..61fe6a876d3e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision.php
@@ -0,0 +1,243 @@
+google.cloud.contactcenterinsights.v1.QaScorecardRevision
+ */
+class QaScorecardRevision extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Identifier. The name of the scorecard revision.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ */
+ protected $name = '';
+ /**
+ * The snapshot of the scorecard at the time of this revision's creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard snapshot = 2;
+ */
+ protected $snapshot = null;
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. Alternative IDs for this revision of the scorecard, e.g.,
+ * `latest`.
+ *
+ * Generated from protobuf field repeated string alternate_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $alternate_ids;
+ /**
+ * Output only. State of the scorecard revision, indicating whether it's ready
+ * to be used in analysis.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $state = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Identifier. The name of the scorecard revision.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaScorecard $snapshot
+ * The snapshot of the scorecard at the time of this revision's creation.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The timestamp that the revision was created.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $alternate_ids
+ * Output only. Alternative IDs for this revision of the scorecard, e.g.,
+ * `latest`.
+ * @type int $state
+ * Output only. State of the scorecard revision, indicating whether it's ready
+ * to be used in analysis.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Identifier. The name of the scorecard revision.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Identifier. The name of the scorecard revision.
+ * Format:
+ * projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The snapshot of the scorecard at the time of this revision's creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard snapshot = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaScorecard|null
+ */
+ public function getSnapshot()
+ {
+ return $this->snapshot;
+ }
+
+ public function hasSnapshot()
+ {
+ return isset($this->snapshot);
+ }
+
+ public function clearSnapshot()
+ {
+ unset($this->snapshot);
+ }
+
+ /**
+ * The snapshot of the scorecard at the time of this revision's creation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard snapshot = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecard $var
+ * @return $this
+ */
+ public function setSnapshot($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecard::class);
+ $this->snapshot = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The timestamp that the revision was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. Alternative IDs for this revision of the scorecard, e.g.,
+ * `latest`.
+ *
+ * Generated from protobuf field repeated string alternate_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getAlternateIds()
+ {
+ return $this->alternate_ids;
+ }
+
+ /**
+ * Output only. Alternative IDs for this revision of the scorecard, e.g.,
+ * `latest`.
+ *
+ * Generated from protobuf field repeated string alternate_ids = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setAlternateIds($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->alternate_ids = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. State of the scorecard revision, indicating whether it's ready
+ * to be used in analysis.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return int
+ */
+ public function getState()
+ {
+ return $this->state;
+ }
+
+ /**
+ * Output only. State of the scorecard revision, indicating whether it's ready
+ * to be used in analysis.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecardRevision.State state = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param int $var
+ * @return $this
+ */
+ public function setState($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision\State::class);
+ $this->state = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision/State.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision/State.php
new file mode 100644
index 000000000000..0f15ab599b0d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QaScorecardRevision/State.php
@@ -0,0 +1,92 @@
+google.cloud.contactcenterinsights.v1.QaScorecardRevision.State
+ */
+class State
+{
+ /**
+ * Unspecified.
+ *
+ * Generated from protobuf enum STATE_UNSPECIFIED = 0;
+ */
+ const STATE_UNSPECIFIED = 0;
+ /**
+ * The scorecard revision can be edited.
+ *
+ * Generated from protobuf enum EDITABLE = 12;
+ */
+ const EDITABLE = 12;
+ /**
+ * Scorecard model training is in progress.
+ *
+ * Generated from protobuf enum TRAINING = 2;
+ */
+ const TRAINING = 2;
+ /**
+ * Scorecard revision model training failed.
+ *
+ * Generated from protobuf enum TRAINING_FAILED = 9;
+ */
+ const TRAINING_FAILED = 9;
+ /**
+ * The revision can be used in analysis.
+ *
+ * Generated from protobuf enum READY = 11;
+ */
+ const READY = 11;
+ /**
+ * Scorecard is being deleted.
+ *
+ * Generated from protobuf enum DELETING = 7;
+ */
+ const DELETING = 7;
+ /**
+ * Scorecard model training was explicitly cancelled by the user.
+ *
+ * Generated from protobuf enum TRAINING_CANCELLED = 14;
+ */
+ const TRAINING_CANCELLED = 14;
+
+ private static $valueToName = [
+ self::STATE_UNSPECIFIED => 'STATE_UNSPECIFIED',
+ self::EDITABLE => 'EDITABLE',
+ self::TRAINING => 'TRAINING',
+ self::TRAINING_FAILED => 'TRAINING_FAILED',
+ self::READY => 'READY',
+ self::DELETING => 'DELETING',
+ self::TRAINING_CANCELLED => 'TRAINING_CANCELLED',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(State::class, \Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision_State::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsMetadata.php
new file mode 100644
index 000000000000..45229d4d6ef3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsMetadata.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsMetadata
+ */
+class QueryMetricsMetadata extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest.php
new file mode 100644
index 000000000000..07948915505c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest.php
@@ -0,0 +1,265 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsRequest
+ */
+class QueryMetricsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $location = '';
+ /**
+ * Required. Filter to select a subset of conversations to compute the
+ * metrics. Must specify a window of the conversation create time to compute
+ * the metrics. The returned metrics will be from the range [DATE(starting
+ * create time), DATE(ending create time)).
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $filter = '';
+ /**
+ * The time granularity of each data point in the time series.
+ * Defaults to NONE if this field is unspecified.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsRequest.TimeGranularity time_granularity = 3;
+ */
+ protected $time_granularity = 0;
+ /**
+ * The dimensions that determine the grouping key for the query. Defaults to
+ * no dimension if this field is unspecified. If a dimension is specified,
+ * its key must also be specified. Each dimension's key must be unique.
+ * If a time granularity is also specified, metric values in the dimension
+ * will be bucketed by this granularity.
+ * Up to one dimension is supported for now.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 4;
+ */
+ private $dimensions;
+ /**
+ * Measures to return. Defaults to all measures if this field is unspecified.
+ * A valid mask should traverse from the `measure` field from the response.
+ * For example, a path from a measure mask to get the conversation count is
+ * "conversation_measure.count".
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask measure_mask = 5;
+ */
+ protected $measure_mask = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $location
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ * @type string $filter
+ * Required. Filter to select a subset of conversations to compute the
+ * metrics. Must specify a window of the conversation create time to compute
+ * the metrics. The returned metrics will be from the range [DATE(starting
+ * create time), DATE(ending create time)).
+ * @type int $time_granularity
+ * The time granularity of each data point in the time series.
+ * Defaults to NONE if this field is unspecified.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Dimension>|\Google\Protobuf\Internal\RepeatedField $dimensions
+ * The dimensions that determine the grouping key for the query. Defaults to
+ * no dimension if this field is unspecified. If a dimension is specified,
+ * its key must also be specified. Each dimension's key must be unique.
+ * If a time granularity is also specified, metric values in the dimension
+ * will be bucketed by this granularity.
+ * Up to one dimension is supported for now.
+ * @type \Google\Protobuf\FieldMask $measure_mask
+ * Measures to return. Defaults to all measures if this field is unspecified.
+ * A valid mask should traverse from the `measure` field from the response.
+ * For example, a path from a measure mask to get the conversation count is
+ * "conversation_measure.count".
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getLocation()
+ {
+ return $this->location;
+ }
+
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setLocation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->location = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. Filter to select a subset of conversations to compute the
+ * metrics. Must specify a window of the conversation create time to compute
+ * the metrics. The returned metrics will be from the range [DATE(starting
+ * create time), DATE(ending create time)).
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Required. Filter to select a subset of conversations to compute the
+ * metrics. Must specify a window of the conversation create time to compute
+ * the metrics. The returned metrics will be from the range [DATE(starting
+ * create time), DATE(ending create time)).
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time granularity of each data point in the time series.
+ * Defaults to NONE if this field is unspecified.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsRequest.TimeGranularity time_granularity = 3;
+ * @return int
+ */
+ public function getTimeGranularity()
+ {
+ return $this->time_granularity;
+ }
+
+ /**
+ * The time granularity of each data point in the time series.
+ * Defaults to NONE if this field is unspecified.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsRequest.TimeGranularity time_granularity = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setTimeGranularity($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsRequest\TimeGranularity::class);
+ $this->time_granularity = $var;
+
+ return $this;
+ }
+
+ /**
+ * The dimensions that determine the grouping key for the query. Defaults to
+ * no dimension if this field is unspecified. If a dimension is specified,
+ * its key must also be specified. Each dimension's key must be unique.
+ * If a time granularity is also specified, metric values in the dimension
+ * will be bucketed by this granularity.
+ * Up to one dimension is supported for now.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getDimensions()
+ {
+ return $this->dimensions;
+ }
+
+ /**
+ * The dimensions that determine the grouping key for the query. Defaults to
+ * no dimension if this field is unspecified. If a dimension is specified,
+ * its key must also be specified. Each dimension's key must be unique.
+ * If a time granularity is also specified, metric values in the dimension
+ * will be bucketed by this granularity.
+ * Up to one dimension is supported for now.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 4;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Dimension>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setDimensions($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Dimension::class);
+ $this->dimensions = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Measures to return. Defaults to all measures if this field is unspecified.
+ * A valid mask should traverse from the `measure` field from the response.
+ * For example, a path from a measure mask to get the conversation count is
+ * "conversation_measure.count".
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask measure_mask = 5;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getMeasureMask()
+ {
+ return $this->measure_mask;
+ }
+
+ public function hasMeasureMask()
+ {
+ return isset($this->measure_mask);
+ }
+
+ public function clearMeasureMask()
+ {
+ unset($this->measure_mask);
+ }
+
+ /**
+ * Measures to return. Defaults to all measures if this field is unspecified.
+ * A valid mask should traverse from the `measure` field from the response.
+ * For example, a path from a measure mask to get the conversation count is
+ * "conversation_measure.count".
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask measure_mask = 5;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setMeasureMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->measure_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest/TimeGranularity.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest/TimeGranularity.php
new file mode 100644
index 000000000000..f2fa8722b04c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsRequest/TimeGranularity.php
@@ -0,0 +1,100 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsRequest.TimeGranularity
+ */
+class TimeGranularity
+{
+ /**
+ * The time granularity is unspecified and will default to NONE.
+ *
+ * Generated from protobuf enum TIME_GRANULARITY_UNSPECIFIED = 0;
+ */
+ const TIME_GRANULARITY_UNSPECIFIED = 0;
+ /**
+ * No time granularity. The response won't contain a time series.
+ * This is the default value if no time granularity is specified.
+ *
+ * Generated from protobuf enum NONE = 1;
+ */
+ const NONE = 1;
+ /**
+ * Data points in the time series will aggregate at a daily granularity.
+ * 1 day means [midnight to midnight).
+ *
+ * Generated from protobuf enum DAILY = 2;
+ */
+ const DAILY = 2;
+ /**
+ * Data points in the time series will aggregate at a daily granularity.
+ * 1 HOUR means [01:00 to 02:00).
+ *
+ * Generated from protobuf enum HOURLY = 3;
+ */
+ const HOURLY = 3;
+ /**
+ * Data points in the time series will aggregate at a daily granularity.
+ * PER_MINUTE means [01:00 to 01:01).
+ *
+ * Generated from protobuf enum PER_MINUTE = 4;
+ */
+ const PER_MINUTE = 4;
+ /**
+ * Data points in the time series will aggregate at a 1 minute granularity.
+ * PER_5_MINUTES means [01:00 to 01:05).
+ *
+ * Generated from protobuf enum PER_5_MINUTES = 5;
+ */
+ const PER_5_MINUTES = 5;
+ /**
+ * Data points in the time series will aggregate at a monthly granularity.
+ * 1 MONTH means [01st of the month to 1st of the next month).
+ *
+ * Generated from protobuf enum MONTHLY = 6;
+ */
+ const MONTHLY = 6;
+
+ private static $valueToName = [
+ self::TIME_GRANULARITY_UNSPECIFIED => 'TIME_GRANULARITY_UNSPECIFIED',
+ self::NONE => 'NONE',
+ self::DAILY => 'DAILY',
+ self::HOURLY => 'HOURLY',
+ self::PER_MINUTE => 'PER_MINUTE',
+ self::PER_5_MINUTES => 'PER_5_MINUTES',
+ self::MONTHLY => 'MONTHLY',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TimeGranularity::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsRequest_TimeGranularity::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse.php
new file mode 100644
index 000000000000..8baf5ef1fac7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse.php
@@ -0,0 +1,213 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsResponse
+ */
+class QueryMetricsResponse extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $location = '';
+ /**
+ * The metrics last update time.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3;
+ */
+ protected $update_time = null;
+ /**
+ * A slice contains a total and (if the request specified a time granularity)
+ * a time series of metric values. Each slice contains a unique combination of
+ * the cardinality of dimensions from the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice slices = 2;
+ */
+ private $slices;
+ /**
+ * The macro average slice contains aggregated averages across the selected
+ * dimension. i.e. if group_by agent is specified this field will contain the
+ * average across all agents.
+ * This field is only populated if the request specifies a Dimension.
+ *
+ * Generated from protobuf field optional .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice macro_average_slice = 4;
+ */
+ protected $macro_average_slice = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $location
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ * @type \Google\Protobuf\Timestamp $update_time
+ * The metrics last update time.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice>|\Google\Protobuf\Internal\RepeatedField $slices
+ * A slice contains a total and (if the request specified a time granularity)
+ * a time series of metric values. Each slice contains a unique combination of
+ * the cardinality of dimensions from the request.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice $macro_average_slice
+ * The macro average slice contains aggregated averages across the selected
+ * dimension. i.e. if group_by agent is specified this field will contain the
+ * average across all agents.
+ * This field is only populated if the request specifies a Dimension.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getLocation()
+ {
+ return $this->location;
+ }
+
+ /**
+ * Required. The location of the data.
+ * "projects/{project}/locations/{location}"
+ *
+ * Generated from protobuf field string location = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setLocation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->location = $var;
+
+ return $this;
+ }
+
+ /**
+ * The metrics last update time.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * The metrics last update time.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * A slice contains a total and (if the request specified a time granularity)
+ * a time series of metric values. Each slice contains a unique combination of
+ * the cardinality of dimensions from the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice slices = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getSlices()
+ {
+ return $this->slices;
+ }
+
+ /**
+ * A slice contains a total and (if the request specified a time granularity)
+ * a time series of metric values. Each slice contains a unique combination of
+ * the cardinality of dimensions from the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice slices = 2;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setSlices($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice::class);
+ $this->slices = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The macro average slice contains aggregated averages across the selected
+ * dimension. i.e. if group_by agent is specified this field will contain the
+ * average across all agents.
+ * This field is only populated if the request specifies a Dimension.
+ *
+ * Generated from protobuf field optional .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice macro_average_slice = 4;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice|null
+ */
+ public function getMacroAverageSlice()
+ {
+ return $this->macro_average_slice;
+ }
+
+ public function hasMacroAverageSlice()
+ {
+ return isset($this->macro_average_slice);
+ }
+
+ public function clearMacroAverageSlice()
+ {
+ unset($this->macro_average_slice);
+ }
+
+ /**
+ * The macro average slice contains aggregated averages across the selected
+ * dimension. i.e. if group_by agent is specified this field will contain the
+ * average across all agents.
+ * This field is only populated if the request specifies a Dimension.
+ *
+ * Generated from protobuf field optional .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice macro_average_slice = 4;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice $var
+ * @return $this
+ */
+ public function setMacroAverageSlice($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice::class);
+ $this->macro_average_slice = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice.php
new file mode 100644
index 000000000000..b1a4b814e4cd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice.php
@@ -0,0 +1,173 @@
+ dimensions=[Issue 1]
+ * * Slice 2 -> dimensions=[Issue 2]
+ *
+ * Generated from protobuf message google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice
+ */
+class Slice extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A unique combination of dimensions that this slice represents.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 1;
+ */
+ private $dimensions;
+ /**
+ * The total metric value. The interval of this data point is
+ * [starting create time, ending create time) from the request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint total = 2;
+ */
+ protected $total = null;
+ /**
+ * A time series of metric values. This is only populated if the request
+ * specifies a time granularity other than NONE.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.TimeSeries time_series = 3;
+ */
+ protected $time_series = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\Dimension>|\Google\Protobuf\Internal\RepeatedField $dimensions
+ * A unique combination of dimensions that this slice represents.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint $total
+ * The total metric value. The interval of this data point is
+ * [starting create time, ending create time) from the request.
+ * @type \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\TimeSeries $time_series
+ * A time series of metric values. This is only populated if the request
+ * specifies a time granularity other than NONE.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A unique combination of dimensions that this slice represents.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 1;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getDimensions()
+ {
+ return $this->dimensions;
+ }
+
+ /**
+ * A unique combination of dimensions that this slice represents.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.Dimension dimensions = 1;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\Dimension>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setDimensions($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\Dimension::class);
+ $this->dimensions = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The total metric value. The interval of this data point is
+ * [starting create time, ending create time) from the request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint total = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint|null
+ */
+ public function getTotal()
+ {
+ return $this->total;
+ }
+
+ public function hasTotal()
+ {
+ return isset($this->total);
+ }
+
+ public function clearTotal()
+ {
+ unset($this->total);
+ }
+
+ /**
+ * The total metric value. The interval of this data point is
+ * [starting create time, ending create time) from the request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint total = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint $var
+ * @return $this
+ */
+ public function setTotal($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint::class);
+ $this->total = $var;
+
+ return $this;
+ }
+
+ /**
+ * A time series of metric values. This is only populated if the request
+ * specifies a time granularity other than NONE.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.TimeSeries time_series = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\TimeSeries|null
+ */
+ public function getTimeSeries()
+ {
+ return $this->time_series;
+ }
+
+ public function hasTimeSeries()
+ {
+ return isset($this->time_series);
+ }
+
+ public function clearTimeSeries()
+ {
+ unset($this->time_series);
+ }
+
+ /**
+ * A time series of metric values. This is only populated if the request
+ * specifies a time granularity other than NONE.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.TimeSeries time_series = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\TimeSeries $var
+ * @return $this
+ */
+ public function setTimeSeries($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\TimeSeries::class);
+ $this->time_series = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Slice::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse_Slice::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint.php
new file mode 100644
index 000000000000..d1d11708b32d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint.php
@@ -0,0 +1,138 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint
+ */
+class DataPoint extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The interval that this data point represents.
+ * * If this is the total data point, the interval is
+ * [starting create time, ending create time) from the request.
+ * * If this a data point from the time series, the interval is
+ * [time, time + time granularity from the request).
+ *
+ * Generated from protobuf field .google.type.Interval interval = 1;
+ */
+ protected $interval = null;
+ protected $measure;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure $conversation_measure
+ * The measure related to conversations.
+ * @type \Google\Type\Interval $interval
+ * The interval that this data point represents.
+ * * If this is the total data point, the interval is
+ * [starting create time, ending create time) from the request.
+ * * If this a data point from the time series, the interval is
+ * [time, time + time granularity from the request).
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The measure related to conversations.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure conversation_measure = 2;
+ * @return \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure|null
+ */
+ public function getConversationMeasure()
+ {
+ return $this->readOneof(2);
+ }
+
+ public function hasConversationMeasure()
+ {
+ return $this->hasOneof(2);
+ }
+
+ /**
+ * The measure related to conversations.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure conversation_measure = 2;
+ * @param \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure $var
+ * @return $this
+ */
+ public function setConversationMeasure($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure::class);
+ $this->writeOneof(2, $var);
+
+ return $this;
+ }
+
+ /**
+ * The interval that this data point represents.
+ * * If this is the total data point, the interval is
+ * [starting create time, ending create time) from the request.
+ * * If this a data point from the time series, the interval is
+ * [time, time + time granularity from the request).
+ *
+ * Generated from protobuf field .google.type.Interval interval = 1;
+ * @return \Google\Type\Interval|null
+ */
+ public function getInterval()
+ {
+ return $this->interval;
+ }
+
+ public function hasInterval()
+ {
+ return isset($this->interval);
+ }
+
+ public function clearInterval()
+ {
+ unset($this->interval);
+ }
+
+ /**
+ * The interval that this data point represents.
+ * * If this is the total data point, the interval is
+ * [starting create time, ending create time) from the request.
+ * * If this a data point from the time series, the interval is
+ * [time, time + time granularity from the request).
+ *
+ * Generated from protobuf field .google.type.Interval interval = 1;
+ * @param \Google\Type\Interval $var
+ * @return $this
+ */
+ public function setInterval($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Type\Interval::class);
+ $this->interval = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getMeasure()
+ {
+ return $this->whichOneof("measure");
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(DataPoint::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse_Slice_DataPoint::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure.php
new file mode 100644
index 000000000000..2a76023ac3f7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure.php
@@ -0,0 +1,482 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure
+ */
+class ConversationMeasure extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The conversation count.
+ *
+ * Generated from protobuf field optional int32 conversation_count = 1;
+ */
+ protected $conversation_count = null;
+ /**
+ * The average silence percentage.
+ *
+ * Generated from protobuf field optional float average_silence_percentage = 2;
+ */
+ protected $average_silence_percentage = null;
+ /**
+ * The average duration.
+ *
+ * Generated from protobuf field optional .google.protobuf.Duration average_duration = 3;
+ */
+ protected $average_duration = null;
+ /**
+ * The average turn count.
+ *
+ * Generated from protobuf field optional float average_turn_count = 4;
+ */
+ protected $average_turn_count = null;
+ /**
+ * The average agent's sentiment score.
+ *
+ * Generated from protobuf field optional float average_agent_sentiment_score = 5;
+ */
+ protected $average_agent_sentiment_score = null;
+ /**
+ * The average client's sentiment score.
+ *
+ * Generated from protobuf field optional float average_client_sentiment_score = 6;
+ */
+ protected $average_client_sentiment_score = null;
+ /**
+ * The average customer satisfaction rating.
+ *
+ * Generated from protobuf field optional double average_customer_satisfaction_rating = 8;
+ */
+ protected $average_customer_satisfaction_rating = null;
+ /**
+ * Average QA normalized score.
+ * Will exclude 0's in average calculation.
+ *
+ * Generated from protobuf field optional double average_qa_normalized_score = 7;
+ */
+ protected $average_qa_normalized_score = null;
+ /**
+ * Average QA normalized score for all the tags.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure.QaTagScore qa_tag_scores = 9;
+ */
+ private $qa_tag_scores;
+ /**
+ * Average QA normalized score averaged for questions averaged across
+ * all revisions of the parent scorecard.
+ * Will be only populated if the request specifies a dimension of
+ * QA_QUESTION_ID.
+ *
+ * Generated from protobuf field optional double average_qa_question_normalized_score = 10;
+ */
+ protected $average_qa_question_normalized_score = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type int $conversation_count
+ * The conversation count.
+ * @type float $average_silence_percentage
+ * The average silence percentage.
+ * @type \Google\Protobuf\Duration $average_duration
+ * The average duration.
+ * @type float $average_turn_count
+ * The average turn count.
+ * @type float $average_agent_sentiment_score
+ * The average agent's sentiment score.
+ * @type float $average_client_sentiment_score
+ * The average client's sentiment score.
+ * @type float $average_customer_satisfaction_rating
+ * The average customer satisfaction rating.
+ * @type float $average_qa_normalized_score
+ * Average QA normalized score.
+ * Will exclude 0's in average calculation.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure\QaTagScore>|\Google\Protobuf\Internal\RepeatedField $qa_tag_scores
+ * Average QA normalized score for all the tags.
+ * @type float $average_qa_question_normalized_score
+ * Average QA normalized score averaged for questions averaged across
+ * all revisions of the parent scorecard.
+ * Will be only populated if the request specifies a dimension of
+ * QA_QUESTION_ID.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The conversation count.
+ *
+ * Generated from protobuf field optional int32 conversation_count = 1;
+ * @return int
+ */
+ public function getConversationCount()
+ {
+ return isset($this->conversation_count) ? $this->conversation_count : 0;
+ }
+
+ public function hasConversationCount()
+ {
+ return isset($this->conversation_count);
+ }
+
+ public function clearConversationCount()
+ {
+ unset($this->conversation_count);
+ }
+
+ /**
+ * The conversation count.
+ *
+ * Generated from protobuf field optional int32 conversation_count = 1;
+ * @param int $var
+ * @return $this
+ */
+ public function setConversationCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->conversation_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average silence percentage.
+ *
+ * Generated from protobuf field optional float average_silence_percentage = 2;
+ * @return float
+ */
+ public function getAverageSilencePercentage()
+ {
+ return isset($this->average_silence_percentage) ? $this->average_silence_percentage : 0.0;
+ }
+
+ public function hasAverageSilencePercentage()
+ {
+ return isset($this->average_silence_percentage);
+ }
+
+ public function clearAverageSilencePercentage()
+ {
+ unset($this->average_silence_percentage);
+ }
+
+ /**
+ * The average silence percentage.
+ *
+ * Generated from protobuf field optional float average_silence_percentage = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageSilencePercentage($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->average_silence_percentage = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average duration.
+ *
+ * Generated from protobuf field optional .google.protobuf.Duration average_duration = 3;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getAverageDuration()
+ {
+ return $this->average_duration;
+ }
+
+ public function hasAverageDuration()
+ {
+ return isset($this->average_duration);
+ }
+
+ public function clearAverageDuration()
+ {
+ unset($this->average_duration);
+ }
+
+ /**
+ * The average duration.
+ *
+ * Generated from protobuf field optional .google.protobuf.Duration average_duration = 3;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setAverageDuration($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->average_duration = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average turn count.
+ *
+ * Generated from protobuf field optional float average_turn_count = 4;
+ * @return float
+ */
+ public function getAverageTurnCount()
+ {
+ return isset($this->average_turn_count) ? $this->average_turn_count : 0.0;
+ }
+
+ public function hasAverageTurnCount()
+ {
+ return isset($this->average_turn_count);
+ }
+
+ public function clearAverageTurnCount()
+ {
+ unset($this->average_turn_count);
+ }
+
+ /**
+ * The average turn count.
+ *
+ * Generated from protobuf field optional float average_turn_count = 4;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageTurnCount($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->average_turn_count = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average agent's sentiment score.
+ *
+ * Generated from protobuf field optional float average_agent_sentiment_score = 5;
+ * @return float
+ */
+ public function getAverageAgentSentimentScore()
+ {
+ return isset($this->average_agent_sentiment_score) ? $this->average_agent_sentiment_score : 0.0;
+ }
+
+ public function hasAverageAgentSentimentScore()
+ {
+ return isset($this->average_agent_sentiment_score);
+ }
+
+ public function clearAverageAgentSentimentScore()
+ {
+ unset($this->average_agent_sentiment_score);
+ }
+
+ /**
+ * The average agent's sentiment score.
+ *
+ * Generated from protobuf field optional float average_agent_sentiment_score = 5;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageAgentSentimentScore($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->average_agent_sentiment_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average client's sentiment score.
+ *
+ * Generated from protobuf field optional float average_client_sentiment_score = 6;
+ * @return float
+ */
+ public function getAverageClientSentimentScore()
+ {
+ return isset($this->average_client_sentiment_score) ? $this->average_client_sentiment_score : 0.0;
+ }
+
+ public function hasAverageClientSentimentScore()
+ {
+ return isset($this->average_client_sentiment_score);
+ }
+
+ public function clearAverageClientSentimentScore()
+ {
+ unset($this->average_client_sentiment_score);
+ }
+
+ /**
+ * The average client's sentiment score.
+ *
+ * Generated from protobuf field optional float average_client_sentiment_score = 6;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageClientSentimentScore($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->average_client_sentiment_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * The average customer satisfaction rating.
+ *
+ * Generated from protobuf field optional double average_customer_satisfaction_rating = 8;
+ * @return float
+ */
+ public function getAverageCustomerSatisfactionRating()
+ {
+ return isset($this->average_customer_satisfaction_rating) ? $this->average_customer_satisfaction_rating : 0.0;
+ }
+
+ public function hasAverageCustomerSatisfactionRating()
+ {
+ return isset($this->average_customer_satisfaction_rating);
+ }
+
+ public function clearAverageCustomerSatisfactionRating()
+ {
+ unset($this->average_customer_satisfaction_rating);
+ }
+
+ /**
+ * The average customer satisfaction rating.
+ *
+ * Generated from protobuf field optional double average_customer_satisfaction_rating = 8;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageCustomerSatisfactionRating($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->average_customer_satisfaction_rating = $var;
+
+ return $this;
+ }
+
+ /**
+ * Average QA normalized score.
+ * Will exclude 0's in average calculation.
+ *
+ * Generated from protobuf field optional double average_qa_normalized_score = 7;
+ * @return float
+ */
+ public function getAverageQaNormalizedScore()
+ {
+ return isset($this->average_qa_normalized_score) ? $this->average_qa_normalized_score : 0.0;
+ }
+
+ public function hasAverageQaNormalizedScore()
+ {
+ return isset($this->average_qa_normalized_score);
+ }
+
+ public function clearAverageQaNormalizedScore()
+ {
+ unset($this->average_qa_normalized_score);
+ }
+
+ /**
+ * Average QA normalized score.
+ * Will exclude 0's in average calculation.
+ *
+ * Generated from protobuf field optional double average_qa_normalized_score = 7;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageQaNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->average_qa_normalized_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Average QA normalized score for all the tags.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure.QaTagScore qa_tag_scores = 9;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaTagScores()
+ {
+ return $this->qa_tag_scores;
+ }
+
+ /**
+ * Average QA normalized score for all the tags.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure.QaTagScore qa_tag_scores = 9;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure\QaTagScore>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaTagScores($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint\ConversationMeasure\QaTagScore::class);
+ $this->qa_tag_scores = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Average QA normalized score averaged for questions averaged across
+ * all revisions of the parent scorecard.
+ * Will be only populated if the request specifies a dimension of
+ * QA_QUESTION_ID.
+ *
+ * Generated from protobuf field optional double average_qa_question_normalized_score = 10;
+ * @return float
+ */
+ public function getAverageQaQuestionNormalizedScore()
+ {
+ return isset($this->average_qa_question_normalized_score) ? $this->average_qa_question_normalized_score : 0.0;
+ }
+
+ public function hasAverageQaQuestionNormalizedScore()
+ {
+ return isset($this->average_qa_question_normalized_score);
+ }
+
+ public function clearAverageQaQuestionNormalizedScore()
+ {
+ unset($this->average_qa_question_normalized_score);
+ }
+
+ /**
+ * Average QA normalized score averaged for questions averaged across
+ * all revisions of the parent scorecard.
+ * Will be only populated if the request specifies a dimension of
+ * QA_QUESTION_ID.
+ *
+ * Generated from protobuf field optional double average_qa_question_normalized_score = 10;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageQaQuestionNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->average_qa_question_normalized_score = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(ConversationMeasure::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse_Slice_DataPoint_ConversationMeasure::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure/QaTagScore.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure/QaTagScore.php
new file mode 100644
index 000000000000..d141f663b3d0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/DataPoint/ConversationMeasure/QaTagScore.php
@@ -0,0 +1,104 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint.ConversationMeasure.QaTagScore
+ */
+class QaTagScore extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Tag name.
+ *
+ * Generated from protobuf field string tag = 1;
+ */
+ protected $tag = '';
+ /**
+ * Average tag normalized score per tag.
+ *
+ * Generated from protobuf field double average_tag_normalized_score = 2;
+ */
+ protected $average_tag_normalized_score = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $tag
+ * Tag name.
+ * @type float $average_tag_normalized_score
+ * Average tag normalized score per tag.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Tag name.
+ *
+ * Generated from protobuf field string tag = 1;
+ * @return string
+ */
+ public function getTag()
+ {
+ return $this->tag;
+ }
+
+ /**
+ * Tag name.
+ *
+ * Generated from protobuf field string tag = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setTag($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->tag = $var;
+
+ return $this;
+ }
+
+ /**
+ * Average tag normalized score per tag.
+ *
+ * Generated from protobuf field double average_tag_normalized_score = 2;
+ * @return float
+ */
+ public function getAverageTagNormalizedScore()
+ {
+ return $this->average_tag_normalized_score;
+ }
+
+ /**
+ * Average tag normalized score per tag.
+ *
+ * Generated from protobuf field double average_tag_normalized_score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setAverageTagNormalizedScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->average_tag_normalized_score = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaTagScore::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse_Slice_DataPoint_ConversationMeasure_QaTagScore::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/TimeSeries.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/TimeSeries.php
new file mode 100644
index 000000000000..dcbc742ffccc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/QueryMetricsResponse/Slice/TimeSeries.php
@@ -0,0 +1,70 @@
+google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.TimeSeries
+ */
+class TimeSeries extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The data points that make up the time series .
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint data_points = 4;
+ */
+ private $data_points;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint>|\Google\Protobuf\Internal\RepeatedField $data_points
+ * The data points that make up the time series .
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The data points that make up the time series .
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint data_points = 4;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getDataPoints()
+ {
+ return $this->data_points;
+ }
+
+ /**
+ * The data points that make up the time series .
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.QueryMetricsResponse.Slice.DataPoint data_points = 4;
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setDataPoints($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse\Slice\DataPoint::class);
+ $this->data_points = $arr;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(TimeSeries::class, \Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse_Slice_TimeSeries::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RedactionConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RedactionConfig.php
new file mode 100644
index 000000000000..293547129dc3
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RedactionConfig.php
@@ -0,0 +1,123 @@
+google.cloud.contactcenterinsights.v1.RedactionConfig
+ */
+class RedactionConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The fully-qualified DLP deidentify template resource name.
+ * Format:
+ * `projects/{project}/deidentifyTemplates/{template}`
+ *
+ * Generated from protobuf field string deidentify_template = 1;
+ */
+ protected $deidentify_template = '';
+ /**
+ * The fully-qualified DLP inspect template resource name.
+ * Format:
+ * `projects/{project}/locations/{location}/inspectTemplates/{template}`
+ *
+ * Generated from protobuf field string inspect_template = 2;
+ */
+ protected $inspect_template = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $deidentify_template
+ * The fully-qualified DLP deidentify template resource name.
+ * Format:
+ * `projects/{project}/deidentifyTemplates/{template}`
+ * @type string $inspect_template
+ * The fully-qualified DLP inspect template resource name.
+ * Format:
+ * `projects/{project}/locations/{location}/inspectTemplates/{template}`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The fully-qualified DLP deidentify template resource name.
+ * Format:
+ * `projects/{project}/deidentifyTemplates/{template}`
+ *
+ * Generated from protobuf field string deidentify_template = 1;
+ * @return string
+ */
+ public function getDeidentifyTemplate()
+ {
+ return $this->deidentify_template;
+ }
+
+ /**
+ * The fully-qualified DLP deidentify template resource name.
+ * Format:
+ * `projects/{project}/deidentifyTemplates/{template}`
+ *
+ * Generated from protobuf field string deidentify_template = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setDeidentifyTemplate($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->deidentify_template = $var;
+
+ return $this;
+ }
+
+ /**
+ * The fully-qualified DLP inspect template resource name.
+ * Format:
+ * `projects/{project}/locations/{location}/inspectTemplates/{template}`
+ *
+ * Generated from protobuf field string inspect_template = 2;
+ * @return string
+ */
+ public function getInspectTemplate()
+ {
+ return $this->inspect_template;
+ }
+
+ /**
+ * The fully-qualified DLP inspect template resource name.
+ * Format:
+ * `projects/{project}/locations/{location}/inspectTemplates/{template}`
+ *
+ * Generated from protobuf field string inspect_template = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setInspectTemplate($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->inspect_template = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation.php
new file mode 100644
index 000000000000..4c7f365eabe0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation.php
@@ -0,0 +1,502 @@
+google.cloud.contactcenterinsights.v1.RuntimeAnnotation
+ */
+class RuntimeAnnotation extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The unique identifier of the annotation.
+ * Format:
+ * projects/{project}/locations/{location}/conversationDatasets/{dataset}/conversationDataItems/{data_item}/conversationAnnotations/{annotation}
+ *
+ * Generated from protobuf field string annotation_id = 1;
+ */
+ protected $annotation_id = '';
+ /**
+ * The time at which this annotation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2;
+ */
+ protected $create_time = null;
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary start_boundary = 3;
+ */
+ protected $start_boundary = null;
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary end_boundary = 4;
+ */
+ protected $end_boundary = null;
+ /**
+ * The feedback that the customer has about the answer in `data`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback answer_feedback = 5;
+ */
+ protected $answer_feedback = null;
+ /**
+ * Explicit input used for generating the answer
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput user_input = 16;
+ */
+ protected $user_input = null;
+ protected $data;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\ArticleSuggestionData $article_suggestion
+ * Agent Assist Article Suggestion data.
+ * @type \Google\Cloud\ContactCenterInsights\V1\FaqAnswerData $faq_answer
+ * Agent Assist FAQ answer data.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SmartReplyData $smart_reply
+ * Agent Assist Smart Reply data.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SmartComposeSuggestionData $smart_compose_suggestion
+ * Agent Assist Smart Compose suggestion data.
+ * @type \Google\Cloud\ContactCenterInsights\V1\DialogflowInteractionData $dialogflow_interaction
+ * Dialogflow interaction data.
+ * @type \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData $conversation_summarization_suggestion
+ * Conversation summarization suggestion data.
+ * @type string $annotation_id
+ * The unique identifier of the annotation.
+ * Format:
+ * projects/{project}/locations/{location}/conversationDatasets/{dataset}/conversationDataItems/{data_item}/conversationAnnotations/{annotation}
+ * @type \Google\Protobuf\Timestamp $create_time
+ * The time at which this annotation was created.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $start_boundary
+ * The boundary in the conversation where the annotation starts, inclusive.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $end_boundary
+ * The boundary in the conversation where the annotation ends, inclusive.
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback $answer_feedback
+ * The feedback that the customer has about the answer in `data`.
+ * @type \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation\UserInput $user_input
+ * Explicit input used for generating the answer
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Agent Assist Article Suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ArticleSuggestionData article_suggestion = 6;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ArticleSuggestionData|null
+ */
+ public function getArticleSuggestion()
+ {
+ return $this->readOneof(6);
+ }
+
+ public function hasArticleSuggestion()
+ {
+ return $this->hasOneof(6);
+ }
+
+ /**
+ * Agent Assist Article Suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ArticleSuggestionData article_suggestion = 6;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ArticleSuggestionData $var
+ * @return $this
+ */
+ public function setArticleSuggestion($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ArticleSuggestionData::class);
+ $this->writeOneof(6, $var);
+
+ return $this;
+ }
+
+ /**
+ * Agent Assist FAQ answer data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FaqAnswerData faq_answer = 7;
+ * @return \Google\Cloud\ContactCenterInsights\V1\FaqAnswerData|null
+ */
+ public function getFaqAnswer()
+ {
+ return $this->readOneof(7);
+ }
+
+ public function hasFaqAnswer()
+ {
+ return $this->hasOneof(7);
+ }
+
+ /**
+ * Agent Assist FAQ answer data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FaqAnswerData faq_answer = 7;
+ * @param \Google\Cloud\ContactCenterInsights\V1\FaqAnswerData $var
+ * @return $this
+ */
+ public function setFaqAnswer($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\FaqAnswerData::class);
+ $this->writeOneof(7, $var);
+
+ return $this;
+ }
+
+ /**
+ * Agent Assist Smart Reply data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SmartReplyData smart_reply = 8;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SmartReplyData|null
+ */
+ public function getSmartReply()
+ {
+ return $this->readOneof(8);
+ }
+
+ public function hasSmartReply()
+ {
+ return $this->hasOneof(8);
+ }
+
+ /**
+ * Agent Assist Smart Reply data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SmartReplyData smart_reply = 8;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SmartReplyData $var
+ * @return $this
+ */
+ public function setSmartReply($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SmartReplyData::class);
+ $this->writeOneof(8, $var);
+
+ return $this;
+ }
+
+ /**
+ * Agent Assist Smart Compose suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SmartComposeSuggestionData smart_compose_suggestion = 9;
+ * @return \Google\Cloud\ContactCenterInsights\V1\SmartComposeSuggestionData|null
+ */
+ public function getSmartComposeSuggestion()
+ {
+ return $this->readOneof(9);
+ }
+
+ public function hasSmartComposeSuggestion()
+ {
+ return $this->hasOneof(9);
+ }
+
+ /**
+ * Agent Assist Smart Compose suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SmartComposeSuggestionData smart_compose_suggestion = 9;
+ * @param \Google\Cloud\ContactCenterInsights\V1\SmartComposeSuggestionData $var
+ * @return $this
+ */
+ public function setSmartComposeSuggestion($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SmartComposeSuggestionData::class);
+ $this->writeOneof(9, $var);
+
+ return $this;
+ }
+
+ /**
+ * Dialogflow interaction data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DialogflowInteractionData dialogflow_interaction = 10;
+ * @return \Google\Cloud\ContactCenterInsights\V1\DialogflowInteractionData|null
+ */
+ public function getDialogflowInteraction()
+ {
+ return $this->readOneof(10);
+ }
+
+ public function hasDialogflowInteraction()
+ {
+ return $this->hasOneof(10);
+ }
+
+ /**
+ * Dialogflow interaction data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.DialogflowInteractionData dialogflow_interaction = 10;
+ * @param \Google\Cloud\ContactCenterInsights\V1\DialogflowInteractionData $var
+ * @return $this
+ */
+ public function setDialogflowInteraction($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\DialogflowInteractionData::class);
+ $this->writeOneof(10, $var);
+
+ return $this;
+ }
+
+ /**
+ * Conversation summarization suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData conversation_summarization_suggestion = 12;
+ * @return \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData|null
+ */
+ public function getConversationSummarizationSuggestion()
+ {
+ return $this->readOneof(12);
+ }
+
+ public function hasConversationSummarizationSuggestion()
+ {
+ return $this->hasOneof(12);
+ }
+
+ /**
+ * Conversation summarization suggestion data.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.ConversationSummarizationSuggestionData conversation_summarization_suggestion = 12;
+ * @param \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData $var
+ * @return $this
+ */
+ public function setConversationSummarizationSuggestion($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\ConversationSummarizationSuggestionData::class);
+ $this->writeOneof(12, $var);
+
+ return $this;
+ }
+
+ /**
+ * The unique identifier of the annotation.
+ * Format:
+ * projects/{project}/locations/{location}/conversationDatasets/{dataset}/conversationDataItems/{data_item}/conversationAnnotations/{annotation}
+ *
+ * Generated from protobuf field string annotation_id = 1;
+ * @return string
+ */
+ public function getAnnotationId()
+ {
+ return $this->annotation_id;
+ }
+
+ /**
+ * The unique identifier of the annotation.
+ * Format:
+ * projects/{project}/locations/{location}/conversationDatasets/{dataset}/conversationDataItems/{data_item}/conversationAnnotations/{annotation}
+ *
+ * Generated from protobuf field string annotation_id = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setAnnotationId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->annotation_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * The time at which this annotation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2;
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * The time at which this annotation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2;
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary start_boundary = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary|null
+ */
+ public function getStartBoundary()
+ {
+ return $this->start_boundary;
+ }
+
+ public function hasStartBoundary()
+ {
+ return isset($this->start_boundary);
+ }
+
+ public function clearStartBoundary()
+ {
+ unset($this->start_boundary);
+ }
+
+ /**
+ * The boundary in the conversation where the annotation starts, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary start_boundary = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $var
+ * @return $this
+ */
+ public function setStartBoundary($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary::class);
+ $this->start_boundary = $var;
+
+ return $this;
+ }
+
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary end_boundary = 4;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary|null
+ */
+ public function getEndBoundary()
+ {
+ return $this->end_boundary;
+ }
+
+ public function hasEndBoundary()
+ {
+ return isset($this->end_boundary);
+ }
+
+ public function clearEndBoundary()
+ {
+ unset($this->end_boundary);
+ }
+
+ /**
+ * The boundary in the conversation where the annotation ends, inclusive.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotationBoundary end_boundary = 4;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary $var
+ * @return $this
+ */
+ public function setEndBoundary($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotationBoundary::class);
+ $this->end_boundary = $var;
+
+ return $this;
+ }
+
+ /**
+ * The feedback that the customer has about the answer in `data`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback answer_feedback = 5;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback|null
+ */
+ public function getAnswerFeedback()
+ {
+ return $this->answer_feedback;
+ }
+
+ public function hasAnswerFeedback()
+ {
+ return isset($this->answer_feedback);
+ }
+
+ public function clearAnswerFeedback()
+ {
+ unset($this->answer_feedback);
+ }
+
+ /**
+ * The feedback that the customer has about the answer in `data`.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnswerFeedback answer_feedback = 5;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback $var
+ * @return $this
+ */
+ public function setAnswerFeedback($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnswerFeedback::class);
+ $this->answer_feedback = $var;
+
+ return $this;
+ }
+
+ /**
+ * Explicit input used for generating the answer
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput user_input = 16;
+ * @return \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation\UserInput|null
+ */
+ public function getUserInput()
+ {
+ return $this->user_input;
+ }
+
+ public function hasUserInput()
+ {
+ return isset($this->user_input);
+ }
+
+ public function clearUserInput()
+ {
+ unset($this->user_input);
+ }
+
+ /**
+ * Explicit input used for generating the answer
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput user_input = 16;
+ * @param \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation\UserInput $var
+ * @return $this
+ */
+ public function setUserInput($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation\UserInput::class);
+ $this->user_input = $var;
+
+ return $this;
+ }
+
+ /**
+ * @return string
+ */
+ public function getData()
+ {
+ return $this->whichOneof("data");
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput.php
new file mode 100644
index 000000000000..1c3a54ac06c4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput.php
@@ -0,0 +1,146 @@
+google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput
+ */
+class UserInput extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Query text. Article Search uses this to store the input query used
+ * to generate the search results.
+ *
+ * Generated from protobuf field string query = 1;
+ */
+ protected $query = '';
+ /**
+ * The resource name of associated generator. Format:
+ * `projects//locations//generators/`
+ *
+ * Generated from protobuf field string generator_name = 2;
+ */
+ protected $generator_name = '';
+ /**
+ * Query source for the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput.QuerySource query_source = 3;
+ */
+ protected $query_source = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $query
+ * Query text. Article Search uses this to store the input query used
+ * to generate the search results.
+ * @type string $generator_name
+ * The resource name of associated generator. Format:
+ * `projects//locations//generators/`
+ * @type int $query_source
+ * Query source for the answer.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Query text. Article Search uses this to store the input query used
+ * to generate the search results.
+ *
+ * Generated from protobuf field string query = 1;
+ * @return string
+ */
+ public function getQuery()
+ {
+ return $this->query;
+ }
+
+ /**
+ * Query text. Article Search uses this to store the input query used
+ * to generate the search results.
+ *
+ * Generated from protobuf field string query = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setQuery($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query = $var;
+
+ return $this;
+ }
+
+ /**
+ * The resource name of associated generator. Format:
+ * `projects//locations//generators/`
+ *
+ * Generated from protobuf field string generator_name = 2;
+ * @return string
+ */
+ public function getGeneratorName()
+ {
+ return $this->generator_name;
+ }
+
+ /**
+ * The resource name of associated generator. Format:
+ * `projects//locations//generators/`
+ *
+ * Generated from protobuf field string generator_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setGeneratorName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->generator_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Query source for the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput.QuerySource query_source = 3;
+ * @return int
+ */
+ public function getQuerySource()
+ {
+ return $this->query_source;
+ }
+
+ /**
+ * Query source for the answer.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput.QuerySource query_source = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setQuerySource($var)
+ {
+ GPBUtil::checkEnum($var, \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation\UserInput\QuerySource::class);
+ $this->query_source = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(UserInput::class, \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation_UserInput::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput/QuerySource.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput/QuerySource.php
new file mode 100644
index 000000000000..cbdf87a560cd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/RuntimeAnnotation/UserInput/QuerySource.php
@@ -0,0 +1,65 @@
+google.cloud.contactcenterinsights.v1.RuntimeAnnotation.UserInput.QuerySource
+ */
+class QuerySource
+{
+ /**
+ * Unknown query source.
+ *
+ * Generated from protobuf enum QUERY_SOURCE_UNSPECIFIED = 0;
+ */
+ const QUERY_SOURCE_UNSPECIFIED = 0;
+ /**
+ * The query is from agents.
+ *
+ * Generated from protobuf enum AGENT_QUERY = 1;
+ */
+ const AGENT_QUERY = 1;
+ /**
+ * The query is a query from previous suggestions, e.g. from a preceding
+ * SuggestKnowledgeAssist response.
+ *
+ * Generated from protobuf enum SUGGESTED_QUERY = 2;
+ */
+ const SUGGESTED_QUERY = 2;
+
+ private static $valueToName = [
+ self::QUERY_SOURCE_UNSPECIFIED => 'QUERY_SOURCE_UNSPECIFIED',
+ self::AGENT_QUERY => 'AGENT_QUERY',
+ self::SUGGESTED_QUERY => 'SUGGESTED_QUERY',
+ ];
+
+ public static function name($value)
+ {
+ if (!isset(self::$valueToName[$value])) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no name defined for value %s', __CLASS__, $value));
+ }
+ return self::$valueToName[$value];
+ }
+
+
+ public static function value($name)
+ {
+ $const = __CLASS__ . '::' . strtoupper($name);
+ if (!defined($const)) {
+ throw new UnexpectedValueException(sprintf(
+ 'Enum %s has no value defined for name %s', __CLASS__, $name));
+ }
+ return constant($const);
+ }
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QuerySource::class, \Google\Cloud\ContactCenterInsights\V1\RuntimeAnnotation_UserInput_QuerySource::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SentimentData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SentimentData.php
new file mode 100644
index 000000000000..ce03d00b710a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SentimentData.php
@@ -0,0 +1,105 @@
+google.cloud.contactcenterinsights.v1.SentimentData
+ */
+class SentimentData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * A non-negative number from 0 to infinity which represents the abolute
+ * magnitude of sentiment regardless of score.
+ *
+ * Generated from protobuf field float magnitude = 1;
+ */
+ protected $magnitude = 0.0;
+ /**
+ * The sentiment score between -1.0 (negative) and 1.0 (positive).
+ *
+ * Generated from protobuf field float score = 2;
+ */
+ protected $score = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type float $magnitude
+ * A non-negative number from 0 to infinity which represents the abolute
+ * magnitude of sentiment regardless of score.
+ * @type float $score
+ * The sentiment score between -1.0 (negative) and 1.0 (positive).
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * A non-negative number from 0 to infinity which represents the abolute
+ * magnitude of sentiment regardless of score.
+ *
+ * Generated from protobuf field float magnitude = 1;
+ * @return float
+ */
+ public function getMagnitude()
+ {
+ return $this->magnitude;
+ }
+
+ /**
+ * A non-negative number from 0 to infinity which represents the abolute
+ * magnitude of sentiment regardless of score.
+ *
+ * Generated from protobuf field float magnitude = 1;
+ * @param float $var
+ * @return $this
+ */
+ public function setMagnitude($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->magnitude = $var;
+
+ return $this;
+ }
+
+ /**
+ * The sentiment score between -1.0 (negative) and 1.0 (positive).
+ *
+ * Generated from protobuf field float score = 2;
+ * @return float
+ */
+ public function getScore()
+ {
+ return $this->score;
+ }
+
+ /**
+ * The sentiment score between -1.0 (negative) and 1.0 (positive).
+ *
+ * Generated from protobuf field float score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setScore($var)
+ {
+ GPBUtil::checkFloat($var);
+ $this->score = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings.php
new file mode 100644
index 000000000000..a728e5d6bc4f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings.php
@@ -0,0 +1,516 @@
+google.cloud.contactcenterinsights.v1.Settings
+ */
+class Settings extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the settings resource.
+ * Format:
+ * projects/{project}/locations/{location}/settings
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * Output only. The time at which the settings was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time at which the settings were last updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * A language code to be applied to each transcript segment unless the segment
+ * already specifies a language code. Language code defaults to "en-US" if it
+ * is neither specified on the segment nor here.
+ *
+ * Generated from protobuf field string language_code = 4;
+ */
+ protected $language_code = '';
+ /**
+ * The default TTL for newly-created conversations. If a conversation has a
+ * specified expiration, that value will be used instead. Changing this
+ * value will not change the expiration of existing conversations.
+ * Conversations with no expire time persist until they are deleted.
+ *
+ * Generated from protobuf field .google.protobuf.Duration conversation_ttl = 5;
+ */
+ protected $conversation_ttl = null;
+ /**
+ * A map that maps a notification trigger to a Pub/Sub topic. Each time a
+ * specified trigger occurs, Insights will notify the corresponding Pub/Sub
+ * topic.
+ * Keys are notification triggers. Supported keys are:
+ * * "all-triggers": Notify each time any of the supported triggers occurs.
+ * * "create-analysis": Notify each time an analysis is created.
+ * * "create-conversation": Notify each time a conversation is created.
+ * * "export-insights-data": Notify each time an export is complete.
+ * * "ingest-conversations": Notify each time an IngestConversations LRO is
+ * complete.
+ * * "update-conversation": Notify each time a conversation is updated via
+ * UpdateConversation.
+ * * "upload-conversation": Notify when an UploadConversation LRO is complete.
+ * Values are Pub/Sub topics. The format of each Pub/Sub topic is:
+ * projects/{project}/topics/{topic}
+ *
+ * Generated from protobuf field map pubsub_notification_settings = 6;
+ */
+ private $pubsub_notification_settings;
+ /**
+ * Default analysis settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings.AnalysisConfig analysis_config = 7;
+ */
+ protected $analysis_config = null;
+ /**
+ * Default DLP redaction resources to be applied while ingesting
+ * conversations. This applies to conversations ingested from the
+ * `UploadConversation` and `IngestConversations` endpoints, including
+ * conversations coming from CCAI Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 10;
+ */
+ protected $redaction_config = null;
+ /**
+ * Optional. Default Speech-to-Text resources to use while ingesting audio
+ * files. Optional, CCAI Insights will create a default if not provided. This
+ * applies to conversations ingested from the `UploadConversation` and
+ * `IngestConversations` endpoints, including conversations coming from CCAI
+ * Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $speech_config = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the settings resource.
+ * Format:
+ * projects/{project}/locations/{location}/settings
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which the settings was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The time at which the settings were last updated.
+ * @type string $language_code
+ * A language code to be applied to each transcript segment unless the segment
+ * already specifies a language code. Language code defaults to "en-US" if it
+ * is neither specified on the segment nor here.
+ * @type \Google\Protobuf\Duration $conversation_ttl
+ * The default TTL for newly-created conversations. If a conversation has a
+ * specified expiration, that value will be used instead. Changing this
+ * value will not change the expiration of existing conversations.
+ * Conversations with no expire time persist until they are deleted.
+ * @type array|\Google\Protobuf\Internal\MapField $pubsub_notification_settings
+ * A map that maps a notification trigger to a Pub/Sub topic. Each time a
+ * specified trigger occurs, Insights will notify the corresponding Pub/Sub
+ * topic.
+ * Keys are notification triggers. Supported keys are:
+ * * "all-triggers": Notify each time any of the supported triggers occurs.
+ * * "create-analysis": Notify each time an analysis is created.
+ * * "create-conversation": Notify each time a conversation is created.
+ * * "export-insights-data": Notify each time an export is complete.
+ * * "ingest-conversations": Notify each time an IngestConversations LRO is
+ * complete.
+ * * "update-conversation": Notify each time a conversation is updated via
+ * UpdateConversation.
+ * * "upload-conversation": Notify when an UploadConversation LRO is complete.
+ * Values are Pub/Sub topics. The format of each Pub/Sub topic is:
+ * projects/{project}/topics/{topic}
+ * @type \Google\Cloud\ContactCenterInsights\V1\Settings\AnalysisConfig $analysis_config
+ * Default analysis settings.
+ * @type \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $redaction_config
+ * Default DLP redaction resources to be applied while ingesting
+ * conversations. This applies to conversations ingested from the
+ * `UploadConversation` and `IngestConversations` endpoints, including
+ * conversations coming from CCAI Platform.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $speech_config
+ * Optional. Default Speech-to-Text resources to use while ingesting audio
+ * files. Optional, CCAI Insights will create a default if not provided. This
+ * applies to conversations ingested from the `UploadConversation` and
+ * `IngestConversations` endpoints, including conversations coming from CCAI
+ * Platform.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the settings resource.
+ * Format:
+ * projects/{project}/locations/{location}/settings
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the settings resource.
+ * Format:
+ * projects/{project}/locations/{location}/settings
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which the settings was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which the settings was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which the settings were last updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The time at which the settings were last updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * A language code to be applied to each transcript segment unless the segment
+ * already specifies a language code. Language code defaults to "en-US" if it
+ * is neither specified on the segment nor here.
+ *
+ * Generated from protobuf field string language_code = 4;
+ * @return string
+ */
+ public function getLanguageCode()
+ {
+ return $this->language_code;
+ }
+
+ /**
+ * A language code to be applied to each transcript segment unless the segment
+ * already specifies a language code. Language code defaults to "en-US" if it
+ * is neither specified on the segment nor here.
+ *
+ * Generated from protobuf field string language_code = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setLanguageCode($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->language_code = $var;
+
+ return $this;
+ }
+
+ /**
+ * The default TTL for newly-created conversations. If a conversation has a
+ * specified expiration, that value will be used instead. Changing this
+ * value will not change the expiration of existing conversations.
+ * Conversations with no expire time persist until they are deleted.
+ *
+ * Generated from protobuf field .google.protobuf.Duration conversation_ttl = 5;
+ * @return \Google\Protobuf\Duration|null
+ */
+ public function getConversationTtl()
+ {
+ return $this->conversation_ttl;
+ }
+
+ public function hasConversationTtl()
+ {
+ return isset($this->conversation_ttl);
+ }
+
+ public function clearConversationTtl()
+ {
+ unset($this->conversation_ttl);
+ }
+
+ /**
+ * The default TTL for newly-created conversations. If a conversation has a
+ * specified expiration, that value will be used instead. Changing this
+ * value will not change the expiration of existing conversations.
+ * Conversations with no expire time persist until they are deleted.
+ *
+ * Generated from protobuf field .google.protobuf.Duration conversation_ttl = 5;
+ * @param \Google\Protobuf\Duration $var
+ * @return $this
+ */
+ public function setConversationTtl($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Duration::class);
+ $this->conversation_ttl = $var;
+
+ return $this;
+ }
+
+ /**
+ * A map that maps a notification trigger to a Pub/Sub topic. Each time a
+ * specified trigger occurs, Insights will notify the corresponding Pub/Sub
+ * topic.
+ * Keys are notification triggers. Supported keys are:
+ * * "all-triggers": Notify each time any of the supported triggers occurs.
+ * * "create-analysis": Notify each time an analysis is created.
+ * * "create-conversation": Notify each time a conversation is created.
+ * * "export-insights-data": Notify each time an export is complete.
+ * * "ingest-conversations": Notify each time an IngestConversations LRO is
+ * complete.
+ * * "update-conversation": Notify each time a conversation is updated via
+ * UpdateConversation.
+ * * "upload-conversation": Notify when an UploadConversation LRO is complete.
+ * Values are Pub/Sub topics. The format of each Pub/Sub topic is:
+ * projects/{project}/topics/{topic}
+ *
+ * Generated from protobuf field map pubsub_notification_settings = 6;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getPubsubNotificationSettings()
+ {
+ return $this->pubsub_notification_settings;
+ }
+
+ /**
+ * A map that maps a notification trigger to a Pub/Sub topic. Each time a
+ * specified trigger occurs, Insights will notify the corresponding Pub/Sub
+ * topic.
+ * Keys are notification triggers. Supported keys are:
+ * * "all-triggers": Notify each time any of the supported triggers occurs.
+ * * "create-analysis": Notify each time an analysis is created.
+ * * "create-conversation": Notify each time a conversation is created.
+ * * "export-insights-data": Notify each time an export is complete.
+ * * "ingest-conversations": Notify each time an IngestConversations LRO is
+ * complete.
+ * * "update-conversation": Notify each time a conversation is updated via
+ * UpdateConversation.
+ * * "upload-conversation": Notify when an UploadConversation LRO is complete.
+ * Values are Pub/Sub topics. The format of each Pub/Sub topic is:
+ * projects/{project}/topics/{topic}
+ *
+ * Generated from protobuf field map pubsub_notification_settings = 6;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setPubsubNotificationSettings($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->pubsub_notification_settings = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Default analysis settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings.AnalysisConfig analysis_config = 7;
+ * @return \Google\Cloud\ContactCenterInsights\V1\Settings\AnalysisConfig|null
+ */
+ public function getAnalysisConfig()
+ {
+ return $this->analysis_config;
+ }
+
+ public function hasAnalysisConfig()
+ {
+ return isset($this->analysis_config);
+ }
+
+ public function clearAnalysisConfig()
+ {
+ unset($this->analysis_config);
+ }
+
+ /**
+ * Default analysis settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings.AnalysisConfig analysis_config = 7;
+ * @param \Google\Cloud\ContactCenterInsights\V1\Settings\AnalysisConfig $var
+ * @return $this
+ */
+ public function setAnalysisConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Settings\AnalysisConfig::class);
+ $this->analysis_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Default DLP redaction resources to be applied while ingesting
+ * conversations. This applies to conversations ingested from the
+ * `UploadConversation` and `IngestConversations` endpoints, including
+ * conversations coming from CCAI Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 10;
+ * @return \Google\Cloud\ContactCenterInsights\V1\RedactionConfig|null
+ */
+ public function getRedactionConfig()
+ {
+ return $this->redaction_config;
+ }
+
+ public function hasRedactionConfig()
+ {
+ return isset($this->redaction_config);
+ }
+
+ public function clearRedactionConfig()
+ {
+ unset($this->redaction_config);
+ }
+
+ /**
+ * Default DLP redaction resources to be applied while ingesting
+ * conversations. This applies to conversations ingested from the
+ * `UploadConversation` and `IngestConversations` endpoints, including
+ * conversations coming from CCAI Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 10;
+ * @param \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $var
+ * @return $this
+ */
+ public function setRedactionConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\RedactionConfig::class);
+ $this->redaction_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Default Speech-to-Text resources to use while ingesting audio
+ * files. Optional, CCAI Insights will create a default if not provided. This
+ * applies to conversations ingested from the `UploadConversation` and
+ * `IngestConversations` endpoints, including conversations coming from CCAI
+ * Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Cloud\ContactCenterInsights\V1\SpeechConfig|null
+ */
+ public function getSpeechConfig()
+ {
+ return $this->speech_config;
+ }
+
+ public function hasSpeechConfig()
+ {
+ return isset($this->speech_config);
+ }
+
+ public function clearSpeechConfig()
+ {
+ unset($this->speech_config);
+ }
+
+ /**
+ * Optional. Default Speech-to-Text resources to use while ingesting audio
+ * files. Optional, CCAI Insights will create a default if not provided. This
+ * applies to conversations ingested from the `UploadConversation` and
+ * `IngestConversations` endpoints, including conversations coming from CCAI
+ * Platform.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $var
+ * @return $this
+ */
+ public function setSpeechConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SpeechConfig::class);
+ $this->speech_config = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings/AnalysisConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings/AnalysisConfig.php
new file mode 100644
index 000000000000..6bf6f5bf7a26
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/Settings/AnalysisConfig.php
@@ -0,0 +1,160 @@
+google.cloud.contactcenterinsights.v1.Settings.AnalysisConfig
+ */
+class AnalysisConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Percentage of conversations created using Dialogflow runtime integration
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double runtime_integration_analysis_percentage = 1;
+ */
+ protected $runtime_integration_analysis_percentage = 0.0;
+ /**
+ * Percentage of conversations created using the UploadConversation endpoint
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double upload_conversation_analysis_percentage = 6;
+ */
+ protected $upload_conversation_analysis_percentage = 0.0;
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 5;
+ */
+ protected $annotator_selector = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type float $runtime_integration_analysis_percentage
+ * Percentage of conversations created using Dialogflow runtime integration
+ * to analyze automatically, between [0, 100].
+ * @type float $upload_conversation_analysis_percentage
+ * Percentage of conversations created using the UploadConversation endpoint
+ * to analyze automatically, between [0, 100].
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $annotator_selector
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Percentage of conversations created using Dialogflow runtime integration
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double runtime_integration_analysis_percentage = 1;
+ * @return float
+ */
+ public function getRuntimeIntegrationAnalysisPercentage()
+ {
+ return $this->runtime_integration_analysis_percentage;
+ }
+
+ /**
+ * Percentage of conversations created using Dialogflow runtime integration
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double runtime_integration_analysis_percentage = 1;
+ * @param float $var
+ * @return $this
+ */
+ public function setRuntimeIntegrationAnalysisPercentage($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->runtime_integration_analysis_percentage = $var;
+
+ return $this;
+ }
+
+ /**
+ * Percentage of conversations created using the UploadConversation endpoint
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double upload_conversation_analysis_percentage = 6;
+ * @return float
+ */
+ public function getUploadConversationAnalysisPercentage()
+ {
+ return $this->upload_conversation_analysis_percentage;
+ }
+
+ /**
+ * Percentage of conversations created using the UploadConversation endpoint
+ * to analyze automatically, between [0, 100].
+ *
+ * Generated from protobuf field double upload_conversation_analysis_percentage = 6;
+ * @param float $var
+ * @return $this
+ */
+ public function setUploadConversationAnalysisPercentage($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->upload_conversation_analysis_percentage = $var;
+
+ return $this;
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 5;
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector|null
+ */
+ public function getAnnotatorSelector()
+ {
+ return $this->annotator_selector;
+ }
+
+ public function hasAnnotatorSelector()
+ {
+ return isset($this->annotator_selector);
+ }
+
+ public function clearAnnotatorSelector()
+ {
+ unset($this->annotator_selector);
+ }
+
+ /**
+ * To select the annotators to run and the phrase matchers to use
+ * (if any). If not specified, all annotators will be run.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnnotatorSelector annotator_selector = 5;
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector $var
+ * @return $this
+ */
+ public function setAnnotatorSelector($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnnotatorSelector::class);
+ $this->annotator_selector = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(AnalysisConfig::class, \Google\Cloud\ContactCenterInsights\V1\Settings_AnalysisConfig::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SilenceData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SilenceData.php
new file mode 100644
index 000000000000..b2f045fe5662
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SilenceData.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.SilenceData
+ */
+class SilenceData extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartComposeSuggestionData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartComposeSuggestionData.php
new file mode 100644
index 000000000000..abf22b896d3a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartComposeSuggestionData.php
@@ -0,0 +1,189 @@
+google.cloud.contactcenterinsights.v1.SmartComposeSuggestionData
+ */
+class SmartComposeSuggestionData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The content of the suggestion.
+ *
+ * Generated from protobuf field string suggestion = 1;
+ */
+ protected $suggestion = '';
+ /**
+ * The system's confidence score that this suggestion is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ */
+ protected $confidence_score = 0.0;
+ /**
+ * Map that contains metadata about the Smart Compose suggestion and the
+ * document from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ */
+ private $metadata;
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ */
+ protected $query_record = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $suggestion
+ * The content of the suggestion.
+ * @type float $confidence_score
+ * The system's confidence score that this suggestion is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * Map that contains metadata about the Smart Compose suggestion and the
+ * document from which it originates.
+ * @type string $query_record
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The content of the suggestion.
+ *
+ * Generated from protobuf field string suggestion = 1;
+ * @return string
+ */
+ public function getSuggestion()
+ {
+ return $this->suggestion;
+ }
+
+ /**
+ * The content of the suggestion.
+ *
+ * Generated from protobuf field string suggestion = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setSuggestion($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->suggestion = $var;
+
+ return $this;
+ }
+
+ /**
+ * The system's confidence score that this suggestion is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ * @return float
+ */
+ public function getConfidenceScore()
+ {
+ return $this->confidence_score;
+ }
+
+ /**
+ * The system's confidence score that this suggestion is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidenceScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->confidence_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Map that contains metadata about the Smart Compose suggestion and the
+ * document from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * Map that contains metadata about the Smart Compose suggestion and the
+ * document from which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ * @return string
+ */
+ public function getQueryRecord()
+ {
+ return $this->query_record;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setQueryRecord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query_record = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartReplyData.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartReplyData.php
new file mode 100644
index 000000000000..2da4d03c9e50
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SmartReplyData.php
@@ -0,0 +1,189 @@
+google.cloud.contactcenterinsights.v1.SmartReplyData
+ */
+class SmartReplyData extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The content of the reply.
+ *
+ * Generated from protobuf field string reply = 1;
+ */
+ protected $reply = '';
+ /**
+ * The system's confidence score that this reply is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ */
+ protected $confidence_score = 0.0;
+ /**
+ * Map that contains metadata about the Smart Reply and the document from
+ * which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ */
+ private $metadata;
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ */
+ protected $query_record = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $reply
+ * The content of the reply.
+ * @type float $confidence_score
+ * The system's confidence score that this reply is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ * @type array|\Google\Protobuf\Internal\MapField $metadata
+ * Map that contains metadata about the Smart Reply and the document from
+ * which it originates.
+ * @type string $query_record
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The content of the reply.
+ *
+ * Generated from protobuf field string reply = 1;
+ * @return string
+ */
+ public function getReply()
+ {
+ return $this->reply;
+ }
+
+ /**
+ * The content of the reply.
+ *
+ * Generated from protobuf field string reply = 1;
+ * @param string $var
+ * @return $this
+ */
+ public function setReply($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->reply = $var;
+
+ return $this;
+ }
+
+ /**
+ * The system's confidence score that this reply is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ * @return float
+ */
+ public function getConfidenceScore()
+ {
+ return $this->confidence_score;
+ }
+
+ /**
+ * The system's confidence score that this reply is a good match for this
+ * conversation, ranging from 0.0 (completely uncertain) to 1.0 (completely
+ * certain).
+ *
+ * Generated from protobuf field double confidence_score = 2;
+ * @param float $var
+ * @return $this
+ */
+ public function setConfidenceScore($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->confidence_score = $var;
+
+ return $this;
+ }
+
+ /**
+ * Map that contains metadata about the Smart Reply and the document from
+ * which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @return \Google\Protobuf\Internal\MapField
+ */
+ public function getMetadata()
+ {
+ return $this->metadata;
+ }
+
+ /**
+ * Map that contains metadata about the Smart Reply and the document from
+ * which it originates.
+ *
+ * Generated from protobuf field map metadata = 3;
+ * @param array|\Google\Protobuf\Internal\MapField $var
+ * @return $this
+ */
+ public function setMetadata($var)
+ {
+ $arr = GPBUtil::checkMapField($var, \Google\Protobuf\Internal\GPBType::STRING, \Google\Protobuf\Internal\GPBType::STRING);
+ $this->metadata = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ * @return string
+ */
+ public function getQueryRecord()
+ {
+ return $this->query_record;
+ }
+
+ /**
+ * The name of the answer record.
+ * Format:
+ * projects/{project}/locations/{location}/answerRecords/{answer_record}
+ *
+ * Generated from protobuf field string query_record = 4;
+ * @param string $var
+ * @return $this
+ */
+ public function setQueryRecord($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->query_record = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SpeechConfig.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SpeechConfig.php
new file mode 100644
index 000000000000..714218e8fcc2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/SpeechConfig.php
@@ -0,0 +1,79 @@
+google.cloud.contactcenterinsights.v1.SpeechConfig
+ */
+class SpeechConfig extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * The fully-qualified Speech Recognizer resource name.
+ * Format:
+ * `projects/{project_id}/locations/{location}/recognizer/{recognizer}`
+ *
+ * Generated from protobuf field string speech_recognizer = 1 [(.google.api.resource_reference) = {
+ */
+ protected $speech_recognizer = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $speech_recognizer
+ * The fully-qualified Speech Recognizer resource name.
+ * Format:
+ * `projects/{project_id}/locations/{location}/recognizer/{recognizer}`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * The fully-qualified Speech Recognizer resource name.
+ * Format:
+ * `projects/{project_id}/locations/{location}/recognizer/{recognizer}`
+ *
+ * Generated from protobuf field string speech_recognizer = 1 [(.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getSpeechRecognizer()
+ {
+ return $this->speech_recognizer;
+ }
+
+ /**
+ * The fully-qualified Speech Recognizer resource name.
+ * Format:
+ * `projects/{project_id}/locations/{location}/recognizer/{recognizer}`
+ *
+ * Generated from protobuf field string speech_recognizer = 1 [(.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setSpeechRecognizer($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->speech_recognizer = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata.php
new file mode 100644
index 000000000000..3e686987788d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata.php
@@ -0,0 +1,279 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata
+ */
+class TuneQaScorecardRevisionMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Output only. The results of data validation per question in the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetValidationResult qa_question_dataset_validation_results = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $qa_question_dataset_validation_results;
+ /**
+ * Output only. The metrics for each QaQuestion in the TuneScorecardRevision
+ * request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics qa_question_dataset_tuning_metrics = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ private $qa_question_dataset_tuning_metrics;
+ /**
+ * Output only. The percentage of the tuning job that has completed. Always
+ * between 0 and 1 where 0 indicates the job has not started i.e. 0% and 1
+ * indicates the job has completed i.e. 100%.
+ *
+ * Generated from protobuf field double tuning_completion_ratio = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $tuning_completion_ratio = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionRequest $request
+ * Output only. The original request.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetValidationResult>|\Google\Protobuf\Internal\RepeatedField $qa_question_dataset_validation_results
+ * Output only. The results of data validation per question in the request.
+ * @type array<\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics>|\Google\Protobuf\Internal\RepeatedField $qa_question_dataset_tuning_metrics
+ * Output only. The metrics for each QaQuestion in the TuneScorecardRevision
+ * request.
+ * @type float $tuning_completion_ratio
+ * Output only. The percentage of the tuning job that has completed. Always
+ * between 0 and 1 where 0 indicates the job has not started i.e. 0% and 1
+ * indicates the job has completed i.e. 100%.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The results of data validation per question in the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetValidationResult qa_question_dataset_validation_results = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaQuestionDatasetValidationResults()
+ {
+ return $this->qa_question_dataset_validation_results;
+ }
+
+ /**
+ * Output only. The results of data validation per question in the request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetValidationResult qa_question_dataset_validation_results = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetValidationResult>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaQuestionDatasetValidationResults($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetValidationResult::class);
+ $this->qa_question_dataset_validation_results = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The metrics for each QaQuestion in the TuneScorecardRevision
+ * request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics qa_question_dataset_tuning_metrics = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getQaQuestionDatasetTuningMetrics()
+ {
+ return $this->qa_question_dataset_tuning_metrics;
+ }
+
+ /**
+ * Output only. The metrics for each QaQuestion in the TuneScorecardRevision
+ * request.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics qa_question_dataset_tuning_metrics = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param array<\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics>|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setQaQuestionDatasetTuningMetrics($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::MESSAGE, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics::class);
+ $this->qa_question_dataset_tuning_metrics = $arr;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The percentage of the tuning job that has completed. Always
+ * between 0 and 1 where 0 indicates the job has not started i.e. 0% and 1
+ * indicates the job has completed i.e. 100%.
+ *
+ * Generated from protobuf field double tuning_completion_ratio = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return float
+ */
+ public function getTuningCompletionRatio()
+ {
+ return $this->tuning_completion_ratio;
+ }
+
+ /**
+ * Output only. The percentage of the tuning job that has completed. Always
+ * between 0 and 1 where 0 indicates the job has not started i.e. 0% and 1
+ * indicates the job has completed i.e. 100%.
+ *
+ * Generated from protobuf field double tuning_completion_ratio = 6 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param float $var
+ * @return $this
+ */
+ public function setTuningCompletionRatio($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->tuning_completion_ratio = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics.php
new file mode 100644
index 000000000000..87c365f682ce
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics.php
@@ -0,0 +1,119 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics
+ */
+class QaQuestionDatasetTuningMetrics extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ */
+ protected $question = '';
+ /**
+ * Output only. The metrics for the question's dataset.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics.Metrics metrics = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $metrics = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $question
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ * @type \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics\Metrics $metrics
+ * Output only. The metrics for the question's dataset.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getQuestion()
+ {
+ return $this->question;
+ }
+
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestion($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The metrics for the question's dataset.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics.Metrics metrics = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics\Metrics|null
+ */
+ public function getMetrics()
+ {
+ return $this->metrics;
+ }
+
+ public function hasMetrics()
+ {
+ return isset($this->metrics);
+ }
+
+ public function clearMetrics()
+ {
+ unset($this->metrics);
+ }
+
+ /**
+ * Output only. The metrics for the question's dataset.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics.Metrics metrics = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics\Metrics $var
+ * @return $this
+ */
+ public function setMetrics($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata\QaQuestionDatasetTuningMetrics\Metrics::class);
+ $this->metrics = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaQuestionDatasetTuningMetrics::class, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata_QaQuestionDatasetTuningMetrics::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics/Metrics.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics/Metrics.php
new file mode 100644
index 000000000000..0d964221b04d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetTuningMetrics/Metrics.php
@@ -0,0 +1,71 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetTuningMetrics.Metrics
+ */
+class Metrics extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Accuracy of the question's dataset.
+ *
+ * Generated from protobuf field double accuracy = 1;
+ */
+ protected $accuracy = 0.0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type float $accuracy
+ * Accuracy of the question's dataset.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Accuracy of the question's dataset.
+ *
+ * Generated from protobuf field double accuracy = 1;
+ * @return float
+ */
+ public function getAccuracy()
+ {
+ return $this->accuracy;
+ }
+
+ /**
+ * Accuracy of the question's dataset.
+ *
+ * Generated from protobuf field double accuracy = 1;
+ * @param float $var
+ * @return $this
+ */
+ public function setAccuracy($var)
+ {
+ GPBUtil::checkDouble($var);
+ $this->accuracy = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(Metrics::class, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata_QaQuestionDatasetTuningMetrics_Metrics::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetValidationResult.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetValidationResult.php
new file mode 100644
index 000000000000..31e1ca9c9311
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionMetadata/QaQuestionDatasetValidationResult.php
@@ -0,0 +1,146 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionMetadata.QaQuestionDatasetValidationResult
+ */
+class QaQuestionDatasetValidationResult extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ */
+ protected $question = '';
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ */
+ private $dataset_validation_warnings;
+ /**
+ * The number of valid feedback labels in the question's dataset.
+ *
+ * Generated from protobuf field int32 valid_feedback_labels_count = 3;
+ */
+ protected $valid_feedback_labels_count = 0;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $question
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ * @type array|\Google\Protobuf\Internal\RepeatedField $dataset_validation_warnings
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ * @type int $valid_feedback_labels_count
+ * The number of valid feedback labels in the question's dataset.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getQuestion()
+ {
+ return $this->question;
+ }
+
+ /**
+ * Output only. The resource path of the question whose dataset was
+ * evaluated for tuning.
+ *
+ * Generated from protobuf field string question = 1 [(.google.api.field_behavior) = OUTPUT_ONLY, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setQuestion($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->question = $var;
+
+ return $this;
+ }
+
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ * @return \Google\Protobuf\Internal\RepeatedField
+ */
+ public function getDatasetValidationWarnings()
+ {
+ return $this->dataset_validation_warnings;
+ }
+
+ /**
+ * A list of any applicable data validation warnings about the question's
+ * feedback labels.
+ *
+ * Generated from protobuf field repeated .google.cloud.contactcenterinsights.v1.DatasetValidationWarning dataset_validation_warnings = 2;
+ * @param array|\Google\Protobuf\Internal\RepeatedField $var
+ * @return $this
+ */
+ public function setDatasetValidationWarnings($var)
+ {
+ $arr = GPBUtil::checkRepeatedField($var, \Google\Protobuf\Internal\GPBType::ENUM, \Google\Cloud\ContactCenterInsights\V1\DatasetValidationWarning::class);
+ $this->dataset_validation_warnings = $arr;
+
+ return $this;
+ }
+
+ /**
+ * The number of valid feedback labels in the question's dataset.
+ *
+ * Generated from protobuf field int32 valid_feedback_labels_count = 3;
+ * @return int
+ */
+ public function getValidFeedbackLabelsCount()
+ {
+ return $this->valid_feedback_labels_count;
+ }
+
+ /**
+ * The number of valid feedback labels in the question's dataset.
+ *
+ * Generated from protobuf field int32 valid_feedback_labels_count = 3;
+ * @param int $var
+ * @return $this
+ */
+ public function setValidFeedbackLabelsCount($var)
+ {
+ GPBUtil::checkInt32($var);
+ $this->valid_feedback_labels_count = $var;
+
+ return $this;
+ }
+
+}
+
+// Adding a class alias for backwards compatibility with the previous class name.
+class_alias(QaQuestionDatasetValidationResult::class, \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata_QaQuestionDatasetValidationResult::class);
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..74d28d6c0c64
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionRequest.php
@@ -0,0 +1,188 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionRequest
+ */
+class TuneQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource for new fine tuning job instance.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. Filter for selecting the feedback labels that needs to be
+ * used for training.
+ * This filter can be used to limit the feedback labels used for tuning to a
+ * feedback labels created or updated for a specific time-window etc.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $filter = '';
+ /**
+ * Optional. Run in validate only mode, no fine tuning will actually run.
+ * Data quality validations like training data distributions will run.
+ * Even when set to false, the data quality validations will still run but
+ * once the validations complete we will proceed with the fine tune, if
+ * applicable.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $validate_only = false;
+
+ /**
+ * @param string $parent Required. The parent resource for new fine tuning job instance. Please see
+ * {@see ContactCenterInsightsClient::qaScorecardRevisionName()} for help formatting this field.
+ * @param string $filter Required. Filter for selecting the feedback labels that needs to be
+ * used for training.
+ * This filter can be used to limit the feedback labels used for tuning to a
+ * feedback labels created or updated for a specific time-window etc.
+ * @param bool $validateOnly Optional. Run in validate only mode, no fine tuning will actually run.
+ * Data quality validations like training data distributions will run.
+ * Even when set to false, the data quality validations will still run but
+ * once the validations complete we will proceed with the fine tune, if
+ * applicable.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionRequest
+ *
+ * @experimental
+ */
+ public static function build(string $parent, string $filter, bool $validateOnly): self
+ {
+ return (new self())
+ ->setParent($parent)
+ ->setFilter($filter)
+ ->setValidateOnly($validateOnly);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource for new fine tuning job instance.
+ * @type string $filter
+ * Required. Filter for selecting the feedback labels that needs to be
+ * used for training.
+ * This filter can be used to limit the feedback labels used for tuning to a
+ * feedback labels created or updated for a specific time-window etc.
+ * @type bool $validate_only
+ * Optional. Run in validate only mode, no fine tuning will actually run.
+ * Data quality validations like training data distributions will run.
+ * Even when set to false, the data quality validations will still run but
+ * once the validations complete we will proceed with the fine tune, if
+ * applicable.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource for new fine tuning job instance.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource for new fine tuning job instance.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. Filter for selecting the feedback labels that needs to be
+ * used for training.
+ * This filter can be used to limit the feedback labels used for tuning to a
+ * feedback labels created or updated for a specific time-window etc.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return string
+ */
+ public function getFilter()
+ {
+ return $this->filter;
+ }
+
+ /**
+ * Required. Filter for selecting the feedback labels that needs to be
+ * used for training.
+ * This filter can be used to limit the feedback labels used for tuning to a
+ * feedback labels created or updated for a specific time-window etc.
+ *
+ * Generated from protobuf field string filter = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param string $var
+ * @return $this
+ */
+ public function setFilter($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->filter = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Run in validate only mode, no fine tuning will actually run.
+ * Data quality validations like training data distributions will run.
+ * Even when set to false, the data quality validations will still run but
+ * once the validations complete we will proceed with the fine tune, if
+ * applicable.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return bool
+ */
+ public function getValidateOnly()
+ {
+ return $this->validate_only;
+ }
+
+ /**
+ * Optional. Run in validate only mode, no fine tuning will actually run.
+ * Data quality validations like training data distributions will run.
+ * Even when set to false, the data quality validations will still run but
+ * once the validations complete we will proceed with the fine tune, if
+ * applicable.
+ *
+ * Generated from protobuf field bool validate_only = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param bool $var
+ * @return $this
+ */
+ public function setValidateOnly($var)
+ {
+ GPBUtil::checkBool($var);
+ $this->validate_only = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionResponse.php
new file mode 100644
index 000000000000..67b9f528d50f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/TuneQaScorecardRevisionResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.TuneQaScorecardRevisionResponse
+ */
+class TuneQaScorecardRevisionResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelMetadata.php
new file mode 100644
index 000000000000..e6995db42e6e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelMetadata.php
@@ -0,0 +1,165 @@
+google.cloud.contactcenterinsights.v1.UndeployIssueModelMetadata
+ */
+class UndeployIssueModelMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * The original request for undeployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UndeployIssueModelRequest request = 3;
+ */
+ protected $request = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelRequest $request
+ * The original request for undeployment.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * The original request for undeployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UndeployIssueModelRequest request = 3;
+ * @return \Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * The original request for undeployment.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UndeployIssueModelRequest request = 3;
+ * @param \Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelRequest.php
new file mode 100644
index 000000000000..7db5b4fe3288
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelRequest.php
@@ -0,0 +1,81 @@
+google.cloud.contactcenterinsights.v1.UndeployIssueModelRequest
+ */
+class UndeployIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The issue model to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * @param string $name Required. The issue model to undeploy. Please see
+ * {@see ContactCenterInsightsClient::issueModelName()} for help formatting this field.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(string $name): self
+ {
+ return (new self())
+ ->setName($name);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The issue model to undeploy.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The issue model to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The issue model to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelResponse.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelResponse.php
new file mode 100644
index 000000000000..0478db7e5e18
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployIssueModelResponse.php
@@ -0,0 +1,33 @@
+google.cloud.contactcenterinsights.v1.UndeployIssueModelResponse
+ */
+class UndeployIssueModelResponse extends \Google\Protobuf\Internal\Message
+{
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployQaScorecardRevisionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployQaScorecardRevisionRequest.php
new file mode 100644
index 000000000000..dd06aac0d71f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UndeployQaScorecardRevisionRequest.php
@@ -0,0 +1,67 @@
+google.cloud.contactcenterinsights.v1.UndeployQaScorecardRevisionRequest
+ */
+class UndeployQaScorecardRevisionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The name of the QaScorecardRevision to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $name = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Required. The name of the QaScorecardRevision to undeploy.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Required. The name of the QaScorecardRevision to undeploy.
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateAnalysisRuleRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateAnalysisRuleRequest.php
new file mode 100644
index 000000000000..92b1b723ce4e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateAnalysisRuleRequest.php
@@ -0,0 +1,146 @@
+google.cloud.contactcenterinsights.v1.UpdateAnalysisRuleRequest
+ */
+class UpdateAnalysisRuleRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new analysis rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $analysis_rule = null;
+ /**
+ * Optional. The list of fields to be updated.
+ * If the update_mask is not provided, the update will be applied to all
+ * fields.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysisRule Required. The new analysis rule.
+ * @param \Google\Protobuf\FieldMask $updateMask Optional. The list of fields to be updated.
+ * If the update_mask is not provided, the update will be applied to all
+ * fields.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateAnalysisRuleRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysisRule, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setAnalysisRule($analysisRule)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $analysis_rule
+ * Required. The new analysis rule.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * Optional. The list of fields to be updated.
+ * If the update_mask is not provided, the update will be applied to all
+ * fields.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new analysis rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\AnalysisRule|null
+ */
+ public function getAnalysisRule()
+ {
+ return $this->analysis_rule;
+ }
+
+ public function hasAnalysisRule()
+ {
+ return isset($this->analysis_rule);
+ }
+
+ public function clearAnalysisRule()
+ {
+ unset($this->analysis_rule);
+ }
+
+ /**
+ * Required. The new analysis rule.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.AnalysisRule analysis_rule = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\AnalysisRule $var
+ * @return $this
+ */
+ public function setAnalysisRule($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\AnalysisRule::class);
+ $this->analysis_rule = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. The list of fields to be updated.
+ * If the update_mask is not provided, the update will be applied to all
+ * fields.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * Optional. The list of fields to be updated.
+ * If the update_mask is not provided, the update will be applied to all
+ * fields.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateConversationRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateConversationRequest.php
new file mode 100644
index 000000000000..94c6827f7a67
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateConversationRequest.php
@@ -0,0 +1,197 @@
+google.cloud.contactcenterinsights.v1.UpdateConversationRequest
+ */
+class UpdateConversationRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new values for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $conversation = null;
+ /**
+ * The list of fields to be updated. All possible fields can be updated by
+ * passing `*`, or a subset of the following updateable fields can be
+ * provided:
+ * * `agent_id`
+ * * `language_code`
+ * * `labels`
+ * * `metadata`
+ * * `quality_metadata`
+ * * `call_metadata`
+ * * `start_time`
+ * * `expire_time` or `ttl`
+ * * `data_source.gcs_source.audio_uri` or
+ * `data_source.dialogflow_source.audio_uri`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation Required. The new values for the conversation.
+ * @param \Google\Protobuf\FieldMask $updateMask The list of fields to be updated. All possible fields can be updated by
+ * passing `*`, or a subset of the following updateable fields can be
+ * provided:
+ *
+ * * `agent_id`
+ * * `language_code`
+ * * `labels`
+ * * `metadata`
+ * * `quality_metadata`
+ * * `call_metadata`
+ * * `start_time`
+ * * `expire_time` or `ttl`
+ * * `data_source.gcs_source.audio_uri` or
+ * `data_source.dialogflow_source.audio_uri`
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateConversationRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\Conversation $conversation, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setConversation($conversation)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation
+ * Required. The new values for the conversation.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * The list of fields to be updated. All possible fields can be updated by
+ * passing `*`, or a subset of the following updateable fields can be
+ * provided:
+ * * `agent_id`
+ * * `language_code`
+ * * `labels`
+ * * `metadata`
+ * * `quality_metadata`
+ * * `call_metadata`
+ * * `start_time`
+ * * `expire_time` or `ttl`
+ * * `data_source.gcs_source.audio_uri` or
+ * `data_source.dialogflow_source.audio_uri`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new values for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation|null
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ public function hasConversation()
+ {
+ return isset($this->conversation);
+ }
+
+ public function clearConversation()
+ {
+ unset($this->conversation);
+ }
+
+ /**
+ * Required. The new values for the conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation::class);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of fields to be updated. All possible fields can be updated by
+ * passing `*`, or a subset of the following updateable fields can be
+ * provided:
+ * * `agent_id`
+ * * `language_code`
+ * * `labels`
+ * * `metadata`
+ * * `quality_metadata`
+ * * `call_metadata`
+ * * `start_time`
+ * * `expire_time` or `ttl`
+ * * `data_source.gcs_source.audio_uri` or
+ * `data_source.dialogflow_source.audio_uri`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * The list of fields to be updated. All possible fields can be updated by
+ * passing `*`, or a subset of the following updateable fields can be
+ * provided:
+ * * `agent_id`
+ * * `language_code`
+ * * `labels`
+ * * `metadata`
+ * * `quality_metadata`
+ * * `call_metadata`
+ * * `start_time`
+ * * `expire_time` or `ttl`
+ * * `data_source.gcs_source.audio_uri` or
+ * `data_source.dialogflow_source.audio_uri`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateFeedbackLabelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateFeedbackLabelRequest.php
new file mode 100644
index 000000000000..b34648aeea65
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateFeedbackLabelRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdateFeedbackLabelRequest
+ */
+class UpdateFeedbackLabelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The feedback label to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $feedback_label = null;
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedbackLabel Required. The feedback label to update.
+ * @param \Google\Protobuf\FieldMask $updateMask Required. The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateFeedbackLabelRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedbackLabel, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setFeedbackLabel($feedbackLabel)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $feedback_label
+ * Required. The feedback label to update.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * Required. The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The feedback label to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel|null
+ */
+ public function getFeedbackLabel()
+ {
+ return $this->feedback_label;
+ }
+
+ public function hasFeedbackLabel()
+ {
+ return isset($this->feedback_label);
+ }
+
+ public function clearFeedbackLabel()
+ {
+ unset($this->feedback_label);
+ }
+
+ /**
+ * Required. The feedback label to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.FeedbackLabel feedback_label = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel $var
+ * @return $this
+ */
+ public function setFeedbackLabel($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\FeedbackLabel::class);
+ $this->feedback_label = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueModelRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueModelRequest.php
new file mode 100644
index 000000000000..2cc1f7c36565
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueModelRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdateIssueModelRequest
+ */
+class UpdateIssueModelRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new values for the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $issue_model = null;
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModel $issueModel Required. The new values for the issue model.
+ * @param \Google\Protobuf\FieldMask $updateMask The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateIssueModelRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\IssueModel $issueModel, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setIssueModel($issueModel)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\IssueModel $issue_model
+ * Required. The new values for the issue model.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new values for the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\IssueModel|null
+ */
+ public function getIssueModel()
+ {
+ return $this->issue_model;
+ }
+
+ public function hasIssueModel()
+ {
+ return isset($this->issue_model);
+ }
+
+ public function clearIssueModel()
+ {
+ unset($this->issue_model);
+ }
+
+ /**
+ * Required. The new values for the issue model.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.IssueModel issue_model = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\IssueModel $var
+ * @return $this
+ */
+ public function setIssueModel($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\IssueModel::class);
+ $this->issue_model = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueRequest.php
new file mode 100644
index 000000000000..0be9746fae85
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateIssueRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdateIssueRequest
+ */
+class UpdateIssueRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new values for the issue.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Issue issue = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $issue = null;
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\Issue $issue Required. The new values for the issue.
+ * @param \Google\Protobuf\FieldMask $updateMask The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateIssueRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\Issue $issue, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setIssue($issue)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\Issue $issue
+ * Required. The new values for the issue.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new values for the issue.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Issue issue = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Issue|null
+ */
+ public function getIssue()
+ {
+ return $this->issue;
+ }
+
+ public function hasIssue()
+ {
+ return isset($this->issue);
+ }
+
+ public function clearIssue()
+ {
+ unset($this->issue);
+ }
+
+ /**
+ * Required. The new values for the issue.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Issue issue = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Issue $var
+ * @return $this
+ */
+ public function setIssue($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Issue::class);
+ $this->issue = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdatePhraseMatcherRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdatePhraseMatcherRequest.php
new file mode 100644
index 000000000000..f161bd6098d5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdatePhraseMatcherRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdatePhraseMatcherRequest
+ */
+class UpdatePhraseMatcherRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new values for the phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $phrase_matcher = null;
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phraseMatcher Required. The new values for the phrase matcher.
+ * @param \Google\Protobuf\FieldMask $updateMask The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdatePhraseMatcherRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phraseMatcher, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setPhraseMatcher($phraseMatcher)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $phrase_matcher
+ * Required. The new values for the phrase matcher.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new values for the phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher|null
+ */
+ public function getPhraseMatcher()
+ {
+ return $this->phrase_matcher;
+ }
+
+ public function hasPhraseMatcher()
+ {
+ return isset($this->phrase_matcher);
+ }
+
+ public function clearPhraseMatcher()
+ {
+ unset($this->phrase_matcher);
+ }
+
+ /**
+ * Required. The new values for the phrase matcher.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.PhraseMatcher phrase_matcher = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher $var
+ * @return $this
+ */
+ public function setPhraseMatcher($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\PhraseMatcher::class);
+ $this->phrase_matcher = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaQuestionRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaQuestionRequest.php
new file mode 100644
index 000000000000..1638d1eace40
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaQuestionRequest.php
@@ -0,0 +1,177 @@
+google.cloud.contactcenterinsights.v1.UpdateQaQuestionRequest
+ */
+class UpdateQaQuestionRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The QaQuestion to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $qa_question = null;
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `abbreviation`
+ * * `answer_choices`
+ * * `answer_instructions`
+ * * `order`
+ * * `question_body`
+ * * `tags`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion $qaQuestion Required. The QaQuestion to update.
+ * @param \Google\Protobuf\FieldMask $updateMask Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ *
+ * * `abbreviation`
+ * * `answer_choices`
+ * * `answer_instructions`
+ * * `order`
+ * * `question_body`
+ * * `tags`
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateQaQuestionRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\QaQuestion $qaQuestion, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setQaQuestion($qaQuestion)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaQuestion $qa_question
+ * Required. The QaQuestion to update.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `abbreviation`
+ * * `answer_choices`
+ * * `answer_instructions`
+ * * `order`
+ * * `question_body`
+ * * `tags`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The QaQuestion to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaQuestion|null
+ */
+ public function getQaQuestion()
+ {
+ return $this->qa_question;
+ }
+
+ public function hasQaQuestion()
+ {
+ return isset($this->qa_question);
+ }
+
+ public function clearQaQuestion()
+ {
+ unset($this->qa_question);
+ }
+
+ /**
+ * Required. The QaQuestion to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaQuestion qa_question = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaQuestion $var
+ * @return $this
+ */
+ public function setQaQuestion($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaQuestion::class);
+ $this->qa_question = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `abbreviation`
+ * * `answer_choices`
+ * * `answer_instructions`
+ * * `order`
+ * * `question_body`
+ * * `tags`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `abbreviation`
+ * * `answer_choices`
+ * * `answer_instructions`
+ * * `order`
+ * * `question_body`
+ * * `tags`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaScorecardRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaScorecardRequest.php
new file mode 100644
index 000000000000..414b1cad6c0b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateQaScorecardRequest.php
@@ -0,0 +1,157 @@
+google.cloud.contactcenterinsights.v1.UpdateQaScorecardRequest
+ */
+class UpdateQaScorecardRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The QaScorecard to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $qa_scorecard = null;
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `description`
+ * * `display_name`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecard $qaScorecard Required. The QaScorecard to update.
+ * @param \Google\Protobuf\FieldMask $updateMask Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ *
+ * * `description`
+ * * `display_name`
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateQaScorecardRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\QaScorecard $qaScorecard, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setQaScorecard($qaScorecard)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\QaScorecard $qa_scorecard
+ * Required. The QaScorecard to update.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `description`
+ * * `display_name`
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The QaScorecard to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\QaScorecard|null
+ */
+ public function getQaScorecard()
+ {
+ return $this->qa_scorecard;
+ }
+
+ public function hasQaScorecard()
+ {
+ return isset($this->qa_scorecard);
+ }
+
+ public function clearQaScorecard()
+ {
+ unset($this->qa_scorecard);
+ }
+
+ /**
+ * Required. The QaScorecard to update.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.QaScorecard qa_scorecard = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\QaScorecard $var
+ * @return $this
+ */
+ public function setQaScorecard($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\QaScorecard::class);
+ $this->qa_scorecard = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `description`
+ * * `display_name`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * Required. The list of fields to be updated. All possible fields can be
+ * updated by passing `*`, or a subset of the following updateable fields can
+ * be provided:
+ * * `description`
+ * * `display_name`
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateSettingsRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateSettingsRequest.php
new file mode 100644
index 000000000000..83a51d0c3938
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateSettingsRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdateSettingsRequest
+ */
+class UpdateSettingsRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new settings values.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings settings = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $settings = null;
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\Settings $settings Required. The new settings values.
+ * @param \Google\Protobuf\FieldMask $updateMask Required. The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateSettingsRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\Settings $settings, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setSettings($settings)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\Settings $settings
+ * Required. The new settings values.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * Required. The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new settings values.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings settings = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Settings|null
+ */
+ public function getSettings()
+ {
+ return $this->settings;
+ }
+
+ public function hasSettings()
+ {
+ return isset($this->settings);
+ }
+
+ public function clearSettings()
+ {
+ unset($this->settings);
+ }
+
+ /**
+ * Required. The new settings values.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Settings settings = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Settings $var
+ * @return $this
+ */
+ public function setSettings($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Settings::class);
+ $this->settings = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * Required. The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateViewRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateViewRequest.php
new file mode 100644
index 000000000000..c1adc1132a5f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UpdateViewRequest.php
@@ -0,0 +1,136 @@
+google.cloud.contactcenterinsights.v1.UpdateViewRequest
+ */
+class UpdateViewRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The new view.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 1 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $view = null;
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ */
+ protected $update_mask = null;
+
+ /**
+ * @param \Google\Cloud\ContactCenterInsights\V1\View $view Required. The new view.
+ * @param \Google\Protobuf\FieldMask $updateMask The list of fields to be updated.
+ *
+ * @return \Google\Cloud\ContactCenterInsights\V1\UpdateViewRequest
+ *
+ * @experimental
+ */
+ public static function build(\Google\Cloud\ContactCenterInsights\V1\View $view, \Google\Protobuf\FieldMask $updateMask): self
+ {
+ return (new self())
+ ->setView($view)
+ ->setUpdateMask($updateMask);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Cloud\ContactCenterInsights\V1\View $view
+ * Required. The new view.
+ * @type \Google\Protobuf\FieldMask $update_mask
+ * The list of fields to be updated.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The new view.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\View|null
+ */
+ public function getView()
+ {
+ return $this->view;
+ }
+
+ public function hasView()
+ {
+ return isset($this->view);
+ }
+
+ public function clearView()
+ {
+ unset($this->view);
+ }
+
+ /**
+ * Required. The new view.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.View view = 1 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\View $var
+ * @return $this
+ */
+ public function setView($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\View::class);
+ $this->view = $var;
+
+ return $this;
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @return \Google\Protobuf\FieldMask|null
+ */
+ public function getUpdateMask()
+ {
+ return $this->update_mask;
+ }
+
+ public function hasUpdateMask()
+ {
+ return isset($this->update_mask);
+ }
+
+ public function clearUpdateMask()
+ {
+ unset($this->update_mask);
+ }
+
+ /**
+ * The list of fields to be updated.
+ *
+ * Generated from protobuf field .google.protobuf.FieldMask update_mask = 2;
+ * @param \Google\Protobuf\FieldMask $var
+ * @return $this
+ */
+ public function setUpdateMask($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\FieldMask::class);
+ $this->update_mask = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationMetadata.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationMetadata.php
new file mode 100644
index 000000000000..b893a1d41d46
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationMetadata.php
@@ -0,0 +1,247 @@
+google.cloud.contactcenterinsights.v1.UploadConversationMetadata
+ */
+class UploadConversationMetadata extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $end_time = null;
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UploadConversationRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $request = null;
+ /**
+ * Output only. The operation name for a successfully created analysis
+ * operation, if any.
+ *
+ * Generated from protobuf field string analysis_operation = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $analysis_operation = '';
+ /**
+ * Output only. The redaction config applied to the uploaded conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig applied_redaction_config = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $applied_redaction_config = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time the operation was created.
+ * @type \Google\Protobuf\Timestamp $end_time
+ * Output only. The time the operation finished running.
+ * @type \Google\Cloud\ContactCenterInsights\V1\UploadConversationRequest $request
+ * Output only. The original request.
+ * @type string $analysis_operation
+ * Output only. The operation name for a successfully created analysis
+ * operation, if any.
+ * @type \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $applied_redaction_config
+ * Output only. The redaction config applied to the uploaded conversation.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time the operation was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 1 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getEndTime()
+ {
+ return $this->end_time;
+ }
+
+ public function hasEndTime()
+ {
+ return isset($this->end_time);
+ }
+
+ public function clearEndTime()
+ {
+ unset($this->end_time);
+ }
+
+ /**
+ * Output only. The time the operation finished running.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp end_time = 2 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setEndTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->end_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UploadConversationRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\UploadConversationRequest|null
+ */
+ public function getRequest()
+ {
+ return $this->request;
+ }
+
+ public function hasRequest()
+ {
+ return isset($this->request);
+ }
+
+ public function clearRequest()
+ {
+ unset($this->request);
+ }
+
+ /**
+ * Output only. The original request.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.UploadConversationRequest request = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\UploadConversationRequest $var
+ * @return $this
+ */
+ public function setRequest($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\UploadConversationRequest::class);
+ $this->request = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The operation name for a successfully created analysis
+ * operation, if any.
+ *
+ * Generated from protobuf field string analysis_operation = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return string
+ */
+ public function getAnalysisOperation()
+ {
+ return $this->analysis_operation;
+ }
+
+ /**
+ * Output only. The operation name for a successfully created analysis
+ * operation, if any.
+ *
+ * Generated from protobuf field string analysis_operation = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param string $var
+ * @return $this
+ */
+ public function setAnalysisOperation($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->analysis_operation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The redaction config applied to the uploaded conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig applied_redaction_config = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Cloud\ContactCenterInsights\V1\RedactionConfig|null
+ */
+ public function getAppliedRedactionConfig()
+ {
+ return $this->applied_redaction_config;
+ }
+
+ public function hasAppliedRedactionConfig()
+ {
+ return isset($this->applied_redaction_config);
+ }
+
+ public function clearAppliedRedactionConfig()
+ {
+ unset($this->applied_redaction_config);
+ }
+
+ /**
+ * Output only. The redaction config applied to the uploaded conversation.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig applied_redaction_config = 5 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $var
+ * @return $this
+ */
+ public function setAppliedRedactionConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\RedactionConfig::class);
+ $this->applied_redaction_config = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationRequest.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationRequest.php
new file mode 100644
index 000000000000..443a3b1398eb
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/UploadConversationRequest.php
@@ -0,0 +1,257 @@
+google.cloud.contactcenterinsights.v1.UploadConversationRequest
+ */
+class UploadConversationRequest extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ */
+ protected $parent = '';
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ */
+ protected $conversation = null;
+ /**
+ * Optional. A unique ID for the new conversation. This ID will become the
+ * final component of the conversation's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $conversation_id = '';
+ /**
+ * Optional. DLP settings for transcript redaction. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 4 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $redaction_config = null;
+ /**
+ * Optional. Speech-to-Text configuration. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ */
+ protected $speech_config = null;
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $parent
+ * Required. The parent resource of the conversation.
+ * @type \Google\Cloud\ContactCenterInsights\V1\Conversation $conversation
+ * Required. The conversation resource to create.
+ * @type string $conversation_id
+ * Optional. A unique ID for the new conversation. This ID will become the
+ * final component of the conversation's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ * @type \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $redaction_config
+ * Optional. DLP settings for transcript redaction. Will default to the config
+ * specified in Settings.
+ * @type \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $speech_config
+ * Optional. Speech-to-Text configuration. Will default to the config
+ * specified in Settings.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\ContactCenterInsights::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @return string
+ */
+ public function getParent()
+ {
+ return $this->parent;
+ }
+
+ /**
+ * Required. The parent resource of the conversation.
+ *
+ * Generated from protobuf field string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = {
+ * @param string $var
+ * @return $this
+ */
+ public function setParent($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->parent = $var;
+
+ return $this;
+ }
+
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @return \Google\Cloud\ContactCenterInsights\V1\Conversation|null
+ */
+ public function getConversation()
+ {
+ return $this->conversation;
+ }
+
+ public function hasConversation()
+ {
+ return isset($this->conversation);
+ }
+
+ public function clearConversation()
+ {
+ unset($this->conversation);
+ }
+
+ /**
+ * Required. The conversation resource to create.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.Conversation conversation = 2 [(.google.api.field_behavior) = REQUIRED];
+ * @param \Google\Cloud\ContactCenterInsights\V1\Conversation $var
+ * @return $this
+ */
+ public function setConversation($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\Conversation::class);
+ $this->conversation = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. A unique ID for the new conversation. This ID will become the
+ * final component of the conversation's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @return string
+ */
+ public function getConversationId()
+ {
+ return $this->conversation_id;
+ }
+
+ /**
+ * Optional. A unique ID for the new conversation. This ID will become the
+ * final component of the conversation's resource name. If no ID is specified,
+ * a server-generated ID will be used.
+ * This value should be 4-64 characters and must match the regular
+ * expression `^[a-z0-9-]{4,64}$`. Valid characters are `[a-z][0-9]-`
+ *
+ * Generated from protobuf field string conversation_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ * @param string $var
+ * @return $this
+ */
+ public function setConversationId($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->conversation_id = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. DLP settings for transcript redaction. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Cloud\ContactCenterInsights\V1\RedactionConfig|null
+ */
+ public function getRedactionConfig()
+ {
+ return $this->redaction_config;
+ }
+
+ public function hasRedactionConfig()
+ {
+ return isset($this->redaction_config);
+ }
+
+ public function clearRedactionConfig()
+ {
+ unset($this->redaction_config);
+ }
+
+ /**
+ * Optional. DLP settings for transcript redaction. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.RedactionConfig redaction_config = 4 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Cloud\ContactCenterInsights\V1\RedactionConfig $var
+ * @return $this
+ */
+ public function setRedactionConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\RedactionConfig::class);
+ $this->redaction_config = $var;
+
+ return $this;
+ }
+
+ /**
+ * Optional. Speech-to-Text configuration. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ * @return \Google\Cloud\ContactCenterInsights\V1\SpeechConfig|null
+ */
+ public function getSpeechConfig()
+ {
+ return $this->speech_config;
+ }
+
+ public function hasSpeechConfig()
+ {
+ return isset($this->speech_config);
+ }
+
+ public function clearSpeechConfig()
+ {
+ unset($this->speech_config);
+ }
+
+ /**
+ * Optional. Speech-to-Text configuration. Will default to the config
+ * specified in Settings.
+ *
+ * Generated from protobuf field .google.cloud.contactcenterinsights.v1.SpeechConfig speech_config = 11 [(.google.api.field_behavior) = OPTIONAL];
+ * @param \Google\Cloud\ContactCenterInsights\V1\SpeechConfig $var
+ * @return $this
+ */
+ public function setSpeechConfig($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Cloud\ContactCenterInsights\V1\SpeechConfig::class);
+ $this->speech_config = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/View.php b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/View.php
new file mode 100644
index 000000000000..286533d5ad37
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/proto/src/Google/Cloud/ContactCenterInsights/V1/View.php
@@ -0,0 +1,231 @@
+google.cloud.contactcenterinsights.v1.View
+ */
+class View extends \Google\Protobuf\Internal\Message
+{
+ /**
+ * Immutable. The resource name of the view.
+ * Format:
+ * projects/{project}/locations/{location}/views/{view}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ */
+ protected $name = '';
+ /**
+ * The human-readable display name of the view.
+ *
+ * Generated from protobuf field string display_name = 2;
+ */
+ protected $display_name = '';
+ /**
+ * Output only. The time at which this view was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $create_time = null;
+ /**
+ * Output only. The most recent time at which the view was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ */
+ protected $update_time = null;
+ /**
+ * String with specific view properties, must be non-empty.
+ *
+ * Generated from protobuf field string value = 5;
+ */
+ protected $value = '';
+
+ /**
+ * Constructor.
+ *
+ * @param array $data {
+ * Optional. Data for populating the Message object.
+ *
+ * @type string $name
+ * Immutable. The resource name of the view.
+ * Format:
+ * projects/{project}/locations/{location}/views/{view}
+ * @type string $display_name
+ * The human-readable display name of the view.
+ * @type \Google\Protobuf\Timestamp $create_time
+ * Output only. The time at which this view was created.
+ * @type \Google\Protobuf\Timestamp $update_time
+ * Output only. The most recent time at which the view was updated.
+ * @type string $value
+ * String with specific view properties, must be non-empty.
+ * }
+ */
+ public function __construct($data = NULL) {
+ \GPBMetadata\Google\Cloud\Contactcenterinsights\V1\Resources::initOnce();
+ parent::__construct($data);
+ }
+
+ /**
+ * Immutable. The resource name of the view.
+ * Format:
+ * projects/{project}/locations/{location}/views/{view}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @return string
+ */
+ public function getName()
+ {
+ return $this->name;
+ }
+
+ /**
+ * Immutable. The resource name of the view.
+ * Format:
+ * projects/{project}/locations/{location}/views/{view}
+ *
+ * Generated from protobuf field string name = 1 [(.google.api.field_behavior) = IMMUTABLE];
+ * @param string $var
+ * @return $this
+ */
+ public function setName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->name = $var;
+
+ return $this;
+ }
+
+ /**
+ * The human-readable display name of the view.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @return string
+ */
+ public function getDisplayName()
+ {
+ return $this->display_name;
+ }
+
+ /**
+ * The human-readable display name of the view.
+ *
+ * Generated from protobuf field string display_name = 2;
+ * @param string $var
+ * @return $this
+ */
+ public function setDisplayName($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->display_name = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The time at which this view was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getCreateTime()
+ {
+ return $this->create_time;
+ }
+
+ public function hasCreateTime()
+ {
+ return isset($this->create_time);
+ }
+
+ public function clearCreateTime()
+ {
+ unset($this->create_time);
+ }
+
+ /**
+ * Output only. The time at which this view was created.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp create_time = 3 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setCreateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->create_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * Output only. The most recent time at which the view was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @return \Google\Protobuf\Timestamp|null
+ */
+ public function getUpdateTime()
+ {
+ return $this->update_time;
+ }
+
+ public function hasUpdateTime()
+ {
+ return isset($this->update_time);
+ }
+
+ public function clearUpdateTime()
+ {
+ unset($this->update_time);
+ }
+
+ /**
+ * Output only. The most recent time at which the view was updated.
+ *
+ * Generated from protobuf field .google.protobuf.Timestamp update_time = 4 [(.google.api.field_behavior) = OUTPUT_ONLY];
+ * @param \Google\Protobuf\Timestamp $var
+ * @return $this
+ */
+ public function setUpdateTime($var)
+ {
+ GPBUtil::checkMessage($var, \Google\Protobuf\Timestamp::class);
+ $this->update_time = $var;
+
+ return $this;
+ }
+
+ /**
+ * String with specific view properties, must be non-empty.
+ *
+ * Generated from protobuf field string value = 5;
+ * @return string
+ */
+ public function getValue()
+ {
+ return $this->value;
+ }
+
+ /**
+ * String with specific view properties, must be non-empty.
+ *
+ * Generated from protobuf field string value = 5;
+ * @param string $var
+ * @return $this
+ */
+ public function setValue($var)
+ {
+ GPBUtil::checkString($var, True);
+ $this->value = $var;
+
+ return $this;
+ }
+
+}
+
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_analyze_conversations.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_analyze_conversations.php
new file mode 100644
index 000000000000..6690b28c662a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_analyze_conversations.php
@@ -0,0 +1,93 @@
+setParent($formattedParent)
+ ->setFilter($filter)
+ ->setAnalysisPercentage($analysisPercentage);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->bulkAnalyzeConversations($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var BulkAnalyzeConversationsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+ $filter = '[FILTER]';
+ $analysisPercentage = 0.0;
+
+ bulk_analyze_conversations_sample($formattedParent, $filter, $analysisPercentage);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_BulkAnalyzeConversations_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_delete_conversations.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_delete_conversations.php
new file mode 100644
index 000000000000..6e906a6f7abf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_delete_conversations.php
@@ -0,0 +1,85 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->bulkDeleteConversations($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var BulkDeleteConversationsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ bulk_delete_conversations_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_BulkDeleteConversations_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_download_feedback_labels.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_download_feedback_labels.php
new file mode 100644
index 000000000000..ed6b4850d8b9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_download_feedback_labels.php
@@ -0,0 +1,83 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->bulkDownloadFeedbackLabels($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var BulkDownloadFeedbackLabelsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ bulk_download_feedback_labels_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_BulkDownloadFeedbackLabels_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_upload_feedback_labels.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_upload_feedback_labels.php
new file mode 100644
index 000000000000..128d736d8d33
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/bulk_upload_feedback_labels.php
@@ -0,0 +1,83 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->bulkUploadFeedbackLabels($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var BulkUploadFeedbackLabelsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ bulk_upload_feedback_labels_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_BulkUploadFeedbackLabels_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_issue_model_stats.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_issue_model_stats.php
new file mode 100644
index 000000000000..bb94021bdbba
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_issue_model_stats.php
@@ -0,0 +1,75 @@
+setIssueModel($formattedIssueModel);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var CalculateIssueModelStatsResponse $response */
+ $response = $contactCenterInsightsClient->calculateIssueModelStats($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedIssueModel = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ calculate_issue_model_stats_sample($formattedIssueModel);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CalculateIssueModelStats_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_stats.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_stats.php
new file mode 100644
index 000000000000..f995fedb1279
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/calculate_stats.php
@@ -0,0 +1,71 @@
+setLocation($formattedLocation);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var CalculateStatsResponse $response */
+ $response = $contactCenterInsightsClient->calculateStats($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedLocation = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ calculate_stats_sample($formattedLocation);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CalculateStats_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis.php
new file mode 100644
index 000000000000..b60e85cac938
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis.php
@@ -0,0 +1,90 @@
+setParent($formattedParent)
+ ->setAnalysis($analysis);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->createAnalysis($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var Analysis $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ create_analysis_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateAnalysis_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis_rule.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis_rule.php
new file mode 100644
index 000000000000..3bd21367a20e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_analysis_rule.php
@@ -0,0 +1,76 @@
+/locations/` or `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ */
+function create_analysis_rule_sample(string $formattedParent): void
+{
+ // Create a client.
+ $contactCenterInsightsClient = new ContactCenterInsightsClient();
+
+ // Prepare the request message.
+ $analysisRule = new AnalysisRule();
+ $request = (new CreateAnalysisRuleRequest())
+ ->setParent($formattedParent)
+ ->setAnalysisRule($analysisRule);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var AnalysisRule $response */
+ $response = $contactCenterInsightsClient->createAnalysisRule($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ create_analysis_rule_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateAnalysisRule_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_conversation.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_conversation.php
new file mode 100644
index 000000000000..9809b23a449a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_conversation.php
@@ -0,0 +1,75 @@
+setParent($formattedParent)
+ ->setConversation($conversation);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Conversation $response */
+ $response = $contactCenterInsightsClient->createConversation($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ create_conversation_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateConversation_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_feedback_label.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_feedback_label.php
new file mode 100644
index 000000000000..0a48ac814a39
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_feedback_label.php
@@ -0,0 +1,77 @@
+setParent($formattedParent)
+ ->setFeedbackLabel($feedbackLabel);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var FeedbackLabel $response */
+ $response = $contactCenterInsightsClient->createFeedbackLabel($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ create_feedback_label_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateFeedbackLabel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_issue_model.php
new file mode 100644
index 000000000000..52df0b52274a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_issue_model.php
@@ -0,0 +1,85 @@
+setParent($formattedParent)
+ ->setIssueModel($issueModel);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->createIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var IssueModel $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ create_issue_model_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_phrase_matcher.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_phrase_matcher.php
new file mode 100644
index 000000000000..832ef0278454
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_phrase_matcher.php
@@ -0,0 +1,80 @@
+/locations/` or `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ * @param int $phraseMatcherType The type of this phrase matcher.
+ */
+function create_phrase_matcher_sample(string $formattedParent, int $phraseMatcherType): void
+{
+ // Create a client.
+ $contactCenterInsightsClient = new ContactCenterInsightsClient();
+
+ // Prepare the request message.
+ $phraseMatcher = (new PhraseMatcher())
+ ->setType($phraseMatcherType);
+ $request = (new CreatePhraseMatcherRequest())
+ ->setParent($formattedParent)
+ ->setPhraseMatcher($phraseMatcher);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PhraseMatcher $response */
+ $response = $contactCenterInsightsClient->createPhraseMatcher($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+
+ create_phrase_matcher_sample($formattedParent, $phraseMatcherType);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreatePhraseMatcher_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_question.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_question.php
new file mode 100644
index 000000000000..515471c6fbc5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_question.php
@@ -0,0 +1,78 @@
+setParent($formattedParent)
+ ->setQaQuestion($qaQuestion);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaQuestion $response */
+ $response = $contactCenterInsightsClient->createQaQuestion($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ create_qa_question_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateQaQuestion_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard.php
new file mode 100644
index 000000000000..83b0eddf7890
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard.php
@@ -0,0 +1,73 @@
+setParent($formattedParent)
+ ->setQaScorecard($qaScorecard);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecard $response */
+ $response = $contactCenterInsightsClient->createQaScorecard($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ create_qa_scorecard_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateQaScorecard_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard_revision.php
new file mode 100644
index 000000000000..b1af6e8162be
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_qa_scorecard_revision.php
@@ -0,0 +1,77 @@
+setParent($formattedParent)
+ ->setQaScorecardRevision($qaScorecardRevision);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecardRevision $response */
+ $response = $contactCenterInsightsClient->createQaScorecardRevision($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::qaScorecardName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]'
+ );
+
+ create_qa_scorecard_revision_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_view.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_view.php
new file mode 100644
index 000000000000..63fb46395bc7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/create_view.php
@@ -0,0 +1,76 @@
+/locations/` or
+ * `projects//locations/`
+ * Please see {@see ContactCenterInsightsClient::locationName()} for help formatting this field.
+ */
+function create_view_sample(string $formattedParent): void
+{
+ // Create a client.
+ $contactCenterInsightsClient = new ContactCenterInsightsClient();
+
+ // Prepare the request message.
+ $view = new View();
+ $request = (new CreateViewRequest())
+ ->setParent($formattedParent)
+ ->setView($view);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var View $response */
+ $response = $contactCenterInsightsClient->createView($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ create_view_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_CreateView_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis.php
new file mode 100644
index 000000000000..e8351966a415
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis.php
@@ -0,0 +1,74 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteAnalysis($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::analysisName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]',
+ '[ANALYSIS]'
+ );
+
+ delete_analysis_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteAnalysis_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis_rule.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis_rule.php
new file mode 100644
index 000000000000..6f24f81c3daf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_analysis_rule.php
@@ -0,0 +1,73 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteAnalysisRule($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::analysisRuleName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ANALYSIS_RULE]'
+ );
+
+ delete_analysis_rule_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteAnalysisRule_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_conversation.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_conversation.php
new file mode 100644
index 000000000000..6cc0b0567122
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_conversation.php
@@ -0,0 +1,73 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteConversation($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ delete_conversation_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteConversation_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_feedback_label.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_feedback_label.php
new file mode 100644
index 000000000000..82729dd9a9ba
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_feedback_label.php
@@ -0,0 +1,74 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteFeedbackLabel($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::feedbackLabelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]',
+ '[FEEDBACK_LABEL]'
+ );
+
+ delete_feedback_label_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteFeedbackLabel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue.php
new file mode 100644
index 000000000000..9d99a2fd60dd
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue.php
@@ -0,0 +1,74 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteIssue($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]',
+ '[ISSUE]'
+ );
+
+ delete_issue_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteIssue_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue_model.php
new file mode 100644
index 000000000000..9ad6d1ce3309
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_issue_model.php
@@ -0,0 +1,84 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->deleteIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ printf('Operation completed successfully.' . PHP_EOL);
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ delete_issue_model_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_phrase_matcher.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_phrase_matcher.php
new file mode 100644
index 000000000000..5cd2536f00a8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_phrase_matcher.php
@@ -0,0 +1,73 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deletePhraseMatcher($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::phraseMatcherName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[PHRASE_MATCHER]'
+ );
+
+ delete_phrase_matcher_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeletePhraseMatcher_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_question.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_question.php
new file mode 100644
index 000000000000..fe00f4fed740
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_question.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteQaQuestion($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaQuestionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]',
+ '[QA_QUESTION]'
+ );
+
+ delete_qa_question_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteQaQuestion_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard.php
new file mode 100644
index 000000000000..ad78e0f38bd4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard.php
@@ -0,0 +1,73 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteQaScorecard($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]'
+ );
+
+ delete_qa_scorecard_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteQaScorecard_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard_revision.php
new file mode 100644
index 000000000000..b28417648db2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_qa_scorecard_revision.php
@@ -0,0 +1,74 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteQaScorecardRevision($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ delete_qa_scorecard_revision_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_view.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_view.php
new file mode 100644
index 000000000000..274ddeabf34f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/delete_view.php
@@ -0,0 +1,69 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ $contactCenterInsightsClient->deleteView($request);
+ printf('Call completed successfully.' . PHP_EOL);
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+
+ delete_view_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeleteView_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_issue_model.php
new file mode 100644
index 000000000000..d1ea724d467f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_issue_model.php
@@ -0,0 +1,88 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->deployIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var DeployIssueModelResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ deploy_issue_model_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeployIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_qa_scorecard_revision.php
new file mode 100644
index 000000000000..017429700113
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/deploy_qa_scorecard_revision.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecardRevision $response */
+ $response = $contactCenterInsightsClient->deployQaScorecardRevision($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ deploy_qa_scorecard_revision_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_DeployQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_insights_data.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_insights_data.php
new file mode 100644
index 000000000000..2522e777dff7
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_insights_data.php
@@ -0,0 +1,83 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->exportInsightsData($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var ExportInsightsDataResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ export_insights_data_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ExportInsightsData_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_issue_model.php
new file mode 100644
index 000000000000..5f3b0fbb3c28
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/export_issue_model.php
@@ -0,0 +1,87 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->exportIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var ExportIssueModelResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ export_issue_model_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ExportIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis.php
new file mode 100644
index 000000000000..b78f24b6bd1b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Analysis $response */
+ $response = $contactCenterInsightsClient->getAnalysis($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::analysisName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]',
+ '[ANALYSIS]'
+ );
+
+ get_analysis_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetAnalysis_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis_rule.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis_rule.php
new file mode 100644
index 000000000000..0ae43bbdb365
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_analysis_rule.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var AnalysisRule $response */
+ $response = $contactCenterInsightsClient->getAnalysisRule($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::analysisRuleName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ANALYSIS_RULE]'
+ );
+
+ get_analysis_rule_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetAnalysisRule_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_conversation.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_conversation.php
new file mode 100644
index 000000000000..917c5b106dc5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_conversation.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Conversation $response */
+ $response = $contactCenterInsightsClient->getConversation($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ get_conversation_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetConversation_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_encryption_spec.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_encryption_spec.php
new file mode 100644
index 000000000000..82178006a7dc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_encryption_spec.php
@@ -0,0 +1,71 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var EncryptionSpec $response */
+ $response = $contactCenterInsightsClient->getEncryptionSpec($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::encryptionSpecName('[PROJECT]', '[LOCATION]');
+
+ get_encryption_spec_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetEncryptionSpec_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_feedback_label.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_feedback_label.php
new file mode 100644
index 000000000000..07f363f0683a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_feedback_label.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var FeedbackLabel $response */
+ $response = $contactCenterInsightsClient->getFeedbackLabel($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::feedbackLabelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]',
+ '[FEEDBACK_LABEL]'
+ );
+
+ get_feedback_label_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetFeedbackLabel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue.php
new file mode 100644
index 000000000000..827a0427389a
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Issue $response */
+ $response = $contactCenterInsightsClient->getIssue($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]',
+ '[ISSUE]'
+ );
+
+ get_issue_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetIssue_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue_model.php
new file mode 100644
index 000000000000..cf58a527197e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_issue_model.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var IssueModel $response */
+ $response = $contactCenterInsightsClient->getIssueModel($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ get_issue_model_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_phrase_matcher.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_phrase_matcher.php
new file mode 100644
index 000000000000..990c38002eae
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_phrase_matcher.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PhraseMatcher $response */
+ $response = $contactCenterInsightsClient->getPhraseMatcher($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::phraseMatcherName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[PHRASE_MATCHER]'
+ );
+
+ get_phrase_matcher_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetPhraseMatcher_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_question.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_question.php
new file mode 100644
index 000000000000..d9a701498adc
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_question.php
@@ -0,0 +1,77 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaQuestion $response */
+ $response = $contactCenterInsightsClient->getQaQuestion($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaQuestionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]',
+ '[QA_QUESTION]'
+ );
+
+ get_qa_question_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetQaQuestion_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard.php
new file mode 100644
index 000000000000..3f0d920a3eb5
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard.php
@@ -0,0 +1,75 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecard $response */
+ $response = $contactCenterInsightsClient->getQaScorecard($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]'
+ );
+
+ get_qa_scorecard_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetQaScorecard_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard_revision.php
new file mode 100644
index 000000000000..82a68781e1f9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_qa_scorecard_revision.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecardRevision $response */
+ $response = $contactCenterInsightsClient->getQaScorecardRevision($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ get_qa_scorecard_revision_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_settings.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_settings.php
new file mode 100644
index 000000000000..a142011799b0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_settings.php
@@ -0,0 +1,71 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Settings $response */
+ $response = $contactCenterInsightsClient->getSettings($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::settingsName('[PROJECT]', '[LOCATION]');
+
+ get_settings_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetSettings_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_view.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_view.php
new file mode 100644
index 000000000000..ae60b0ad8f63
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/get_view.php
@@ -0,0 +1,71 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var View $response */
+ $response = $contactCenterInsightsClient->getView($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+
+ get_view_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_GetView_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/import_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/import_issue_model.php
new file mode 100644
index 000000000000..5b023a1d1f7f
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/import_issue_model.php
@@ -0,0 +1,83 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->importIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var ImportIssueModelResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ import_issue_model_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ImportIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/ingest_conversations.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/ingest_conversations.php
new file mode 100644
index 000000000000..9d71a25dfc94
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/ingest_conversations.php
@@ -0,0 +1,84 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->ingestConversations($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var IngestConversationsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ ingest_conversations_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_IngestConversations_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/initialize_encryption_spec.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/initialize_encryption_spec.php
new file mode 100644
index 000000000000..5bccce604c16
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/initialize_encryption_spec.php
@@ -0,0 +1,93 @@
+setKmsKey($encryptionSpecKmsKey);
+ $request = (new InitializeEncryptionSpecRequest())
+ ->setEncryptionSpec($encryptionSpec);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->initializeEncryptionSpec($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var InitializeEncryptionSpecResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $encryptionSpecKmsKey = '[KMS_KEY]';
+
+ initialize_encryption_spec_sample($encryptionSpecKmsKey);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_InitializeEncryptionSpec_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_all_feedback_labels.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_all_feedback_labels.php
new file mode 100644
index 000000000000..1ae9232d42f8
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_all_feedback_labels.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listAllFeedbackLabels($request);
+
+ /** @var FeedbackLabel $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_all_feedback_labels_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListAllFeedbackLabels_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analyses.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analyses.php
new file mode 100644
index 000000000000..cdb1e6f2d644
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analyses.php
@@ -0,0 +1,80 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listAnalyses($request);
+
+ /** @var Analysis $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ list_analyses_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListAnalyses_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analysis_rules.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analysis_rules.php
new file mode 100644
index 000000000000..3e93de4dd18b
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_analysis_rules.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listAnalysisRules($request);
+
+ /** @var AnalysisRule $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_analysis_rules_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListAnalysisRules_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_conversations.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_conversations.php
new file mode 100644
index 000000000000..5665534facf9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_conversations.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listConversations($request);
+
+ /** @var Conversation $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_conversations_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListConversations_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_feedback_labels.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_feedback_labels.php
new file mode 100644
index 000000000000..c807dd55c3fe
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_feedback_labels.php
@@ -0,0 +1,80 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listFeedbackLabels($request);
+
+ /** @var FeedbackLabel $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::conversationName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[CONVERSATION]'
+ );
+
+ list_feedback_labels_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListFeedbackLabels_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issue_models.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issue_models.php
new file mode 100644
index 000000000000..12084d5b56ed
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issue_models.php
@@ -0,0 +1,71 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var ListIssueModelsResponse $response */
+ $response = $contactCenterInsightsClient->listIssueModels($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_issue_models_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListIssueModels_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issues.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issues.php
new file mode 100644
index 000000000000..de159edab9c2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_issues.php
@@ -0,0 +1,75 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var ListIssuesResponse $response */
+ $response = $contactCenterInsightsClient->listIssues($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ list_issues_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListIssues_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_phrase_matchers.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_phrase_matchers.php
new file mode 100644
index 000000000000..2b7b25cb5d51
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_phrase_matchers.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listPhraseMatchers($request);
+
+ /** @var PhraseMatcher $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_phrase_matchers_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListPhraseMatchers_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_questions.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_questions.php
new file mode 100644
index 000000000000..db599ecab5a4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_questions.php
@@ -0,0 +1,81 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listQaQuestions($request);
+
+ /** @var QaQuestion $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ list_qa_questions_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListQaQuestions_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecard_revisions.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecard_revisions.php
new file mode 100644
index 000000000000..834aa6bb97eb
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecard_revisions.php
@@ -0,0 +1,82 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listQaScorecardRevisions($request);
+
+ /** @var QaScorecardRevision $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::qaScorecardName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]'
+ );
+
+ list_qa_scorecard_revisions_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListQaScorecardRevisions_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecards.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecards.php
new file mode 100644
index 000000000000..53b8f075a97d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_qa_scorecards.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listQaScorecards($request);
+
+ /** @var QaScorecard $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_qa_scorecards_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListQaScorecards_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_views.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_views.php
new file mode 100644
index 000000000000..d521e8bfdc96
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/list_views.php
@@ -0,0 +1,76 @@
+setParent($formattedParent);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PagedListResponse $response */
+ $response = $contactCenterInsightsClient->listViews($request);
+
+ /** @var View $element */
+ foreach ($response as $element) {
+ printf('Element data: %s' . PHP_EOL, $element->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ list_views_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_ListViews_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/query_metrics.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/query_metrics.php
new file mode 100644
index 000000000000..02a51a83b1d1
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/query_metrics.php
@@ -0,0 +1,91 @@
+setLocation($formattedLocation)
+ ->setFilter($filter);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->queryMetrics($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var QueryMetricsResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedLocation = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+ $filter = '[FILTER]';
+
+ query_metrics_sample($formattedLocation, $filter);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_QueryMetrics_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/tune_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/tune_qa_scorecard_revision.php
new file mode 100644
index 000000000000..02e1397c8ad0
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/tune_qa_scorecard_revision.php
@@ -0,0 +1,94 @@
+setParent($formattedParent)
+ ->setFilter($filter);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->tuneQaScorecardRevision($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var TuneQaScorecardRevisionResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+ $filter = '[FILTER]';
+
+ tune_qa_scorecard_revision_sample($formattedParent, $filter);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_TuneQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_issue_model.php
new file mode 100644
index 000000000000..6cc320d110b2
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_issue_model.php
@@ -0,0 +1,88 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->undeployIssueModel($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var UndeployIssueModelResponse $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::issueModelName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[ISSUE_MODEL]'
+ );
+
+ undeploy_issue_model_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UndeployIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_qa_scorecard_revision.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_qa_scorecard_revision.php
new file mode 100644
index 000000000000..1d40c6f82782
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/undeploy_qa_scorecard_revision.php
@@ -0,0 +1,76 @@
+setName($formattedName);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecardRevision $response */
+ $response = $contactCenterInsightsClient->undeployQaScorecardRevision($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedName = ContactCenterInsightsClient::qaScorecardRevisionName(
+ '[PROJECT]',
+ '[LOCATION]',
+ '[QA_SCORECARD]',
+ '[REVISION]'
+ );
+
+ undeploy_qa_scorecard_revision_sample($formattedName);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UndeployQaScorecardRevision_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_analysis_rule.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_analysis_rule.php
new file mode 100644
index 000000000000..fac6fc081c08
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_analysis_rule.php
@@ -0,0 +1,59 @@
+setAnalysisRule($analysisRule);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var AnalysisRule $response */
+ $response = $contactCenterInsightsClient->updateAnalysisRule($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateAnalysisRule_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_conversation.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_conversation.php
new file mode 100644
index 000000000000..c77275e00e38
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_conversation.php
@@ -0,0 +1,59 @@
+setConversation($conversation);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Conversation $response */
+ $response = $contactCenterInsightsClient->updateConversation($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateConversation_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_feedback_label.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_feedback_label.php
new file mode 100644
index 000000000000..8b4dbca240ed
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_feedback_label.php
@@ -0,0 +1,62 @@
+setFeedbackLabel($feedbackLabel)
+ ->setUpdateMask($updateMask);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var FeedbackLabel $response */
+ $response = $contactCenterInsightsClient->updateFeedbackLabel($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateFeedbackLabel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue.php
new file mode 100644
index 000000000000..aa18755dcf5e
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue.php
@@ -0,0 +1,59 @@
+setIssue($issue);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Issue $response */
+ $response = $contactCenterInsightsClient->updateIssue($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateIssue_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue_model.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue_model.php
new file mode 100644
index 000000000000..89ea454ea827
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_issue_model.php
@@ -0,0 +1,59 @@
+setIssueModel($issueModel);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var IssueModel $response */
+ $response = $contactCenterInsightsClient->updateIssueModel($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateIssueModel_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_phrase_matcher.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_phrase_matcher.php
new file mode 100644
index 000000000000..543ffbc2a74d
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_phrase_matcher.php
@@ -0,0 +1,73 @@
+setType($phraseMatcherType);
+ $request = (new UpdatePhraseMatcherRequest())
+ ->setPhraseMatcher($phraseMatcher);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var PhraseMatcher $response */
+ $response = $contactCenterInsightsClient->updatePhraseMatcher($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+
+ update_phrase_matcher_sample($phraseMatcherType);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdatePhraseMatcher_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_question.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_question.php
new file mode 100644
index 000000000000..c750da1bbef9
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_question.php
@@ -0,0 +1,62 @@
+setQaQuestion($qaQuestion)
+ ->setUpdateMask($updateMask);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaQuestion $response */
+ $response = $contactCenterInsightsClient->updateQaQuestion($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateQaQuestion_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_scorecard.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_scorecard.php
new file mode 100644
index 000000000000..6846c3910bce
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_qa_scorecard.php
@@ -0,0 +1,62 @@
+setQaScorecard($qaScorecard)
+ ->setUpdateMask($updateMask);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var QaScorecard $response */
+ $response = $contactCenterInsightsClient->updateQaScorecard($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateQaScorecard_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_settings.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_settings.php
new file mode 100644
index 000000000000..aaafe4bb653c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_settings.php
@@ -0,0 +1,62 @@
+setSettings($settings)
+ ->setUpdateMask($updateMask);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var Settings $response */
+ $response = $contactCenterInsightsClient->updateSettings($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateSettings_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_view.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_view.php
new file mode 100644
index 000000000000..a4cbd719634c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/update_view.php
@@ -0,0 +1,59 @@
+setView($view);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var View $response */
+ $response = $contactCenterInsightsClient->updateView($request);
+ printf('Response data: %s' . PHP_EOL, $response->serializeToJsonString());
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UpdateView_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/upload_conversation.php b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/upload_conversation.php
new file mode 100644
index 000000000000..eb9b9beb038c
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/samples/V1/ContactCenterInsightsClient/upload_conversation.php
@@ -0,0 +1,87 @@
+setParent($formattedParent)
+ ->setConversation($conversation);
+
+ // Call the API and handle any network failures.
+ try {
+ /** @var OperationResponse $response */
+ $response = $contactCenterInsightsClient->uploadConversation($request);
+ $response->pollUntilComplete();
+
+ if ($response->operationSucceeded()) {
+ /** @var Conversation $result */
+ $result = $response->getResult();
+ printf('Operation successful with response data: %s' . PHP_EOL, $result->serializeToJsonString());
+ } else {
+ /** @var Status $error */
+ $error = $response->getError();
+ printf('Operation failed with error data: %s' . PHP_EOL, $error->serializeToJsonString());
+ }
+ } catch (ApiException $ex) {
+ printf('Call failed with message: %s' . PHP_EOL, $ex->getMessage());
+ }
+}
+
+/**
+ * Helper to execute the sample.
+ *
+ * This sample has been automatically generated and should be regarded as a code
+ * template only. It will require modifications to work:
+ * - It may require correct/in-range values for request initialization.
+ * - It may require specifying regional endpoints when creating the service client,
+ * please see the apiEndpoint client configuration option for more details.
+ */
+function callSample(): void
+{
+ $formattedParent = ContactCenterInsightsClient::locationName('[PROJECT]', '[LOCATION]');
+
+ upload_conversation_sample($formattedParent);
+}
+// [END contactcenterinsights_v1_generated_ContactCenterInsights_UploadConversation_sync]
diff --git a/owl-bot-staging/ContactCenterInsights/v1/src/V1/Client/ContactCenterInsightsClient.php b/owl-bot-staging/ContactCenterInsights/v1/src/V1/Client/ContactCenterInsightsClient.php
new file mode 100644
index 000000000000..f6425ff1d0ca
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/src/V1/Client/ContactCenterInsightsClient.php
@@ -0,0 +1,2934 @@
+ bulkAnalyzeConversationsAsync(BulkAnalyzeConversationsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface bulkDeleteConversationsAsync(BulkDeleteConversationsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface bulkDownloadFeedbackLabelsAsync(BulkDownloadFeedbackLabelsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface bulkUploadFeedbackLabelsAsync(BulkUploadFeedbackLabelsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface calculateIssueModelStatsAsync(CalculateIssueModelStatsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface calculateStatsAsync(CalculateStatsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createAnalysisAsync(CreateAnalysisRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createAnalysisRuleAsync(CreateAnalysisRuleRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createConversationAsync(CreateConversationRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createFeedbackLabelAsync(CreateFeedbackLabelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createIssueModelAsync(CreateIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createPhraseMatcherAsync(CreatePhraseMatcherRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createQaQuestionAsync(CreateQaQuestionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createQaScorecardAsync(CreateQaScorecardRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createQaScorecardRevisionAsync(CreateQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface createViewAsync(CreateViewRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteAnalysisAsync(DeleteAnalysisRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteAnalysisRuleAsync(DeleteAnalysisRuleRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteConversationAsync(DeleteConversationRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteFeedbackLabelAsync(DeleteFeedbackLabelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteIssueAsync(DeleteIssueRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteIssueModelAsync(DeleteIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deletePhraseMatcherAsync(DeletePhraseMatcherRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteQaQuestionAsync(DeleteQaQuestionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteQaScorecardAsync(DeleteQaScorecardRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteQaScorecardRevisionAsync(DeleteQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deleteViewAsync(DeleteViewRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deployIssueModelAsync(DeployIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface deployQaScorecardRevisionAsync(DeployQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface exportInsightsDataAsync(ExportInsightsDataRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface exportIssueModelAsync(ExportIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getAnalysisAsync(GetAnalysisRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getAnalysisRuleAsync(GetAnalysisRuleRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getConversationAsync(GetConversationRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getEncryptionSpecAsync(GetEncryptionSpecRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getFeedbackLabelAsync(GetFeedbackLabelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getIssueAsync(GetIssueRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getIssueModelAsync(GetIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getPhraseMatcherAsync(GetPhraseMatcherRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getQaQuestionAsync(GetQaQuestionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getQaScorecardAsync(GetQaScorecardRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getQaScorecardRevisionAsync(GetQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getSettingsAsync(GetSettingsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface getViewAsync(GetViewRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface importIssueModelAsync(ImportIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface ingestConversationsAsync(IngestConversationsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface initializeEncryptionSpecAsync(InitializeEncryptionSpecRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listAllFeedbackLabelsAsync(ListAllFeedbackLabelsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listAnalysesAsync(ListAnalysesRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listAnalysisRulesAsync(ListAnalysisRulesRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listConversationsAsync(ListConversationsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listFeedbackLabelsAsync(ListFeedbackLabelsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listIssueModelsAsync(ListIssueModelsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listIssuesAsync(ListIssuesRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listPhraseMatchersAsync(ListPhraseMatchersRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listQaQuestionsAsync(ListQaQuestionsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listQaScorecardRevisionsAsync(ListQaScorecardRevisionsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listQaScorecardsAsync(ListQaScorecardsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface listViewsAsync(ListViewsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface queryMetricsAsync(QueryMetricsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface tuneQaScorecardRevisionAsync(TuneQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface undeployIssueModelAsync(UndeployIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface undeployQaScorecardRevisionAsync(UndeployQaScorecardRevisionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateAnalysisRuleAsync(UpdateAnalysisRuleRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateConversationAsync(UpdateConversationRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateFeedbackLabelAsync(UpdateFeedbackLabelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateIssueAsync(UpdateIssueRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateIssueModelAsync(UpdateIssueModelRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updatePhraseMatcherAsync(UpdatePhraseMatcherRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateQaQuestionAsync(UpdateQaQuestionRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateQaScorecardAsync(UpdateQaScorecardRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateSettingsAsync(UpdateSettingsRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface updateViewAsync(UpdateViewRequest $request, array $optionalArgs = [])
+ * @method PromiseInterface uploadConversationAsync(UploadConversationRequest $request, array $optionalArgs = [])
+ */
+final class ContactCenterInsightsClient
+{
+ use GapicClientTrait;
+ use ResourceHelperTrait;
+
+ /** The name of the service. */
+ private const SERVICE_NAME = 'google.cloud.contactcenterinsights.v1.ContactCenterInsights';
+
+ /**
+ * The default address of the service.
+ *
+ * @deprecated SERVICE_ADDRESS_TEMPLATE should be used instead.
+ */
+ private const SERVICE_ADDRESS = 'contactcenterinsights.googleapis.com';
+
+ /** The address template of the service. */
+ private const SERVICE_ADDRESS_TEMPLATE = 'contactcenterinsights.UNIVERSE_DOMAIN';
+
+ /** The default port of the service. */
+ private const DEFAULT_SERVICE_PORT = 443;
+
+ /** The name of the code generator, to be included in the agent header. */
+ private const CODEGEN_NAME = 'gapic';
+
+ /** The default scopes required by the service. */
+ public static $serviceScopes = [
+ 'https://www.googleapis.com/auth/cloud-platform',
+ ];
+
+ private $operationsClient;
+
+ private static function getClientDefaults()
+ {
+ return [
+ 'serviceName' => self::SERVICE_NAME,
+ 'apiEndpoint' => self::SERVICE_ADDRESS . ':' . self::DEFAULT_SERVICE_PORT,
+ 'clientConfig' => __DIR__ . '/../resources/contact_center_insights_client_config.json',
+ 'descriptorsConfigPath' => __DIR__ . '/../resources/contact_center_insights_descriptor_config.php',
+ 'gcpApiConfigPath' => __DIR__ . '/../resources/contact_center_insights_grpc_config.json',
+ 'credentialsConfig' => [
+ 'defaultScopes' => self::$serviceScopes,
+ ],
+ 'transportConfig' => [
+ 'rest' => [
+ 'restClientConfigPath' => __DIR__ . '/../resources/contact_center_insights_rest_client_config.php',
+ ],
+ ],
+ ];
+ }
+
+ /**
+ * Return an OperationsClient object with the same endpoint as $this.
+ *
+ * @return OperationsClient
+ */
+ public function getOperationsClient()
+ {
+ return $this->operationsClient;
+ }
+
+ /**
+ * Resume an existing long running operation that was previously started by a long
+ * running API method. If $methodName is not provided, or does not match a long
+ * running API method, then the operation can still be resumed, but the
+ * OperationResponse object will not deserialize the final response.
+ *
+ * @param string $operationName The name of the long running operation
+ * @param string $methodName The name of the method used to start the operation
+ *
+ * @return OperationResponse
+ */
+ public function resumeOperation($operationName, $methodName = null)
+ {
+ $options = isset($this->descriptors[$methodName]['longRunning']) ? $this->descriptors[$methodName]['longRunning'] : [];
+ $operation = new OperationResponse($operationName, $this->getOperationsClient(), $options);
+ $operation->reload();
+ return $operation;
+ }
+
+ /**
+ * Create the default operation client for the service.
+ *
+ * @param array $options ClientOptions for the client.
+ *
+ * @return OperationsClient
+ */
+ private function createOperationsClient(array $options)
+ {
+ // Unset client-specific configuration options
+ unset($options['serviceName'], $options['clientConfig'], $options['descriptorsConfigPath']);
+
+ if (isset($options['operationsClient'])) {
+ return $options['operationsClient'];
+ }
+
+ return new OperationsClient($options);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a analysis
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ * @param string $analysis
+ *
+ * @return string The formatted analysis resource.
+ */
+ public static function analysisName(string $project, string $location, string $conversation, string $analysis): string
+ {
+ return self::getPathTemplate('analysis')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ 'analysis' => $analysis,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * analysis_rule resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $analysisRule
+ *
+ * @return string The formatted analysis_rule resource.
+ */
+ public static function analysisRuleName(string $project, string $location, string $analysisRule): string
+ {
+ return self::getPathTemplate('analysisRule')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'analysis_rule' => $analysisRule,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a conversation
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ *
+ * @return string The formatted conversation resource.
+ */
+ public static function conversationName(string $project, string $location, string $conversation): string
+ {
+ return self::getPathTemplate('conversation')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * conversation_profile resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversationProfile
+ *
+ * @return string The formatted conversation_profile resource.
+ */
+ public static function conversationProfileName(string $project, string $location, string $conversationProfile): string
+ {
+ return self::getPathTemplate('conversationProfile')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation_profile' => $conversationProfile,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * encryption_spec resource.
+ *
+ * @param string $project
+ * @param string $location
+ *
+ * @return string The formatted encryption_spec resource.
+ */
+ public static function encryptionSpecName(string $project, string $location): string
+ {
+ return self::getPathTemplate('encryptionSpec')->render([
+ 'project' => $project,
+ 'location' => $location,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * feedback_label resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ * @param string $feedbackLabel
+ *
+ * @return string The formatted feedback_label resource.
+ */
+ public static function feedbackLabelName(string $project, string $location, string $conversation, string $feedbackLabel): string
+ {
+ return self::getPathTemplate('feedbackLabel')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ 'feedback_label' => $feedbackLabel,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a issue
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $issueModel
+ * @param string $issue
+ *
+ * @return string The formatted issue resource.
+ */
+ public static function issueName(string $project, string $location, string $issueModel, string $issue): string
+ {
+ return self::getPathTemplate('issue')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'issue_model' => $issueModel,
+ 'issue' => $issue,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a issue_model
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $issueModel
+ *
+ * @return string The formatted issue_model resource.
+ */
+ public static function issueModelName(string $project, string $location, string $issueModel): string
+ {
+ return self::getPathTemplate('issueModel')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'issue_model' => $issueModel,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a location
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ *
+ * @return string The formatted location resource.
+ */
+ public static function locationName(string $project, string $location): string
+ {
+ return self::getPathTemplate('location')->render([
+ 'project' => $project,
+ 'location' => $location,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a participant
+ * resource.
+ *
+ * @param string $project
+ * @param string $conversation
+ * @param string $participant
+ *
+ * @return string The formatted participant resource.
+ */
+ public static function participantName(string $project, string $conversation, string $participant): string
+ {
+ return self::getPathTemplate('participant')->render([
+ 'project' => $project,
+ 'conversation' => $conversation,
+ 'participant' => $participant,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * phrase_matcher resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $phraseMatcher
+ *
+ * @return string The formatted phrase_matcher resource.
+ */
+ public static function phraseMatcherName(string $project, string $location, string $phraseMatcher): string
+ {
+ return self::getPathTemplate('phraseMatcher')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'phrase_matcher' => $phraseMatcher,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_conversation_participant resource.
+ *
+ * @param string $project
+ * @param string $conversation
+ * @param string $participant
+ *
+ * @return string The formatted project_conversation_participant resource.
+ */
+ public static function projectConversationParticipantName(string $project, string $conversation, string $participant): string
+ {
+ return self::getPathTemplate('projectConversationParticipant')->render([
+ 'project' => $project,
+ 'conversation' => $conversation,
+ 'participant' => $participant,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_authorized_view_set_authorized_view_conversation resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $authorizedViewSet
+ * @param string $authorizedView
+ * @param string $conversation
+ *
+ * @return string The formatted project_location_authorized_view_set_authorized_view_conversation resource.
+ */
+ public static function projectLocationAuthorizedViewSetAuthorizedViewConversationName(string $project, string $location, string $authorizedViewSet, string $authorizedView, string $conversation): string
+ {
+ return self::getPathTemplate('projectLocationAuthorizedViewSetAuthorizedViewConversation')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'authorized_view_set' => $authorizedViewSet,
+ 'authorized_view' => $authorizedView,
+ 'conversation' => $conversation,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_authorized_view_set_authorized_view_conversation_analysis
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $authorizedViewSet
+ * @param string $authorizedView
+ * @param string $conversation
+ * @param string $analysis
+ *
+ * @return string The formatted project_location_authorized_view_set_authorized_view_conversation_analysis resource.
+ */
+ public static function projectLocationAuthorizedViewSetAuthorizedViewConversationAnalysisName(string $project, string $location, string $authorizedViewSet, string $authorizedView, string $conversation, string $analysis): string
+ {
+ return self::getPathTemplate('projectLocationAuthorizedViewSetAuthorizedViewConversationAnalysis')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'authorized_view_set' => $authorizedViewSet,
+ 'authorized_view' => $authorizedView,
+ 'conversation' => $conversation,
+ 'analysis' => $analysis,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_authorized_view_set_authorized_view_conversation_feedback_label
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $authorizedViewSet
+ * @param string $authorizedView
+ * @param string $conversation
+ * @param string $feedbackLabel
+ *
+ * @return string The formatted project_location_authorized_view_set_authorized_view_conversation_feedback_label resource.
+ */
+ public static function projectLocationAuthorizedViewSetAuthorizedViewConversationFeedbackLabelName(string $project, string $location, string $authorizedViewSet, string $authorizedView, string $conversation, string $feedbackLabel): string
+ {
+ return self::getPathTemplate('projectLocationAuthorizedViewSetAuthorizedViewConversationFeedbackLabel')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'authorized_view_set' => $authorizedViewSet,
+ 'authorized_view' => $authorizedView,
+ 'conversation' => $conversation,
+ 'feedback_label' => $feedbackLabel,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_conversation resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ *
+ * @return string The formatted project_location_conversation resource.
+ */
+ public static function projectLocationConversationName(string $project, string $location, string $conversation): string
+ {
+ return self::getPathTemplate('projectLocationConversation')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_conversation_analysis resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ * @param string $analysis
+ *
+ * @return string The formatted project_location_conversation_analysis resource.
+ */
+ public static function projectLocationConversationAnalysisName(string $project, string $location, string $conversation, string $analysis): string
+ {
+ return self::getPathTemplate('projectLocationConversationAnalysis')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ 'analysis' => $analysis,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_conversation_feedback_label resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ * @param string $feedbackLabel
+ *
+ * @return string The formatted project_location_conversation_feedback_label resource.
+ */
+ public static function projectLocationConversationFeedbackLabelName(string $project, string $location, string $conversation, string $feedbackLabel): string
+ {
+ return self::getPathTemplate('projectLocationConversationFeedbackLabel')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ 'feedback_label' => $feedbackLabel,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * project_location_conversation_participant resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $conversation
+ * @param string $participant
+ *
+ * @return string The formatted project_location_conversation_participant resource.
+ */
+ public static function projectLocationConversationParticipantName(string $project, string $location, string $conversation, string $participant): string
+ {
+ return self::getPathTemplate('projectLocationConversationParticipant')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'conversation' => $conversation,
+ 'participant' => $participant,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a qa_question
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $qaScorecard
+ * @param string $revision
+ * @param string $qaQuestion
+ *
+ * @return string The formatted qa_question resource.
+ */
+ public static function qaQuestionName(string $project, string $location, string $qaScorecard, string $revision, string $qaQuestion): string
+ {
+ return self::getPathTemplate('qaQuestion')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'qa_scorecard' => $qaScorecard,
+ 'revision' => $revision,
+ 'qa_question' => $qaQuestion,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a qa_scorecard
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $qaScorecard
+ *
+ * @return string The formatted qa_scorecard resource.
+ */
+ public static function qaScorecardName(string $project, string $location, string $qaScorecard): string
+ {
+ return self::getPathTemplate('qaScorecard')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'qa_scorecard' => $qaScorecard,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * qa_scorecard_result resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $qaScorecardResult
+ *
+ * @return string The formatted qa_scorecard_result resource.
+ */
+ public static function qaScorecardResultName(string $project, string $location, string $qaScorecardResult): string
+ {
+ return self::getPathTemplate('qaScorecardResult')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'qa_scorecard_result' => $qaScorecardResult,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a
+ * qa_scorecard_revision resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $qaScorecard
+ * @param string $revision
+ *
+ * @return string The formatted qa_scorecard_revision resource.
+ */
+ public static function qaScorecardRevisionName(string $project, string $location, string $qaScorecard, string $revision): string
+ {
+ return self::getPathTemplate('qaScorecardRevision')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'qa_scorecard' => $qaScorecard,
+ 'revision' => $revision,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a recognizer
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $recognizer
+ *
+ * @return string The formatted recognizer resource.
+ */
+ public static function recognizerName(string $project, string $location, string $recognizer): string
+ {
+ return self::getPathTemplate('recognizer')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'recognizer' => $recognizer,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a settings
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ *
+ * @return string The formatted settings resource.
+ */
+ public static function settingsName(string $project, string $location): string
+ {
+ return self::getPathTemplate('settings')->render([
+ 'project' => $project,
+ 'location' => $location,
+ ]);
+ }
+
+ /**
+ * Formats a string containing the fully-qualified path to represent a view
+ * resource.
+ *
+ * @param string $project
+ * @param string $location
+ * @param string $view
+ *
+ * @return string The formatted view resource.
+ */
+ public static function viewName(string $project, string $location, string $view): string
+ {
+ return self::getPathTemplate('view')->render([
+ 'project' => $project,
+ 'location' => $location,
+ 'view' => $view,
+ ]);
+ }
+
+ /**
+ * Parses a formatted name string and returns an associative array of the components in the name.
+ * The following name formats are supported:
+ * Template: Pattern
+ * - analysis: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ * - analysisRule: projects/{project}/locations/{location}/analysisRules/{analysis_rule}
+ * - conversation: projects/{project}/locations/{location}/conversations/{conversation}
+ * - conversationProfile: projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}
+ * - encryptionSpec: projects/{project}/locations/{location}/encryptionSpec
+ * - feedbackLabel: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ * - issue: projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}
+ * - issueModel: projects/{project}/locations/{location}/issueModels/{issue_model}
+ * - location: projects/{project}/locations/{location}
+ * - participant: projects/{project}/conversations/{conversation}/participants/{participant}
+ * - phraseMatcher: projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}
+ * - projectConversationParticipant: projects/{project}/conversations/{conversation}/participants/{participant}
+ * - projectLocationAuthorizedViewSetAuthorizedViewConversation: projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}
+ * - projectLocationAuthorizedViewSetAuthorizedViewConversationAnalysis: projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}/analyses/{analysis}
+ * - projectLocationAuthorizedViewSetAuthorizedViewConversationFeedbackLabel: projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ * - projectLocationConversation: projects/{project}/locations/{location}/conversations/{conversation}
+ * - projectLocationConversationAnalysis: projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}
+ * - projectLocationConversationFeedbackLabel: projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}
+ * - projectLocationConversationParticipant: projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}
+ * - qaQuestion: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}
+ * - qaScorecard: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}
+ * - qaScorecardResult: projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}
+ * - qaScorecardRevision: projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}
+ * - recognizer: projects/{project}/locations/{location}/recognizers/{recognizer}
+ * - settings: projects/{project}/locations/{location}/settings
+ * - view: projects/{project}/locations/{location}/views/{view}
+ *
+ * The optional $template argument can be supplied to specify a particular pattern,
+ * and must match one of the templates listed above. If no $template argument is
+ * provided, or if the $template argument does not match one of the templates
+ * listed, then parseName will check each of the supported templates, and return
+ * the first match.
+ *
+ * @param string $formattedName The formatted name string
+ * @param ?string $template Optional name of template to match
+ *
+ * @return array An associative array from name component IDs to component values.
+ *
+ * @throws ValidationException If $formattedName could not be matched.
+ */
+ public static function parseName(string $formattedName, ?string $template = null): array
+ {
+ return self::parseFormattedName($formattedName, $template);
+ }
+
+ /**
+ * Constructor.
+ *
+ * @param array $options {
+ * Optional. Options for configuring the service API wrapper.
+ *
+ * @type string $apiEndpoint
+ * The address of the API remote host. May optionally include the port, formatted
+ * as ":". Default 'contactcenterinsights.googleapis.com:443'.
+ * @type string|array|FetchAuthTokenInterface|CredentialsWrapper $credentials
+ * The credentials to be used by the client to authorize API calls. This option
+ * accepts either a path to a credentials file, or a decoded credentials file as a
+ * PHP array.
+ * *Advanced usage*: In addition, this option can also accept a pre-constructed
+ * {@see \Google\Auth\FetchAuthTokenInterface} object or
+ * {@see \Google\ApiCore\CredentialsWrapper} object. Note that when one of these
+ * objects are provided, any settings in $credentialsConfig will be ignored.
+ * @type array $credentialsConfig
+ * Options used to configure credentials, including auth token caching, for the
+ * client. For a full list of supporting configuration options, see
+ * {@see \Google\ApiCore\CredentialsWrapper::build()} .
+ * @type bool $disableRetries
+ * Determines whether or not retries defined by the client configuration should be
+ * disabled. Defaults to `false`.
+ * @type string|array $clientConfig
+ * Client method configuration, including retry settings. This option can be either
+ * a path to a JSON file, or a PHP array containing the decoded JSON data. By
+ * default this settings points to the default client config file, which is
+ * provided in the resources folder.
+ * @type string|TransportInterface $transport
+ * The transport used for executing network requests. May be either the string
+ * `rest` or `grpc`. Defaults to `grpc` if gRPC support is detected on the system.
+ * *Advanced usage*: Additionally, it is possible to pass in an already
+ * instantiated {@see \Google\ApiCore\Transport\TransportInterface} object. Note
+ * that when this object is provided, any settings in $transportConfig, and any
+ * $apiEndpoint setting, will be ignored.
+ * @type array $transportConfig
+ * Configuration options that will be used to construct the transport. Options for
+ * each supported transport type should be passed in a key for that transport. For
+ * example:
+ * $transportConfig = [
+ * 'grpc' => [...],
+ * 'rest' => [...],
+ * ];
+ * See the {@see \Google\ApiCore\Transport\GrpcTransport::build()} and
+ * {@see \Google\ApiCore\Transport\RestTransport::build()} methods for the
+ * supported options.
+ * @type callable $clientCertSource
+ * A callable which returns the client cert as a string. This can be used to
+ * provide a certificate and private key to the transport layer for mTLS.
+ * @type false|LoggerInterface $logger
+ * A PSR-3 compliant logger. If set to false, logging is disabled, ignoring the
+ * 'GOOGLE_SDK_PHP_LOGGING' environment flag
+ * }
+ *
+ * @throws ValidationException
+ */
+ public function __construct(array $options = [])
+ {
+ $clientOptions = $this->buildClientOptions($options);
+ $this->setClientOptions($clientOptions);
+ $this->operationsClient = $this->createOperationsClient($clientOptions);
+ }
+
+ /** Handles execution of the async variants for each documented method. */
+ public function __call($method, $args)
+ {
+ if (substr($method, -5) !== 'Async') {
+ trigger_error('Call to undefined method ' . __CLASS__ . "::$method()", E_USER_ERROR);
+ }
+
+ array_unshift($args, substr($method, 0, -5));
+ return call_user_func_array([$this, 'startAsyncCall'], $args);
+ }
+
+ /**
+ * Analyzes multiple conversations in a single request.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::bulkAnalyzeConversationsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/bulk_analyze_conversations.php
+ *
+ * @param BulkAnalyzeConversationsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function bulkAnalyzeConversations(BulkAnalyzeConversationsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('BulkAnalyzeConversations', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes multiple conversations in a single request.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::bulkDeleteConversationsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/bulk_delete_conversations.php
+ *
+ * @param BulkDeleteConversationsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function bulkDeleteConversations(BulkDeleteConversationsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('BulkDeleteConversations', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Download feedback labels in bulk.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::bulkDownloadFeedbackLabelsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/bulk_download_feedback_labels.php
+ *
+ * @param BulkDownloadFeedbackLabelsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function bulkDownloadFeedbackLabels(BulkDownloadFeedbackLabelsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('BulkDownloadFeedbackLabels', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Upload feedback labels in bulk.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::bulkUploadFeedbackLabelsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/bulk_upload_feedback_labels.php
+ *
+ * @param BulkUploadFeedbackLabelsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function bulkUploadFeedbackLabels(BulkUploadFeedbackLabelsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('BulkUploadFeedbackLabels', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets an issue model's statistics.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::calculateIssueModelStatsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/calculate_issue_model_stats.php
+ *
+ * @param CalculateIssueModelStatsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return CalculateIssueModelStatsResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function calculateIssueModelStats(CalculateIssueModelStatsRequest $request, array $callOptions = []): CalculateIssueModelStatsResponse
+ {
+ return $this->startApiCall('CalculateIssueModelStats', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets conversation statistics.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::calculateStatsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/calculate_stats.php
+ *
+ * @param CalculateStatsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return CalculateStatsResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function calculateStats(CalculateStatsRequest $request, array $callOptions = []): CalculateStatsResponse
+ {
+ return $this->startApiCall('CalculateStats', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates an analysis. The long running operation is done when the analysis
+ * has completed.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::createAnalysisAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_analysis.php
+ *
+ * @param CreateAnalysisRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createAnalysis(CreateAnalysisRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('CreateAnalysis', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates a analysis rule.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createAnalysisRuleAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_analysis_rule.php
+ *
+ * @param CreateAnalysisRuleRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return AnalysisRule
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createAnalysisRule(CreateAnalysisRuleRequest $request, array $callOptions = []): AnalysisRule
+ {
+ return $this->startApiCall('CreateAnalysisRule', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates a conversation.
+ * Note that this method does not support audio transcription or redaction.
+ * Use `conversations.upload` instead.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createConversationAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_conversation.php
+ *
+ * @param CreateConversationRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Conversation
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createConversation(CreateConversationRequest $request, array $callOptions = []): Conversation
+ {
+ return $this->startApiCall('CreateConversation', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Create feedback label.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createFeedbackLabelAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_feedback_label.php
+ *
+ * @param CreateFeedbackLabelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return FeedbackLabel
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createFeedbackLabel(CreateFeedbackLabelRequest $request, array $callOptions = []): FeedbackLabel
+ {
+ return $this->startApiCall('CreateFeedbackLabel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates an issue model.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::createIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_issue_model.php
+ *
+ * @param CreateIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createIssueModel(CreateIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('CreateIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates a phrase matcher.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createPhraseMatcherAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_phrase_matcher.php
+ *
+ * @param CreatePhraseMatcherRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PhraseMatcher
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createPhraseMatcher(CreatePhraseMatcherRequest $request, array $callOptions = []): PhraseMatcher
+ {
+ return $this->startApiCall('CreatePhraseMatcher', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Create a QaQuestion.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::createQaQuestionAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_qa_question.php
+ *
+ * @param CreateQaQuestionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaQuestion
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createQaQuestion(CreateQaQuestionRequest $request, array $callOptions = []): QaQuestion
+ {
+ return $this->startApiCall('CreateQaQuestion', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Create a QaScorecard.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createQaScorecardAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_qa_scorecard.php
+ *
+ * @param CreateQaScorecardRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecard
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createQaScorecard(CreateQaScorecardRequest $request, array $callOptions = []): QaScorecard
+ {
+ return $this->startApiCall('CreateQaScorecard', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates a QaScorecardRevision.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::createQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_qa_scorecard_revision.php
+ *
+ * @param CreateQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecardRevision
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createQaScorecardRevision(CreateQaScorecardRevisionRequest $request, array $callOptions = []): QaScorecardRevision
+ {
+ return $this->startApiCall('CreateQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Creates a view.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::createViewAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/create_view.php
+ *
+ * @param CreateViewRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return View
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function createView(CreateViewRequest $request, array $callOptions = []): View
+ {
+ return $this->startApiCall('CreateView', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes an analysis.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deleteAnalysisAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_analysis.php
+ *
+ * @param DeleteAnalysisRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteAnalysis(DeleteAnalysisRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteAnalysis', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a analysis rule.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deleteAnalysisRuleAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_analysis_rule.php
+ *
+ * @param DeleteAnalysisRuleRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteAnalysisRule(DeleteAnalysisRuleRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteAnalysisRule', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a conversation.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deleteConversationAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_conversation.php
+ *
+ * @param DeleteConversationRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteConversation(DeleteConversationRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteConversation', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Delete feedback label.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deleteFeedbackLabelAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_feedback_label.php
+ *
+ * @param DeleteFeedbackLabelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteFeedbackLabel(DeleteFeedbackLabelRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteFeedbackLabel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes an issue.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deleteIssueAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_issue.php
+ *
+ * @param DeleteIssueRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteIssue(DeleteIssueRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteIssue', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes an issue model.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deleteIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_issue_model.php
+ *
+ * @param DeleteIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteIssueModel(DeleteIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('DeleteIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a phrase matcher.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deletePhraseMatcherAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_phrase_matcher.php
+ *
+ * @param DeletePhraseMatcherRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deletePhraseMatcher(DeletePhraseMatcherRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeletePhraseMatcher', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a QaQuestion.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deleteQaQuestionAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_qa_question.php
+ *
+ * @param DeleteQaQuestionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteQaQuestion(DeleteQaQuestionRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteQaQuestion', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a QaScorecard.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deleteQaScorecardAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_qa_scorecard.php
+ *
+ * @param DeleteQaScorecardRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteQaScorecard(DeleteQaScorecardRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteQaScorecard', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a QaScorecardRevision.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deleteQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_qa_scorecard_revision.php
+ *
+ * @param DeleteQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteQaScorecardRevision(DeleteQaScorecardRevisionRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deletes a view.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deleteViewAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/delete_view.php
+ *
+ * @param DeleteViewRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deleteView(DeleteViewRequest $request, array $callOptions = []): void
+ {
+ $this->startApiCall('DeleteView', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deploys an issue model. Returns an error if a model is already deployed.
+ * An issue model can only be used in analysis after it has been deployed.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::deployIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/deploy_issue_model.php
+ *
+ * @param DeployIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deployIssueModel(DeployIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('DeployIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Deploy a QaScorecardRevision.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::deployQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/deploy_qa_scorecard_revision.php
+ *
+ * @param DeployQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecardRevision
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function deployQaScorecardRevision(DeployQaScorecardRevisionRequest $request, array $callOptions = []): QaScorecardRevision
+ {
+ return $this->startApiCall('DeployQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Export insights data to a destination defined in the request body.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::exportInsightsDataAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/export_insights_data.php
+ *
+ * @param ExportInsightsDataRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function exportInsightsData(ExportInsightsDataRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('ExportInsightsData', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Exports an issue model to the provided destination.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::exportIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/export_issue_model.php
+ *
+ * @param ExportIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function exportIssueModel(ExportIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('ExportIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets an analysis.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getAnalysisAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_analysis.php
+ *
+ * @param GetAnalysisRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Analysis
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getAnalysis(GetAnalysisRequest $request, array $callOptions = []): Analysis
+ {
+ return $this->startApiCall('GetAnalysis', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Get a analysis rule.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getAnalysisRuleAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_analysis_rule.php
+ *
+ * @param GetAnalysisRuleRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return AnalysisRule
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getAnalysisRule(GetAnalysisRuleRequest $request, array $callOptions = []): AnalysisRule
+ {
+ return $this->startApiCall('GetAnalysisRule', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a conversation.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getConversationAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_conversation.php
+ *
+ * @param GetConversationRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Conversation
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getConversation(GetConversationRequest $request, array $callOptions = []): Conversation
+ {
+ return $this->startApiCall('GetConversation', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets location-level encryption key specification.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::getEncryptionSpecAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_encryption_spec.php
+ *
+ * @param GetEncryptionSpecRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return EncryptionSpec
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getEncryptionSpec(GetEncryptionSpecRequest $request, array $callOptions = []): EncryptionSpec
+ {
+ return $this->startApiCall('GetEncryptionSpec', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Get feedback label.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getFeedbackLabelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_feedback_label.php
+ *
+ * @param GetFeedbackLabelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return FeedbackLabel
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getFeedbackLabel(GetFeedbackLabelRequest $request, array $callOptions = []): FeedbackLabel
+ {
+ return $this->startApiCall('GetFeedbackLabel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets an issue.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getIssueAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_issue.php
+ *
+ * @param GetIssueRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Issue
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getIssue(GetIssueRequest $request, array $callOptions = []): Issue
+ {
+ return $this->startApiCall('GetIssue', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets an issue model.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getIssueModelAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_issue_model.php
+ *
+ * @param GetIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return IssueModel
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getIssueModel(GetIssueModelRequest $request, array $callOptions = []): IssueModel
+ {
+ return $this->startApiCall('GetIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a phrase matcher.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getPhraseMatcherAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_phrase_matcher.php
+ *
+ * @param GetPhraseMatcherRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PhraseMatcher
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getPhraseMatcher(GetPhraseMatcherRequest $request, array $callOptions = []): PhraseMatcher
+ {
+ return $this->startApiCall('GetPhraseMatcher', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a QaQuestion.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getQaQuestionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_qa_question.php
+ *
+ * @param GetQaQuestionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaQuestion
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getQaQuestion(GetQaQuestionRequest $request, array $callOptions = []): QaQuestion
+ {
+ return $this->startApiCall('GetQaQuestion', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a QaScorecard.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getQaScorecardAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_qa_scorecard.php
+ *
+ * @param GetQaScorecardRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecard
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getQaScorecard(GetQaScorecardRequest $request, array $callOptions = []): QaScorecard
+ {
+ return $this->startApiCall('GetQaScorecard', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a QaScorecardRevision.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::getQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_qa_scorecard_revision.php
+ *
+ * @param GetQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecardRevision
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getQaScorecardRevision(GetQaScorecardRevisionRequest $request, array $callOptions = []): QaScorecardRevision
+ {
+ return $this->startApiCall('GetQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets project-level settings.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getSettingsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_settings.php
+ *
+ * @param GetSettingsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Settings
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getSettings(GetSettingsRequest $request, array $callOptions = []): Settings
+ {
+ return $this->startApiCall('GetSettings', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Gets a view.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::getViewAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/get_view.php
+ *
+ * @param GetViewRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return View
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function getView(GetViewRequest $request, array $callOptions = []): View
+ {
+ return $this->startApiCall('GetView', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Imports an issue model from a Cloud Storage bucket.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::importIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/import_issue_model.php
+ *
+ * @param ImportIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function importIssueModel(ImportIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('ImportIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Imports conversations and processes them according to the user's
+ * configuration.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::ingestConversationsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/ingest_conversations.php
+ *
+ * @param IngestConversationsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function ingestConversations(IngestConversationsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('IngestConversations', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Initializes a location-level encryption key specification. An error will
+ * result if the location has resources already created before the
+ * initialization. After the encryption specification is initialized at a
+ * location, it is immutable and all newly created resources under the
+ * location will be encrypted with the existing specification.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::initializeEncryptionSpecAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/initialize_encryption_spec.php
+ *
+ * @param InitializeEncryptionSpecRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function initializeEncryptionSpec(InitializeEncryptionSpecRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('InitializeEncryptionSpec', $request, $callOptions)->wait();
+ }
+
+ /**
+ * List all feedback labels by project number.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listAllFeedbackLabelsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_all_feedback_labels.php
+ *
+ * @param ListAllFeedbackLabelsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listAllFeedbackLabels(ListAllFeedbackLabelsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListAllFeedbackLabels', $request, $callOptions);
+ }
+
+ /**
+ * Lists analyses.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listAnalysesAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_analyses.php
+ *
+ * @param ListAnalysesRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listAnalyses(ListAnalysesRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListAnalyses', $request, $callOptions);
+ }
+
+ /**
+ * Lists analysis rules.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listAnalysisRulesAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_analysis_rules.php
+ *
+ * @param ListAnalysisRulesRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listAnalysisRules(ListAnalysisRulesRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListAnalysisRules', $request, $callOptions);
+ }
+
+ /**
+ * Lists conversations.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listConversationsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_conversations.php
+ *
+ * @param ListConversationsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listConversations(ListConversationsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListConversations', $request, $callOptions);
+ }
+
+ /**
+ * List feedback labels.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listFeedbackLabelsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_feedback_labels.php
+ *
+ * @param ListFeedbackLabelsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listFeedbackLabels(ListFeedbackLabelsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListFeedbackLabels', $request, $callOptions);
+ }
+
+ /**
+ * Lists issue models.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listIssueModelsAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_issue_models.php
+ *
+ * @param ListIssueModelsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return ListIssueModelsResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listIssueModels(ListIssueModelsRequest $request, array $callOptions = []): ListIssueModelsResponse
+ {
+ return $this->startApiCall('ListIssueModels', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Lists issues.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listIssuesAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_issues.php
+ *
+ * @param ListIssuesRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return ListIssuesResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listIssues(ListIssuesRequest $request, array $callOptions = []): ListIssuesResponse
+ {
+ return $this->startApiCall('ListIssues', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Lists phrase matchers.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listPhraseMatchersAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_phrase_matchers.php
+ *
+ * @param ListPhraseMatchersRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listPhraseMatchers(ListPhraseMatchersRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListPhraseMatchers', $request, $callOptions);
+ }
+
+ /**
+ * Lists QaQuestions.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listQaQuestionsAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_qa_questions.php
+ *
+ * @param ListQaQuestionsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listQaQuestions(ListQaQuestionsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListQaQuestions', $request, $callOptions);
+ }
+
+ /**
+ * Lists all revisions under the parent QaScorecard.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::listQaScorecardRevisionsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_qa_scorecard_revisions.php
+ *
+ * @param ListQaScorecardRevisionsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listQaScorecardRevisions(ListQaScorecardRevisionsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListQaScorecardRevisions', $request, $callOptions);
+ }
+
+ /**
+ * Lists QaScorecards.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listQaScorecardsAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_qa_scorecards.php
+ *
+ * @param ListQaScorecardsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listQaScorecards(ListQaScorecardsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListQaScorecards', $request, $callOptions);
+ }
+
+ /**
+ * Lists views.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::listViewsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/list_views.php
+ *
+ * @param ListViewsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PagedListResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function listViews(ListViewsRequest $request, array $callOptions = []): PagedListResponse
+ {
+ return $this->startApiCall('ListViews', $request, $callOptions);
+ }
+
+ /**
+ * Query metrics.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::queryMetricsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/query_metrics.php
+ *
+ * @param QueryMetricsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function queryMetrics(QueryMetricsRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('QueryMetrics', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Fine tune one or more QaModels.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::tuneQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/tune_qa_scorecard_revision.php
+ *
+ * @param TuneQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function tuneQaScorecardRevision(TuneQaScorecardRevisionRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('TuneQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Undeploys an issue model.
+ * An issue model can not be used in analysis after it has been undeployed.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::undeployIssueModelAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/undeploy_issue_model.php
+ *
+ * @param UndeployIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function undeployIssueModel(UndeployIssueModelRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('UndeployIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Undeploy a QaScorecardRevision.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::undeployQaScorecardRevisionAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/undeploy_qa_scorecard_revision.php
+ *
+ * @param UndeployQaScorecardRevisionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecardRevision
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function undeployQaScorecardRevision(UndeployQaScorecardRevisionRequest $request, array $callOptions = []): QaScorecardRevision
+ {
+ return $this->startApiCall('UndeployQaScorecardRevision', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a analysis rule.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::updateAnalysisRuleAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_analysis_rule.php
+ *
+ * @param UpdateAnalysisRuleRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return AnalysisRule
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateAnalysisRule(UpdateAnalysisRuleRequest $request, array $callOptions = []): AnalysisRule
+ {
+ return $this->startApiCall('UpdateAnalysisRule', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a conversation.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::updateConversationAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_conversation.php
+ *
+ * @param UpdateConversationRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Conversation
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateConversation(UpdateConversationRequest $request, array $callOptions = []): Conversation
+ {
+ return $this->startApiCall('UpdateConversation', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Update feedback label.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::updateFeedbackLabelAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_feedback_label.php
+ *
+ * @param UpdateFeedbackLabelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return FeedbackLabel
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateFeedbackLabel(UpdateFeedbackLabelRequest $request, array $callOptions = []): FeedbackLabel
+ {
+ return $this->startApiCall('UpdateFeedbackLabel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates an issue.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::updateIssueAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_issue.php
+ *
+ * @param UpdateIssueRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Issue
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateIssue(UpdateIssueRequest $request, array $callOptions = []): Issue
+ {
+ return $this->startApiCall('UpdateIssue', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates an issue model.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::updateIssueModelAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_issue_model.php
+ *
+ * @param UpdateIssueModelRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return IssueModel
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateIssueModel(UpdateIssueModelRequest $request, array $callOptions = []): IssueModel
+ {
+ return $this->startApiCall('UpdateIssueModel', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a phrase matcher.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::updatePhraseMatcherAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_phrase_matcher.php
+ *
+ * @param UpdatePhraseMatcherRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return PhraseMatcher
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updatePhraseMatcher(UpdatePhraseMatcherRequest $request, array $callOptions = []): PhraseMatcher
+ {
+ return $this->startApiCall('UpdatePhraseMatcher', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a QaQuestion.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::updateQaQuestionAsync()}
+ * .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_qa_question.php
+ *
+ * @param UpdateQaQuestionRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaQuestion
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateQaQuestion(UpdateQaQuestionRequest $request, array $callOptions = []): QaQuestion
+ {
+ return $this->startApiCall('UpdateQaQuestion', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a QaScorecard.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::updateQaScorecardAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_qa_scorecard.php
+ *
+ * @param UpdateQaScorecardRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return QaScorecard
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateQaScorecard(UpdateQaScorecardRequest $request, array $callOptions = []): QaScorecard
+ {
+ return $this->startApiCall('UpdateQaScorecard', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates project-level settings.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::updateSettingsAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_settings.php
+ *
+ * @param UpdateSettingsRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return Settings
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateSettings(UpdateSettingsRequest $request, array $callOptions = []): Settings
+ {
+ return $this->startApiCall('UpdateSettings', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Updates a view.
+ *
+ * The async variant is {@see ContactCenterInsightsClient::updateViewAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/update_view.php
+ *
+ * @param UpdateViewRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return View
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function updateView(UpdateViewRequest $request, array $callOptions = []): View
+ {
+ return $this->startApiCall('UpdateView', $request, $callOptions)->wait();
+ }
+
+ /**
+ * Create a long-running conversation upload operation. This method differs
+ * from `CreateConversation` by allowing audio transcription and optional DLP
+ * redaction.
+ *
+ * The async variant is
+ * {@see ContactCenterInsightsClient::uploadConversationAsync()} .
+ *
+ * @example samples/V1/ContactCenterInsightsClient/upload_conversation.php
+ *
+ * @param UploadConversationRequest $request A request to house fields associated with the call.
+ * @param array $callOptions {
+ * Optional.
+ *
+ * @type RetrySettings|array $retrySettings
+ * Retry settings to use for this call. Can be a {@see RetrySettings} object, or an
+ * associative array of retry settings parameters. See the documentation on
+ * {@see RetrySettings} for example usage.
+ * }
+ *
+ * @return OperationResponse
+ *
+ * @throws ApiException Thrown if the API call fails.
+ */
+ public function uploadConversation(UploadConversationRequest $request, array $callOptions = []): OperationResponse
+ {
+ return $this->startApiCall('UploadConversation', $request, $callOptions)->wait();
+ }
+}
diff --git a/owl-bot-staging/ContactCenterInsights/v1/src/V1/gapic_metadata.json b/owl-bot-staging/ContactCenterInsights/v1/src/V1/gapic_metadata.json
new file mode 100644
index 000000000000..3892cf265ef4
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/src/V1/gapic_metadata.json
@@ -0,0 +1,388 @@
+{
+ "schema": "1.0",
+ "comment": "This file maps proto services\/RPCs to the corresponding library clients\/methods",
+ "language": "php",
+ "protoPackage": "google.cloud.contactcenterinsights.v1",
+ "libraryPackage": "Google\\Cloud\\ContactCenterInsights\\V1",
+ "services": {
+ "ContactCenterInsights": {
+ "clients": {
+ "grpc": {
+ "libraryClient": "ContactCenterInsightsGapicClient",
+ "rpcs": {
+ "BulkAnalyzeConversations": {
+ "methods": [
+ "bulkAnalyzeConversations"
+ ]
+ },
+ "BulkDeleteConversations": {
+ "methods": [
+ "bulkDeleteConversations"
+ ]
+ },
+ "BulkDownloadFeedbackLabels": {
+ "methods": [
+ "bulkDownloadFeedbackLabels"
+ ]
+ },
+ "BulkUploadFeedbackLabels": {
+ "methods": [
+ "bulkUploadFeedbackLabels"
+ ]
+ },
+ "CalculateIssueModelStats": {
+ "methods": [
+ "calculateIssueModelStats"
+ ]
+ },
+ "CalculateStats": {
+ "methods": [
+ "calculateStats"
+ ]
+ },
+ "CreateAnalysis": {
+ "methods": [
+ "createAnalysis"
+ ]
+ },
+ "CreateAnalysisRule": {
+ "methods": [
+ "createAnalysisRule"
+ ]
+ },
+ "CreateConversation": {
+ "methods": [
+ "createConversation"
+ ]
+ },
+ "CreateFeedbackLabel": {
+ "methods": [
+ "createFeedbackLabel"
+ ]
+ },
+ "CreateIssueModel": {
+ "methods": [
+ "createIssueModel"
+ ]
+ },
+ "CreatePhraseMatcher": {
+ "methods": [
+ "createPhraseMatcher"
+ ]
+ },
+ "CreateQaQuestion": {
+ "methods": [
+ "createQaQuestion"
+ ]
+ },
+ "CreateQaScorecard": {
+ "methods": [
+ "createQaScorecard"
+ ]
+ },
+ "CreateQaScorecardRevision": {
+ "methods": [
+ "createQaScorecardRevision"
+ ]
+ },
+ "CreateView": {
+ "methods": [
+ "createView"
+ ]
+ },
+ "DeleteAnalysis": {
+ "methods": [
+ "deleteAnalysis"
+ ]
+ },
+ "DeleteAnalysisRule": {
+ "methods": [
+ "deleteAnalysisRule"
+ ]
+ },
+ "DeleteConversation": {
+ "methods": [
+ "deleteConversation"
+ ]
+ },
+ "DeleteFeedbackLabel": {
+ "methods": [
+ "deleteFeedbackLabel"
+ ]
+ },
+ "DeleteIssue": {
+ "methods": [
+ "deleteIssue"
+ ]
+ },
+ "DeleteIssueModel": {
+ "methods": [
+ "deleteIssueModel"
+ ]
+ },
+ "DeletePhraseMatcher": {
+ "methods": [
+ "deletePhraseMatcher"
+ ]
+ },
+ "DeleteQaQuestion": {
+ "methods": [
+ "deleteQaQuestion"
+ ]
+ },
+ "DeleteQaScorecard": {
+ "methods": [
+ "deleteQaScorecard"
+ ]
+ },
+ "DeleteQaScorecardRevision": {
+ "methods": [
+ "deleteQaScorecardRevision"
+ ]
+ },
+ "DeleteView": {
+ "methods": [
+ "deleteView"
+ ]
+ },
+ "DeployIssueModel": {
+ "methods": [
+ "deployIssueModel"
+ ]
+ },
+ "DeployQaScorecardRevision": {
+ "methods": [
+ "deployQaScorecardRevision"
+ ]
+ },
+ "ExportInsightsData": {
+ "methods": [
+ "exportInsightsData"
+ ]
+ },
+ "ExportIssueModel": {
+ "methods": [
+ "exportIssueModel"
+ ]
+ },
+ "GetAnalysis": {
+ "methods": [
+ "getAnalysis"
+ ]
+ },
+ "GetAnalysisRule": {
+ "methods": [
+ "getAnalysisRule"
+ ]
+ },
+ "GetConversation": {
+ "methods": [
+ "getConversation"
+ ]
+ },
+ "GetEncryptionSpec": {
+ "methods": [
+ "getEncryptionSpec"
+ ]
+ },
+ "GetFeedbackLabel": {
+ "methods": [
+ "getFeedbackLabel"
+ ]
+ },
+ "GetIssue": {
+ "methods": [
+ "getIssue"
+ ]
+ },
+ "GetIssueModel": {
+ "methods": [
+ "getIssueModel"
+ ]
+ },
+ "GetPhraseMatcher": {
+ "methods": [
+ "getPhraseMatcher"
+ ]
+ },
+ "GetQaQuestion": {
+ "methods": [
+ "getQaQuestion"
+ ]
+ },
+ "GetQaScorecard": {
+ "methods": [
+ "getQaScorecard"
+ ]
+ },
+ "GetQaScorecardRevision": {
+ "methods": [
+ "getQaScorecardRevision"
+ ]
+ },
+ "GetSettings": {
+ "methods": [
+ "getSettings"
+ ]
+ },
+ "GetView": {
+ "methods": [
+ "getView"
+ ]
+ },
+ "ImportIssueModel": {
+ "methods": [
+ "importIssueModel"
+ ]
+ },
+ "IngestConversations": {
+ "methods": [
+ "ingestConversations"
+ ]
+ },
+ "InitializeEncryptionSpec": {
+ "methods": [
+ "initializeEncryptionSpec"
+ ]
+ },
+ "ListAllFeedbackLabels": {
+ "methods": [
+ "listAllFeedbackLabels"
+ ]
+ },
+ "ListAnalyses": {
+ "methods": [
+ "listAnalyses"
+ ]
+ },
+ "ListAnalysisRules": {
+ "methods": [
+ "listAnalysisRules"
+ ]
+ },
+ "ListConversations": {
+ "methods": [
+ "listConversations"
+ ]
+ },
+ "ListFeedbackLabels": {
+ "methods": [
+ "listFeedbackLabels"
+ ]
+ },
+ "ListIssueModels": {
+ "methods": [
+ "listIssueModels"
+ ]
+ },
+ "ListIssues": {
+ "methods": [
+ "listIssues"
+ ]
+ },
+ "ListPhraseMatchers": {
+ "methods": [
+ "listPhraseMatchers"
+ ]
+ },
+ "ListQaQuestions": {
+ "methods": [
+ "listQaQuestions"
+ ]
+ },
+ "ListQaScorecardRevisions": {
+ "methods": [
+ "listQaScorecardRevisions"
+ ]
+ },
+ "ListQaScorecards": {
+ "methods": [
+ "listQaScorecards"
+ ]
+ },
+ "ListViews": {
+ "methods": [
+ "listViews"
+ ]
+ },
+ "QueryMetrics": {
+ "methods": [
+ "queryMetrics"
+ ]
+ },
+ "TuneQaScorecardRevision": {
+ "methods": [
+ "tuneQaScorecardRevision"
+ ]
+ },
+ "UndeployIssueModel": {
+ "methods": [
+ "undeployIssueModel"
+ ]
+ },
+ "UndeployQaScorecardRevision": {
+ "methods": [
+ "undeployQaScorecardRevision"
+ ]
+ },
+ "UpdateAnalysisRule": {
+ "methods": [
+ "updateAnalysisRule"
+ ]
+ },
+ "UpdateConversation": {
+ "methods": [
+ "updateConversation"
+ ]
+ },
+ "UpdateFeedbackLabel": {
+ "methods": [
+ "updateFeedbackLabel"
+ ]
+ },
+ "UpdateIssue": {
+ "methods": [
+ "updateIssue"
+ ]
+ },
+ "UpdateIssueModel": {
+ "methods": [
+ "updateIssueModel"
+ ]
+ },
+ "UpdatePhraseMatcher": {
+ "methods": [
+ "updatePhraseMatcher"
+ ]
+ },
+ "UpdateQaQuestion": {
+ "methods": [
+ "updateQaQuestion"
+ ]
+ },
+ "UpdateQaScorecard": {
+ "methods": [
+ "updateQaScorecard"
+ ]
+ },
+ "UpdateSettings": {
+ "methods": [
+ "updateSettings"
+ ]
+ },
+ "UpdateView": {
+ "methods": [
+ "updateView"
+ ]
+ },
+ "UploadConversation": {
+ "methods": [
+ "uploadConversation"
+ ]
+ }
+ }
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_client_config.json b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_client_config.json
new file mode 100644
index 000000000000..4c5586a76072
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_client_config.json
@@ -0,0 +1,404 @@
+{
+ "interfaces": {
+ "google.cloud.contactcenterinsights.v1.ContactCenterInsights": {
+ "retry_codes": {
+ "no_retry_codes": [],
+ "retry_policy_1_codes": [
+ "UNAVAILABLE"
+ ]
+ },
+ "retry_params": {
+ "no_retry_params": {
+ "initial_retry_delay_millis": 0,
+ "retry_delay_multiplier": 0.0,
+ "max_retry_delay_millis": 0,
+ "initial_rpc_timeout_millis": 0,
+ "rpc_timeout_multiplier": 1.0,
+ "max_rpc_timeout_millis": 0,
+ "total_timeout_millis": 0
+ },
+ "retry_policy_1_params": {
+ "initial_retry_delay_millis": 1000,
+ "retry_delay_multiplier": 1.3,
+ "max_retry_delay_millis": 10000,
+ "initial_rpc_timeout_millis": 60000,
+ "rpc_timeout_multiplier": 1.0,
+ "max_rpc_timeout_millis": 60000,
+ "total_timeout_millis": 60000
+ }
+ },
+ "methods": {
+ "BulkAnalyzeConversations": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "BulkDeleteConversations": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "BulkDownloadFeedbackLabels": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "BulkUploadFeedbackLabels": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CalculateIssueModelStats": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CalculateStats": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateAnalysis": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateAnalysisRule": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateConversation": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateFeedbackLabel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreatePhraseMatcher": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateQaQuestion": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateQaScorecard": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "CreateView": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteAnalysis": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteAnalysisRule": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteConversation": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteFeedbackLabel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteIssue": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeletePhraseMatcher": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteQaQuestion": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteQaScorecard": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeleteView": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeployIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "DeployQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ExportInsightsData": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ExportIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetAnalysis": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetAnalysisRule": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetConversation": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetEncryptionSpec": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetFeedbackLabel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetIssue": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetPhraseMatcher": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetQaQuestion": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetQaScorecard": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetSettings": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "GetView": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ImportIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "IngestConversations": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "InitializeEncryptionSpec": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListAllFeedbackLabels": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListAnalyses": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListAnalysisRules": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListConversations": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListFeedbackLabels": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListIssueModels": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListIssues": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListPhraseMatchers": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListQaQuestions": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListQaScorecardRevisions": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListQaScorecards": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "ListViews": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "QueryMetrics": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "TuneQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UndeployIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UndeployQaScorecardRevision": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateAnalysisRule": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateConversation": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateFeedbackLabel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateIssue": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateIssueModel": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdatePhraseMatcher": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateQaQuestion": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateQaScorecard": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateSettings": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UpdateView": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ },
+ "UploadConversation": {
+ "timeout_millis": 60000,
+ "retry_codes_name": "retry_policy_1_codes",
+ "retry_params_name": "retry_policy_1_params"
+ }
+ }
+ }
+ }
+}
diff --git a/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_descriptor_config.php b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_descriptor_config.php
new file mode 100644
index 000000000000..d4c32359db92
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_descriptor_config.php
@@ -0,0 +1,1154 @@
+ [
+ 'google.cloud.contactcenterinsights.v1.ContactCenterInsights' => [
+ 'BulkAnalyzeConversations' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkAnalyzeConversationsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkDeleteConversations' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkDeleteConversationsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkDownloadFeedbackLabels' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkDownloadFeedbackLabelsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkUploadFeedbackLabels' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\BulkUploadFeedbackLabelsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateAnalysis' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\Analysis',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\CreateAnalysisOperationMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\IssueModel',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\CreateIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Protobuf\GPBEmpty',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\DeleteIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeployIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\DeployIssueModelResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\DeployIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ExportInsightsData' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ExportInsightsDataMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ExportIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ExportIssueModelResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ExportIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ImportIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ImportIssueModelResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\ImportIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'IngestConversations' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\IngestConversationsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\IngestConversationsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'InitializeEncryptionSpec' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\InitializeEncryptionSpecMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'encryption_spec.name',
+ 'fieldAccessors' => [
+ 'getEncryptionSpec',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'QueryMetrics' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\QueryMetricsResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\QueryMetricsMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'location',
+ 'fieldAccessors' => [
+ 'getLocation',
+ ],
+ ],
+ ],
+ ],
+ 'TuneQaScorecardRevision' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\TuneQaScorecardRevisionMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'UndeployIssueModel' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelResponse',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\UndeployIssueModelMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UploadConversation' => [
+ 'longRunning' => [
+ 'operationReturnType' => '\Google\Cloud\ContactCenterInsights\V1\Conversation',
+ 'metadataReturnType' => '\Google\Cloud\ContactCenterInsights\V1\UploadConversationMetadata',
+ 'initialPollDelayMillis' => '500',
+ 'pollDelayMultiplier' => '1.5',
+ 'maxPollDelayMillis' => '5000',
+ 'totalPollTimeoutMillis' => '300000',
+ ],
+ 'callType' => \Google\ApiCore\Call::LONGRUNNING_CALL,
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CalculateIssueModelStats' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\CalculateIssueModelStatsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'issue_model',
+ 'fieldAccessors' => [
+ 'getIssueModel',
+ ],
+ ],
+ ],
+ ],
+ 'CalculateStats' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\CalculateStatsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'location',
+ 'fieldAccessors' => [
+ 'getLocation',
+ ],
+ ],
+ ],
+ ],
+ 'CreateAnalysisRule' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\AnalysisRule',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateConversation' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Conversation',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateFeedbackLabel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\FeedbackLabel',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreatePhraseMatcher' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\PhraseMatcher',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaQuestion' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaQuestion',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaScorecard' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecard',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaScorecardRevision' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateView' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\View',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteAnalysis' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteAnalysisRule' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteConversation' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteFeedbackLabel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteIssue' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeletePhraseMatcher' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaQuestion' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaScorecard' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaScorecardRevision' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteView' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Protobuf\GPBEmpty',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeployQaScorecardRevision' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetAnalysis' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Analysis',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetAnalysisRule' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\AnalysisRule',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetConversation' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Conversation',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetEncryptionSpec' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\EncryptionSpec',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetFeedbackLabel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\FeedbackLabel',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetIssue' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Issue',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetIssueModel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\IssueModel',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetPhraseMatcher' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\PhraseMatcher',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaQuestion' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaQuestion',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaScorecard' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecard',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaScorecardRevision' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetSettings' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Settings',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetView' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\View',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ListAllFeedbackLabels' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getFeedbackLabels',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListAllFeedbackLabelsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListAnalyses' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getAnalyses',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListAnalysesResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListAnalysisRules' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getAnalysisRules',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListAnalysisRulesResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListConversations' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getConversations',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListConversationsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListFeedbackLabels' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getFeedbackLabels',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListFeedbackLabelsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListIssueModels' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListIssueModelsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListIssues' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListIssuesResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListPhraseMatchers' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getPhraseMatchers',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListPhraseMatchersResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaQuestions' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getQaQuestions',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListQaQuestionsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaScorecardRevisions' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getQaScorecardRevisions',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListQaScorecardRevisionsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaScorecards' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getQaScorecards',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListQaScorecardsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListViews' => [
+ 'pageStreaming' => [
+ 'requestPageTokenGetMethod' => 'getPageToken',
+ 'requestPageTokenSetMethod' => 'setPageToken',
+ 'requestPageSizeGetMethod' => 'getPageSize',
+ 'requestPageSizeSetMethod' => 'setPageSize',
+ 'responsePageTokenGetMethod' => 'getNextPageToken',
+ 'resourcesGetMethod' => 'getViews',
+ ],
+ 'callType' => \Google\ApiCore\Call::PAGINATED_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\ListViewsResponse',
+ 'headerParams' => [
+ [
+ 'keyName' => 'parent',
+ 'fieldAccessors' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'UndeployQaScorecardRevision' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecardRevision',
+ 'headerParams' => [
+ [
+ 'keyName' => 'name',
+ 'fieldAccessors' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateAnalysisRule' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\AnalysisRule',
+ 'headerParams' => [
+ [
+ 'keyName' => 'analysis_rule.name',
+ 'fieldAccessors' => [
+ 'getAnalysisRule',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateConversation' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Conversation',
+ 'headerParams' => [
+ [
+ 'keyName' => 'conversation.name',
+ 'fieldAccessors' => [
+ 'getConversation',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateFeedbackLabel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\FeedbackLabel',
+ 'headerParams' => [
+ [
+ 'keyName' => 'feedback_label.name',
+ 'fieldAccessors' => [
+ 'getFeedbackLabel',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateIssue' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Issue',
+ 'headerParams' => [
+ [
+ 'keyName' => 'issue.name',
+ 'fieldAccessors' => [
+ 'getIssue',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateIssueModel' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\IssueModel',
+ 'headerParams' => [
+ [
+ 'keyName' => 'issue_model.name',
+ 'fieldAccessors' => [
+ 'getIssueModel',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdatePhraseMatcher' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\PhraseMatcher',
+ 'headerParams' => [
+ [
+ 'keyName' => 'phrase_matcher.name',
+ 'fieldAccessors' => [
+ 'getPhraseMatcher',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateQaQuestion' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaQuestion',
+ 'headerParams' => [
+ [
+ 'keyName' => 'qa_question.name',
+ 'fieldAccessors' => [
+ 'getQaQuestion',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateQaScorecard' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\QaScorecard',
+ 'headerParams' => [
+ [
+ 'keyName' => 'qa_scorecard.name',
+ 'fieldAccessors' => [
+ 'getQaScorecard',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateSettings' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\Settings',
+ 'headerParams' => [
+ [
+ 'keyName' => 'settings.name',
+ 'fieldAccessors' => [
+ 'getSettings',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateView' => [
+ 'callType' => \Google\ApiCore\Call::UNARY_CALL,
+ 'responseType' => 'Google\Cloud\ContactCenterInsights\V1\View',
+ 'headerParams' => [
+ [
+ 'keyName' => 'view.name',
+ 'fieldAccessors' => [
+ 'getView',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'templateMap' => [
+ 'analysis' => 'projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}',
+ 'analysisRule' => 'projects/{project}/locations/{location}/analysisRules/{analysis_rule}',
+ 'conversation' => 'projects/{project}/locations/{location}/conversations/{conversation}',
+ 'conversationProfile' => 'projects/{project}/locations/{location}/conversationProfiles/{conversation_profile}',
+ 'encryptionSpec' => 'projects/{project}/locations/{location}/encryptionSpec',
+ 'feedbackLabel' => 'projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}',
+ 'issue' => 'projects/{project}/locations/{location}/issueModels/{issue_model}/issues/{issue}',
+ 'issueModel' => 'projects/{project}/locations/{location}/issueModels/{issue_model}',
+ 'location' => 'projects/{project}/locations/{location}',
+ 'participant' => 'projects/{project}/conversations/{conversation}/participants/{participant}',
+ 'phraseMatcher' => 'projects/{project}/locations/{location}/phraseMatchers/{phrase_matcher}',
+ 'projectConversationParticipant' => 'projects/{project}/conversations/{conversation}/participants/{participant}',
+ 'projectLocationAuthorizedViewSetAuthorizedViewConversation' => 'projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}',
+ 'projectLocationAuthorizedViewSetAuthorizedViewConversationAnalysis' => 'projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}/analyses/{analysis}',
+ 'projectLocationAuthorizedViewSetAuthorizedViewConversationFeedbackLabel' => 'projects/{project}/locations/{location}/authorizedViewSets/{authorized_view_set}/authorizedViews/{authorized_view}/conversations/{conversation}/feedbackLabels/{feedback_label}',
+ 'projectLocationConversation' => 'projects/{project}/locations/{location}/conversations/{conversation}',
+ 'projectLocationConversationAnalysis' => 'projects/{project}/locations/{location}/conversations/{conversation}/analyses/{analysis}',
+ 'projectLocationConversationFeedbackLabel' => 'projects/{project}/locations/{location}/conversations/{conversation}/feedbackLabels/{feedback_label}',
+ 'projectLocationConversationParticipant' => 'projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}',
+ 'qaQuestion' => 'projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}/qaQuestions/{qa_question}',
+ 'qaScorecard' => 'projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}',
+ 'qaScorecardResult' => 'projects/{project}/locations/{location}/qaScorecardResults/{qa_scorecard_result}',
+ 'qaScorecardRevision' => 'projects/{project}/locations/{location}/qaScorecards/{qa_scorecard}/revisions/{revision}',
+ 'recognizer' => 'projects/{project}/locations/{location}/recognizers/{recognizer}',
+ 'settings' => 'projects/{project}/locations/{location}/settings',
+ 'view' => 'projects/{project}/locations/{location}/views/{view}',
+ ],
+ ],
+ ],
+];
diff --git a/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_rest_client_config.php b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_rest_client_config.php
new file mode 100644
index 000000000000..868ef5aa4bdf
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/src/V1/resources/contact_center_insights_rest_client_config.php
@@ -0,0 +1,950 @@
+ [
+ 'google.cloud.contactcenterinsights.v1.ContactCenterInsights' => [
+ 'BulkAnalyzeConversations' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations:bulkAnalyze',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkDeleteConversations' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations:bulkDelete',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkDownloadFeedbackLabels' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}:bulkDownloadFeedbackLabels',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'BulkUploadFeedbackLabels' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}:bulkUploadFeedbackLabels',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CalculateIssueModelStats' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{issue_model=projects/*/locations/*/issueModels/*}:calculateIssueModelStats',
+ 'placeholders' => [
+ 'issue_model' => [
+ 'getters' => [
+ 'getIssueModel',
+ ],
+ ],
+ ],
+ ],
+ 'CalculateStats' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{location=projects/*/locations/*}/conversations:calculateStats',
+ 'additionalBindings' => [
+ [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{location=projects/*/locations/*/authorizedViewSet/*/authorizedView/*}:calculateStats',
+ ],
+ ],
+ 'placeholders' => [
+ 'location' => [
+ 'getters' => [
+ 'getLocation',
+ ],
+ ],
+ ],
+ ],
+ 'CreateAnalysis' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/conversations/*}/analyses',
+ 'body' => 'analysis',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateAnalysisRule' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/analysisRules',
+ 'body' => 'analysis_rule',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateConversation' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations',
+ 'body' => 'conversation',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateFeedbackLabel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/conversations/*}/feedbackLabels',
+ 'body' => 'feedback_label',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateIssueModel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/issueModels',
+ 'body' => 'issue_model',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreatePhraseMatcher' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/phraseMatchers',
+ 'body' => 'phrase_matcher',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaQuestion' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/qaScorecards/*/revisions/*}/qaQuestions',
+ 'body' => 'qa_question',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaScorecard' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/qaScorecards',
+ 'body' => 'qa_scorecard',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateQaScorecardRevision' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/qaScorecards/*}/revisions',
+ 'body' => 'qa_scorecard_revision',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'CreateView' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/views',
+ 'body' => 'view',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteAnalysis' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*/analyses/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteAnalysisRule' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/analysisRules/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteConversation' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteFeedbackLabel' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*/feedbackLabels/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteIssue' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*/issues/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteIssueModel' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeletePhraseMatcher' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/phraseMatchers/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaQuestion' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*/qaQuestions/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaScorecard' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteQaScorecardRevision' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeleteView' => [
+ 'method' => 'delete',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/views/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeployIssueModel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*}:deploy',
+ 'body' => '*',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'DeployQaScorecardRevision' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*}:deploy',
+ 'body' => '*',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ExportInsightsData' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/insightsdata:export',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ExportIssueModel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*}:export',
+ 'body' => '*',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetAnalysis' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*/analyses/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetAnalysisRule' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/analysisRules/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetConversation' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetEncryptionSpec' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/encryptionSpec}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetFeedbackLabel' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/conversations/*/feedbackLabels/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetIssue' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*/issues/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetIssueModel' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetPhraseMatcher' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/phraseMatchers/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaQuestion' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*/qaQuestions/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaScorecard' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetQaScorecardRevision' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetSettings' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/settings}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetView' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/views/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ImportIssueModel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/issueModels:import',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'IngestConversations' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations:ingest',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'InitializeEncryptionSpec' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{encryption_spec.name=projects/*/locations/*/encryptionSpec}:initialize',
+ 'body' => '*',
+ 'placeholders' => [
+ 'encryption_spec.name' => [
+ 'getters' => [
+ 'getEncryptionSpec',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ListAllFeedbackLabels' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}:listAllFeedbackLabels',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListAnalyses' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/conversations/*}/analyses',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListAnalysisRules' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/analysisRules',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListConversations' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListFeedbackLabels' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/conversations/*}/feedbackLabels',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListIssueModels' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/issueModels',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListIssues' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/issueModels/*}/issues',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListPhraseMatchers' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/phraseMatchers',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaQuestions' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/qaScorecards/*/revisions/*}/qaQuestions',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaScorecardRevisions' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/qaScorecards/*}/revisions',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListQaScorecards' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/qaScorecards',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'ListViews' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/views',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'QueryMetrics' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{location=projects/*/locations/*}:queryMetrics',
+ 'body' => '*',
+ 'additionalBindings' => [
+ [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{location=projects/*/locations/*/authorizedViewSet/*/authorizedView/*}:queryMetrics',
+ 'body' => '*',
+ ],
+ ],
+ 'placeholders' => [
+ 'location' => [
+ 'getters' => [
+ 'getLocation',
+ ],
+ ],
+ ],
+ ],
+ 'TuneQaScorecardRevision' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*/qaScorecards/*/revisions/*}:tuneQaScorecardRevision',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ 'UndeployIssueModel' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/issueModels/*}:undeploy',
+ 'body' => '*',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UndeployQaScorecardRevision' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/qaScorecards/*/revisions/*}:undeploy',
+ 'body' => '*',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateAnalysisRule' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{analysis_rule.name=projects/*/locations/*/analysisRules/*}',
+ 'body' => 'analysis_rule',
+ 'placeholders' => [
+ 'analysis_rule.name' => [
+ 'getters' => [
+ 'getAnalysisRule',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateConversation' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{conversation.name=projects/*/locations/*/conversations/*}',
+ 'body' => 'conversation',
+ 'placeholders' => [
+ 'conversation.name' => [
+ 'getters' => [
+ 'getConversation',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateFeedbackLabel' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{feedback_label.name=projects/*/locations/*/conversations/*/feedbackLabels/*}',
+ 'body' => 'feedback_label',
+ 'placeholders' => [
+ 'feedback_label.name' => [
+ 'getters' => [
+ 'getFeedbackLabel',
+ 'getName',
+ ],
+ ],
+ ],
+ 'queryParams' => [
+ 'update_mask',
+ ],
+ ],
+ 'UpdateIssue' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{issue.name=projects/*/locations/*/issueModels/*/issues/*}',
+ 'body' => 'issue',
+ 'placeholders' => [
+ 'issue.name' => [
+ 'getters' => [
+ 'getIssue',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateIssueModel' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{issue_model.name=projects/*/locations/*/issueModels/*}',
+ 'body' => 'issue_model',
+ 'placeholders' => [
+ 'issue_model.name' => [
+ 'getters' => [
+ 'getIssueModel',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdatePhraseMatcher' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{phrase_matcher.name=projects/*/locations/*/phraseMatchers/*}',
+ 'body' => 'phrase_matcher',
+ 'placeholders' => [
+ 'phrase_matcher.name' => [
+ 'getters' => [
+ 'getPhraseMatcher',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UpdateQaQuestion' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{qa_question.name=projects/*/locations/*/qaScorecards/*/revisions/*/qaQuestions/*}',
+ 'body' => 'qa_question',
+ 'placeholders' => [
+ 'qa_question.name' => [
+ 'getters' => [
+ 'getQaQuestion',
+ 'getName',
+ ],
+ ],
+ ],
+ 'queryParams' => [
+ 'update_mask',
+ ],
+ ],
+ 'UpdateQaScorecard' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{qa_scorecard.name=projects/*/locations/*/qaScorecards/*}',
+ 'body' => 'qa_scorecard',
+ 'placeholders' => [
+ 'qa_scorecard.name' => [
+ 'getters' => [
+ 'getQaScorecard',
+ 'getName',
+ ],
+ ],
+ ],
+ 'queryParams' => [
+ 'update_mask',
+ ],
+ ],
+ 'UpdateSettings' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{settings.name=projects/*/locations/*/settings}',
+ 'body' => 'settings',
+ 'placeholders' => [
+ 'settings.name' => [
+ 'getters' => [
+ 'getSettings',
+ 'getName',
+ ],
+ ],
+ ],
+ 'queryParams' => [
+ 'update_mask',
+ ],
+ ],
+ 'UpdateView' => [
+ 'method' => 'patch',
+ 'uriTemplate' => '/v1/{view.name=projects/*/locations/*/views/*}',
+ 'body' => 'view',
+ 'placeholders' => [
+ 'view.name' => [
+ 'getters' => [
+ 'getView',
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'UploadConversation' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{parent=projects/*/locations/*}/conversations:upload',
+ 'body' => '*',
+ 'placeholders' => [
+ 'parent' => [
+ 'getters' => [
+ 'getParent',
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'google.longrunning.Operations' => [
+ 'CancelOperation' => [
+ 'method' => 'post',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/operations/*}:cancel',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'GetOperation' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*/operations/*}',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ 'ListOperations' => [
+ 'method' => 'get',
+ 'uriTemplate' => '/v1/{name=projects/*/locations/*}/operations',
+ 'placeholders' => [
+ 'name' => [
+ 'getters' => [
+ 'getName',
+ ],
+ ],
+ ],
+ ],
+ ],
+ ],
+ 'numericEnums' => true,
+];
diff --git a/owl-bot-staging/ContactCenterInsights/v1/tests/Unit/V1/Client/ContactCenterInsightsClientTest.php b/owl-bot-staging/ContactCenterInsights/v1/tests/Unit/V1/Client/ContactCenterInsightsClientTest.php
new file mode 100644
index 000000000000..b4d004308114
--- /dev/null
+++ b/owl-bot-staging/ContactCenterInsights/v1/tests/Unit/V1/Client/ContactCenterInsightsClientTest.php
@@ -0,0 +1,6326 @@
+getMockBuilder(CredentialsWrapper::class)->disableOriginalConstructor()->getMock();
+ }
+
+ /** @return ContactCenterInsightsClient */
+ private function createClient(array $options = [])
+ {
+ $options += [
+ 'credentials' => $this->createCredentials(),
+ ];
+ return new ContactCenterInsightsClient($options);
+ }
+
+ /** @test */
+ public function bulkAnalyzeConversationsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkAnalyzeConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $successfulAnalysisCount = 1153322545;
+ $failedAnalysisCount = 1044285998;
+ $expectedResponse = new BulkAnalyzeConversationsResponse();
+ $expectedResponse->setSuccessfulAnalysisCount($successfulAnalysisCount);
+ $expectedResponse->setFailedAnalysisCount($failedAnalysisCount);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/bulkAnalyzeConversationsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $filter = 'filter-1274492040';
+ $analysisPercentage = 9980822;
+ $request = (new BulkAnalyzeConversationsRequest())
+ ->setParent($formattedParent)
+ ->setFilter($filter)
+ ->setAnalysisPercentage($analysisPercentage);
+ $response = $gapicClient->bulkAnalyzeConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/BulkAnalyzeConversations', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getFilter();
+ $this->assertProtobufEquals($filter, $actualValue);
+ $actualValue = $actualApiRequestObject->getAnalysisPercentage();
+ $this->assertProtobufEquals($analysisPercentage, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkAnalyzeConversationsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkAnalyzeConversationsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkAnalyzeConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $filter = 'filter-1274492040';
+ $analysisPercentage = 9980822;
+ $request = (new BulkAnalyzeConversationsRequest())
+ ->setParent($formattedParent)
+ ->setFilter($filter)
+ ->setAnalysisPercentage($analysisPercentage);
+ $response = $gapicClient->bulkAnalyzeConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkAnalyzeConversationsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkDeleteConversationsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkDeleteConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new BulkDeleteConversationsResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/bulkDeleteConversationsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkDeleteConversationsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkDeleteConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/BulkDeleteConversations', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkDeleteConversationsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkDeleteConversationsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkDeleteConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkDeleteConversationsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkDeleteConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkDeleteConversationsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkDownloadFeedbackLabelsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkDownloadFeedbackLabelsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new BulkDownloadFeedbackLabelsResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/bulkDownloadFeedbackLabelsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkDownloadFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkDownloadFeedbackLabels($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/BulkDownloadFeedbackLabels', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkDownloadFeedbackLabelsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkDownloadFeedbackLabelsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkDownloadFeedbackLabelsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkDownloadFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkDownloadFeedbackLabels($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkDownloadFeedbackLabelsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkUploadFeedbackLabelsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkUploadFeedbackLabelsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new BulkUploadFeedbackLabelsResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/bulkUploadFeedbackLabelsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkUploadFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkUploadFeedbackLabels($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/BulkUploadFeedbackLabels', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkUploadFeedbackLabelsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkUploadFeedbackLabelsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkUploadFeedbackLabelsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new BulkUploadFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->bulkUploadFeedbackLabels($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkUploadFeedbackLabelsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function calculateIssueModelStatsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new CalculateIssueModelStatsResponse();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedIssueModel = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new CalculateIssueModelStatsRequest())
+ ->setIssueModel($formattedIssueModel);
+ $response = $gapicClient->calculateIssueModelStats($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CalculateIssueModelStats', $actualFuncCall);
+ $actualValue = $actualRequestObject->getIssueModel();
+ $this->assertProtobufEquals($formattedIssueModel, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function calculateIssueModelStatsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedIssueModel = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new CalculateIssueModelStatsRequest())
+ ->setIssueModel($formattedIssueModel);
+ try {
+ $gapicClient->calculateIssueModelStats($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function calculateStatsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $averageTurnCount = 1693477329;
+ $conversationCount = 1994187347;
+ $expectedResponse = new CalculateStatsResponse();
+ $expectedResponse->setAverageTurnCount($averageTurnCount);
+ $expectedResponse->setConversationCount($conversationCount);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedLocation = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new CalculateStatsRequest())
+ ->setLocation($formattedLocation);
+ $response = $gapicClient->calculateStats($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CalculateStats', $actualFuncCall);
+ $actualValue = $actualRequestObject->getLocation();
+ $this->assertProtobufEquals($formattedLocation, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function calculateStatsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedLocation = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new CalculateStatsRequest())
+ ->setLocation($formattedLocation);
+ try {
+ $gapicClient->calculateStats($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createAnalysisTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/createAnalysisTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $name = 'name3373707';
+ $expectedResponse = new Analysis();
+ $expectedResponse->setName($name);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/createAnalysisTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $analysis = new Analysis();
+ $request = (new CreateAnalysisRequest())
+ ->setParent($formattedParent)
+ ->setAnalysis($analysis);
+ $response = $gapicClient->createAnalysis($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateAnalysis', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getAnalysis();
+ $this->assertProtobufEquals($analysis, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/createAnalysisTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function createAnalysisExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/createAnalysisTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $analysis = new Analysis();
+ $request = (new CreateAnalysisRequest())
+ ->setParent($formattedParent)
+ ->setAnalysis($analysis);
+ $response = $gapicClient->createAnalysis($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/createAnalysisTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function createAnalysisRuleTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $conversationFilter = 'conversationFilter1770349236';
+ $analysisPercentage = 1.60975766E8;
+ $active = true;
+ $expectedResponse = new AnalysisRule();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setConversationFilter($conversationFilter);
+ $expectedResponse->setAnalysisPercentage($analysisPercentage);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $analysisRule = new AnalysisRule();
+ $request = (new CreateAnalysisRuleRequest())
+ ->setParent($formattedParent)
+ ->setAnalysisRule($analysisRule);
+ $response = $gapicClient->createAnalysisRule($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateAnalysisRule', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getAnalysisRule();
+ $this->assertProtobufEquals($analysisRule, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createAnalysisRuleExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $analysisRule = new AnalysisRule();
+ $request = (new CreateAnalysisRuleRequest())
+ ->setParent($formattedParent)
+ ->setAnalysisRule($analysisRule);
+ try {
+ $gapicClient->createAnalysisRule($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createConversationTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $languageCode = 'languageCode-412800396';
+ $agentId = 'agentId1469158549';
+ $metadataJson = 'metadataJson-2002268168';
+ $turnCount = 428155597;
+ $obfuscatedUserId = 'obfuscatedUserId-227848300';
+ $expectedResponse = new Conversation();
+ $expectedResponse->setName($name);
+ $expectedResponse->setLanguageCode($languageCode);
+ $expectedResponse->setAgentId($agentId);
+ $expectedResponse->setMetadataJson($metadataJson);
+ $expectedResponse->setTurnCount($turnCount);
+ $expectedResponse->setObfuscatedUserId($obfuscatedUserId);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $conversation = new Conversation();
+ $request = (new CreateConversationRequest())
+ ->setParent($formattedParent)
+ ->setConversation($conversation);
+ $response = $gapicClient->createConversation($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateConversation', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getConversation();
+ $this->assertProtobufEquals($conversation, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createConversationExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $conversation = new Conversation();
+ $request = (new CreateConversationRequest())
+ ->setParent($formattedParent)
+ ->setConversation($conversation);
+ try {
+ $gapicClient->createConversation($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createFeedbackLabelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $label = 'label102727412';
+ $name = 'name3373707';
+ $labeledResource = 'labeledResource556993594';
+ $expectedResponse = new FeedbackLabel();
+ $expectedResponse->setLabel($label);
+ $expectedResponse->setName($name);
+ $expectedResponse->setLabeledResource($labeledResource);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $feedbackLabel = new FeedbackLabel();
+ $request = (new CreateFeedbackLabelRequest())
+ ->setParent($formattedParent)
+ ->setFeedbackLabel($feedbackLabel);
+ $response = $gapicClient->createFeedbackLabel($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateFeedbackLabel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getFeedbackLabel();
+ $this->assertProtobufEquals($feedbackLabel, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createFeedbackLabelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $feedbackLabel = new FeedbackLabel();
+ $request = (new CreateFeedbackLabelRequest())
+ ->setParent($formattedParent)
+ ->setFeedbackLabel($feedbackLabel);
+ try {
+ $gapicClient->createFeedbackLabel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/createIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $issueCount = 1779144233;
+ $languageCode = 'languageCode-412800396';
+ $expectedResponse = new IssueModel();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setIssueCount($issueCount);
+ $expectedResponse->setLanguageCode($languageCode);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/createIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $issueModel = new IssueModel();
+ $request = (new CreateIssueModelRequest())
+ ->setParent($formattedParent)
+ ->setIssueModel($issueModel);
+ $response = $gapicClient->createIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getIssueModel();
+ $this->assertProtobufEquals($issueModel, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/createIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function createIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/createIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $issueModel = new IssueModel();
+ $request = (new CreateIssueModelRequest())
+ ->setParent($formattedParent)
+ ->setIssueModel($issueModel);
+ $response = $gapicClient->createIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/createIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function createPhraseMatcherTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $revisionId = 'revisionId513861631';
+ $versionTag = 'versionTag689430451';
+ $displayName = 'displayName1615086568';
+ $active = true;
+ $expectedResponse = new PhraseMatcher();
+ $expectedResponse->setName($name);
+ $expectedResponse->setRevisionId($revisionId);
+ $expectedResponse->setVersionTag($versionTag);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $phraseMatcher = new PhraseMatcher();
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+ $phraseMatcher->setType($phraseMatcherType);
+ $request = (new CreatePhraseMatcherRequest())
+ ->setParent($formattedParent)
+ ->setPhraseMatcher($phraseMatcher);
+ $response = $gapicClient->createPhraseMatcher($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreatePhraseMatcher', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getPhraseMatcher();
+ $this->assertProtobufEquals($phraseMatcher, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createPhraseMatcherExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $phraseMatcher = new PhraseMatcher();
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+ $phraseMatcher->setType($phraseMatcherType);
+ $request = (new CreatePhraseMatcherRequest())
+ ->setParent($formattedParent)
+ ->setPhraseMatcher($phraseMatcher);
+ try {
+ $gapicClient->createPhraseMatcher($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaQuestionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $abbreviation = 'abbreviation-1960645810';
+ $questionBody = 'questionBody-1030867365';
+ $answerInstructions = 'answerInstructions863229062';
+ $order = 106006350;
+ $expectedResponse = new QaQuestion();
+ $expectedResponse->setName($name);
+ $expectedResponse->setAbbreviation($abbreviation);
+ $expectedResponse->setQuestionBody($questionBody);
+ $expectedResponse->setAnswerInstructions($answerInstructions);
+ $expectedResponse->setOrder($order);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $qaQuestion = new QaQuestion();
+ $request = (new CreateQaQuestionRequest())
+ ->setParent($formattedParent)
+ ->setQaQuestion($qaQuestion);
+ $response = $gapicClient->createQaQuestion($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateQaQuestion', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getQaQuestion();
+ $this->assertProtobufEquals($qaQuestion, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaQuestionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $qaQuestion = new QaQuestion();
+ $request = (new CreateQaQuestionRequest())
+ ->setParent($formattedParent)
+ ->setQaQuestion($qaQuestion);
+ try {
+ $gapicClient->createQaQuestion($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaScorecardTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $description = 'description-1724546052';
+ $expectedResponse = new QaScorecard();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setDescription($description);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $qaScorecard = new QaScorecard();
+ $request = (new CreateQaScorecardRequest())
+ ->setParent($formattedParent)
+ ->setQaScorecard($qaScorecard);
+ $response = $gapicClient->createQaScorecard($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateQaScorecard', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getQaScorecard();
+ $this->assertProtobufEquals($qaScorecard, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaScorecardExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $qaScorecard = new QaScorecard();
+ $request = (new CreateQaScorecardRequest())
+ ->setParent($formattedParent)
+ ->setQaScorecard($qaScorecard);
+ try {
+ $gapicClient->createQaScorecard($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaScorecardRevisionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $expectedResponse = new QaScorecardRevision();
+ $expectedResponse->setName($name);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $qaScorecardRevision = new QaScorecardRevision();
+ $request = (new CreateQaScorecardRevisionRequest())
+ ->setParent($formattedParent)
+ ->setQaScorecardRevision($qaScorecardRevision);
+ $response = $gapicClient->createQaScorecardRevision($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateQaScorecardRevision', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getQaScorecardRevision();
+ $this->assertProtobufEquals($qaScorecardRevision, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createQaScorecardRevisionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $qaScorecardRevision = new QaScorecardRevision();
+ $request = (new CreateQaScorecardRevisionRequest())
+ ->setParent($formattedParent)
+ ->setQaScorecardRevision($qaScorecardRevision);
+ try {
+ $gapicClient->createQaScorecardRevision($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createViewTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $value = 'value111972721';
+ $expectedResponse = new View();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setValue($value);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $view = new View();
+ $request = (new CreateViewRequest())
+ ->setParent($formattedParent)
+ ->setView($view);
+ $response = $gapicClient->createView($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/CreateView', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualRequestObject->getView();
+ $this->assertProtobufEquals($view, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function createViewExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $view = new View();
+ $request = (new CreateViewRequest())
+ ->setParent($formattedParent)
+ ->setView($view);
+ try {
+ $gapicClient->createView($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteAnalysisTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->analysisName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[ANALYSIS]');
+ $request = (new DeleteAnalysisRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteAnalysis($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteAnalysis', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteAnalysisExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->analysisName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[ANALYSIS]');
+ $request = (new DeleteAnalysisRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteAnalysis($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteAnalysisRuleTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->analysisRuleName('[PROJECT]', '[LOCATION]', '[ANALYSIS_RULE]');
+ $request = (new DeleteAnalysisRuleRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteAnalysisRule($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteAnalysisRule', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteAnalysisRuleExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->analysisRuleName('[PROJECT]', '[LOCATION]', '[ANALYSIS_RULE]');
+ $request = (new DeleteAnalysisRuleRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteAnalysisRule($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteConversationTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new DeleteConversationRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteConversation($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteConversation', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteConversationExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new DeleteConversationRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteConversation($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteFeedbackLabelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->feedbackLabelName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[FEEDBACK_LABEL]');
+ $request = (new DeleteFeedbackLabelRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteFeedbackLabel($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteFeedbackLabel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteFeedbackLabelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->feedbackLabelName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[FEEDBACK_LABEL]');
+ $request = (new DeleteFeedbackLabelRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteFeedbackLabel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteIssueTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->issueName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]', '[ISSUE]');
+ $request = (new DeleteIssueRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteIssue($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteIssue', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteIssueExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]', '[ISSUE]');
+ $request = (new DeleteIssueRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteIssue($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/deleteIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new GPBEmpty();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/deleteIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new DeleteIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->deleteIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/deleteIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/deleteIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new DeleteIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->deleteIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/deleteIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function deletePhraseMatcherTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->phraseMatcherName('[PROJECT]', '[LOCATION]', '[PHRASE_MATCHER]');
+ $request = (new DeletePhraseMatcherRequest())
+ ->setName($formattedName);
+ $gapicClient->deletePhraseMatcher($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeletePhraseMatcher', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deletePhraseMatcherExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->phraseMatcherName('[PROJECT]', '[LOCATION]', '[PHRASE_MATCHER]');
+ $request = (new DeletePhraseMatcherRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deletePhraseMatcher($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaQuestionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaQuestionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]', '[QA_QUESTION]');
+ $request = (new DeleteQaQuestionRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteQaQuestion($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteQaQuestion', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaQuestionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaQuestionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]', '[QA_QUESTION]');
+ $request = (new DeleteQaQuestionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteQaQuestion($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaScorecardTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new DeleteQaScorecardRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteQaScorecard($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteQaScorecard', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaScorecardExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new DeleteQaScorecardRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteQaScorecard($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaScorecardRevisionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new DeleteQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteQaScorecardRevision($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteQaScorecardRevision', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteQaScorecardRevisionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new DeleteQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteQaScorecardRevision($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteViewTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new GPBEmpty();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+ $request = (new DeleteViewRequest())
+ ->setName($formattedName);
+ $gapicClient->deleteView($request);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeleteView', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deleteViewExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+ $request = (new DeleteViewRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deleteView($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deployIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/deployIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new DeployIssueModelResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/deployIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new DeployIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->deployIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeployIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/deployIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function deployIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/deployIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new DeployIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->deployIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/deployIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function deployQaScorecardRevisionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $expectedResponse = new QaScorecardRevision();
+ $expectedResponse->setName($name2);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new DeployQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->deployQaScorecardRevision($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/DeployQaScorecardRevision', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function deployQaScorecardRevisionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new DeployQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->deployQaScorecardRevision($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function exportInsightsDataTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/exportInsightsDataTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new ExportInsightsDataResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/exportInsightsDataTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ExportInsightsDataRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->exportInsightsData($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ExportInsightsData', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/exportInsightsDataTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function exportInsightsDataExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/exportInsightsDataTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ExportInsightsDataRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->exportInsightsData($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/exportInsightsDataTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function exportIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/exportIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new ExportIssueModelResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/exportIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new ExportIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->exportIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ExportIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/exportIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function exportIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/exportIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new ExportIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->exportIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/exportIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function getAnalysisTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $expectedResponse = new Analysis();
+ $expectedResponse->setName($name2);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->analysisName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[ANALYSIS]');
+ $request = (new GetAnalysisRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getAnalysis($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetAnalysis', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getAnalysisExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->analysisName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[ANALYSIS]');
+ $request = (new GetAnalysisRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getAnalysis($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getAnalysisRuleTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $displayName = 'displayName1615086568';
+ $conversationFilter = 'conversationFilter1770349236';
+ $analysisPercentage = 1.60975766E8;
+ $active = true;
+ $expectedResponse = new AnalysisRule();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setConversationFilter($conversationFilter);
+ $expectedResponse->setAnalysisPercentage($analysisPercentage);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->analysisRuleName('[PROJECT]', '[LOCATION]', '[ANALYSIS_RULE]');
+ $request = (new GetAnalysisRuleRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getAnalysisRule($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetAnalysisRule', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getAnalysisRuleExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->analysisRuleName('[PROJECT]', '[LOCATION]', '[ANALYSIS_RULE]');
+ $request = (new GetAnalysisRuleRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getAnalysisRule($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getConversationTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $languageCode = 'languageCode-412800396';
+ $agentId = 'agentId1469158549';
+ $metadataJson = 'metadataJson-2002268168';
+ $turnCount = 428155597;
+ $obfuscatedUserId = 'obfuscatedUserId-227848300';
+ $expectedResponse = new Conversation();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setLanguageCode($languageCode);
+ $expectedResponse->setAgentId($agentId);
+ $expectedResponse->setMetadataJson($metadataJson);
+ $expectedResponse->setTurnCount($turnCount);
+ $expectedResponse->setObfuscatedUserId($obfuscatedUserId);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new GetConversationRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getConversation($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetConversation', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getConversationExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new GetConversationRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getConversation($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getEncryptionSpecTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $kmsKey = 'kmsKey-591635343';
+ $expectedResponse = new EncryptionSpec();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setKmsKey($kmsKey);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->encryptionSpecName('[PROJECT]', '[LOCATION]');
+ $request = (new GetEncryptionSpecRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getEncryptionSpec($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetEncryptionSpec', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getEncryptionSpecExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->encryptionSpecName('[PROJECT]', '[LOCATION]');
+ $request = (new GetEncryptionSpecRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getEncryptionSpec($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getFeedbackLabelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $label = 'label102727412';
+ $name2 = 'name2-1052831874';
+ $labeledResource = 'labeledResource556993594';
+ $expectedResponse = new FeedbackLabel();
+ $expectedResponse->setLabel($label);
+ $expectedResponse->setName($name2);
+ $expectedResponse->setLabeledResource($labeledResource);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->feedbackLabelName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[FEEDBACK_LABEL]');
+ $request = (new GetFeedbackLabelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getFeedbackLabel($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetFeedbackLabel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getFeedbackLabelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->feedbackLabelName('[PROJECT]', '[LOCATION]', '[CONVERSATION]', '[FEEDBACK_LABEL]');
+ $request = (new GetFeedbackLabelRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getFeedbackLabel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getIssueTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $displayName = 'displayName1615086568';
+ $displayDescription = 'displayDescription-1876039681';
+ $expectedResponse = new Issue();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setDisplayDescription($displayDescription);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->issueName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]', '[ISSUE]');
+ $request = (new GetIssueRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getIssue($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetIssue', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getIssueExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]', '[ISSUE]');
+ $request = (new GetIssueRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getIssue($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getIssueModelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $displayName = 'displayName1615086568';
+ $issueCount = 1779144233;
+ $languageCode = 'languageCode-412800396';
+ $expectedResponse = new IssueModel();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setIssueCount($issueCount);
+ $expectedResponse->setLanguageCode($languageCode);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new GetIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getIssueModel($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetIssueModel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getIssueModelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new GetIssueModelRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getIssueModel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getPhraseMatcherTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $revisionId = 'revisionId513861631';
+ $versionTag = 'versionTag689430451';
+ $displayName = 'displayName1615086568';
+ $active = true;
+ $expectedResponse = new PhraseMatcher();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setRevisionId($revisionId);
+ $expectedResponse->setVersionTag($versionTag);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->phraseMatcherName('[PROJECT]', '[LOCATION]', '[PHRASE_MATCHER]');
+ $request = (new GetPhraseMatcherRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getPhraseMatcher($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetPhraseMatcher', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getPhraseMatcherExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->phraseMatcherName('[PROJECT]', '[LOCATION]', '[PHRASE_MATCHER]');
+ $request = (new GetPhraseMatcherRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getPhraseMatcher($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaQuestionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $abbreviation = 'abbreviation-1960645810';
+ $questionBody = 'questionBody-1030867365';
+ $answerInstructions = 'answerInstructions863229062';
+ $order = 106006350;
+ $expectedResponse = new QaQuestion();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setAbbreviation($abbreviation);
+ $expectedResponse->setQuestionBody($questionBody);
+ $expectedResponse->setAnswerInstructions($answerInstructions);
+ $expectedResponse->setOrder($order);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaQuestionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]', '[QA_QUESTION]');
+ $request = (new GetQaQuestionRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getQaQuestion($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetQaQuestion', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaQuestionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaQuestionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]', '[QA_QUESTION]');
+ $request = (new GetQaQuestionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getQaQuestion($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaScorecardTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $displayName = 'displayName1615086568';
+ $description = 'description-1724546052';
+ $expectedResponse = new QaScorecard();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setDescription($description);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new GetQaScorecardRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getQaScorecard($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetQaScorecard', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaScorecardExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new GetQaScorecardRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getQaScorecard($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaScorecardRevisionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $expectedResponse = new QaScorecardRevision();
+ $expectedResponse->setName($name2);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new GetQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getQaScorecardRevision($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetQaScorecardRevision', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getQaScorecardRevisionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new GetQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getQaScorecardRevision($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getSettingsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $languageCode = 'languageCode-412800396';
+ $expectedResponse = new Settings();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setLanguageCode($languageCode);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->settingsName('[PROJECT]', '[LOCATION]');
+ $request = (new GetSettingsRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getSettings($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetSettings', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getSettingsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->settingsName('[PROJECT]', '[LOCATION]');
+ $request = (new GetSettingsRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getSettings($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getViewTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $displayName = 'displayName1615086568';
+ $value = 'value111972721';
+ $expectedResponse = new View();
+ $expectedResponse->setName($name2);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setValue($value);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+ $request = (new GetViewRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->getView($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/GetView', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function getViewExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->viewName('[PROJECT]', '[LOCATION]', '[VIEW]');
+ $request = (new GetViewRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->getView($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function importIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/importIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new ImportIssueModelResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/importIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ImportIssueModelRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->importIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ImportIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/importIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function importIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/importIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ImportIssueModelRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->importIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/importIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function ingestConversationsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/ingestConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new IngestConversationsResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/ingestConversationsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new IngestConversationsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->ingestConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/IngestConversations', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/ingestConversationsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function ingestConversationsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/ingestConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new IngestConversationsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->ingestConversations($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/ingestConversationsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function initializeEncryptionSpecTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/initializeEncryptionSpecTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new InitializeEncryptionSpecResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/initializeEncryptionSpecTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $encryptionSpec = new EncryptionSpec();
+ $encryptionSpecKmsKey = 'encryptionSpecKmsKey627607756';
+ $encryptionSpec->setKmsKey($encryptionSpecKmsKey);
+ $request = (new InitializeEncryptionSpecRequest())
+ ->setEncryptionSpec($encryptionSpec);
+ $response = $gapicClient->initializeEncryptionSpec($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/InitializeEncryptionSpec', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getEncryptionSpec();
+ $this->assertProtobufEquals($encryptionSpec, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/initializeEncryptionSpecTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function initializeEncryptionSpecExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/initializeEncryptionSpecTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $encryptionSpec = new EncryptionSpec();
+ $encryptionSpecKmsKey = 'encryptionSpecKmsKey627607756';
+ $encryptionSpec->setKmsKey($encryptionSpecKmsKey);
+ $request = (new InitializeEncryptionSpecRequest())
+ ->setEncryptionSpec($encryptionSpec);
+ $response = $gapicClient->initializeEncryptionSpec($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/initializeEncryptionSpecTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function listAllFeedbackLabelsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $feedbackLabelsElement = new FeedbackLabel();
+ $feedbackLabels = [
+ $feedbackLabelsElement,
+ ];
+ $expectedResponse = new ListAllFeedbackLabelsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setFeedbackLabels($feedbackLabels);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListAllFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listAllFeedbackLabels($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getFeedbackLabels()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListAllFeedbackLabels', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listAllFeedbackLabelsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListAllFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listAllFeedbackLabels($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listAnalysesTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $analysesElement = new Analysis();
+ $analyses = [
+ $analysesElement,
+ ];
+ $expectedResponse = new ListAnalysesResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setAnalyses($analyses);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new ListAnalysesRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listAnalyses($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getAnalyses()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListAnalyses', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listAnalysesExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new ListAnalysesRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listAnalyses($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listAnalysisRulesTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $analysisRulesElement = new AnalysisRule();
+ $analysisRules = [
+ $analysisRulesElement,
+ ];
+ $expectedResponse = new ListAnalysisRulesResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setAnalysisRules($analysisRules);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListAnalysisRulesRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listAnalysisRules($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getAnalysisRules()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListAnalysisRules', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listAnalysisRulesExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListAnalysisRulesRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listAnalysisRules($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listConversationsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $conversationsElement = new Conversation();
+ $conversations = [
+ $conversationsElement,
+ ];
+ $expectedResponse = new ListConversationsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setConversations($conversations);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListConversationsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listConversations($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getConversations()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListConversations', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listConversationsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListConversationsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listConversations($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listFeedbackLabelsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $feedbackLabelsElement = new FeedbackLabel();
+ $feedbackLabels = [
+ $feedbackLabelsElement,
+ ];
+ $expectedResponse = new ListFeedbackLabelsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setFeedbackLabels($feedbackLabels);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new ListFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listFeedbackLabels($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getFeedbackLabels()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListFeedbackLabels', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listFeedbackLabelsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->conversationName('[PROJECT]', '[LOCATION]', '[CONVERSATION]');
+ $request = (new ListFeedbackLabelsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listFeedbackLabels($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listIssueModelsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new ListIssueModelsResponse();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListIssueModelsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listIssueModels($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListIssueModels', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listIssueModelsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListIssueModelsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listIssueModels($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listIssuesTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $expectedResponse = new ListIssuesResponse();
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new ListIssuesRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listIssues($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListIssues', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listIssuesExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new ListIssuesRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listIssues($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listPhraseMatchersTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $phraseMatchersElement = new PhraseMatcher();
+ $phraseMatchers = [
+ $phraseMatchersElement,
+ ];
+ $expectedResponse = new ListPhraseMatchersResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setPhraseMatchers($phraseMatchers);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListPhraseMatchersRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listPhraseMatchers($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getPhraseMatchers()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListPhraseMatchers', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listPhraseMatchersExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListPhraseMatchersRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listPhraseMatchers($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaQuestionsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $qaQuestionsElement = new QaQuestion();
+ $qaQuestions = [
+ $qaQuestionsElement,
+ ];
+ $expectedResponse = new ListQaQuestionsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setQaQuestions($qaQuestions);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new ListQaQuestionsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listQaQuestions($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getQaQuestions()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListQaQuestions', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaQuestionsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new ListQaQuestionsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listQaQuestions($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaScorecardRevisionsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $qaScorecardRevisionsElement = new QaScorecardRevision();
+ $qaScorecardRevisions = [
+ $qaScorecardRevisionsElement,
+ ];
+ $expectedResponse = new ListQaScorecardRevisionsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setQaScorecardRevisions($qaScorecardRevisions);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new ListQaScorecardRevisionsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listQaScorecardRevisions($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getQaScorecardRevisions()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListQaScorecardRevisions', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaScorecardRevisionsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]');
+ $request = (new ListQaScorecardRevisionsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listQaScorecardRevisions($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaScorecardsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $qaScorecardsElement = new QaScorecard();
+ $qaScorecards = [
+ $qaScorecardsElement,
+ ];
+ $expectedResponse = new ListQaScorecardsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setQaScorecards($qaScorecards);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListQaScorecardsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listQaScorecards($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getQaScorecards()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListQaScorecards', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listQaScorecardsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListQaScorecardsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listQaScorecards($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listViewsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $nextPageToken = '';
+ $viewsElement = new View();
+ $views = [
+ $viewsElement,
+ ];
+ $expectedResponse = new ListViewsResponse();
+ $expectedResponse->setNextPageToken($nextPageToken);
+ $expectedResponse->setViews($views);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListViewsRequest())
+ ->setParent($formattedParent);
+ $response = $gapicClient->listViews($request);
+ $this->assertEquals($expectedResponse, $response->getPage()->getResponseObject());
+ $resources = iterator_to_array($response->iterateAllElements());
+ $this->assertSame(1, count($resources));
+ $this->assertEquals($expectedResponse->getViews()[0], $resources[0]);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/ListViews', $actualFuncCall);
+ $actualValue = $actualRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function listViewsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $request = (new ListViewsRequest())
+ ->setParent($formattedParent);
+ try {
+ $gapicClient->listViews($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function queryMetricsTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/queryMetricsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $location2 = 'location21541837352';
+ $expectedResponse = new QueryMetricsResponse();
+ $expectedResponse->setLocation($location2);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/queryMetricsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedLocation = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $filter = 'filter-1274492040';
+ $request = (new QueryMetricsRequest())
+ ->setLocation($formattedLocation)
+ ->setFilter($filter);
+ $response = $gapicClient->queryMetrics($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/QueryMetrics', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getLocation();
+ $this->assertProtobufEquals($formattedLocation, $actualValue);
+ $actualValue = $actualApiRequestObject->getFilter();
+ $this->assertProtobufEquals($filter, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/queryMetricsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function queryMetricsExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/queryMetricsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedLocation = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $filter = 'filter-1274492040';
+ $request = (new QueryMetricsRequest())
+ ->setLocation($formattedLocation)
+ ->setFilter($filter);
+ $response = $gapicClient->queryMetrics($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/queryMetricsTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function tuneQaScorecardRevisionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/tuneQaScorecardRevisionTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new TuneQaScorecardRevisionResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/tuneQaScorecardRevisionTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $filter = 'filter-1274492040';
+ $request = (new TuneQaScorecardRevisionRequest())
+ ->setParent($formattedParent)
+ ->setFilter($filter);
+ $response = $gapicClient->tuneQaScorecardRevision($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/TuneQaScorecardRevision', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getFilter();
+ $this->assertProtobufEquals($filter, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/tuneQaScorecardRevisionTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function tuneQaScorecardRevisionExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/tuneQaScorecardRevisionTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $filter = 'filter-1274492040';
+ $request = (new TuneQaScorecardRevisionRequest())
+ ->setParent($formattedParent)
+ ->setFilter($filter);
+ $response = $gapicClient->tuneQaScorecardRevision($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/tuneQaScorecardRevisionTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function undeployIssueModelTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/undeployIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $expectedResponse = new UndeployIssueModelResponse();
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/undeployIssueModelTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new UndeployIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->undeployIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UndeployIssueModel', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/undeployIssueModelTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function undeployIssueModelExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/undeployIssueModelTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->issueModelName('[PROJECT]', '[LOCATION]', '[ISSUE_MODEL]');
+ $request = (new UndeployIssueModelRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->undeployIssueModel($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/undeployIssueModelTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function undeployQaScorecardRevisionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name2 = 'name2-1052831874';
+ $expectedResponse = new QaScorecardRevision();
+ $expectedResponse->setName($name2);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new UndeployQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ $response = $gapicClient->undeployQaScorecardRevision($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UndeployQaScorecardRevision', $actualFuncCall);
+ $actualValue = $actualRequestObject->getName();
+ $this->assertProtobufEquals($formattedName, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function undeployQaScorecardRevisionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $formattedName = $gapicClient->qaScorecardRevisionName('[PROJECT]', '[LOCATION]', '[QA_SCORECARD]', '[REVISION]');
+ $request = (new UndeployQaScorecardRevisionRequest())
+ ->setName($formattedName);
+ try {
+ $gapicClient->undeployQaScorecardRevision($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateAnalysisRuleTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $conversationFilter = 'conversationFilter1770349236';
+ $analysisPercentage = 1.60975766E8;
+ $active = true;
+ $expectedResponse = new AnalysisRule();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setConversationFilter($conversationFilter);
+ $expectedResponse->setAnalysisPercentage($analysisPercentage);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $analysisRule = new AnalysisRule();
+ $request = (new UpdateAnalysisRuleRequest())
+ ->setAnalysisRule($analysisRule);
+ $response = $gapicClient->updateAnalysisRule($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateAnalysisRule', $actualFuncCall);
+ $actualValue = $actualRequestObject->getAnalysisRule();
+ $this->assertProtobufEquals($analysisRule, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateAnalysisRuleExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $analysisRule = new AnalysisRule();
+ $request = (new UpdateAnalysisRuleRequest())
+ ->setAnalysisRule($analysisRule);
+ try {
+ $gapicClient->updateAnalysisRule($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateConversationTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $languageCode = 'languageCode-412800396';
+ $agentId = 'agentId1469158549';
+ $metadataJson = 'metadataJson-2002268168';
+ $turnCount = 428155597;
+ $obfuscatedUserId = 'obfuscatedUserId-227848300';
+ $expectedResponse = new Conversation();
+ $expectedResponse->setName($name);
+ $expectedResponse->setLanguageCode($languageCode);
+ $expectedResponse->setAgentId($agentId);
+ $expectedResponse->setMetadataJson($metadataJson);
+ $expectedResponse->setTurnCount($turnCount);
+ $expectedResponse->setObfuscatedUserId($obfuscatedUserId);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $conversation = new Conversation();
+ $request = (new UpdateConversationRequest())
+ ->setConversation($conversation);
+ $response = $gapicClient->updateConversation($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateConversation', $actualFuncCall);
+ $actualValue = $actualRequestObject->getConversation();
+ $this->assertProtobufEquals($conversation, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateConversationExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $conversation = new Conversation();
+ $request = (new UpdateConversationRequest())
+ ->setConversation($conversation);
+ try {
+ $gapicClient->updateConversation($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateFeedbackLabelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $label = 'label102727412';
+ $name = 'name3373707';
+ $labeledResource = 'labeledResource556993594';
+ $expectedResponse = new FeedbackLabel();
+ $expectedResponse->setLabel($label);
+ $expectedResponse->setName($name);
+ $expectedResponse->setLabeledResource($labeledResource);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $feedbackLabel = new FeedbackLabel();
+ $updateMask = new FieldMask();
+ $request = (new UpdateFeedbackLabelRequest())
+ ->setFeedbackLabel($feedbackLabel)
+ ->setUpdateMask($updateMask);
+ $response = $gapicClient->updateFeedbackLabel($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateFeedbackLabel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getFeedbackLabel();
+ $this->assertProtobufEquals($feedbackLabel, $actualValue);
+ $actualValue = $actualRequestObject->getUpdateMask();
+ $this->assertProtobufEquals($updateMask, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateFeedbackLabelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $feedbackLabel = new FeedbackLabel();
+ $updateMask = new FieldMask();
+ $request = (new UpdateFeedbackLabelRequest())
+ ->setFeedbackLabel($feedbackLabel)
+ ->setUpdateMask($updateMask);
+ try {
+ $gapicClient->updateFeedbackLabel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateIssueTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $displayDescription = 'displayDescription-1876039681';
+ $expectedResponse = new Issue();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setDisplayDescription($displayDescription);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $issue = new Issue();
+ $request = (new UpdateIssueRequest())
+ ->setIssue($issue);
+ $response = $gapicClient->updateIssue($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateIssue', $actualFuncCall);
+ $actualValue = $actualRequestObject->getIssue();
+ $this->assertProtobufEquals($issue, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateIssueExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $issue = new Issue();
+ $request = (new UpdateIssueRequest())
+ ->setIssue($issue);
+ try {
+ $gapicClient->updateIssue($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateIssueModelTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $issueCount = 1779144233;
+ $languageCode = 'languageCode-412800396';
+ $expectedResponse = new IssueModel();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setIssueCount($issueCount);
+ $expectedResponse->setLanguageCode($languageCode);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $issueModel = new IssueModel();
+ $request = (new UpdateIssueModelRequest())
+ ->setIssueModel($issueModel);
+ $response = $gapicClient->updateIssueModel($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateIssueModel', $actualFuncCall);
+ $actualValue = $actualRequestObject->getIssueModel();
+ $this->assertProtobufEquals($issueModel, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateIssueModelExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $issueModel = new IssueModel();
+ $request = (new UpdateIssueModelRequest())
+ ->setIssueModel($issueModel);
+ try {
+ $gapicClient->updateIssueModel($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updatePhraseMatcherTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $revisionId = 'revisionId513861631';
+ $versionTag = 'versionTag689430451';
+ $displayName = 'displayName1615086568';
+ $active = true;
+ $expectedResponse = new PhraseMatcher();
+ $expectedResponse->setName($name);
+ $expectedResponse->setRevisionId($revisionId);
+ $expectedResponse->setVersionTag($versionTag);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setActive($active);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $phraseMatcher = new PhraseMatcher();
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+ $phraseMatcher->setType($phraseMatcherType);
+ $request = (new UpdatePhraseMatcherRequest())
+ ->setPhraseMatcher($phraseMatcher);
+ $response = $gapicClient->updatePhraseMatcher($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdatePhraseMatcher', $actualFuncCall);
+ $actualValue = $actualRequestObject->getPhraseMatcher();
+ $this->assertProtobufEquals($phraseMatcher, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updatePhraseMatcherExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $phraseMatcher = new PhraseMatcher();
+ $phraseMatcherType = PhraseMatcherType::PHRASE_MATCHER_TYPE_UNSPECIFIED;
+ $phraseMatcher->setType($phraseMatcherType);
+ $request = (new UpdatePhraseMatcherRequest())
+ ->setPhraseMatcher($phraseMatcher);
+ try {
+ $gapicClient->updatePhraseMatcher($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateQaQuestionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $abbreviation = 'abbreviation-1960645810';
+ $questionBody = 'questionBody-1030867365';
+ $answerInstructions = 'answerInstructions863229062';
+ $order = 106006350;
+ $expectedResponse = new QaQuestion();
+ $expectedResponse->setName($name);
+ $expectedResponse->setAbbreviation($abbreviation);
+ $expectedResponse->setQuestionBody($questionBody);
+ $expectedResponse->setAnswerInstructions($answerInstructions);
+ $expectedResponse->setOrder($order);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $qaQuestion = new QaQuestion();
+ $updateMask = new FieldMask();
+ $request = (new UpdateQaQuestionRequest())
+ ->setQaQuestion($qaQuestion)
+ ->setUpdateMask($updateMask);
+ $response = $gapicClient->updateQaQuestion($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateQaQuestion', $actualFuncCall);
+ $actualValue = $actualRequestObject->getQaQuestion();
+ $this->assertProtobufEquals($qaQuestion, $actualValue);
+ $actualValue = $actualRequestObject->getUpdateMask();
+ $this->assertProtobufEquals($updateMask, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateQaQuestionExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $qaQuestion = new QaQuestion();
+ $updateMask = new FieldMask();
+ $request = (new UpdateQaQuestionRequest())
+ ->setQaQuestion($qaQuestion)
+ ->setUpdateMask($updateMask);
+ try {
+ $gapicClient->updateQaQuestion($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateQaScorecardTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $description = 'description-1724546052';
+ $expectedResponse = new QaScorecard();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setDescription($description);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $qaScorecard = new QaScorecard();
+ $updateMask = new FieldMask();
+ $request = (new UpdateQaScorecardRequest())
+ ->setQaScorecard($qaScorecard)
+ ->setUpdateMask($updateMask);
+ $response = $gapicClient->updateQaScorecard($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateQaScorecard', $actualFuncCall);
+ $actualValue = $actualRequestObject->getQaScorecard();
+ $this->assertProtobufEquals($qaScorecard, $actualValue);
+ $actualValue = $actualRequestObject->getUpdateMask();
+ $this->assertProtobufEquals($updateMask, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateQaScorecardExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $qaScorecard = new QaScorecard();
+ $updateMask = new FieldMask();
+ $request = (new UpdateQaScorecardRequest())
+ ->setQaScorecard($qaScorecard)
+ ->setUpdateMask($updateMask);
+ try {
+ $gapicClient->updateQaScorecard($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateSettingsTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $languageCode = 'languageCode-412800396';
+ $expectedResponse = new Settings();
+ $expectedResponse->setName($name);
+ $expectedResponse->setLanguageCode($languageCode);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $settings = new Settings();
+ $updateMask = new FieldMask();
+ $request = (new UpdateSettingsRequest())
+ ->setSettings($settings)
+ ->setUpdateMask($updateMask);
+ $response = $gapicClient->updateSettings($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateSettings', $actualFuncCall);
+ $actualValue = $actualRequestObject->getSettings();
+ $this->assertProtobufEquals($settings, $actualValue);
+ $actualValue = $actualRequestObject->getUpdateMask();
+ $this->assertProtobufEquals($updateMask, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateSettingsExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $settings = new Settings();
+ $updateMask = new FieldMask();
+ $request = (new UpdateSettingsRequest())
+ ->setSettings($settings)
+ ->setUpdateMask($updateMask);
+ try {
+ $gapicClient->updateSettings($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateViewTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ // Mock response
+ $name = 'name3373707';
+ $displayName = 'displayName1615086568';
+ $value = 'value111972721';
+ $expectedResponse = new View();
+ $expectedResponse->setName($name);
+ $expectedResponse->setDisplayName($displayName);
+ $expectedResponse->setValue($value);
+ $transport->addResponse($expectedResponse);
+ // Mock request
+ $view = new View();
+ $request = (new UpdateViewRequest())
+ ->setView($view);
+ $response = $gapicClient->updateView($request);
+ $this->assertEquals($expectedResponse, $response);
+ $actualRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($actualRequests));
+ $actualFuncCall = $actualRequests[0]->getFuncCall();
+ $actualRequestObject = $actualRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UpdateView', $actualFuncCall);
+ $actualValue = $actualRequestObject->getView();
+ $this->assertProtobufEquals($view, $actualValue);
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function updateViewExceptionTest()
+ {
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $transport->addResponse(null, $status);
+ // Mock request
+ $view = new View();
+ $request = (new UpdateViewRequest())
+ ->setView($view);
+ try {
+ $gapicClient->updateView($request);
+ // If the $gapicClient method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stub is exhausted
+ $transport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ }
+
+ /** @test */
+ public function uploadConversationTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/uploadConversationTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $name = 'name3373707';
+ $languageCode = 'languageCode-412800396';
+ $agentId = 'agentId1469158549';
+ $metadataJson = 'metadataJson-2002268168';
+ $turnCount = 428155597;
+ $obfuscatedUserId = 'obfuscatedUserId-227848300';
+ $expectedResponse = new Conversation();
+ $expectedResponse->setName($name);
+ $expectedResponse->setLanguageCode($languageCode);
+ $expectedResponse->setAgentId($agentId);
+ $expectedResponse->setMetadataJson($metadataJson);
+ $expectedResponse->setTurnCount($turnCount);
+ $expectedResponse->setObfuscatedUserId($obfuscatedUserId);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/uploadConversationTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $conversation = new Conversation();
+ $request = (new UploadConversationRequest())
+ ->setParent($formattedParent)
+ ->setConversation($conversation);
+ $response = $gapicClient->uploadConversation($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/UploadConversation', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getConversation();
+ $this->assertProtobufEquals($conversation, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/uploadConversationTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function uploadConversationExceptionTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/uploadConversationTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $status = new stdClass();
+ $status->code = Code::DATA_LOSS;
+ $status->details = 'internal error';
+ $expectedExceptionMessage = json_encode([
+ 'message' => 'internal error',
+ 'code' => Code::DATA_LOSS,
+ 'status' => 'DATA_LOSS',
+ 'details' => [],
+ ], JSON_PRETTY_PRINT);
+ $operationsTransport->addResponse(null, $status);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $conversation = new Conversation();
+ $request = (new UploadConversationRequest())
+ ->setParent($formattedParent)
+ ->setConversation($conversation);
+ $response = $gapicClient->uploadConversation($request);
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/uploadConversationTest');
+ try {
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ // If the pollUntilComplete() method call did not throw, fail the test
+ $this->fail('Expected an ApiException, but no exception was thrown.');
+ } catch (ApiException $ex) {
+ $this->assertEquals($status->code, $ex->getCode());
+ $this->assertEquals($expectedExceptionMessage, $ex->getMessage());
+ }
+ // Call popReceivedCalls to ensure the stubs are exhausted
+ $transport->popReceivedCalls();
+ $operationsTransport->popReceivedCalls();
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+
+ /** @test */
+ public function bulkAnalyzeConversationsAsyncTest()
+ {
+ $operationsTransport = $this->createTransport();
+ $operationsClient = new OperationsClient([
+ 'apiEndpoint' => '',
+ 'transport' => $operationsTransport,
+ 'credentials' => $this->createCredentials(),
+ ]);
+ $transport = $this->createTransport();
+ $gapicClient = $this->createClient([
+ 'transport' => $transport,
+ 'operationsClient' => $operationsClient,
+ ]);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ // Mock response
+ $incompleteOperation = new Operation();
+ $incompleteOperation->setName('operations/bulkAnalyzeConversationsTest');
+ $incompleteOperation->setDone(false);
+ $transport->addResponse($incompleteOperation);
+ $successfulAnalysisCount = 1153322545;
+ $failedAnalysisCount = 1044285998;
+ $expectedResponse = new BulkAnalyzeConversationsResponse();
+ $expectedResponse->setSuccessfulAnalysisCount($successfulAnalysisCount);
+ $expectedResponse->setFailedAnalysisCount($failedAnalysisCount);
+ $anyResponse = new Any();
+ $anyResponse->setValue($expectedResponse->serializeToString());
+ $completeOperation = new Operation();
+ $completeOperation->setName('operations/bulkAnalyzeConversationsTest');
+ $completeOperation->setDone(true);
+ $completeOperation->setResponse($anyResponse);
+ $operationsTransport->addResponse($completeOperation);
+ // Mock request
+ $formattedParent = $gapicClient->locationName('[PROJECT]', '[LOCATION]');
+ $filter = 'filter-1274492040';
+ $analysisPercentage = 9980822;
+ $request = (new BulkAnalyzeConversationsRequest())
+ ->setParent($formattedParent)
+ ->setFilter($filter)
+ ->setAnalysisPercentage($analysisPercentage);
+ $response = $gapicClient->bulkAnalyzeConversationsAsync($request)->wait();
+ $this->assertFalse($response->isDone());
+ $this->assertNull($response->getResult());
+ $apiRequests = $transport->popReceivedCalls();
+ $this->assertSame(1, count($apiRequests));
+ $operationsRequestsEmpty = $operationsTransport->popReceivedCalls();
+ $this->assertSame(0, count($operationsRequestsEmpty));
+ $actualApiFuncCall = $apiRequests[0]->getFuncCall();
+ $actualApiRequestObject = $apiRequests[0]->getRequestObject();
+ $this->assertSame('/google.cloud.contactcenterinsights.v1.ContactCenterInsights/BulkAnalyzeConversations', $actualApiFuncCall);
+ $actualValue = $actualApiRequestObject->getParent();
+ $this->assertProtobufEquals($formattedParent, $actualValue);
+ $actualValue = $actualApiRequestObject->getFilter();
+ $this->assertProtobufEquals($filter, $actualValue);
+ $actualValue = $actualApiRequestObject->getAnalysisPercentage();
+ $this->assertProtobufEquals($analysisPercentage, $actualValue);
+ $expectedOperationsRequestObject = new GetOperationRequest();
+ $expectedOperationsRequestObject->setName('operations/bulkAnalyzeConversationsTest');
+ $response->pollUntilComplete([
+ 'initialPollDelayMillis' => 1,
+ ]);
+ $this->assertTrue($response->isDone());
+ $this->assertEquals($expectedResponse, $response->getResult());
+ $apiRequestsEmpty = $transport->popReceivedCalls();
+ $this->assertSame(0, count($apiRequestsEmpty));
+ $operationsRequests = $operationsTransport->popReceivedCalls();
+ $this->assertSame(1, count($operationsRequests));
+ $actualOperationsFuncCall = $operationsRequests[0]->getFuncCall();
+ $actualOperationsRequestObject = $operationsRequests[0]->getRequestObject();
+ $this->assertSame('/google.longrunning.Operations/GetOperation', $actualOperationsFuncCall);
+ $this->assertEquals($expectedOperationsRequestObject, $actualOperationsRequestObject);
+ $this->assertTrue($transport->isExhausted());
+ $this->assertTrue($operationsTransport->isExhausted());
+ }
+}