# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: keyapis/device/v1/keyapis_device_cms_phone_v1.proto for package 'Keyapis.Device.V1'
# Original file comments:
#
# Сервис реализует функционал управления трубками аналоговых трубок

require 'grpc'
require 'keyapis/device/v1/keyapis_device_cms_phone_v1_pb'

module Keyapis
  module Device
    module V1
      module CmsPhoneService
        # Сервис трубок аналоговых трубок
        class Service

          include ::GRPC::GenericService

          self.marshal_class_method = :encode
          self.unmarshal_class_method = :decode
          self.service_name = 'keyapis.device.v1.CmsPhoneService'

          # Метод получения аналоговой трубки по идентификатору.
          # Метод доступен для: admin, service, owner, employee, bti, ltp_first
          rpc :GetCmsPhone, ::Keyapis::Device::V1::GetCmsPhoneRequest, ::Keyapis::Device::V1::GetCmsPhoneResponse
          # Метод получения списка аналоговых трубок.
          # Метод доступен для: admin, service, owner, employee, bti, ltp_first
          rpc :GetCmsPhoneList, ::Keyapis::Device::V1::GetCmsPhoneListRequest, stream(::Keyapis::Device::V1::GetCmsPhoneListResponse)
          # Метод получения количества аналоговых трубок.
          # Метод доступен для: admin, service, owner, employee, bti, ltp_first
          rpc :GetCmsPhoneCount, ::Keyapis::Device::V1::GetCmsPhoneCountRequest, ::Keyapis::Device::V1::GetCmsPhoneCountResponse
          # Метод удаления аналоговой трубки.
          # Метод доступен для: admin, service
          rpc :DeleteCmsPhone, ::Keyapis::Device::V1::DeleteCmsPhoneRequest, ::Keyapis::Device::V1::DeleteCmsPhoneResponse
          # Метод удаления аналоговой трубки по идентификатору устройсва.
          # Метод доступен для: admin, service
          rpc :DeleteCmsPhoneDeviceId, ::Keyapis::Device::V1::DeleteCmsPhoneDeviceIdRequest, ::Keyapis::Device::V1::DeleteCmsPhoneDeviceIdResponse
          # Метод удаления аналоговой трубки по идентификатору ОРПОН.
          # Метод доступен для: admin, service
          rpc :DeleteCmsPhoneOrponId, ::Keyapis::Device::V1::DeleteCmsPhoneOrponIdRequest, ::Keyapis::Device::V1::DeleteCmsPhoneOrponIdResponse
          # Метод удаления аналоговой трубки по идентификатору ОРПОН и номеру квартиры.
          # Метод доступен для: admin, service
          rpc :DeleteCmsPhoneOrponIdRoomNumber, ::Keyapis::Device::V1::DeleteCmsPhoneOrponIdRoomNumberRequest, ::Keyapis::Device::V1::DeleteCmsPhoneOrponIdRoomNumberResponse
          # Метод для принудительного обновления статуса аналоговых трубок.
          # Метод доступен для: admin, service, bti, ltp_first
          rpc :PostCmsPhoneRefresh, ::Keyapis::Device::V1::PostCmsPhoneRefreshRequest, ::Keyapis::Device::V1::PostCmsPhoneRefreshResponse
          # Метод удаления аналоговой трубки по идентификатору ОРПОН, номеру квартиры и идентификатору устройства.
          # Метод доступен для: admin, service
          rpc :DeleteCmsPhoneOrponRoomNumberDeviceId, ::Keyapis::Device::V1::DeleteCmsPhoneOrponRoomNumberDeviceIdRequest, ::Keyapis::Device::V1::DeleteCmsPhoneOrponRoomNumberDeviceIdResponse
        end

        Stub = Service.rpc_stub_class
      end
    end
  end
end
