Zefame Free Tiktok Service (Views Only)(Automated)

  • Thread starter Thread starter mtplay
  • Start date Start date

mtplay

Leecher
Hello all,

Since na ban GIST Account ni kepsuninin gumawa ako ng sarili kung version. Btw, Salamat kepsuninin sa idea, napaka helpful ng thread mo.

Instructions:
1. Open Chrome Browser (try niyo sa ibang browser dito ko palang nasubukan)
2. Visit this link You do not have permission to view the full content of this post. Log in or register now.
3. Open Console (F12 or Ctrl + Shift + I).
4. Paste the code in console and hit Enter. Tapos close niyo na
5. Balik kayo sa Zefame ipaste niyo don and Tiktok link, pwidi niyo nayan pabayaan. (gaya ng pagpabaya sayo AHAHAH bading.)

Sana gumana sa inyo.

Code:
(() => {
    const VERIFY_TIME = 60 * 1000;        // 1 minute verification
    const SUCCESS_WAIT = 30 * 60 * 1000;  // 30 minutes after success

    let running = false;
    let currentLink = "";
    const sleep = ms => new Promise(r => setTimeout(r, ms));
    const panel = document.createElement("div");

    panel.style = `
        position:fixed;
        bottom:20px;
        right:20px;
        width:360px;
        background:white;
        border:2px solid #222;
        border-radius:12px;
        padding:15px;
        z-index:999999;
        font-family:Arial;
        color:black;
        box-shadow:0 5px 20px #0005;
    `;
    panel.innerHTML = `
    <b style="font-size:18px">
    TikTok Auto Submit
    </b>
    <br><br>
    <input id="linkInput"
    placeholder="Paste TikTok link here"
    style="
    width:100%;
    padding:10px;
    box-sizing:border-box;
    ">
    <br><br>
    <button id="startBtn">
    START
    </button>
    <button id="stopBtn">
    STOP
    </button>
    <hr>
    <div>
    Status:
    <span id="status">
    Idle
    </span>
    </div>
    <div>
    Countdown:
    <span id="timer">
    --
    </span>
    </div>
    `;

    document.body.appendChild(panel);
    const linkInput = panel.querySelector("#linkInput");
    const startBtn = panel.querySelector("#startBtn");
    const stopBtn = panel.querySelector("#stopBtn");
    const statusBox = panel.querySelector("#status");
    const timerBox = panel.querySelector("#timer");
    function status(text){
        statusBox.textContent = text;
        console.log(
            `[${new Date().toLocaleTimeString()}] ${text}`
        );
    }
    function format(ms){
        let sec = Math.ceil(ms / 1000);
        let min = Math.floor(sec / 60);
        sec = sec % 60;
        return (
            String(min).padStart(2,"0")
            +
            ":"
            +
            String(sec).padStart(2,"0")
        );
    }

    // =========================
    // COUNTDOWN
    // =========================

    async function countdown(time, text){
        let end = Date.now() + time;
        while(
            running &&
            Date.now() < end
        ){
            let remain = end - Date.now();
            status(text);
            timerBox.textContent =
                format(remain);
            await sleep(1000);
        }
        timerBox.textContent="--";
    }


    function visible(selector){
        let el =
            document.querySelector(selector);
        if(!el)
            return false;
        return (
            getComputedStyle(el)
            .display !== "none"
        );
    }

    function cooldownSeconds(){
        let error =
            document.querySelector(
                "#error-message"
            );
        if(!error)
            return null;
        let match =
            error.innerText.match(
                /(\d+)m\s*(\d+)s/i
            );
        if(!match)
            return null;
        return (
            Number(match[1])*60
            +
            Number(match[2])
        );
    }

    function submitTikTok(){
        let input =
            document.querySelector(
                "#tiktok-link"
            );
        let button =
            document.querySelector(
                "#submit-btn"
            );
        if(!input || !button){
            status(
                "Zefame input not found"
            );
            return;
        }
        input.value=currentLink;
        input.dispatchEvent(
            new Event(
                "input",
                {
                    bubbles:true
                }
            )
        );
        button.click();
        status(
            "Submitted"
        );
    }

    async function verify(){

        let end =
            Date.now()+VERIFY_TIME;
        while(
            running
        ){
            let remain =
                end-Date.now();
            if(remain > 0){
                status(
                    "Verification"
                );
                timerBox.textContent =
                    format(remain);
            }
            if(
                visible("#success-page")
            ){
                return {
                    success:true
                };
            }
            if(
                visible("#error-page")
            ){
                let cd =
                    cooldownSeconds();
                if(cd){
                    return {
                        success:false,
                        cooldown:
                        cd*1000
                    };
                }
            }
            await sleep(1000);
        }
    }

    async function reset(){
        if(
            typeof resetPage === "function"
        ){
            resetPage();
            await sleep(1000);
        }
    }

    async function loop(){
        while(running){
            await reset();
            submitTikTok();
            let result =
                await verify();
            if(!running)
                break;
            if(result.success){
                await countdown(
                    SUCCESS_WAIT,
                    "Success - next submit"
                );
            }
            else{
                await countdown(
                    result.cooldown,
                    "Cooldown remaining"
                );
            }
        }
        status(
            "Stopped"
        );
    }
    startBtn.onclick=()=>{
        if(running)
            return;
        currentLink =
            linkInput.value.trim();
        if(!currentLink){
            alert(
                "Paste TikTok link first"
            );
            return;
        }
        running=true;
        loop();
    };
    stopBtn.onclick=()=>{
        running=false;
        timerBox.textContent="--";
        status(
            "Stopped"
        );
    };
    console.log(
        "TikTok automation ready."
    );
})();
 

About this Thread

  • 2
    Replies
  • 31
    Views
  • 3
    Participants
Last reply from:
Ying

Trending Topics

Online now

Members online
1,391
Guests online
3,966
Total visitors
5,357

Forum statistics

Threads
2,302,451
Posts
29,148,658
Members
1,198,700
Latest member
mark1988
Back
Top