public void PlayGame(string group, string correlationId)
        {
            var teamsInGroup = _teamsRepository.FetchTeamsByGroup(group).Where(x => x.Games < 3).ToList();
            var gamesInGroup = _teamsRepository.FetchGamesByGroup(group).ToList();

            if (teamsInGroup.Count == 0)
            {
                return;
            }

            var index = _rnd.Next(teamsInGroup.Count);

            var team1Goals = _rnd.Next(MaxGoalsInGame);
            var team2Goals = _rnd.Next(MaxGoalsInGame);

            var team1Name = teamsInGroup[index].Name;

            teamsInGroup.RemoveAt(index);
            var team2Name = DrawOpponent(team1Name, teamsInGroup, gamesInGroup);

            var team1Players = _teamsRepository.FetchPlayers(team1Name.Replace(" ", "")).ToList();
            var team2Players = _teamsRepository.FetchPlayers(team2Name.Replace(" ", "")).ToList();

            var team1Scorers = DrawScorers(team1Players, team1Goals).ToList();
            var team2Scorers = DrawScorers(team2Players, team2Goals).ToList();

            _telemetryService.Log($"New result generated {team1Name}:{team2Name} {team1Goals}:{team2Goals}", correlationId);

            var gameMessageModel = new GameMessageModel
            {
                Group         = group,
                Team1Name     = team1Name,
                Team2Name     = team2Name,
                DateOfGame    = DateTime.Now,
                Team1Goals    = team1Goals,
                Team2Goals    = team2Goals,
                Team1Scorers  = team1Scorers,
                Team2Scorers  = team2Scorers,
                CorrelationId = correlationId
            };

            _topicService.SendMessage(gameMessageModel);
        }