Как мне получить информацию об игроке. Находится ли он в матче или нет. Если да, то как получить текущую информацию о матче? (Желательно без задержки в 120 секунд). У меня есть account_id (этот тот код по которому обычно приглашают в группы, если не могут добавить в друзья) Можно ли пример на NodeJS?
delovar, для получения информации о том, находится ли игрок в матче, и получения текущей информации о матче, можно использовать OpenDota API. Для начала, необходимо получить match_id текущего матча игрока по его account_id. Для этого можно использовать следующий запрос к API: ://api.opendota.com/api/players/{account_id}/recentMatches HTTPS ://api.opendota.com/api/players/{account_id}/recentMatches В ответ на этот запрос вы получите список последних матчей игрока, в котором будет содержаться match_id последнего матча. Например: [ { "match_id": 1234567890, "player_slot": 0, ... }, { "match_id": 2345678901, "player_slot": 128, ... }, ... ] Код [ { "match_id": 1234567890, "player_slot": 0, ... }, { "match_id": 2345678901, "player_slot": 128, ... }, ... ] Затем, для получения текущей информации о матче, можно использовать следующий запрос к API: ://api.opendota.com/api/matches/{match_id} HTTPS ://api.opendota.com/api/matches/{match_id} В ответ на этот запрос вы получите информацию о матче, в котором участвует игрок. Например: { "match_id": 1234567890, "radiant_win": true, "duration": 3600, "game_mode": 2, "lobby_type": 7, "start_time": 1681310000, "players": [ { "account_id": 6772870, "player_slot": 0, ... }, { "account_id": 1234567, "player_slot": 128, ... }, ... ], ... } Код { "match_id": 1234567890, "radiant_win": true, "duration": 3600, "game_mode": 2, "lobby_type": 7, "start_time": 1681310000, "players": [ { "account_id": 6772870, "player_slot": 0, ... }, { "account_id": 1234567, "player_slot": 128, ... }, ... ], ... } Обратите внимание, что API может иметь задержку в несколько секунд, поэтому информация может быть несколько устаревшей. Однако, эта задержка обычно не превышает нескольких секунд.