package pbnetwork; message Connected { required string user = 1; required string name = 2; } message Disconnected { required string user = 1; required string name = 2; required int32 error = 3; optional string message = 4; } message Login { required string user = 1; required string legacyName = 2; required string password = 3; } message Logout { required string user = 1; required string legacyName = 2; } message Buddy { required string userName = 1; required string buddyName = 2; required string alias = 3; required string groups = 4; required int32 status = 5; optional string statusMessage = 6; optional string iconHash = 7; } message Conversation { required string userName = 1; required string buddyName = 2; } message ConversationMessage { required string userName = 1; required string buddyName = 2; required string message = 3; } message WrapperMessage { enum Type { TYPE_CONNECTED = 1; TYPE_DISCONNECTED = 2; TYPE_LOGIN = 3; TYPE_LOGOUT = 4; TYPE_BUDDY_CHANGED = 6; TYPE_BUDDY_REMOVED = 7; TYPE_CONV_CREATED = 8; TYPE_CONV_WRITE = 9; TYPE_CONV_REMOVED = 10; TYPE_PING = 11; TYPE_PONG = 12; } required Type type = 1; optional bytes payload = 2; } ;