This repository has been archived by the owner on Dec 26, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathindex.js
95 lines (79 loc) · 2.63 KB
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
/* WA BOTS
*
* Common error selalu meminta kode QR:
* pergi ke view-source : https: //web.whatsapp.com
*
* cari tag ini
*
* <meta name = "binary-transparency-manifest-key" content = "x.xxxx.xx"/>
*
* ganti version di kode dibawah dengan isi dari "content"
*
*/
const fs = require("fs");
const http = require("http");
const axios = require("axios");
const qrcode = require("qrcode");
const messageHandler = require("./messageHandler.js");
const { WAConnection } = require("@adiwajshing/baileys");
const conn = new WAConnection();
conn.maxCachedMessages = 15;
const server = http.createServer((req, res) => {
if (req.url == "/") {
res.end(fs.readFileSync("templates/index.html", "utf-8"));
} else {
res.end("404");
}
})
const io = require("socket.io")(server);
io.on("connection", (socket) => {
conn.on("qr", async (qr) => {
const imgURI = await qrcode.toDataURL(qr);
socket.emit("qr", imgURI);
});
conn.on("open", () => {
socket.emit("connected");
});
})
server.listen(process.env.PORT || 3000);
conn.on("chat-update", async (message) => {
try {
if (!message.hasNewMessage) return;
message = message.messages.all()[0];
if (!message.message || message.key.fromMe || message.key && message.key.remoteJid == 'status@broadcast') return;
if (message.message.ephemeralMessage) {
message.message = message.message.ephemeralMessage.message;
}
if (!message.participant && !stickerMessage) {
conn.sendMessage( message.key.remoteJid, `Selamat datang di *${conn.user.name}* silahkan gunakan *!Help* untuk melihat menu yang ada`, MessageType.text, { quoted: message });
} else {
await messageHandler(conn, message);
}
} catch (e) {
console.log("[ERROR] " + e.message);
let theError = ""
if (e.message == "Cannot read properties of undefined (reading 'Key')") {
theError = "Perintah tidak ditemukan";
} else {
theError = e.message;
}
conn.sendMessage(message.key.remoteJid, `Aduh maaf ya perintah yang kamu kirim tidak tersedia atau mungkin terjadi error😭\n\n\nError log:\u0060\u0060\u0060\n${theError}\u0060\u0060\u0060`, "conversation", { quoted: message });
}
});
const start = async () => {
// ganti jika terus meminta kode QR
conn.version = [2, 2142, 12];
if (fs.existsSync("login.json")) conn.loadAuthInfo("login.json");
conn.connect()
.then(() => {
fs.writeFileSync("login.json", JSON.stringify(conn.base64EncodedAuthInfo()));
console.log("[OK] Login sukses! kirim !help untuk menampilkan perintah");
})
.catch(e => {
if (fs.existsSync("login.json")) fs.unlinkSync("login.json");
console.log("[ERROR] Login gagal!");
conn.clearAuthInfo();
start();
});
}
start();