Cuando inicio la consola de bot, digo:
Online with undefined/5y cuando pasan 10 segundos da este error:
indefinido: 1 [promesa de objeto] ^ SyntaxError: token inesperado o en JSON en la posición 1
Mi código:
let jogadores client.on("ready", async () => { async function players_online() { const response = fetch(`http://ip:port/dynamic.json`); const data = JSON.parse(response); jogadores = data.clients; } async function autoconnect() { if (jogadores === -1) { console.log('Offline'); } else { console.log('Online with ' + jogadores + '/5') } } autoconnect() setInterval(() => { client.user.setStatus('dnd'); client.user.setActivity(`Online with ${jogadores} players.`, { type: 'PLAYING' }) players_online() }, 10000) })Tienes bastantes problemas con tu código. Los enumeraré a continuación:
await para obtener la respuesta real.JSON.parse() en una respuesta, sino response.json() para obtener el cuerpo JSON.== que ===setInterval() .He solucionado todos estos problemas en el siguiente código.
let jogadores; client.on('ready', async () => { async function players_online() { const response = await fetch(`http://ip:port/dynamic.json`); const data = await response.json(); jogadores = data.clients; } function autoconnect() { if (jogadores == -1) { console.log('Offline'); } else { console.log(`Online with ${jogadores}/5`); } } autoconnect(); players_online(); setInterval(() => { client.user.setStatus('dnd'); client.user.setActivity(`Online with ${jogadores} players.`, { type: 'PLAYING' }); }, 10000); });