github.com/asynkron/protoactor-go@v0.0.0-20240308120642-ef91a6abee75/remote/remote.proto (about)

     1  syntax = "proto3";
     2  package remote;
     3  option go_package = "/github.com/asynkron/protoactor-go/remote";
     4  import "actor.proto";
     5  
     6  
     7  message RemoteMessage {
     8    oneof message_type {
     9      MessageBatch message_batch = 1;
    10      ConnectRequest connect_request = 2;
    11      ConnectResponse connect_response = 3;
    12      DisconnectRequest disconnect_request = 4;
    13    }
    14  }
    15  
    16  message MessageBatch {
    17    repeated string type_names = 1;
    18    repeated actor.PID targets = 2;
    19    repeated MessageEnvelope envelopes = 3;
    20    repeated actor.PID senders = 4;
    21  }
    22  
    23  message MessageEnvelope {
    24    int32 type_id = 1;
    25    bytes message_data = 2;
    26    int32 target = 3;
    27    int32 sender = 4;
    28    int32 serializer_id = 5;
    29    MessageHeader message_header = 6;
    30    uint32 target_request_id = 7;
    31    uint32 sender_request_id = 8;
    32  }
    33  
    34  message MessageHeader {
    35    map<string, string> header_data = 1;
    36  }
    37  
    38  message ActorPidRequest {
    39    string name = 1;
    40    string kind = 2;
    41  }
    42  
    43  message ActorPidResponse {
    44    actor.PID pid = 1;
    45    int32 status_code = 2;
    46  }
    47  
    48  message ConnectRequest {
    49    oneof connection_type {
    50      ClientConnection client_connection = 1;
    51      ServerConnection server_connection = 2;
    52    }
    53  }
    54  
    55  message DisconnectRequest {
    56  
    57  }
    58  
    59  message ClientConnection {
    60    string SystemId = 1;
    61  }
    62  
    63  message ServerConnection {
    64    string SystemId = 1;
    65    string Address = 2;
    66  }
    67  
    68  message ConnectResponse {
    69    string member_id = 2;
    70    bool blocked = 3;
    71  }
    72  
    73  service Remoting {
    74    rpc Receive (stream RemoteMessage) returns (stream RemoteMessage) {}
    75    rpc ListProcesses(ListProcessesRequest) returns (ListProcessesResponse) {}
    76    rpc GetProcessDiagnostics(GetProcessDiagnosticsRequest) returns (GetProcessDiagnosticsResponse) {}
    77  }
    78  
    79  message ListProcessesRequest {
    80    string pattern = 1;
    81    ListProcessesMatchType type = 2;
    82  }
    83  
    84  enum ListProcessesMatchType {
    85    MatchPartOfString = 0;
    86    MatchExactString = 1;
    87    MatchRegex = 2;
    88  }
    89  
    90  message ListProcessesResponse {
    91    repeated actor.PID pids = 1;
    92  }
    93  
    94  message GetProcessDiagnosticsRequest {
    95    actor.PID pid = 1;
    96  }
    97  
    98  message GetProcessDiagnosticsResponse {
    99    string diagnostics_string= 1;
   100  }