syntax = "proto3"; package fincleartech.ibroker; option java_package = "io.fincleartech.protobuf.ibroker.subscribe"; option java_multiple_files = true; import "google/protobuf/wrappers.proto"; import "google/rpc/status.proto"; import "fincleartech/ibroker/settlement.proto"; // Marks a message as acknowledged. An acknowledged message is no longer delivered to a subscriber. message IBrokerAcknowledge { // Message identifier as specified in a received IBrokerMessage. string message_id = 1; } message IBrokerMessage { // Message identifier. string message_id = 1; // Message type. oneof message_type { InvalidRequestNotification invalid_request_notification = 2; DemandTransferStatusAdvice demand_transfer_status_advice = 3; DemandTransferConfirmation demand_transfer_confirmation = 4; TransferConfirmation transfer_confirmation = 5; ConversionConfirmation conversion_confirmation = 6; TransferConversionAcknowledgement transfer_conversion_acknowledgement = 7; TransferConversionRejected transfer_conversion_rejected = 8; TransferConversionRequestCancelled transfer_conversion_request_cancelled = 9; } } service IBrokerSubscribeService { // Asynchronous persistent subscription to IBroker notifications. rpc Subscribe (stream IBrokerAcknowledge) returns (stream IBrokerMessage); }