Zoom automatically raise hand

By detecting how many others are raising their hand, if exceed the threshold you set, then the program will automatically raise your hands.

Terá de instalar uma extensão como Tampermonkey, Greasemonkey ou Violentmonkey para instalar este script.

You will need to install an extension such as Tampermonkey or Violentmonkey to install this script.

Terá de instalar uma extensão como Tampermonkey ou Violentmonkey para instalar este script.

Terá de instalar uma extensão como Tampermonkey ou Userscripts para instalar este script.

Terá de instalar uma extensão como Tampermonkey para instalar este script.

Terá de instalar uma extensão de gestão de scripts de utilizador para instalar este script.

(Já tenho um gestor de scripts de utilizador, deixe-me instalá-lo!)

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão como Stylus para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

Terá de instalar uma extensão de gestão de estilos de utilizador para instalar este estilo.

(Já tenho um gestor de estilos de utilizador, deixe-me instalá-lo!)

// ==UserScript==
// @name         Zoom automatically raise hand
// @name:zh-TW   Zoom自動舉手
// @namespace    http://tampermonkey.net/
// @version      0.4
// @description  By detecting how many others are raising their hand, if exceed the threshold you set, then the program will automatically raise your hands.
// @description:zh-TW 檢測有多少人舉手,如果超過閾值,程序將自動舉手
// @author       You
// @match        *://zoom.us/wc/*
// @grant        none
// ==/UserScript==

(function() {
    'use strict';

    var bar = document.getElementsByClassName("footer__inner")[0];
    var tray = document.createElement("div");
    tray.innerHTML = '<span>Raise hand if </span> <input id="hands" style="width: 30px; background-color: black;border: solid 1px white;"></input> hands are raising <button id="handBtn" style="background-color: black; border: solid 1px white;">Set</button> <button id="stopBtn" style="background-color: black; border: solid 1px white;">Stop</button><br><span id="pluginText">The plugin will only work when opening the participant list.</span>';
    tray.setAttribute ('id', 'mask');
    tray.style.position = "absolute";
    tray.style.color = "white";
    tray.style.backgroundColor = "rgba(0,0,0,0)";
    tray.style.left = "250px";
    tray.style.top = "5px";
    tray.style.zIndex = "999999";
    bar.insertBefore(tray, bar.childNodes[1]);
    var interval2;
    var hands;
    var text23 = document.getElementById("pluginText");

    function startHang(){
        clearInterval("interval2");
        interval2 = setInterval(function(){
            var array = document.getElementsByClassName("participants-icon__participants-raisehand");
            if(typeof(document.getElementsByClassName("nonverbal-icon raisehand-icon")[0]) == "undefined"){
                text23.innerHTML = "Please open the participant list in order to run the code.";
                text23.style.color = "red";
            }else{
                text23.innerHTML = "Plugin is running.";
                text23.style.color = "white";
            }
            var handStatus = document.getElementsByClassName("nonverbal-icon raisehand-icon")[0].className;

            if((hands <= array.length && handStatus.indexOf("selected") == -1)||(hands > array.length && handStatus.indexOf("selected") != -1)){
                document.getElementsByClassName("button-without-style")[0].click();
            }
        }, 2000);
    }

    var handBtn = document.getElementById("handBtn");
    handBtn.onclick = function(){
        hands = Number(document.getElementById("hands").value);
        startHang();
        if(typeof(document.getElementsByClassName("nonverbal-icon raisehand-icon")[0]) == "undefined"){
                text23.innerHTML = "Please open the participant list in order to run the code.";
                text23.style.color = "red";
            }else{
                text23.innerHTML = "Plugin is running.";
                text23.style.color = "white";
            }
    }

    var stopBtn = document.getElementById("stopBtn");
    stopBtn.onclick = function(){
        clearInterval(interval2);
        text23.innerHTML = "Plugin is stoped.";
    }

    // Your code here...
})();