В настоящее время я работаю над ботом Discord и запрашиваю статус сервера и пытаюсь установить статус бота в статус сервера (онлайн = онлайн, полный = бездействующий, оффлайн = не беспокоить ).
Я проверял множество вещей. Вызваны setStatus
методы , и я проверил это, но статус бота не обновляется. Кроме того, метод setActivity
ниже работает каждый раз. res.status
и res.playerCount
также отображают допустимые значения. Кроме того, установка состояния, например, dnd
в верхней части функции, до запроса состояния сервера работает. Это проблема с .then
?
Пожалуйста, дайте мне знать, если вам нужна дополнительная информация. Я ценю помощь!
function updatePresence() {
utils.getServerStatus(config.serverIp, config.serverPort)
.then(res => {
if(res.status == 'online') {
client.user.setStatus('online');
} else if(res.status == 'full') {
client.user.setStatus('idle');
} else {
client.user.setStatus('dnd');
}
client.user.setActivity(res.status == 'offline' ? 'server OFFLINE' : `${res.playerCount} players online`, { type: 'WATCHING' });
});
}