# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: keyapis/telemetry_status/v1/keyapis_telemetry_status_device_v1.proto for package 'Keyapis.TelemetryStatus.V1'
# Original file comments:
#
# Сервис реализует функционал опроса статусов сетевой доступности устройств

require 'grpc'
require 'keyapis/telemetry_status/v1/keyapis_telemetry_status_device_v1_pb'

module Keyapis
  module TelemetryStatus
    module V1
      module DeviceStatusService
        # Сервис опроса статусов сетевой доступности устройств.
        # Авторизация:
        #   - Authorization: Bearer token.
        #   - X-Api-Key: apiKey
        class Service

          include ::GRPC::GenericService

          self.marshal_class_method = :encode
          self.unmarshal_class_method = :decode
          self.service_name = 'keyapis.telemetry_status.v1.DeviceStatusService'

          # Метод получения списка статусов доступности устройств.
          # Метод доступен для: Token: service, admin. Без учета разрешений.
          # Метод доступен для: ApiKey: Разрешения: telemetry_status:device_status:list
          rpc :GetDeviceStatusList, ::Keyapis::TelemetryStatus::V1::GetDeviceStatusListRequest, stream(::Keyapis::TelemetryStatus::V1::GetDeviceStatusListResponse)
          # Метод получения количества статусов доступности устройств.
          # Метод доступен для: Token: service, admin. Без учета разрешений.
          # Метод доступен для: ApiKey: Разрешения: telemetry_status:device_status:list
          rpc :GetDeviceStatusCount, ::Keyapis::TelemetryStatus::V1::GetDeviceStatusCountRequest, ::Keyapis::TelemetryStatus::V1::GetDeviceStatusCountResponse
        end

        Stub = Service.rpc_stub_class
      end
    end
  end
end
