Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // settings
- var active = true;
- var min = 0;
- var max = 100000;
- var channel = "";
- // cookies
- var oauth = getCookie("auth-token");
- var name = getCookie("name");
- var login = getCookie("login");
- var captures = [];
- var socket = undefined;
- ConnectSocket();
- function ConnectSocket() {
- socket = new WebSocket("wss://irc-ws.chat.twitch.tv/");
- socket.onopen = function (e) {
- socket.send("CAP REQ :twitch.tv/tags twitch.tv/commands");
- socket.send("PASS oauth:" + oauth);
- socket.send("NICK " + name);
- socket.send("USER " + login + " 8 * :" + login);
- socket.send("JOIN #" + channel);
- }
- socket.onmessage = function (event) {
- var msg = event.data;
- if (msg.indexOf("PING :tmi.twitch.tv") != -1) {
- socket.send("PONG");
- return;
- }
- if (msg.indexOf("@badge-info=") == -1)
- return;
- /* if(!active)
- return;*/
- var regex = /:(.*)\!.*@.*\.tmi\.twitch\.tv PRIVMSG #([^:]*):(.*)/;
- var matches = regex.exec(msg);
- if (matches == null || matches == undefined || matches.length < 4)
- return;
- var num = parseInt(matches[3]);
- if (Number.isNaN(num))
- return;
- captures.push(num);
- }
- socket.onclose = function (e) {
- console.log("closed connection!");
- setTimeout(function () {
- ConnectSocket();
- }, 2000);
- }
- }
- setInterval(function() {
- if(!active || socket.readyState != socket.OPEN)
- return;
- var num = getRandomNumber();
- captures.push(num);
- socket.send("PRIVMSG #" + channel + " :" + num);
- console.log("Typing number: " + num);
- }, 1000);
- setInterval(function () {
- socket.send("PING");
- }, 30000);
- function reset() {
- captures = [];
- }
- function totalCaptures() {
- console.log("Total Captures: " + captures.length);
- }
- function getRandomNumber() {
- var num = Math.floor(Math.random() * (max - min)) + min;
- while(captures.includes(num))
- num = Math.floor(Math.random() * (max - min)) + min;
- return num;
- }
- function getCookie(name) {
- var value = "; " + document.cookie;
- var parts = value.split("; " + name + "=");
- if (parts.length == 2) return parts.pop().split(";").shift();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement