The script checks the stream for the presence of cheating viewers with https://check-bots.ru/ service.
// ==UserScript==
// @name NakrutkaDetector3000
// @namespace http://tampermonkey.net/
// @version 0.1
// @description The script checks the stream for the presence of cheating viewers with https://check-bots.ru/ service.
// @author erxson
// @license MIT
// @match https://www.twitch.tv/*
// @icon https://www.google.com/s2/favicons?sz=64&domain=twitch.tv
// @run-at document-idle
// ==/UserScript==
function waitForElement(selector, callback) {
const element = document.querySelector(selector);
if (element) {
callback(element);
} else {
const observer = new MutationObserver((mutationsList, observer) => {
const element = document.querySelector(selector);
if (element) {
callback(element);
observer.disconnect();
}
});
observer.observe(document.body, { childList: true, subtree: true });
}
}
function rapapa() {
waitForElement('h1.CoreText-sc-1txzju1-0', (element) => {
const streamer = element.textContent;
fetch(`https://checkbotsruserver.tk/?tw=${streamer}`)
.then(response => response.json())
.then(data => {
const decision = data.decision;
const chatters = data.chatters;
const online = data.online;
const text = `${decision ? "bad bro" : "real bro"} | ${chatters}/${online}`;
waitForElement('#chat-room-header-label', (e) => {
e.textContent = text;
})
})
.catch(error => {
console.error("ощибка:", error);
});
});
}
setInterval(rapapa, 30000);
rapapa();