Add protobuf specification file for chat cleaner.
This commit is contained in:
@@ -0,0 +1,91 @@
|
|||||||
|
/*****************************************************************************
|
||||||
|
* PokerTH - The open source texas holdem engine *
|
||||||
|
* Copyright (C) 2006-2013 Felix Hammer, Florian Thauer, Lothar May *
|
||||||
|
* *
|
||||||
|
* This program is free software: you can redistribute it and/or modify *
|
||||||
|
* it under the terms of the GNU Affero General Public License as *
|
||||||
|
* published by the Free Software Foundation, either version 3 of the *
|
||||||
|
* License, or (at your option) any later version. *
|
||||||
|
* *
|
||||||
|
* This program is distributed in the hope that it will be useful, *
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
||||||
|
* GNU Affero General Public License for more details. *
|
||||||
|
* *
|
||||||
|
* You should have received a copy of the GNU Affero General Public License *
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
|
||||||
|
* *
|
||||||
|
* *
|
||||||
|
* Additional permission under GNU AGPL version 3 section 7 *
|
||||||
|
* *
|
||||||
|
* If you modify this program, or any covered work, by linking or *
|
||||||
|
* combining it with the OpenSSL project's OpenSSL library (or a *
|
||||||
|
* modified version of that library), containing parts covered by the *
|
||||||
|
* terms of the OpenSSL or SSLeay licenses, the authors of PokerTH *
|
||||||
|
* (Felix Hammer, Florian Thauer, Lothar May) grant you additional *
|
||||||
|
* permission to convey the resulting work. *
|
||||||
|
* Corresponding Source for a non-source form of such a combination *
|
||||||
|
* shall include the source code for the parts of OpenSSL used as well *
|
||||||
|
* as that of the covered work. *
|
||||||
|
*****************************************************************************/
|
||||||
|
|
||||||
|
option java_package = "de.chatcleaner.protocol";
|
||||||
|
option java_outer_classname = "ProtoBuf";
|
||||||
|
option optimize_for = LITE_RUNTIME;
|
||||||
|
|
||||||
|
message CleanerInitMessage {
|
||||||
|
required uint32 requestedVersion = 1;
|
||||||
|
required string clientSecret = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
message CleanerInitAckMessage {
|
||||||
|
required uint32 serverVersion = 1;
|
||||||
|
required string serverSecret = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
enum CleanerChatType {
|
||||||
|
cleanerChatTypeLobby = 0;
|
||||||
|
cleanerChatTypeGame = 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
message CleanerChatRequestMessage {
|
||||||
|
required uint32 requestId = 1;
|
||||||
|
required CleanerChatType cleanerChatType = 2;
|
||||||
|
optional uint32 gameId = 3 [default = 0];
|
||||||
|
required uint32 playerId = 4;
|
||||||
|
required string playerName = 5;
|
||||||
|
required string chatMessage = 6;
|
||||||
|
}
|
||||||
|
|
||||||
|
message CleanerChatReplyMessage {
|
||||||
|
required uint32 requestId = 1;
|
||||||
|
required CleanerChatType cleanerChatType = 2;
|
||||||
|
optional uint32 gameId = 3 [default = 0];
|
||||||
|
required uint32 playerId = 4;
|
||||||
|
enum CleanerActionType {
|
||||||
|
cleanerActionNone = 0;
|
||||||
|
cleanerActionWarning = 1;
|
||||||
|
cleanerActionKick = 2;
|
||||||
|
cleanerActionBan = 3;
|
||||||
|
cleanerActionMute = 4;
|
||||||
|
}
|
||||||
|
required CleanerActionType cleanerActionType = 5;
|
||||||
|
optional string cleanerText = 6 [default = ""];
|
||||||
|
}
|
||||||
|
|
||||||
|
// The main message type (it is prefixed by 4 bytes length of the message).
|
||||||
|
|
||||||
|
message ChatCleanerMessage {
|
||||||
|
enum ChatCleanerMessageType {
|
||||||
|
Type_CleanerInitMessage = 1;
|
||||||
|
Type_CleanerInitAckMessage = 2;
|
||||||
|
Type_CleanerChatRequestMessage = 3;
|
||||||
|
Type_CleanerChatReplyMessage = 4;
|
||||||
|
}
|
||||||
|
required ChatCleanerMessageType messageType = 1;
|
||||||
|
|
||||||
|
optional CleanerInitMessage cleanerInitMessage = 2;
|
||||||
|
optional CleanerInitAckMessage cleanerInitAckMessage = 3;
|
||||||
|
optional CleanerChatRequestMessage cleanerChatRequestMessage = 4;
|
||||||
|
optional CleanerChatReplyMessage cleanerChatReplyMessage = 5;
|
||||||
|
}
|
||||||
@@ -1,76 +0,0 @@
|
|||||||
/*****************************************************************************
|
|
||||||
* PokerTH - The open source texas holdem engine *
|
|
||||||
* Copyright (C) 2006-2011 Felix Hammer, Florian Thauer, Lothar May *
|
|
||||||
* *
|
|
||||||
* This program is free software: you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU Affero General Public License as *
|
|
||||||
* published by the Free Software Foundation, either version 3 of the *
|
|
||||||
* License, or (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU Affero General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU Affero General Public License *
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
CHATCLEANER-PROTOCOL DEFINITIONS
|
|
||||||
IMPLICIT TAGS
|
|
||||||
EXTENSIBILITY IMPLIED ::=
|
|
||||||
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
ChatCleanerMessage ::= CHOICE {
|
|
||||||
cleanerInitMessage CleanerInitMessage,
|
|
||||||
cleanerInitAckMessage CleanerInitAckMessage,
|
|
||||||
cleanerChatRequestMessage CleanerChatRequestMessage,
|
|
||||||
cleanerChatReplyMessage CleanerChatReplyMessage
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerInitMessage ::= [APPLICATION 0] SEQUENCE {
|
|
||||||
requestedVersion INTEGER(0..65535),
|
|
||||||
clientSecret UTF8String (SIZE(1..32))
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerInitAckMessage ::= [APPLICATION 1] SEQUENCE {
|
|
||||||
serverVersion INTEGER(0..65535),
|
|
||||||
serverSecret UTF8String (SIZE(1..32))
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerChatType ::= CHOICE {
|
|
||||||
cleanerChatTypeLobby [0] CleanerChatTypeLobby,
|
|
||||||
cleanerChatTypeGame [1] CleanerChatTypeGame
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerChatTypeLobby ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerChatTypeGame ::= SEQUENCE {
|
|
||||||
gameId INTEGER(1..4294967295)
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerChatRequestMessage ::= [APPLICATION 2] SEQUENCE {
|
|
||||||
requestId INTEGER(1..4294967295),
|
|
||||||
cleanerChatType CleanerChatType,
|
|
||||||
playerId INTEGER(1..4294967295),
|
|
||||||
playerName UTF8String (SIZE(1..32)),
|
|
||||||
chatMessage UTF8String (SIZE(1..128))
|
|
||||||
}
|
|
||||||
|
|
||||||
CleanerChatReplyMessage ::= [APPLICATION 3] SEQUENCE {
|
|
||||||
requestId INTEGER(1..4294967295),
|
|
||||||
cleanerChatType CleanerChatType,
|
|
||||||
playerId INTEGER(1..4294967295),
|
|
||||||
cleanerActionType ENUMERATED {
|
|
||||||
cleanerActionNone (0),
|
|
||||||
cleanerActionWarning (1),
|
|
||||||
cleanerActionKick (2),
|
|
||||||
cleanerActionBan (3),
|
|
||||||
cleanerActionMute (4)
|
|
||||||
},
|
|
||||||
cleanerText UTF8String (SIZE(1..128)) OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
END
|
|
||||||
@@ -1,848 +0,0 @@
|
|||||||
/*****************************************************************************
|
|
||||||
* PokerTH - The open source texas holdem engine *
|
|
||||||
* Copyright (C) 2006-2011 Felix Hammer, Florian Thauer, Lothar May *
|
|
||||||
* *
|
|
||||||
* This program is free software: you can redistribute it and/or modify *
|
|
||||||
* it under the terms of the GNU Affero General Public License as *
|
|
||||||
* published by the Free Software Foundation, either version 3 of the *
|
|
||||||
* License, or (at your option) any later version. *
|
|
||||||
* *
|
|
||||||
* This program is distributed in the hope that it will be useful, *
|
|
||||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of *
|
|
||||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
|
|
||||||
* GNU Affero General Public License for more details. *
|
|
||||||
* *
|
|
||||||
* You should have received a copy of the GNU Affero General Public License *
|
|
||||||
* along with this program. If not, see <http://www.gnu.org/licenses/>. *
|
|
||||||
*****************************************************************************/
|
|
||||||
|
|
||||||
/* This file is now deprecated! google protocol buffers are used instead.
|
|
||||||
* Please refer to pokerth.proto. */
|
|
||||||
|
|
||||||
POKERTH-PROTOCOL DEFINITIONS
|
|
||||||
IMPLICIT TAGS
|
|
||||||
EXTENSIBILITY IMPLIED ::=
|
|
||||||
|
|
||||||
BEGIN
|
|
||||||
|
|
||||||
PokerTHMessage ::= CHOICE {
|
|
||||||
announceMessage AnnounceMessage,
|
|
||||||
initMessage InitMessage,
|
|
||||||
authMessage AuthMessage,
|
|
||||||
initAckMessage InitAckMessage,
|
|
||||||
avatarRequestMessage AvatarRequestMessage,
|
|
||||||
avatarReplyMessage AvatarReplyMessage,
|
|
||||||
playerListMessage PlayerListMessage,
|
|
||||||
gameListMessage GameListMessage,
|
|
||||||
playerInfoRequestMessage PlayerInfoRequestMessage,
|
|
||||||
playerInfoReplyMessage PlayerInfoReplyMessage,
|
|
||||||
subscriptionRequestMessage SubscriptionRequestMessage,
|
|
||||||
joinGameRequestMessage JoinGameRequestMessage,
|
|
||||||
joinGameReplyMessage JoinGameReplyMessage,
|
|
||||||
gamePlayerMessage GamePlayerMessage,
|
|
||||||
kickPlayerRequestMessage KickPlayerRequestMessage,
|
|
||||||
leaveGameRequestMessage LeaveGameRequestMessage,
|
|
||||||
invitePlayerToGameMessage InvitePlayerToGameMessage,
|
|
||||||
inviteNotifyMessage InviteNotifyMessage,
|
|
||||||
rejectGameInvitationMessage RejectGameInvitationMessage,
|
|
||||||
rejectInvNotifyMessage RejectInvNotifyMessage,
|
|
||||||
startEventMessage StartEventMessage,
|
|
||||||
startEventAckMessage StartEventAckMessage,
|
|
||||||
gameStartMessage GameStartMessage,
|
|
||||||
handStartMessage HandStartMessage,
|
|
||||||
playersTurnMessage PlayersTurnMessage,
|
|
||||||
myActionRequestMessage MyActionRequestMessage,
|
|
||||||
yourActionRejectedMessage YourActionRejectedMessage,
|
|
||||||
playersActionDoneMessage PlayersActionDoneMessage,
|
|
||||||
dealFlopCardsMessage DealFlopCardsMessage,
|
|
||||||
dealTurnCardMessage DealTurnCardMessage,
|
|
||||||
dealRiverCardMessage DealRiverCardMessage,
|
|
||||||
allInShowCardsMessage AllInShowCardsMessage,
|
|
||||||
endOfHandMessage EndOfHandMessage,
|
|
||||||
showMyCardsRequestMessage ShowMyCardsRequestMessage,
|
|
||||||
afterHandShowCardsMessage AfterHandShowCardsMessage,
|
|
||||||
endOfGameMessage EndOfGameMessage,
|
|
||||||
playerIdChangedMessage PlayerIdChangedMessage,
|
|
||||||
askKickPlayerMessage AskKickPlayerMessage,
|
|
||||||
askKickDeniedMessage AskKickDeniedMessage,
|
|
||||||
startKickPetitionMessage StartKickPetitionMessage,
|
|
||||||
voteKickRequestMessage VoteKickRequestMessage,
|
|
||||||
voteKickReplyMessage VoteKickReplyMessage,
|
|
||||||
kickPetitionUpdateMessage KickPetitionUpdateMessage,
|
|
||||||
endKickPetitionMessage EndKickPetitionMessage,
|
|
||||||
statisticsMessage StatisticsMessage,
|
|
||||||
chatRequestMessage ChatRequestMessage,
|
|
||||||
chatMessage ChatMessage,
|
|
||||||
chatRejectMessage ChatRejectMessage,
|
|
||||||
dialogMessage DialogMessage,
|
|
||||||
timeoutWarningMessage TimeoutWarningMessage,
|
|
||||||
resetTimeoutMessage ResetTimeoutMessage,
|
|
||||||
reportAvatarMessage ReportAvatarMessage,
|
|
||||||
reportAvatarAckMessage ReportAvatarAckMessage,
|
|
||||||
reportGameMessage ReportGameMessage,
|
|
||||||
reportGameAckMessage ReportGameAckMessage,
|
|
||||||
errorMessage ErrorMessage
|
|
||||||
}
|
|
||||||
|
|
||||||
AnnounceMessage ::= [APPLICATION 0] SEQUENCE {
|
|
||||||
protocolVersion Version,
|
|
||||||
latestGameVersion Version,
|
|
||||||
latestBetaRevision INTEGER(0..65535),
|
|
||||||
serverType ENUMERATED {
|
|
||||||
serverTypeLAN (0),
|
|
||||||
serverTypeInternetNoAuth (1),
|
|
||||||
serverTypeInternetAuth (2)
|
|
||||||
},
|
|
||||||
numPlayersOnServer INTEGER(0..65535)
|
|
||||||
}
|
|
||||||
|
|
||||||
-- buildId contains a constant build id (specific for Windows/Linux/Mac builds)
|
|
||||||
InitMessage ::= [APPLICATION 1] SEQUENCE {
|
|
||||||
requestedVersion Version,
|
|
||||||
buildId INTEGER,
|
|
||||||
myLastSessionId Guid OPTIONAL,
|
|
||||||
authServerPassword UTF8String (SIZE(1..64)) OPTIONAL,
|
|
||||||
login CHOICE {
|
|
||||||
guestLogin [0] GuestLogin,
|
|
||||||
authenticatedLogin [1] AuthenticatedLogin,
|
|
||||||
unauthenticatedLogin [2] UnauthenticatedLogin
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Version ::= SEQUENCE {
|
|
||||||
major INTEGER(0..65535),
|
|
||||||
minor INTEGER(0..65535)
|
|
||||||
}
|
|
||||||
|
|
||||||
GuestLogin ::= SEQUENCE {
|
|
||||||
nickName UTF8String (SIZE(1..64))
|
|
||||||
}
|
|
||||||
|
|
||||||
-- Login data is according to SCRAM SHA-1
|
|
||||||
AuthenticatedLogin ::= SEQUENCE {
|
|
||||||
clientUserData OCTET STRING (SIZE(1..256)),
|
|
||||||
avatar AvatarHash OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
UnauthenticatedLogin ::= SEQUENCE {
|
|
||||||
nickName UTF8String (SIZE(1..64)),
|
|
||||||
avatar AvatarHash OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
AuthMessage ::= [APPLICATION 2] CHOICE {
|
|
||||||
authServerChallenge [0] AuthServerChallenge,
|
|
||||||
authClientResponse [1] AuthClientResponse,
|
|
||||||
authServerVerification [2] AuthServerVerification
|
|
||||||
}
|
|
||||||
|
|
||||||
AuthServerChallenge ::= SEQUENCE {
|
|
||||||
serverChallenge OCTET STRING (SIZE(1..256))
|
|
||||||
}
|
|
||||||
|
|
||||||
AuthClientResponse ::= SEQUENCE {
|
|
||||||
clientResponse OCTET STRING (SIZE(1..256))
|
|
||||||
}
|
|
||||||
|
|
||||||
AuthServerVerification ::= SEQUENCE {
|
|
||||||
serverVerification OCTET STRING (SIZE(1..256))
|
|
||||||
}
|
|
||||||
|
|
||||||
InitAckMessage ::= [APPLICATION 3] SEQUENCE {
|
|
||||||
yourSessionId Guid,
|
|
||||||
yourPlayerId NonZeroId,
|
|
||||||
yourAvatar AvatarHash OPTIONAL,
|
|
||||||
rejoinGameId NonZeroId OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarRequestMessage ::= [APPLICATION 4] SEQUENCE {
|
|
||||||
requestId NonZeroId,
|
|
||||||
avatar AvatarHash
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarReplyMessage ::= [APPLICATION 5] SEQUENCE {
|
|
||||||
requestId NonZeroId,
|
|
||||||
avatarResult CHOICE {
|
|
||||||
avatarHeader [0] AvatarHeader,
|
|
||||||
avatarData [1] AvatarData,
|
|
||||||
avatarEnd [2] AvatarEnd,
|
|
||||||
unknownAvatar [3] UnknownAvatar
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarHeader ::= SEQUENCE {
|
|
||||||
avatarType NetAvatarType,
|
|
||||||
avatarSize INTEGER(32..30720)
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarData ::= SEQUENCE {
|
|
||||||
avatarBlock OCTET STRING (SIZE(1..256))
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarEnd ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
UnknownAvatar ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
AvatarHash ::= OCTET STRING (SIZE(16)) -- md5 hash value
|
|
||||||
|
|
||||||
NetAvatarType ::= ENUMERATED {
|
|
||||||
avatarImagePng (1),
|
|
||||||
avatarImageJpg (2),
|
|
||||||
avatarImageGif (3)
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerListMessage ::= [APPLICATION 6] SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
playerListNotification ENUMERATED {
|
|
||||||
playerListNew (0),
|
|
||||||
playerListLeft (1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListMessage ::= [APPLICATION 7] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
gameListNotification CHOICE {
|
|
||||||
gameListNew [0] GameListNew,
|
|
||||||
gameListUpdate [1] GameListUpdate,
|
|
||||||
gameListPlayerJoined [2] GameListPlayerJoined,
|
|
||||||
gameListPlayerLeft [3] GameListPlayerLeft,
|
|
||||||
gameListAdminChanged [4] GameListAdminChanged
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListNew ::= SEQUENCE {
|
|
||||||
gameMode NetGameMode,
|
|
||||||
isPrivate BOOLEAN,
|
|
||||||
playerIds SEQUENCE SIZE(0..10) OF NonZeroId,
|
|
||||||
adminPlayerId NonZeroId,
|
|
||||||
gameInfo NetGameInfo
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListUpdate ::= SEQUENCE {
|
|
||||||
gameMode NetGameMode
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListPlayerJoined ::= SEQUENCE {
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListPlayerLeft ::= SEQUENCE {
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
GameListAdminChanged ::= SEQUENCE {
|
|
||||||
newAdminPlayerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
NetGameMode ::= ENUMERATED {
|
|
||||||
gameCreated (1),
|
|
||||||
gameStarted (2),
|
|
||||||
gameClosed (3)
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerInfoRequestMessage ::= [APPLICATION 8] SEQUENCE {
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerInfoReplyMessage ::= [APPLICATION 9] SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
playerInfoResult CHOICE {
|
|
||||||
playerInfoData [0] PlayerInfoData,
|
|
||||||
unknownPlayerInfo [1] UnknownPlayerInfo
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerInfoRights ::= ENUMERATED {
|
|
||||||
playerRightsGuest (1),
|
|
||||||
playerRightsNormal (2),
|
|
||||||
playerRightsAdmin (3)
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerInfoData ::= SEQUENCE {
|
|
||||||
playerName UTF8String (SIZE(1..32)),
|
|
||||||
isHuman BOOLEAN,
|
|
||||||
playerRights PlayerInfoRights,
|
|
||||||
countryCode UTF8String (SIZE(2)) OPTIONAL,
|
|
||||||
avatarData SEQUENCE {
|
|
||||||
avatarType NetAvatarType,
|
|
||||||
avatar AvatarHash
|
|
||||||
} OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
UnknownPlayerInfo ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
-- The following request will not be confirmed by the server. It is used,
|
|
||||||
-- optionally, to reduce server traffic. The server might ignore it.
|
|
||||||
SubscriptionRequestMessage ::= [APPLICATION 10] SEQUENCE {
|
|
||||||
subscriptionAction ENUMERATED {
|
|
||||||
unsubscribeGameList (1),
|
|
||||||
resubscribeGameList (2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinGameRequestMessage ::= [APPLICATION 11] SEQUENCE {
|
|
||||||
joinGameAction CHOICE {
|
|
||||||
joinExistingGame [0] JoinExistingGame,
|
|
||||||
joinNewGame [1] JoinNewGame,
|
|
||||||
rejoinExistingGame [2] RejoinExistingGame
|
|
||||||
},
|
|
||||||
autoLeave BOOLEAN
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinExistingGame ::= SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
password UTF8String (SIZE(1..64)) OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinNewGame ::= SEQUENCE {
|
|
||||||
gameInfo NetGameInfo,
|
|
||||||
password UTF8String (SIZE(1..64)) OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
RejoinExistingGame ::= SEQUENCE {
|
|
||||||
gameId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinGameReplyMessage ::= [APPLICATION 12] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
joinGameResult CHOICE {
|
|
||||||
joinGameAck [0] JoinGameAck,
|
|
||||||
joinGameFailed [1] JoinGameFailed
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinGameAck ::= SEQUENCE {
|
|
||||||
areYouGameAdmin BOOLEAN,
|
|
||||||
gameInfo NetGameInfo
|
|
||||||
}
|
|
||||||
|
|
||||||
JoinGameFailed ::= SEQUENCE {
|
|
||||||
joinGameFailureReason ENUMERATED {
|
|
||||||
invalidGame (1),
|
|
||||||
gameIsFull (2),
|
|
||||||
gameIsRunning (3),
|
|
||||||
invalidPassword (4),
|
|
||||||
notAllowedAsGuest (5),
|
|
||||||
notInvited (6),
|
|
||||||
gameNameInUse (7),
|
|
||||||
badGameName (8),
|
|
||||||
invalidSettings (9),
|
|
||||||
ipAddressBlocked (10),
|
|
||||||
rejoinFailed (11)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
NetGameInfo ::= SEQUENCE {
|
|
||||||
gameName UTF8String (SIZE(1..64)),
|
|
||||||
netGameType ENUMERATED {
|
|
||||||
normalGame (1),
|
|
||||||
registeredOnlyGame (2),
|
|
||||||
inviteOnlyGame (3),
|
|
||||||
rankingGame (4)
|
|
||||||
},
|
|
||||||
maxNumPlayers INTEGER(2..10),
|
|
||||||
raiseIntervalMode CHOICE {
|
|
||||||
raiseEveryHands [0] INTEGER(1..1000),
|
|
||||||
raiseEveryMinutes [1] INTEGER(1..1000)
|
|
||||||
},
|
|
||||||
endRaiseMode ENUMERATED {
|
|
||||||
doubleBlinds (1),
|
|
||||||
raiseByEndValue (2),
|
|
||||||
keepLastBlind (3)
|
|
||||||
},
|
|
||||||
proposedGuiSpeed INTEGER(1..11),
|
|
||||||
delayBetweenHands INTEGER(5..20), -- These are seconds
|
|
||||||
playerActionTimeout INTEGER(0..60), -- These are seconds
|
|
||||||
firstSmallBlind INTEGER(1..20000),
|
|
||||||
endRaiseSmallBlindValue InitialAmountOfMoney,
|
|
||||||
startMoney InitialNonZeroAmountOfMoney,
|
|
||||||
manualBlinds SEQUENCE SIZE(0..30) OF InitialNonZeroAmountOfMoney
|
|
||||||
}
|
|
||||||
|
|
||||||
GamePlayerMessage ::= [APPLICATION 13] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
gamePlayerNotification CHOICE {
|
|
||||||
gamePlayerJoined [0] GamePlayerJoined,
|
|
||||||
gamePlayerLeft [1] GamePlayerLeft,
|
|
||||||
gameAdminChanged [2] GameAdminChanged,
|
|
||||||
removedFromGame [3] RemovedFromGame
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
GamePlayerJoined ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
isGameAdmin BOOLEAN
|
|
||||||
}
|
|
||||||
|
|
||||||
GamePlayerLeft ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
gamePlayerLeftReason ENUMERATED {
|
|
||||||
leftOnRequest (0),
|
|
||||||
leftKicked (1),
|
|
||||||
leftError (2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
GameAdminChanged ::= SEQUENCE {
|
|
||||||
newAdminPlayerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
RemovedFromGame ::= SEQUENCE {
|
|
||||||
removedFromGameReason ENUMERATED {
|
|
||||||
removedOnRequest (0), -- No error, client wished to leave.
|
|
||||||
kickedFromGame (1),
|
|
||||||
gameIsFull (2),
|
|
||||||
gameIsRunning (3),
|
|
||||||
gameTimeout (4),
|
|
||||||
removedStartFailed (5)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
KickPlayerRequestMessage ::= [APPLICATION 14] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
LeaveGameRequestMessage ::= [APPLICATION 15] SEQUENCE {
|
|
||||||
gameId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
InvitePlayerToGameMessage ::= [APPLICATION 16] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
InviteNotifyMessage ::= [APPLICATION 17] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerIdWho NonZeroId,
|
|
||||||
playerIdByWhom NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
RejectGameInvReason ::= ENUMERATED {
|
|
||||||
no (0),
|
|
||||||
busy (1)
|
|
||||||
}
|
|
||||||
|
|
||||||
RejectGameInvitationMessage ::= [APPLICATION 18] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
myRejectReason RejectGameInvReason
|
|
||||||
}
|
|
||||||
|
|
||||||
RejectInvNotifyMessage ::= [APPLICATION 19] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId,
|
|
||||||
playerRejectReason RejectGameInvReason
|
|
||||||
}
|
|
||||||
|
|
||||||
StartEventMessage ::= [APPLICATION 20] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
startEventType CHOICE {
|
|
||||||
startEvent [0] StartEvent,
|
|
||||||
rejoinEvent [1] RejoinEvent
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
StartEvent ::= SEQUENCE {
|
|
||||||
fillWithComputerPlayers BOOLEAN
|
|
||||||
}
|
|
||||||
|
|
||||||
RejoinEvent ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
StartEventAckMessage ::= [APPLICATION 21] SEQUENCE {
|
|
||||||
gameId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
RejoinPlayerData ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
playerMoney AmountOfMoney
|
|
||||||
}
|
|
||||||
|
|
||||||
GameStartModeInitial ::= SEQUENCE {
|
|
||||||
playerSeats SEQUENCE SIZE(2..10) OF NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
GameStartModeRejoin ::= SEQUENCE {
|
|
||||||
handNum NonZeroId,
|
|
||||||
rejoinPlayerData SEQUENCE SIZE(2..10) OF RejoinPlayerData
|
|
||||||
}
|
|
||||||
|
|
||||||
GameStartMessage ::= [APPLICATION 22] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
startDealerPlayerId NonZeroId,
|
|
||||||
gameStartMode CHOICE {
|
|
||||||
gameStartModeInitial [0] GameStartModeInitial,
|
|
||||||
gameStartModeRejoin [1] GameStartModeRejoin
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
PlainCards ::= SEQUENCE {
|
|
||||||
plainCard1 Card,
|
|
||||||
plainCard2 Card
|
|
||||||
}
|
|
||||||
|
|
||||||
EncryptedCards ::= SEQUENCE {
|
|
||||||
cardData OCTET STRING (SIZE(16..64))
|
|
||||||
}
|
|
||||||
|
|
||||||
HandStartMessage ::= [APPLICATION 23] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
yourCards CHOICE {
|
|
||||||
plainCards [0] PlainCards,
|
|
||||||
encryptedCards [1] EncryptedCards
|
|
||||||
},
|
|
||||||
smallBlind INTEGER(1..100000000),
|
|
||||||
seatStates SEQUENCE SIZE(2..10) OF NetPlayerState
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayersTurnMessage ::= [APPLICATION 24] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId,
|
|
||||||
gameState NetGameState
|
|
||||||
}
|
|
||||||
|
|
||||||
MyActionRequestMessage ::= [APPLICATION 25] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
handNum NonZeroId,
|
|
||||||
gameState NetGameState,
|
|
||||||
myAction NetPlayerAction,
|
|
||||||
myRelativeBet AmountOfMoney
|
|
||||||
}
|
|
||||||
|
|
||||||
YourActionRejectedMessage ::= [APPLICATION 26] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
gameState NetGameState,
|
|
||||||
yourAction NetPlayerAction,
|
|
||||||
yourRelativeBet AmountOfMoney,
|
|
||||||
rejectionReason ENUMERATED {
|
|
||||||
rejectedInvalidGameState (1),
|
|
||||||
rejectedNotYourTurn (2),
|
|
||||||
rejectedActionNotAllowed (3)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayersActionDoneMessage ::= [APPLICATION 27] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId,
|
|
||||||
gameState NetGameState,
|
|
||||||
playerAction NetPlayerAction,
|
|
||||||
totalPlayerBet AmountOfMoney,
|
|
||||||
playerMoney AmountOfMoney,
|
|
||||||
highestSet AmountOfMoney,
|
|
||||||
minimumRaise AmountOfMoney
|
|
||||||
}
|
|
||||||
|
|
||||||
DealFlopCardsMessage ::= [APPLICATION 28] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
flopCard1 Card,
|
|
||||||
flopCard2 Card,
|
|
||||||
flopCard3 Card
|
|
||||||
}
|
|
||||||
|
|
||||||
DealTurnCardMessage ::= [APPLICATION 29] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
turnCard Card
|
|
||||||
}
|
|
||||||
|
|
||||||
DealRiverCardMessage ::= [APPLICATION 30] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
riverCard Card
|
|
||||||
}
|
|
||||||
|
|
||||||
AllInShowCardsMessage ::= [APPLICATION 31] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playersAllIn SEQUENCE SIZE(1..10) OF PlayerAllIn
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerAllIn ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
allInCard1 Card,
|
|
||||||
allInCard2 Card
|
|
||||||
}
|
|
||||||
|
|
||||||
EndOfHandMessage ::= [APPLICATION 32] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
endOfHandType CHOICE {
|
|
||||||
endOfHandShowCards [0] EndOfHandShowCards,
|
|
||||||
endOfHandHideCards [1] EndOfHandHideCards
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
EndOfHandShowCards ::= SEQUENCE {
|
|
||||||
playerResults SEQUENCE SIZE(1..10) OF PlayerResult
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerResult ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
resultCard1 Card,
|
|
||||||
resultCard2 Card,
|
|
||||||
bestHandPosition SEQUENCE SIZE(5) OF INTEGER, -- TODO size restrictions
|
|
||||||
moneyWon AmountOfMoney,
|
|
||||||
playerMoney AmountOfMoney,
|
|
||||||
cardsValue INTEGER OPTIONAL
|
|
||||||
}
|
|
||||||
|
|
||||||
EndOfHandHideCards ::= SEQUENCE {
|
|
||||||
playerId NonZeroId,
|
|
||||||
moneyWon AmountOfMoney,
|
|
||||||
playerMoney AmountOfMoney
|
|
||||||
}
|
|
||||||
|
|
||||||
ShowMyCardsRequestMessage ::= [APPLICATION 33] SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
AfterHandShowCardsMessage ::= [APPLICATION 34] SEQUENCE {
|
|
||||||
playerResult PlayerResult
|
|
||||||
}
|
|
||||||
|
|
||||||
EndOfGameMessage ::= [APPLICATION 35] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
winnerPlayerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
PlayerIdChangedMessage ::= [APPLICATION 36] SEQUENCE {
|
|
||||||
oldPlayerId NonZeroId,
|
|
||||||
newPlayerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
AskKickPlayerMessage ::= [APPLICATION 64] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
AskKickDeniedMessage ::= [APPLICATION 65] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId,
|
|
||||||
kickDeniedReason ENUMERATED {
|
|
||||||
kickDeniedInvalidGameState (0),
|
|
||||||
kickDeniedNotPossible (1),
|
|
||||||
kickDeniedTryAgainLater (2),
|
|
||||||
kickDeniedAlreadyInProgress (3),
|
|
||||||
kickDeniedInvalidPlayerId (4)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
StartKickPetitionMessage ::= [APPLICATION 66] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
petitionId NonZeroId,
|
|
||||||
proposingPlayerId NonZeroId,
|
|
||||||
kickPlayerId NonZeroId,
|
|
||||||
kickTimeoutSec INTEGER(1..120),
|
|
||||||
numVotesNeededToKick INTEGER(1..9)
|
|
||||||
}
|
|
||||||
|
|
||||||
VoteKickRequestMessage ::= [APPLICATION 67] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
petitionId NonZeroId,
|
|
||||||
voteKick BOOLEAN
|
|
||||||
}
|
|
||||||
|
|
||||||
VoteKickReplyMessage ::= [APPLICATION 68] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
petitionId NonZeroId,
|
|
||||||
voteKickReplyType CHOICE {
|
|
||||||
voteKickAck [0] VoteKickAck,
|
|
||||||
voteKickDenied [1] VoteKickDenied
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
VoteKickAck ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
VoteKickDenied ::= SEQUENCE {
|
|
||||||
voteKickDeniedReason ENUMERATED {
|
|
||||||
voteKickDeniedInvalid (0),
|
|
||||||
voteKickDeniedAlreadyVoted (1)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
KickPetitionUpdateMessage ::= [APPLICATION 69] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
petitionId NonZeroId,
|
|
||||||
numVotesAgainstKicking INTEGER(0..9),
|
|
||||||
numVotesInFavourOfKicking INTEGER(1..9),
|
|
||||||
numVotesNeededToKick INTEGER(1..9)
|
|
||||||
}
|
|
||||||
|
|
||||||
EndKickPetitionMessage ::= [APPLICATION 70] SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
petitionId NonZeroId,
|
|
||||||
numVotesAgainstKicking INTEGER(0..9),
|
|
||||||
numVotesInFavourOfKicking INTEGER(1..9),
|
|
||||||
resultPlayerKicked BOOLEAN,
|
|
||||||
petitionEndReason ENUMERATED {
|
|
||||||
petitionEndEnoughVotes (0),
|
|
||||||
petitionEndTooFewPlayers (1),
|
|
||||||
petitionEndPlayerLeft (2),
|
|
||||||
petitionEndTimeout (3)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
StatisticsMessage ::= [APPLICATION 128] SEQUENCE {
|
|
||||||
statisticsData SEQUENCE SIZE(1..32) OF StatisticsData
|
|
||||||
}
|
|
||||||
|
|
||||||
StatisticsData ::= SEQUENCE {
|
|
||||||
statisticsType ENUMERATED {
|
|
||||||
statNumberOfPlayers (1)
|
|
||||||
},
|
|
||||||
statisticsValue INTEGER
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatRequestMessage ::= [APPLICATION 129] SEQUENCE {
|
|
||||||
chatRequestType CHOICE {
|
|
||||||
chatRequestTypeLobby [0] ChatRequestTypeLobby,
|
|
||||||
chatRequestTypeGame [1] ChatRequestTypeGame,
|
|
||||||
chatRequestTypePrivate [2] ChatRequestTypePrivate
|
|
||||||
},
|
|
||||||
chatText UTF8String (SIZE(1..128))
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatRequestTypeLobby ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatRequestTypeGame ::= SEQUENCE {
|
|
||||||
gameId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatRequestTypePrivate ::= SEQUENCE {
|
|
||||||
targetPlayerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatMessage ::= [APPLICATION 130] SEQUENCE {
|
|
||||||
chatType CHOICE {
|
|
||||||
chatTypeLobby [0] ChatTypeLobby,
|
|
||||||
chatTypeGame [1] ChatTypeGame,
|
|
||||||
chatTypeBot [2] ChatTypeBot,
|
|
||||||
chatTypeBroadcast [3] ChatTypeBroadcast,
|
|
||||||
chatTypePrivate [4] ChatTypePrivate
|
|
||||||
},
|
|
||||||
chatText UTF8String (SIZE(1..128))
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatTypeLobby ::= SEQUENCE {
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatTypeGame ::= SEQUENCE {
|
|
||||||
gameId NonZeroId,
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatTypeBroadcast ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatTypeBot ::= SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatTypePrivate ::= SEQUENCE {
|
|
||||||
playerId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ChatRejectMessage ::= [APPLICATION 131] SEQUENCE {
|
|
||||||
chatText UTF8String (SIZE(1..128))
|
|
||||||
}
|
|
||||||
|
|
||||||
DialogMessage ::= [APPLICATION 132] SEQUENCE {
|
|
||||||
notificationText UTF8String (SIZE(1..128))
|
|
||||||
}
|
|
||||||
|
|
||||||
TimeoutWarningMessage ::= [APPLICATION 133] SEQUENCE {
|
|
||||||
timeoutReason ENUMERATED {
|
|
||||||
timeoutNoDataReceived (0),
|
|
||||||
timeoutInactiveGame (1),
|
|
||||||
timeoutKickAfterAutofold (2)
|
|
||||||
},
|
|
||||||
remainingSeconds INTEGER
|
|
||||||
}
|
|
||||||
|
|
||||||
ResetTimeoutMessage ::= [APPLICATION 134] SEQUENCE {
|
|
||||||
}
|
|
||||||
|
|
||||||
ReportAvatarMessage ::= [APPLICATION 135] SEQUENCE {
|
|
||||||
reportedPlayerId NonZeroId,
|
|
||||||
reportedAvatar AvatarHash
|
|
||||||
}
|
|
||||||
|
|
||||||
ReportAvatarAckMessage ::= [APPLICATION 136] SEQUENCE {
|
|
||||||
reportedPlayerId NonZeroId,
|
|
||||||
reportAvatarResult ENUMERATED {
|
|
||||||
avatarReportAccepted (0),
|
|
||||||
avatarReportDuplicate (1),
|
|
||||||
avatarReportInvalid (2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ReportGameMessage ::= [APPLICATION 137] SEQUENCE {
|
|
||||||
reportedGameId NonZeroId
|
|
||||||
}
|
|
||||||
|
|
||||||
ReportGameAckMessage ::= [APPLICATION 138] SEQUENCE {
|
|
||||||
reportedGameId NonZeroId,
|
|
||||||
reportGameResult ENUMERATED {
|
|
||||||
gameReportAccepted (0),
|
|
||||||
gameReportDuplicate (1),
|
|
||||||
gameReportInvalid (2)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ErrorMessage ::= [APPLICATION 255] SEQUENCE {
|
|
||||||
errorReason ENUMERATED {
|
|
||||||
errorReserved (0),
|
|
||||||
errorInitVersionNotSupported (1),
|
|
||||||
errorInitServerFull (2),
|
|
||||||
errorInitAuthFailure (3),
|
|
||||||
errorInitPlayerNameInUse (4),
|
|
||||||
errorInitInvalidPlayerName (5),
|
|
||||||
errorInitServerMaintenance (6),
|
|
||||||
errorInitBlocked (7),
|
|
||||||
errorAvatarTooLarge (8),
|
|
||||||
errorInvalidPacket (256),
|
|
||||||
errorInvalidState (257),
|
|
||||||
errorKickedFromServer (258),
|
|
||||||
errorBannedFromServer (259),
|
|
||||||
errorBlockedByServer (260),
|
|
||||||
errorSessionTimeout (261)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
NetGameState ::= ENUMERATED {
|
|
||||||
statePreflop (0),
|
|
||||||
stateFlop (1),
|
|
||||||
stateTurn (2),
|
|
||||||
stateRiver (3),
|
|
||||||
statePreflopSmallBlind (4),
|
|
||||||
statePreflopBigBlind (5)
|
|
||||||
}
|
|
||||||
|
|
||||||
NetPlayerAction ::= ENUMERATED {
|
|
||||||
actionNone (0),
|
|
||||||
actionFold (1),
|
|
||||||
actionCheck (2),
|
|
||||||
actionCall (3),
|
|
||||||
actionBet (4),
|
|
||||||
actionRaise (5),
|
|
||||||
actionAllIn (6)
|
|
||||||
}
|
|
||||||
|
|
||||||
NetPlayerState ::= ENUMERATED {
|
|
||||||
playerStateNormal (0),
|
|
||||||
playerStateSessionInactive (1),
|
|
||||||
playerStateNoMoney (2)
|
|
||||||
}
|
|
||||||
|
|
||||||
NonZeroId ::= INTEGER(1..4294967295)
|
|
||||||
|
|
||||||
Id ::= INTEGER(0..4294967295)
|
|
||||||
|
|
||||||
Guid ::= OCTET STRING (SIZE(16))
|
|
||||||
|
|
||||||
Card ::= INTEGER(0..51)
|
|
||||||
|
|
||||||
AmountOfMoney ::= INTEGER(0..10000000)
|
|
||||||
InitialAmountOfMoney ::= INTEGER(0..1000000)
|
|
||||||
InitialNonZeroAmountOfMoney ::= INTEGER(1..1000000)
|
|
||||||
|
|
||||||
END
|
|
||||||
Reference in New Issue
Block a user