# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: google/cloud/contactcenterinsights/v1/contact_center_insights.proto for package 'Google.Cloud.ContactCenterInsights.V1'
# Original file comments:
# Copyright 2021 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

require 'grpc'
require 'google/cloud/contactcenterinsights/v1/contact_center_insights_pb'

module Google
  module Cloud
    module ContactCenterInsights
      module V1
        module ContactCenterInsights
          # An API that lets users analyze and explore their business conversation data.
          class Service

            include ::GRPC::GenericService

            self.marshal_class_method = :encode
            self.unmarshal_class_method = :decode
            self.service_name = 'google.cloud.contactcenterinsights.v1.ContactCenterInsights'

            # Creates a conversation.
            rpc :CreateConversation, ::Google::Cloud::ContactCenterInsights::V1::CreateConversationRequest, ::Google::Cloud::ContactCenterInsights::V1::Conversation
            # Updates a conversation.
            rpc :UpdateConversation, ::Google::Cloud::ContactCenterInsights::V1::UpdateConversationRequest, ::Google::Cloud::ContactCenterInsights::V1::Conversation
            # Gets a conversation.
            rpc :GetConversation, ::Google::Cloud::ContactCenterInsights::V1::GetConversationRequest, ::Google::Cloud::ContactCenterInsights::V1::Conversation
            # Lists conversations.
            rpc :ListConversations, ::Google::Cloud::ContactCenterInsights::V1::ListConversationsRequest, ::Google::Cloud::ContactCenterInsights::V1::ListConversationsResponse
            # Deletes a conversation.
            rpc :DeleteConversation, ::Google::Cloud::ContactCenterInsights::V1::DeleteConversationRequest, ::Google::Protobuf::Empty
            # Creates an analysis. The long running operation is done when the analysis
            # has completed.
            rpc :CreateAnalysis, ::Google::Cloud::ContactCenterInsights::V1::CreateAnalysisRequest, ::Google::Longrunning::Operation
            # Gets an analysis.
            rpc :GetAnalysis, ::Google::Cloud::ContactCenterInsights::V1::GetAnalysisRequest, ::Google::Cloud::ContactCenterInsights::V1::Analysis
            # Lists analyses.
            rpc :ListAnalyses, ::Google::Cloud::ContactCenterInsights::V1::ListAnalysesRequest, ::Google::Cloud::ContactCenterInsights::V1::ListAnalysesResponse
            # Deletes an analysis.
            rpc :DeleteAnalysis, ::Google::Cloud::ContactCenterInsights::V1::DeleteAnalysisRequest, ::Google::Protobuf::Empty
            # Export insights data to a destination defined in the request body.
            rpc :ExportInsightsData, ::Google::Cloud::ContactCenterInsights::V1::ExportInsightsDataRequest, ::Google::Longrunning::Operation
            # Creates an issue model.
            rpc :CreateIssueModel, ::Google::Cloud::ContactCenterInsights::V1::CreateIssueModelRequest, ::Google::Longrunning::Operation
            # Updates an issue model.
            rpc :UpdateIssueModel, ::Google::Cloud::ContactCenterInsights::V1::UpdateIssueModelRequest, ::Google::Cloud::ContactCenterInsights::V1::IssueModel
            # Gets an issue model.
            rpc :GetIssueModel, ::Google::Cloud::ContactCenterInsights::V1::GetIssueModelRequest, ::Google::Cloud::ContactCenterInsights::V1::IssueModel
            # Lists issue models.
            rpc :ListIssueModels, ::Google::Cloud::ContactCenterInsights::V1::ListIssueModelsRequest, ::Google::Cloud::ContactCenterInsights::V1::ListIssueModelsResponse
            # Deletes an issue model.
            rpc :DeleteIssueModel, ::Google::Cloud::ContactCenterInsights::V1::DeleteIssueModelRequest, ::Google::Longrunning::Operation
            # 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.
            rpc :DeployIssueModel, ::Google::Cloud::ContactCenterInsights::V1::DeployIssueModelRequest, ::Google::Longrunning::Operation
            # Undeploys an issue model.
            # An issue model can not be used in analysis after it has been undeployed.
            rpc :UndeployIssueModel, ::Google::Cloud::ContactCenterInsights::V1::UndeployIssueModelRequest, ::Google::Longrunning::Operation
            # Gets an issue.
            rpc :GetIssue, ::Google::Cloud::ContactCenterInsights::V1::GetIssueRequest, ::Google::Cloud::ContactCenterInsights::V1::Issue
            # Lists issues.
            rpc :ListIssues, ::Google::Cloud::ContactCenterInsights::V1::ListIssuesRequest, ::Google::Cloud::ContactCenterInsights::V1::ListIssuesResponse
            # Updates an issue.
            rpc :UpdateIssue, ::Google::Cloud::ContactCenterInsights::V1::UpdateIssueRequest, ::Google::Cloud::ContactCenterInsights::V1::Issue
            # Gets an issue model's statistics.
            rpc :CalculateIssueModelStats, ::Google::Cloud::ContactCenterInsights::V1::CalculateIssueModelStatsRequest, ::Google::Cloud::ContactCenterInsights::V1::CalculateIssueModelStatsResponse
            # Creates a phrase matcher.
            rpc :CreatePhraseMatcher, ::Google::Cloud::ContactCenterInsights::V1::CreatePhraseMatcherRequest, ::Google::Cloud::ContactCenterInsights::V1::PhraseMatcher
            # Gets a phrase matcher.
            rpc :GetPhraseMatcher, ::Google::Cloud::ContactCenterInsights::V1::GetPhraseMatcherRequest, ::Google::Cloud::ContactCenterInsights::V1::PhraseMatcher
            # Lists phrase matchers.
            rpc :ListPhraseMatchers, ::Google::Cloud::ContactCenterInsights::V1::ListPhraseMatchersRequest, ::Google::Cloud::ContactCenterInsights::V1::ListPhraseMatchersResponse
            # Deletes a phrase matcher.
            rpc :DeletePhraseMatcher, ::Google::Cloud::ContactCenterInsights::V1::DeletePhraseMatcherRequest, ::Google::Protobuf::Empty
            # Updates a phrase matcher.
            rpc :UpdatePhraseMatcher, ::Google::Cloud::ContactCenterInsights::V1::UpdatePhraseMatcherRequest, ::Google::Cloud::ContactCenterInsights::V1::PhraseMatcher
            # Gets conversation statistics.
            rpc :CalculateStats, ::Google::Cloud::ContactCenterInsights::V1::CalculateStatsRequest, ::Google::Cloud::ContactCenterInsights::V1::CalculateStatsResponse
            # Gets project-level settings.
            rpc :GetSettings, ::Google::Cloud::ContactCenterInsights::V1::GetSettingsRequest, ::Google::Cloud::ContactCenterInsights::V1::Settings
            # Updates project-level settings.
            rpc :UpdateSettings, ::Google::Cloud::ContactCenterInsights::V1::UpdateSettingsRequest, ::Google::Cloud::ContactCenterInsights::V1::Settings
            # Creates a view.
            rpc :CreateView, ::Google::Cloud::ContactCenterInsights::V1::CreateViewRequest, ::Google::Cloud::ContactCenterInsights::V1::View
            # Gets a view.
            rpc :GetView, ::Google::Cloud::ContactCenterInsights::V1::GetViewRequest, ::Google::Cloud::ContactCenterInsights::V1::View
            # Lists views.
            rpc :ListViews, ::Google::Cloud::ContactCenterInsights::V1::ListViewsRequest, ::Google::Cloud::ContactCenterInsights::V1::ListViewsResponse
            # Updates a view.
            rpc :UpdateView, ::Google::Cloud::ContactCenterInsights::V1::UpdateViewRequest, ::Google::Cloud::ContactCenterInsights::V1::View
            # Deletes a view.
            rpc :DeleteView, ::Google::Cloud::ContactCenterInsights::V1::DeleteViewRequest, ::Google::Protobuf::Empty
          end

          Stub = Service.rpc_stub_class
        end
      end
    end
  end
end