Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- syntax = "proto3";
- option java_multiple_files = true;
- option java_package = "com.panbet.eventprovider.proto";
- option java_outer_classname = "eventprovider";
- package panbet.eventprovider;
- enum MarketStates
- {
- ACTIVE = 0;
- SUSPEND = 1;
- HIDDEN = 2;
- ARCHIVE = 3;
- OFF = 4;
- }
- message Pair
- {
- Property first = 1;
- Property second = 2;
- }
- message Property
- {
- oneof value
- {
- bool boolValue = 1;
- int32 intValue = 2;
- int64 longValue = 3;
- float floatValue = 4;
- string stringValue = 5;
- Pair pairValue = 6;
- }
- }
- enum SelectionFlags
- {
- DISPLAYED = 0;
- NONRUNNER = 1;
- }
- enum CoefficientTypes
- {
- CP = 0;
- AP = 1;
- EP = 2;
- SP = 3;
- }
- enum ResultTypes
- {
- UNDEFINED = 0;
- LOSE = 1;
- WIN = 2;
- VOID = 3;
- }
- enum GpTypes
- {
- NO_GP = 0;
- GP_FOR_EP = 1;
- GP_FOR_BP = 2;
- GP_FOR_BOTH = 3;
- }
- message Selection
- {
- int32 id = 1;
- string uid = 2;
- string name = 3;
- double price = 4;
- CoefficientTypes coeffType = 5;
- int32 raceOrder = 6;
- ResultTypes result = 7;
- repeated SelectionFlags flags = 8;
- GpTypes gpType = 9;
- map<string, Property> properties = 10;
- float coeffProbability = 11;
- float coeffMargin = 12;
- string mathId = 13;
- }
- message EachWay
- {
- int32 numerator = 1;
- int32 denominator = 2;
- int32 placeCount = 3;
- bool isFixed = 4;
- }
- message Market
- {
- int32 id = 1;
- string code = 2;
- string model = 3;
- string name = 4;
- MarketStates state = 5;
- double profitability = 6;
- string profitabilityType = 7;
- bool isLocked = 8;
- bool isAutoRecalcBlocked = 9;
- int32 autoRecalcGroupCode = 10;
- string sortStyle = 11;
- int32 order = 12;
- EachWay eachWay = 13;
- string blurb = 14;
- bool isCashOutSuspended = 15;
- bool isResult = 16;
- bool isChecked = 17;
- string variety = 18;
- bool isActual = 19;
- map<string, Selection> selections = 20;
- map<string, Property> values = 21;
- // map<string, Property> properties = 22;
- float voidProbability = 23;
- float requestMargin = 24;
- int32 marginStepNumber = 25;
- }
- message Number
- {
- oneof value
- {
- int32 intValue = 1;
- float floatValue = 2;
- }
- }
- message InningScore
- {
- Number home = 1;
- Number away = 2;
- bool complete = 3;
- }
- message Points
- {
- map<int32, string> points = 1;
- }
- message GoalSummary
- {
- string competitor = 1;
- string competitorDescr = 2;
- int32 minute = 3;
- string scorerMemberCode = 4;
- string scorerMemberName = 5;
- bool isOwn = 6;
- string scoringMethod = 7;
- bool isSubstituteToScore = 8;
- bool isSimultaneouslyToScore = 9;
- bool isScored = 10;
- repeated string noGoalScorer = 11;
- }
- message Interval
- {
- Number from = 1;
- Number to = 2;
- }
- message StringList
- {
- repeated string items = 1;
- }
- message PointNumber
- {
- // Номер сета
- int32 set = 1;
- // Номер гейма
- int32 game = 2;
- // Номер розыгрыша
- int32 point = 3;
- }
- message InningScore3Team
- {
- // результат первой команды
- int32 scoreFirst = 1;
- // результат второй команды
- int32 scoreSecond = 2;
- // результат третьей команды
- int32 scoreThird = 3;
- // флаг, указывающий на завершённость части матча
- bool isCompleted = 4;
- }
- message SeparatedInningScore
- {
- Number home = 1;
- Number away = 2;
- bool completeHome = 3;
- bool completeAway = 4;
- }
- message Result
- {
- // Код результата
- string code = 1;
- // Короткое название класса сооветствующего результата из ejbPanbet
- string className = 2;
- // Победитель
- string competitor = 3;
- // Флаг - да/нет, чет/нечет и т.д.
- string flag = 4;
- bool isFlag = 5;
- // Тотал
- Number total = 6;
- // Тотал подтвержден
- bool isComplete = 7;
- // Текущее время матча - минуты
- int32 timeMinutes = 8;
- // Текущее время матча - секунды
- int32 timeSeconds = 9;
- // Текущее время матча - тип перерыва
- string timeBreakType = 10;
- // Текущее время матча - добавленное время
- int32 timeAdditionalSeconds = 11;
- // Количество частей матча для счетов
- int32 scoreInnings = 12;
- // Счета
- map<int32, InningScore> scores = 13;
- // Первый наберет N очков
- map<int32, Points> toScorePoints = 14;
- // 1-е очко в игре
- string selectionType = 15;
- // Идентификатор исхода с победителем из маркета MTCH_R
- string winUid = 16;
- // Результат с победителем отменен
- bool isVoid = 17;
- // Ничья (Tie) для вида спорта "Крикет новый"
- bool isTie = 18;
- // Методы квалификации
- map<string, string> qualificationMethods = 19;
- // Информация о забитых голах
- map<int32, GoalSummary> goals = 20;
- // Интервалы минут матча с известным счетом
- repeated Interval trustedIntervals = 21;
- // Списки "не участвовали" подтверждены
- bool isCompletedNoGoalScorers = 22;
- // Коды участников, которые не участвовали в матче
- map<string, StringList> noGoalScorers = 23;
- // Подающие игроки в геймах и/или розыгрышах для тенниса
- map<string, string> gameServes = 24;
- // Типы геймов и/или розыгрышей для тенниса - текущий/слудующий
- map<string, string> gameTypes = 25;
- // Тоталы для частей матча;
- // в некоторых видах спорта используются признаки подтверждения, например: тоталы промахов для огневых рубежей в
- // биатлоне
- map<int32, Pair> inningTotals = 26;
- // Победители в N легах, фреймах и т.д., с признаками отмены
- map<int32, Pair> inningCompetitors = 27;
- // Типы для частей матча - например, "1-ый цветной шар" во фрейме для снукера
- map<int32, Pair> inningSelectionTypes = 28;
- // Результаты для исходов; ключ - SelectionTO.getUID(), значение - UNDEFINED, LOSE, WIN, VOID
- map<string, string> selectionResults = 29;
- // Тоталы для игроков; ключ - EventMemberTO#getCode()
- map<string, Number> memberTotals = 30;
- // Результаты для пенальти/буллита - забит/не забит
- map<int32, string> inningFlags = 31;
- repeated int32 ballNumbers = 32;
- repeated int32 additionalBallNumbers = 33;
- // Результаты для участников в аутрайтах; ключ - EventMemberTO#getCode()
- map<string, string> outrightResults = 34;
- // Места для участников в маркете "Outright Place"
- map<string, int32> places = 35;
- // Какие-то результаты для участников в маркете "Outright Choice"
- map<string, bool> deadHeat = 36;
- // Тип результата из enum - например, результат для бокса или ММА
- string resultType = 37;
- // Счета комманд для событий с трёмя участниками
- map<int32, InningScore3Team> scores3Teams = 38;
- // Счёт команды гостей (используется для крикета)
- string awayScoreDescr = 39;
- // Счёт команды хозяев (используется для крикета)
- string homeScoreDescr = 40;
- // Время гола
- int32 timeOfGoal = 41;
- // Время голов команды гостей
- repeated int32 timesOfGoalAway = 42;
- // Время голов команды хозяев
- repeated int32 timesOfGoalHome = 43;
- // Результаты маркетов для тотализатора
- map<string, Number> multiTotals = 44;
- // Результаты для исхода с победителем по нескольким участникам
- map<string, string> choiceMembers = 45;
- // Счета с раздельным подтверждением
- map<int32, SeparatedInningScore> separetedScores = 46;
- }
- message LimitsSetting
- {
- oneof value
- {
- int32 limitsGroupId = 1;
- double limitValue = 2;
- }
- }
- message EventLimits
- {
- LimitsSetting limitsGroupId = 1;
- LimitsSetting start = 2;
- LimitsSetting current = 3;
- LimitsSetting finish = 4;
- }
- message UnixTime
- {
- int64 time = 1;
- }
- message Event
- {
- int32 id = 1;
- string name = 2;
- string epattern = 3;
- int32 version = 4;
- repeated Market markets = 5;
- repeated Result results = 6;
- string profitabilityGroup = 7;
- map<string, Property> properties = 8;
- EventLimits eventLimits = 9;
- UnixTime displayTime = 10;
- // Строковое представление состояния события: NEW, ACTIVE, SUSPEND, OFF, ARCHIVE
- string state = 11;
- }
- message Subscription
- {
- int32 eventId = 1;
- bool isActiveAndSuspendedOnly = 2;
- }
- message EventRequest
- {
- int32 seanceId = 1;
- message Subscribe
- {
- repeated Subscription subscription = 2;
- }
- message Unsubscribe
- {
- repeated int32 eventId = 3;
- }
- oneof msg
- {
- Subscribe subscribe = 2;
- Unsubscribe unsubscribe = 3;
- }
- repeated Event events = 4;
- bool isOnlyChangedMarkets = 5;
- int32 userId = 6;
- }
- message EventResponse
- {
- int32 seqId = 1;
- repeated Event events = 2;
- map<int32, string> errors = 3;
- int32 seanceId = 4;
- }
- service EventProviderService
- {
- rpc GetEvent (EventRequest.Subscribe) returns (EventResponse);
- rpc StreamEvent (stream EventRequest) returns (stream EventResponse)
- {
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement