package schemapack;
syntax = "proto3";


enum REQUEST_TYPE {


    READY                           = 200;
    ASYNC_START_GAME                = 201;
    WORLD_UPDATE                    = 202;
    ASYNC_ACTION_REQ                = 203;
    ASYNC_END_GAME                  = 204;
    PING                            = 501;
    PONG                            = 502;

    FORFIET_REQUEST				    = 107;
    FORFIET_RESPONSE			    = 108; 

}

message REQUEST_HEADER {

	string version                  = 1;
	string correlationId            = 2;
    string timestamp                = 3;
    DEVICE_DETAILS details          = 4;
}
enum DEVICE_TYPE
{
    ANDROID                         = 0;
    IOS                             = 1;
    WINDOWS                         = 2;
}
message RESPONSE_HEADER {

    string version                  = 1;
    string correlationId            = 2;    
    string timestamp                = 3;
    bool error                      = 4;
    Error errorCode                 = 5;
    WALLET_CONTENT wallet           = 6;
}
message Error
{
    string errorCode                = 1;
    string message                  = 2;
}
message DEVICE_DETAILS
{
    DEVICE_TYPE deviceType          = 1;
    string deviceID                 = 2;
    string deviceModel              = 3;
    string deviceVersion            = 4;
    string appVersion               = 5;
}
message WALLET_CONTENT
{
    int32 playMoney                 = 1;
    int32 withdrawMoney             = 2;
}
message RequestResponse {


	REQUEST_HEADER reqHeader        = 1;
    RESPONSE_HEADER resHeader       = 2;
    REQUEST_TYPE requestType        = 3;
	bytes eventSpecificData         = 4;
}