# Generated by the protocol buffer compiler.  DO NOT EDIT!
# Source: keyapis/exchange/v1/keyapis_exchange_message_v1.proto for package 'Keyapis.Exchange.V1'
# Original file comments:
#
# Сервис реализует функционал передачи сообщений.
# Это альтернативный путь передачии команд в реальном времени в exchange минуя NATS

require 'grpc'
require 'keyapis/exchange/v1/keyapis_exchange_message_v1_pb'

module Keyapis
  module Exchange
    module V1
      module MessageService
        # Сервис передачи сообщений
        class Service

          include ::GRPC::GenericService

          self.marshal_class_method = :encode
          self.unmarshal_class_method = :decode
          self.service_name = 'keyapis.exchange.v1.MessageService'

          # Полнодуплексный метод отправки задач и получения их результатов выполнения.
          # Метод доступен для: admin, service, application(exchange:edit)
          rpc :PostMessageFullDuplex, stream(::Keyapis::Exchange::V1::PostMessageFullDuplexRequest), stream(::Keyapis::Exchange::V1::PostMessageFullDuplexResponse)
          # Метод отправки задач и получения их результатов выполнения.
          # Метод доступен для: admin, service, application(exchange:edit)
          rpc :PostMessagePushCall, ::Keyapis::Exchange::V1::PostMessagePushCallRequest, ::Keyapis::Exchange::V1::PostMessagePushCallResponse
          # Метод отправки задач и получения их результатов выполнения для мобильного приложения.
          # Метод доступен для: admin, service
          rpc :PostMessageMobilePushCall, ::Keyapis::Exchange::V1::PostMessageMobilePushCallRequest, ::Keyapis::Exchange::V1::PostMessageMobilePushCallResponse
        end

        Stub = Service.rpc_stub_class
      end
    end
  end
end
