# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: google/cloud/dialogflow/cx/v3beta1/experiment.proto

require 'google/api/annotations_pb'
require 'google/api/client_pb'
require 'google/api/field_behavior_pb'
require 'google/api/resource_pb'
require 'google/protobuf/duration_pb'
require 'google/protobuf/empty_pb'
require 'google/protobuf/field_mask_pb'
require 'google/protobuf/timestamp_pb'
require 'google/protobuf'

Google::Protobuf::DescriptorPool.generated_pool.build do
  add_file("google/cloud/dialogflow/cx/v3beta1/experiment.proto", :syntax => :proto3) do
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment" do
      optional :name, :string, 1
      optional :display_name, :string, 2
      optional :description, :string, 3
      optional :state, :enum, 4, "google.cloud.dialogflow.cx.v3beta1.Experiment.State"
      optional :definition, :message, 5, "google.cloud.dialogflow.cx.v3beta1.Experiment.Definition"
      optional :rollout_config, :message, 14, "google.cloud.dialogflow.cx.v3beta1.RolloutConfig"
      optional :rollout_state, :message, 15, "google.cloud.dialogflow.cx.v3beta1.RolloutState"
      optional :rollout_failure_reason, :string, 16
      optional :result, :message, 6, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result"
      optional :create_time, :message, 7, "google.protobuf.Timestamp"
      optional :start_time, :message, 8, "google.protobuf.Timestamp"
      optional :end_time, :message, 9, "google.protobuf.Timestamp"
      optional :last_update_time, :message, 10, "google.protobuf.Timestamp"
      optional :experiment_length, :message, 11, "google.protobuf.Duration"
      repeated :variants_history, :message, 12, "google.cloud.dialogflow.cx.v3beta1.VariantsHistory"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment.Definition" do
      optional :condition, :string, 1
      oneof :variants do
        optional :version_variants, :message, 2, "google.cloud.dialogflow.cx.v3beta1.VersionVariants"
      end
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment.Result" do
      repeated :version_metrics, :message, 1, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.VersionMetrics"
      optional :last_update_time, :message, 2, "google.protobuf.Timestamp"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.ConfidenceInterval" do
      optional :confidence_level, :double, 1
      optional :ratio, :double, 2
      optional :lower_bound, :double, 3
      optional :upper_bound, :double, 4
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.Metric" do
      optional :type, :enum, 1, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.MetricType"
      optional :count_type, :enum, 5, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.CountType"
      optional :confidence_interval, :message, 3, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.ConfidenceInterval"
      oneof :value do
        optional :ratio, :double, 2
        optional :count, :double, 4
      end
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.VersionMetrics" do
      optional :version, :string, 1
      repeated :metrics, :message, 2, "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.Metric"
      optional :session_count, :int32, 3
    end
    add_enum "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.MetricType" do
      value :METRIC_UNSPECIFIED, 0
      value :CONTAINED_SESSION_NO_CALLBACK_RATE, 1
      value :LIVE_AGENT_HANDOFF_RATE, 2
      value :CALLBACK_SESSION_RATE, 3
      value :ABANDONED_SESSION_RATE, 4
      value :SESSION_END_RATE, 5
    end
    add_enum "google.cloud.dialogflow.cx.v3beta1.Experiment.Result.CountType" do
      value :COUNT_TYPE_UNSPECIFIED, 0
      value :TOTAL_NO_MATCH_COUNT, 1
      value :TOTAL_TURN_COUNT, 2
      value :AVERAGE_TURN_COUNT, 3
    end
    add_enum "google.cloud.dialogflow.cx.v3beta1.Experiment.State" do
      value :STATE_UNSPECIFIED, 0
      value :DRAFT, 1
      value :RUNNING, 2
      value :DONE, 3
      value :ROLLOUT_FAILED, 4
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.VersionVariants" do
      repeated :variants, :message, 1, "google.cloud.dialogflow.cx.v3beta1.VersionVariants.Variant"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.VersionVariants.Variant" do
      optional :version, :string, 1
      optional :traffic_allocation, :float, 2
      optional :is_control_group, :bool, 3
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.RolloutConfig" do
      repeated :rollout_steps, :message, 1, "google.cloud.dialogflow.cx.v3beta1.RolloutConfig.RolloutStep"
      optional :rollout_condition, :string, 2
      optional :failure_condition, :string, 3
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.RolloutConfig.RolloutStep" do
      optional :display_name, :string, 1
      optional :traffic_percent, :int32, 2
      optional :min_duration, :message, 3, "google.protobuf.Duration"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.RolloutState" do
      optional :step, :string, 1
      optional :step_index, :int32, 3
      optional :start_time, :message, 2, "google.protobuf.Timestamp"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.VariantsHistory" do
      optional :update_time, :message, 2, "google.protobuf.Timestamp"
      oneof :variants do
        optional :version_variants, :message, 1, "google.cloud.dialogflow.cx.v3beta1.VersionVariants"
      end
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.ListExperimentsRequest" do
      optional :parent, :string, 1
      optional :page_size, :int32, 2
      optional :page_token, :string, 3
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.ListExperimentsResponse" do
      repeated :experiments, :message, 1, "google.cloud.dialogflow.cx.v3beta1.Experiment"
      optional :next_page_token, :string, 2
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.GetExperimentRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.CreateExperimentRequest" do
      optional :parent, :string, 1
      optional :experiment, :message, 2, "google.cloud.dialogflow.cx.v3beta1.Experiment"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.UpdateExperimentRequest" do
      optional :experiment, :message, 1, "google.cloud.dialogflow.cx.v3beta1.Experiment"
      optional :update_mask, :message, 2, "google.protobuf.FieldMask"
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.DeleteExperimentRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.StartExperimentRequest" do
      optional :name, :string, 1
    end
    add_message "google.cloud.dialogflow.cx.v3beta1.StopExperimentRequest" do
      optional :name, :string, 1
    end
  end
end

module Google
  module Cloud
    module Dialogflow
      module CX
        module V3beta1
          Experiment = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment").msgclass
          Experiment::Definition = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Definition").msgclass
          Experiment::Result = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result").msgclass
          Experiment::Result::ConfidenceInterval = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result.ConfidenceInterval").msgclass
          Experiment::Result::Metric = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result.Metric").msgclass
          Experiment::Result::VersionMetrics = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result.VersionMetrics").msgclass
          Experiment::Result::MetricType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result.MetricType").enummodule
          Experiment::Result::CountType = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.Result.CountType").enummodule
          Experiment::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.Experiment.State").enummodule
          VersionVariants = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.VersionVariants").msgclass
          VersionVariants::Variant = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.VersionVariants.Variant").msgclass
          RolloutConfig = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.RolloutConfig").msgclass
          RolloutConfig::RolloutStep = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.RolloutConfig.RolloutStep").msgclass
          RolloutState = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.RolloutState").msgclass
          VariantsHistory = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.VariantsHistory").msgclass
          ListExperimentsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.ListExperimentsRequest").msgclass
          ListExperimentsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.ListExperimentsResponse").msgclass
          GetExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.GetExperimentRequest").msgclass
          CreateExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.CreateExperimentRequest").msgclass
          UpdateExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.UpdateExperimentRequest").msgclass
          DeleteExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.DeleteExperimentRequest").msgclass
          StartExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.StartExperimentRequest").msgclass
          StopExperimentRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.dialogflow.cx.v3beta1.StopExperimentRequest").msgclass
        end
      end
    end
  end
end
