Discord prevent idle

Prevents Discord web app from going idle

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください。
// ==UserScript==
// @name         Discord prevent idle
// @description  Prevents Discord web app from going idle
// @license      MIT
// @namespace    rustyx.org
// @version      2025-05-08
// @author       rustyx
// @match        https://discord.com/*
// @grant        none
// ==/UserScript==

setInterval(function() {
    var e = document.createEvent('FocusEvent');
    e.initEvent('focus', true, true);
    document.body.dispatchEvent(e);
}, 30000);
setTimeout(function() {
    var token = (webpackChunkdiscord_app.push([[''],{},e=>{m=[];for(let c in e.c)m.push(e.c[c])}]),m).find(m=>m?.exports?.default?.getToken!==void 0).exports.default.getToken();
    fetch('https://discord.com/api/v9/users/@me/settings-proto/1', {
        'method': 'PATCH',
        'headers': {
            'Content-Type': 'application/json',
            'Authorization': token
        },
        'body': '{"settings":"WgoKBgoEaWRsZRoA"}' // set status idle
    });
}, 9500);
setTimeout(function() {
    var token = (webpackChunkdiscord_app.push([[''],{},e=>{m=[];for(let c in e.c)m.push(e.c[c])}]),m).find(m=>m?.exports?.default?.getToken!==void 0).exports.default.getToken();
    fetch('https://discord.com/api/v9/users/@me/settings-proto/1', {
        'method': 'PATCH',
        'headers': {
            'Content-Type': 'application/json',
            'Authorization': token
        },
        'body': '{"settings":"WgwKCAoGb25saW5lGgA="}' // set status online
    });
}, 10000);
console.error('Discord prevent idle timer armed'); // note: discord disables console.log