syntax = "proto2";

import "steammessages_base.proto";
import "steammessages_unified_base.steamclient.proto";

option cc_generic_services = true;

message CMsgTest_MessageToClient_Request {
  optional string some_text = 1;
}

message CMsgTest_MessageToClient_Response {
  optional string some_text = 1;
}

message CMsgTest_NotifyClient_Notification {
  optional string some_text = 1;
}

message CMsgTest_MessageToServer_Request {
  optional string some_text = 1;
}

message CMsgTest_MessageToServer_Response {
  optional string some_text = 1;
}

message CMsgTest_NotifyServer_Notification {
  optional string some_text = 1;
}

message CMsgTest_TestClientCall_Request {
  optional int32 param = 1;
}

message CMsgTest_TestClientCall_Response {
  optional int32 result = 1;
}

message CMsgTest_NoBody_Request {
}

message CMsgTest_CallClient_Response {
  optional int32 testvalue = 1;
}

service TestSteamClient {
  rpc MessageToClient (.CMsgTest_MessageToClient_Request) returns (.CMsgTest_MessageToClient_Response);
  rpc NotifyClient (.CMsgTest_NotifyClient_Notification) returns (.NoResponse);
}

service TestServerFromClient {
  rpc MessageToServer (.CMsgTest_MessageToServer_Request) returns (.CMsgTest_MessageToServer_Response);
  rpc NotifyServer (.CMsgTest_NotifyServer_Notification) returns (.NoResponse);
  rpc ClientCallAuthed1 (.CMsgTest_TestClientCall_Request) returns (.CMsgTest_TestClientCall_Response);
  rpc ClientCallAuthed2 (.CMsgTest_TestClientCall_Request) returns (.CMsgTest_TestClientCall_Response) {
  }
  rpc ClientCallAuthed3 (.CMsgTest_TestClientCall_Request) returns (.CMsgTest_TestClientCall_Response) {
  }
  rpc ClientCallAuthed4 (.CMsgTest_TestClientCall_Request) returns (.CMsgTest_TestClientCall_Response) {
  }
}

service TestExternalPrivilege {
  rpc CallClient (.CMsgTest_NoBody_Request) returns (.CMsgTest_CallClient_Response) {
  }
}

