Untitled

 avatar
unknown
javascript
3 years ago
4.9 kB
3
Indexable
const { Client } = require('whatsapp-web.js');
const qrcode = require('qrcode-terminal');
const fs = require('fs');
const XLSX = require('xlsx');


var workbook = XLSX.readFile('./PPP.xlsx');
var sheet_name_list = workbook.SheetNames;
var xlData = XLSX.utils.sheet_to_json(workbook.Sheets[sheet_name_list[0]]);

const panjang = xlData.length;

const SESSION_FILE_PATH = './sesi_baru.json';
// const { MessageMedia } = require('whatsapp-web.js');
const { phoneNumberFormatter } = require('./helpers/formatter');

let sessionData;

if(fs.existsSync(SESSION_FILE_PATH)) {
    sessionData = require(SESSION_FILE_PATH);
};

const client = new Client({
    session: sessionData,
    puppeteer: {
        // executablePath: 'C:/Users/User/AppData/Local/Google/Chrome/Application/chrome.exe',
        headles: true,
        args: [
            '--no-sandbox',
            '--disable-setuid-sandbox',
            '--disable-dev-shm-usage',
            '--disable-accelerated-2d-canvas',
            '--no-first-run',
            '--no-zygot',
            '--single-process',
            '--disable-gpu'
        ]
    }
})

client.on('authenticated', (session) => {
    sessionData = session;
    fs.writeFile(SESSION_FILE_PATH, JSON.stringify(session), (err) => {
        if (err) {
            console.error(err);
        }
    });
});

client.on('disconnected', (reason) => {
    fs.unlinkSync(SESSION_FILE_PATH, function(err) {
        if (err) return console.log(err);
        console.log("SESI DI HApUS");
    });
    client.destroy();
    client.initialize();
});

client.on('qr', (qr) => {
    qrcode.generate(qr, {small: true});
});

const TKD = 'Dear kandidat penyeleksian karyawan\n\n*Selamat! Anda lolos Screening CV di PT Solid Gold Berjangka Jakarta.*\n\nUntuk tahapan selanjutnya adalah *Test Kemampuan Dasar (TKD)*\n\nSilahkan mengunjungi link yang tertera di bawah ini untuk melakukan test kemampuan dasar sebagai tahapan awal dari program penyeleksian di perusahaan kami. \n\nLink :\nhttps://docs.google.com/forms/d/e/1FAIpQLSeXEgqleLucQmrvlEAf_auY3K3_2kvN-CGMs_WT5fFfneONtg/viewform \n\nMohon pastikan alamat email dan nomor telepon kandidat yang digunakan pada tahap penyeleksian adalah yang aktif, karena seluruh hasil penyeleksian akan kami infokan melalui E-mail dan Whatsapp (Phone) \n\nSelamat mengerjakan. Semoga berhasil! \nNote:\nHarap konfirmasi ke WhatsApp atau Email berupa screenshot jika sudah mengisi TKD\nRegards,\n\n*HR - Recruitment*\n\nTCC Batavia Tower One lantai 10\nJl KH Mansyur Kav - 126\nJakarta Pusat, 10220.\n\nTlp : 021 - 29675088, Fax : 021 - 29675089\n\nContact person SBC Fajar ( Prada 7 )\nPhone : 081319029661\nEmail : pradabsm@gmail.com'
const DropCv = `Selamat Pagi\n\n*PEMBERITAHUAN UPLOAD CV & TKD PT.SG THE CITY CENTER*\n\nTerimakasih atas pendaftaran diri anda di *PT.SG THE CITY CENTER* sebagai kandidat calon karyawan di perusahaan kami.Kami merupakan perusahaan Jasa non-perbankan sebagai penyedia sistem perdagangan alternatif.\n\nKami mengundang Anda untuk melakukan *Drop CV & TKD* Online dengan tahapan sebagai berikut :\n\n1. Silahkan akses https://linktr.ee/SGTCC\n2. pilih *Upload CV & TKD*\n3. DI Undang :  *Fajar*\n4. User/Solid : *Prada 7*\n\n*Posisi Pekerjaan :*\n- *Marketing Bussines Consultan*\n\n*HARAP KONFIRMASI JIKA SUDAH DROP CV & TKD*\n\nTIDAK DIPUNGUT BIAYA APAPUN \n\nAlamat : \nGedung TCC Batavia Tower One Lantai 10, Jl.KH. Mansyur kav.126, Jakarta Pusat (Seberang Citywalk Sudirman)`
client.on('ready', () => {

    console.log('ready');

    for (let i = 0; i < panjang; i++) {

        var nomor = xlData[i]['NOMOR'];
        const nama = xlData[i]['Nama'];

        const keKantor = `Selamat Sore\n\nKami dari *PT. Solid Gold Jakarta Pusat* mengundang sdr/i *${nama}* “Come to Office” untuk melakukan verifikasi data karyawan baru & Edukasi first Work Dengan persyaratan *SUDAH DI VAKSIN & MEMBAWA SERTIFIKAT VAKSIN*\n\nJadwal datang ke kantor akan diadakan pada :\nHari/tanggal  : Jumat, 22 Oktober  2021\nJam           : 09:00 wib\nBertemu       : Pak Franky (Prada 7)\n\n\nNote:\n*- Berpakaian rapi (office look)*\n*- Dan membawa peralatan tulis.*\n\nJika bersedia hadir di jadwal ini harap konfirmasi pesan ini dengan membalas *IYA, SAYA BERSEDIA*\n\nTerimakasih\n\nAlamat : \nGedung TCC Batavia Tower One Lantai 10, Jl.KH. Mansyur kav.126, Jakarta Pusat (Seberang Citywalk Sudirman)`;
        const formatNumb = nomor+"@c.us";

        client.isRegisteredUser(formatNumb).then(function(isRegistered) {
            if (isRegistered) {
                client.sendMessage(formatNumb, TKD);
                console.log(`Terkirim ke ${nama} : ${formatNumb}`);
            } else {
                console.log(formatNumb+' Tidak terdaftar');
            }
        });

    }

});

client.initialize();
Editor is loading...