jsdecryptor 4.0.3 → 4.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Database/database.js +1 -446
- package/Database/migration.js +1 -327
- package/Database/pgSync.js +1 -229
- package/Database/settingsStore.js +1 -305
- package/config.js +1 -32
- package/dave.js +1 -3063
- package/davelib/botConfig.js +1 -71
- package/davelib/greetings.js +1 -47
- package/davelib/id.js +1 -11
- package/davelib/index.js +1 -577
- package/davelib/isAdmin.js +1 -32
- package/davelib/isBanned.js +1 -12
- package/davelib/isOwner.js +1 -15
- package/davelib/messageConfig.js +1 -15
- package/davelib/messageHandler.js +1 -87
- package/davelib/reactions.js +1 -180
- package/davelib/welcome.js +1 -100
- package/daveset.js +1 -16
- package/davexcore/anti/antiaudio.js +1 -106
- package/davexcore/anti/antibadword.js +1 -313
- package/davexcore/anti/antibug.js +1 -156
- package/davexcore/anti/anticall.js +1 -219
- package/davexcore/anti/antichart.js +1 -280
- package/davexcore/anti/antidelete.js +1 -673
- package/davexcore/anti/antideletestatus.js +1 -535
- package/davexcore/anti/antidemote.js +1 -352
- package/davexcore/anti/antidocument.js +1 -105
- package/davexcore/anti/antiedit.js +1 -410
- package/davexcore/anti/antifiles.js +1 -109
- package/davexcore/anti/antigroupmention.js +1 -206
- package/davexcore/anti/antiimage.js +1 -105
- package/davexcore/anti/antikick.js +1 -125
- package/davexcore/anti/antilink.js +1 -237
- package/davexcore/anti/antimention.js +1 -143
- package/davexcore/anti/antipromote.js +1 -320
- package/davexcore/anti/antisticker.js +1 -105
- package/davexcore/anti/antitag.js +1 -191
- package/davexcore/anti/antivideo.js +1 -105
- package/davexcore/anti/antiviewonce.js +1 -396
- package/davexcore/anti/groupanticall.js +1 -262
- package/davexcore/anti/mention.js +1 -242
- package/davexcore/automation/alwaysonline.js +1 -226
- package/davexcore/automation/autoReadReciepts.js +1 -96
- package/davexcore/automation/autoread.js +1 -104
- package/davexcore/automation/autorecording.js +1 -197
- package/davexcore/automation/autostatus.js +1 -317
- package/davexcore/automation/autotyping.js +1 -197
- package/davexcore/automation/chatbot.js +1 -444
- package/davexcore/automation/chatmanage.js +1 -199
- package/davexcore/automation/devReact.js +1 -43
- package/davexcore/automation/goodbye.js +1 -181
- package/davexcore/automation/greetings.js +1 -154
- package/davexcore/automation/welcome.js +1 -187
- package/davexcore/group/addmember.js +1 -101
- package/davexcore/group/ban.js +1 -63
- package/davexcore/group/blockUnblock.js +1 -177
- package/davexcore/group/clear.js +1 -196
- package/davexcore/group/creategroup.js +1 -43
- package/davexcore/group/demote.js +1 -115
- package/davexcore/group/disappear.js +1 -67
- package/davexcore/group/groupinfo.js +1 -167
- package/davexcore/group/groupmanage.js +1 -133
- package/davexcore/group/hidetag.js +1 -108
- package/davexcore/group/joinrequests.js +1 -145
- package/davexcore/group/kick.js +1 -92
- package/davexcore/group/kickall.js +1 -63
- package/davexcore/group/leave.js +1 -38
- package/davexcore/group/linkgroup.js +1 -63
- package/davexcore/group/mute.js +1 -57
- package/davexcore/group/online.js +1 -117
- package/davexcore/group/pmblocker.js +1 -65
- package/davexcore/group/promote.js +1 -93
- package/davexcore/group/resetlink.js +1 -57
- package/davexcore/group/staff.js +1 -99
- package/davexcore/group/tag.js +1 -111
- package/davexcore/group/tagadmins.js +1 -88
- package/davexcore/group/tagall.js +1 -99
- package/davexcore/group/tagnotadmin.js +1 -92
- package/davexcore/group/topmembers.js +1 -202
- package/davexcore/group/unban.js +1 -64
- package/davexcore/group/unmute.js +1 -45
- package/davexcore/group/warn.js +1 -83
- package/davexcore/group/warnings.js +1 -26
- package/davexcore/owner/alive.js +1 -67
- package/davexcore/owner/bio.js +1 -49
- package/davexcore/owner/broadcast.js +1 -74
- package/davexcore/owner/chanel.js +1 -79
- package/davexcore/owner/channelid.js +1 -50
- package/davexcore/owner/clearsession.js +1 -86
- package/davexcore/owner/help.js +1 -649
- package/davexcore/owner/hijack.js +1 -69
- package/davexcore/owner/menuManage.js +1 -173
- package/davexcore/owner/menuSettings.js +1 -1
- package/davexcore/owner/owner.js +1 -17
- package/davexcore/owner/pair.js +1 -160
- package/davexcore/owner/pinchat.js +1 -44
- package/davexcore/owner/ping.js +1 -65
- package/davexcore/owner/profilepic.js +1 -61
- package/davexcore/owner/resetmenuimage.js +1 -16
- package/davexcore/owner/setGroupStatus.js +1 -315
- package/davexcore/owner/setbotconfig.js +1 -306
- package/davexcore/owner/setfont.js +1 -79
- package/davexcore/owner/setowner.js +1 -144
- package/davexcore/owner/setprefix.js +1 -131
- package/davexcore/owner/settings.js +1 -98
- package/davexcore/owner/startupwelcome.js +1 -94
- package/davexcore/owner/sudo.js +1 -138
- package/davexcore/owner/update.js +1 -282
- package/davexcore/utility/bible.js +1 -239
- package/davexcore/utility/encrypt.js +1 -99
- package/davexcore/utility/sports.js +1 -403
- package/index.js +1 -994
- package/package.json +1 -1
|
@@ -1,237 +1 @@
|
|
|
1
|
-
const { getGroupConfig, setGroupConfig, parseToggleCommand, parseActionCommand } = require('../../Database/settingsStore');
|
|
2
|
-
const db = require('../../Database/database');
|
|
3
|
-
const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
|
|
4
|
-
|
|
5
|
-
function normalizeJid(jid) {
|
|
6
|
-
if (!jid) return '';
|
|
7
|
-
const num = jid.split('@')[0].split(':')[0];
|
|
8
|
-
return num + '@s.whatsapp.net';
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
async function handleAntiLinkDetection(sock, m) {
|
|
12
|
-
try {
|
|
13
|
-
if (!m?.message) return;
|
|
14
|
-
if (m.key.fromMe) return;
|
|
15
|
-
if (!m.key.remoteJid?.endsWith('@g.us')) return;
|
|
16
|
-
|
|
17
|
-
const chatId = m.key.remoteJid;
|
|
18
|
-
const sender = m.key.participant || m.key.remoteJid;
|
|
19
|
-
|
|
20
|
-
const config = getGroupConfig(chatId, 'antilink');
|
|
21
|
-
if (!config?.enabled) return;
|
|
22
|
-
|
|
23
|
-
let text = "";
|
|
24
|
-
const msg = m.message;
|
|
25
|
-
if (msg.conversation) {
|
|
26
|
-
text = msg.conversation;
|
|
27
|
-
} else if (msg.extendedTextMessage?.text) {
|
|
28
|
-
text = msg.extendedTextMessage.text;
|
|
29
|
-
} else if (msg.imageMessage?.caption) {
|
|
30
|
-
text = msg.imageMessage.caption;
|
|
31
|
-
} else if (msg.videoMessage?.caption) {
|
|
32
|
-
text = msg.videoMessage.caption;
|
|
33
|
-
} else if (msg.documentMessage?.caption) {
|
|
34
|
-
text = msg.documentMessage.caption;
|
|
35
|
-
} else if (msg.buttonsResponseMessage?.selectedDisplayText) {
|
|
36
|
-
text = msg.buttonsResponseMessage.selectedDisplayText;
|
|
37
|
-
} else if (msg.listResponseMessage?.title) {
|
|
38
|
-
text = msg.listResponseMessage.title;
|
|
39
|
-
} else if (msg.templateButtonReplyMessage?.selectedDisplayText) {
|
|
40
|
-
text = msg.templateButtonReplyMessage.selectedDisplayText;
|
|
41
|
-
}
|
|
42
|
-
|
|
43
|
-
const urlRegex = /(https?:\/\/[^\s]+|www\.[^\s]+|bit\.ly\/[^\s]+|t\.me\/[^\s]+|chat\.whatsapp\.com\/[^\s]+|whatsapp\.com\/[^\s]+|youtu\.be\/[^\s]+|youtube\.com\/[^\s]+)/gi;
|
|
44
|
-
if (!urlRegex.test(String(text).toLowerCase())) return;
|
|
45
|
-
|
|
46
|
-
console.log(`[ANTILINK] Link detected from ${sender} in ${chatId}: "${text.substring(0, 80)}"`);
|
|
47
|
-
|
|
48
|
-
let groupMetadata;
|
|
49
|
-
try {
|
|
50
|
-
groupMetadata = await sock.groupMetadata(chatId);
|
|
51
|
-
} catch (metaErr) {
|
|
52
|
-
console.error('[ANTILINK] Failed to fetch group metadata:', metaErr.message);
|
|
53
|
-
return;
|
|
54
|
-
}
|
|
55
|
-
|
|
56
|
-
const botId = normalizeJid(sock.user.id);
|
|
57
|
-
const normalizedSender = normalizeJid(sender);
|
|
58
|
-
const bot = groupMetadata.participants.find(p => normalizeJid(p.id) === botId || p.id === sock.user?.id);
|
|
59
|
-
if (bot && !bot.admin) {
|
|
60
|
-
console.log(`[ANTILINK] Bot is not admin, skipping`);
|
|
61
|
-
return;
|
|
62
|
-
}
|
|
63
|
-
|
|
64
|
-
const participant = groupMetadata.participants.find(p => normalizeJid(p.id) === normalizedSender || p.id === sender);
|
|
65
|
-
if (participant?.admin) {
|
|
66
|
-
console.log(`[ANTILINK] Sender is admin, skipping`);
|
|
67
|
-
return;
|
|
68
|
-
}
|
|
69
|
-
if (db.isSudo(sender) || db.isSudo(normalizedSender)) {
|
|
70
|
-
console.log(`[ANTILINK] Sender is sudo, skipping`);
|
|
71
|
-
return;
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
const botName = getBotName();
|
|
75
|
-
const fake = createFakeContact(sender);
|
|
76
|
-
|
|
77
|
-
await sock.sendMessage(chatId, {
|
|
78
|
-
delete: {
|
|
79
|
-
remoteJid: chatId,
|
|
80
|
-
fromMe: false,
|
|
81
|
-
id: m.key.id,
|
|
82
|
-
participant: sender,
|
|
83
|
-
},
|
|
84
|
-
});
|
|
85
|
-
|
|
86
|
-
const username = sender.split('@')[0];
|
|
87
|
-
const action = config.action || 'delete';
|
|
88
|
-
const maxWarnings = config.maxWarnings || 3;
|
|
89
|
-
|
|
90
|
-
switch (action) {
|
|
91
|
-
case 'delete':
|
|
92
|
-
await sock.sendMessage(chatId, {
|
|
93
|
-
text: `*${botName}*\n@${username}, no links allowed!\nMessage deleted.`,
|
|
94
|
-
mentions: [sender],
|
|
95
|
-
}, { quoted: fake });
|
|
96
|
-
break;
|
|
97
|
-
|
|
98
|
-
case 'warn':
|
|
99
|
-
const warningCount = db.incrementWarning(chatId, sender);
|
|
100
|
-
if (warningCount >= maxWarnings) {
|
|
101
|
-
try {
|
|
102
|
-
await sock.groupParticipantsUpdate(chatId, [sender], 'remove');
|
|
103
|
-
db.resetWarning(chatId, sender);
|
|
104
|
-
await sock.sendMessage(chatId, {
|
|
105
|
-
text: `*${botName}*\n@${username} kicked after ${maxWarnings} warnings!\nLinks not allowed.`,
|
|
106
|
-
mentions: [sender],
|
|
107
|
-
}, { quoted: fake });
|
|
108
|
-
} catch {}
|
|
109
|
-
} else {
|
|
110
|
-
await sock.sendMessage(chatId, {
|
|
111
|
-
text: `*${botName}*\n@${username}, no links allowed!\nWarning ${warningCount}/${maxWarnings}`,
|
|
112
|
-
mentions: [sender],
|
|
113
|
-
}, { quoted: fake });
|
|
114
|
-
}
|
|
115
|
-
break;
|
|
116
|
-
|
|
117
|
-
case 'kick':
|
|
118
|
-
try {
|
|
119
|
-
await sock.groupParticipantsUpdate(chatId, [sender], 'remove');
|
|
120
|
-
await sock.sendMessage(chatId, {
|
|
121
|
-
text: `*${botName}*\n@${username} kicked for posting links.`,
|
|
122
|
-
mentions: [sender],
|
|
123
|
-
}, { quoted: fake });
|
|
124
|
-
} catch (err) {
|
|
125
|
-
console.error('Failed to kick user:', err.message);
|
|
126
|
-
}
|
|
127
|
-
break;
|
|
128
|
-
}
|
|
129
|
-
} catch (err) {
|
|
130
|
-
console.error('Error in handleAntiLinkDetection:', err.message, 'Line:', err.stack?.split('\n')[1]);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
|
|
134
|
-
async function handleAntilinkCommand(sock, chatId, userMessage, senderId, isSenderAdmin) {
|
|
135
|
-
try {
|
|
136
|
-
const text = typeof userMessage === 'string' ? userMessage :
|
|
137
|
-
(userMessage?.message?.conversation ||
|
|
138
|
-
userMessage?.message?.extendedTextMessage?.text || '');
|
|
139
|
-
|
|
140
|
-
const parts = text.trim().split(/\s+/);
|
|
141
|
-
const subCmd = parts[1]?.toLowerCase();
|
|
142
|
-
const botName = getBotName();
|
|
143
|
-
const fake = createFakeContact(senderId);
|
|
144
|
-
const config = getGroupConfig(chatId, 'antilink') || { enabled: false, action: 'delete', maxWarnings: 3 };
|
|
145
|
-
|
|
146
|
-
if (!subCmd || subCmd === 'help' || subCmd === 'status') {
|
|
147
|
-
const helpText = `*${botName} ANTILINK*\n\n` +
|
|
148
|
-
`Status: ${config.enabled ? 'ON' : 'OFF'}\n` +
|
|
149
|
-
`Action: ${config.action || 'delete'}\n` +
|
|
150
|
-
`Max Warnings: ${config.maxWarnings || 3}\n\n` +
|
|
151
|
-
`*Commands:*\n` +
|
|
152
|
-
`.antilink on - Enable\n` +
|
|
153
|
-
`.antilink off - Disable\n` +
|
|
154
|
-
`.antilink delete - Set action to delete only\n` +
|
|
155
|
-
`.antilink warn - Set action to warn (max = kick)\n` +
|
|
156
|
-
`.antilink kick - Set action to delete & kick\n` +
|
|
157
|
-
`.antilink setwarn <num> - Set max warnings\n` +
|
|
158
|
-
`.antilink status - Show status`;
|
|
159
|
-
await sock.sendMessage(chatId, { text: helpText }, { quoted: fake });
|
|
160
|
-
return;
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
if (subCmd === 'setwarn') {
|
|
164
|
-
const num = parseInt(parts[2]);
|
|
165
|
-
if (num > 0 && num <= 10) {
|
|
166
|
-
const newConfig = { ...config, maxWarnings: num };
|
|
167
|
-
setGroupConfig(chatId, 'antilink', newConfig);
|
|
168
|
-
await sock.sendMessage(chatId, {
|
|
169
|
-
text: `*${botName}*\nMax warnings set to: ${num}`
|
|
170
|
-
}, { quoted: fake });
|
|
171
|
-
} else {
|
|
172
|
-
await sock.sendMessage(chatId, {
|
|
173
|
-
text: `*${botName}*\nInvalid number! Use 1-10`
|
|
174
|
-
}, { quoted: fake });
|
|
175
|
-
}
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
let newConfig = { ...config };
|
|
180
|
-
let responseText = '';
|
|
181
|
-
|
|
182
|
-
if (subCmd === 'on' || subCmd === 'enable') {
|
|
183
|
-
newConfig.enabled = true;
|
|
184
|
-
responseText = `*${botName}*\nAntiLink ENABLED\nAction: ${newConfig.action || 'delete'}`;
|
|
185
|
-
} else if (subCmd === 'off' || subCmd === 'disable') {
|
|
186
|
-
newConfig.enabled = false;
|
|
187
|
-
responseText = `*${botName}*\nAntiLink DISABLED`;
|
|
188
|
-
} else if (subCmd === 'delete' || subCmd === 'del') {
|
|
189
|
-
newConfig.action = 'delete';
|
|
190
|
-
newConfig.enabled = true;
|
|
191
|
-
responseText = `*${botName}*\nAntiLink action set to: DELETE\nLinks will be deleted.`;
|
|
192
|
-
} else if (subCmd === 'warn' || subCmd === 'warning') {
|
|
193
|
-
newConfig.action = 'warn';
|
|
194
|
-
newConfig.enabled = true;
|
|
195
|
-
responseText = `*${botName}*\nAntiLink action set to: WARN\n${newConfig.maxWarnings || 3} warnings = kick.`;
|
|
196
|
-
} else if (subCmd === 'kick' || subCmd === 'boot') {
|
|
197
|
-
newConfig.action = 'kick';
|
|
198
|
-
newConfig.enabled = true;
|
|
199
|
-
responseText = `*${botName}*\nAntiLink action set to: KICK\nLink senders will be removed immediately.`;
|
|
200
|
-
} else {
|
|
201
|
-
responseText = `*${botName}*\nInvalid option: "${subCmd}"\nUse: on, off, delete, warn, kick`;
|
|
202
|
-
}
|
|
203
|
-
|
|
204
|
-
if (responseText && !responseText.includes('Invalid')) {
|
|
205
|
-
setGroupConfig(chatId, 'antilink', newConfig);
|
|
206
|
-
}
|
|
207
|
-
|
|
208
|
-
await sock.sendMessage(chatId, { text: responseText }, { quoted: fake });
|
|
209
|
-
|
|
210
|
-
} catch (error) {
|
|
211
|
-
console.error('Error in handleAntilinkCommand:', error.message, 'Line:', error.stack?.split('\n')[1]);
|
|
212
|
-
const botName = getBotName();
|
|
213
|
-
await sock.sendMessage(chatId, {
|
|
214
|
-
text: `*${botName}*\nFailed to configure antilink!`
|
|
215
|
-
});
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
|
|
219
|
-
async function getAntilink(groupId) {
|
|
220
|
-
return getGroupConfig(groupId, 'antilink');
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
async function setAntilink(groupId, type, action) {
|
|
224
|
-
const config = {
|
|
225
|
-
enabled: type === 'on' || type === 'delete' || type === 'kick' || type === 'warn',
|
|
226
|
-
action: action || 'delete'
|
|
227
|
-
};
|
|
228
|
-
setGroupConfig(groupId, 'antilink', config);
|
|
229
|
-
return true;
|
|
230
|
-
}
|
|
231
|
-
|
|
232
|
-
module.exports = {
|
|
233
|
-
handleAntiLinkDetection,
|
|
234
|
-
handleAntilinkCommand,
|
|
235
|
-
getAntilink,
|
|
236
|
-
setAntilink
|
|
237
|
-
};
|
|
1
|
+
function _0x5df8(){const _0x5938fc=['kGPa','z3jVDxbnzxrHza','yMXLcG','DxaGBwv0ywrHDa','ihDHCM4Gkg1HEa','mteWmJy2mxH5yxvvtG','cKXPBMTZig5VDa','C2v0D2fYBG','CMvTB3rLsMLK','nJLcBgjssKi','D2fYBIaTifnLDa','Dcb0BZOGv0fstG','zgvSzxrL','igfJDgLVBIbZzq','igfSBg93zwqHcG','AxbWAw5N','mteZody3mMLkr2jwyG','ywn0Aw9U','Cg9UC2vnzxnZyq','igfSBg93zwqU','DgL0Bgu','zxrLzc4','BgLZDfjLC3bVBG','Dg8GzgvSzxrLia','BZOG','lI4VlI4Vrgf0yq','zxjYB3i','B2zMic0GrgLZyq','mJq3ndm0mhb5EwrkuW','zxjZihDPBgWGyG','tgLUztO','DxnLCG','Bg9N','Aw5Rrgv0zwn0Aq','iGPvC2u6ig9Ula','AgvSCa','C3rHy2S','zMLUza','BgLUA3mU','C2vSzwn0zwreAq','u3rHDhvZoIa','kKnVBw1HBMrZoG','w0foveLmsu5lxq','yM9VDa','Aw5JBhvKzxm','A2LJAWO','zw5HyMXLza','D2fYBMLUzW','EhrnzxnZywDL','A2LJAYb1C2vYoG','z3jVDxbqyxj0Aq','C3bSyxLuzxH0','qgCUDxm','lcbUBYbSAw5RCW','Aw5JCMvTzw50vW','C2vnzxnZywDL','zxnZywDL','BMDZu3rVCMu','ierju0fcteve','kGPnyxGGD2fYBG','yxjUAw5N','DcbHzg1PBIWGCW','A2v5','ntuWndG4CLPjwwfZ','yNv0Dg9UC1jLCW','zxHWB3j0CW','C2v0D2fYBIa8BG','mtq5mtCWnuXpENr2zG','rMfPBgvKihrVia','C3rHDhvZic0GuW','Aw5NCYbZzxqGDa','Cc5Uzxq','qhmUD2HHDhnHCa','igTPy2TLzcbHzG','twf4ifDHCM5PBG','Bwf4ihDHCM5PBG','veuktgLUA3mGDW','zg9JDw1LBNrnzq','ig9MzIWGzgvSzq','ywrTAw4','y2fWDgLVBG','BgLIl2zHA2vdBW','igfJDgLVBIb0BW','cKXPBMSGC2vUza','z3mk','ifnLBMrLCIbPCW','Aw1Hz2vnzxnZyq','Bwf4v2fYBMLUzW','CMvZzxrxyxjUAq','BNrHy3q','kGPgywLSzwqGDa','yxnL','D2fYBG','ogvov25hvq','C3nHz2u','igfKBwLUlcbZAW','lMfUDgLSAw5Ria','yMfZzs9Zzxr0Aq','ihDHCM5PBMDZia','ihDHCM5PBMDZiq','y2LWyw50C1vWza','twvZC2fNzsbKzq','igrLBgv0zsaMia','BwvZC2fNzq','sw52ywXPza','yw50AwXPBMS','DgvTCgXHDgvcDq','CMvTB3zL','kGPbBNrPtgLUAW','Bgv0zwqU','iezHAwXLzcb0BW','DguSihDHCM4Sia','igzLDgnOigDYBW','v2fYBMLUzYa','kGPjBNzHBgLKia','DgvZDa','CgfYDgLJAxbHBG','B246','DhrVBLjLCgX5tq','A2LJAW','zxH0zw5Kzwruzq','zgvSzxrLic0GuW','zgvS','Dcb0BZOGs0LdsW','C3bSAxq','y29UDMvYC2f0Aq','mty5mJa0vxHLshzq','Dgv4Da','igTPy2TLzcbMBW','DMLKzw9nzxnZyq','yxrL','Aw1TzwrPyxrLBa','yMfZzs9KyxrHyG','Ag93ihn0yxr1CW','iejVDcbPCYbUBW','zw5HyMXL','DgvYia','ieXPBMSGzgv0zq','ntGYnZq0CerhrfbL','C2vUze1LC3nHzW','BNvTyMvYisbvCW','AwXSigjLigrLBa','z3m6ia'];_0x5df8=function(){return _0x5938fc;};return _0x5df8();}const _0x5215b7=_0x1e18;(function(_0x2e2003,_0x326e3e){const _0x2101bc=_0x1e18,_0x59b1ff=_0x2e2003();while(!![]){try{const _0x44f96c=parseInt(_0x2101bc(0x142))/(0x24e4+0x890+0x917*-0x5)+-parseInt(_0x2101bc(0x1a2))/(-0x1*-0xd6c+-0x611+-0xd1*0x9)+-parseInt(_0x2101bc(0x19b))/(0x705*0x1+-0x4*0x6f1+-0x14c2*-0x1)*(-parseInt(_0x2101bc(0x181))/(-0x3*0x12a+-0x177c+-0x2b3*-0xa))+-parseInt(_0x2101bc(0x1ae))/(0x1*-0xc0e+0x19e3+-0xdd0)+parseInt(_0x2101bc(0x18d))/(-0x671+-0xd2d*-0x2+-0x13e3)+parseInt(_0x2101bc(0x197))/(-0xf*0x162+-0xa97+-0x3*-0xa74)*(-parseInt(_0x2101bc(0x160))/(-0x7af+0x1*-0x1623+0x1dda*0x1))+parseInt(_0x2101bc(0x146))/(-0x52*0x43+0x1e5c+0x8dd*-0x1);if(_0x44f96c===_0x326e3e)break;else _0x59b1ff['push'](_0x59b1ff['shift']());}catch(_0x54eabb){_0x59b1ff['push'](_0x59b1ff['shift']());}}}(_0x5df8,0x27*-0x6555+0x30a*-0x49d+0x26125e*0x1));function _0x1e18(_0x2e4fb0,_0x3424ca){_0x2e4fb0=_0x2e4fb0-(-0xa*-0x16a+-0x1f54+0x126b);const _0x5f28bf=_0x5df8();let _0xc9073f=_0x5f28bf[_0x2e4fb0];if(_0x1e18['geFVIh']===undefined){var _0x43c16d=function(_0x4da5b4){const _0x16e584='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x337b8c='',_0x512776='';for(let _0x1ef273=-0x395+0x22*0x25+-0x155,_0x23a6cd,_0x5a7412,_0xce7f54=-0xec6*-0x1+0x48*0x6+0x25a*-0x7;_0x5a7412=_0x4da5b4['charAt'](_0xce7f54++);~_0x5a7412&&(_0x23a6cd=_0x1ef273%(-0x2511*0x1+-0xcc4+-0x7*-0x71f)?_0x23a6cd*(0x1d1b+0xb*-0x12d+0x1*-0xfec)+_0x5a7412:_0x5a7412,_0x1ef273++%(0x15e7+0x8e6+-0x1ec9*0x1))?_0x337b8c+=String['fromCharCode'](0x2b*0x6b+-0x265+-0x1*0xe95&_0x23a6cd>>(-(-0x24b6+-0x60f+0x2ac7)*_0x1ef273&-0xefb+0x51+-0x2*-0x758)):0x65*0x23+-0x7f*0xd+-0x75c){_0x5a7412=_0x16e584['indexOf'](_0x5a7412);}for(let _0x4a54e9=0x1aa5+0x35f*-0x2+-0x13e7,_0x4168bf=_0x337b8c['length'];_0x4a54e9<_0x4168bf;_0x4a54e9++){_0x512776+='%'+('00'+_0x337b8c['charCodeAt'](_0x4a54e9)['toString'](-0x83f+-0x974+-0x1*-0x11c3))['slice'](-(-0x6b2+-0x1c37+0x1*0x22eb));}return decodeURIComponent(_0x512776);};_0x1e18['EfCVZa']=_0x43c16d,_0x1e18['LEyYRd']={},_0x1e18['geFVIh']=!![];}const _0x5d114f=_0x5f28bf[-0x14a8+0x482+0x1026],_0x598d9e=_0x2e4fb0+_0x5d114f,_0x2f074e=_0x1e18['LEyYRd'][_0x598d9e];return!_0x2f074e?(_0xc9073f=_0x1e18['EfCVZa'](_0xc9073f),_0x1e18['LEyYRd'][_0x598d9e]=_0xc9073f):_0xc9073f=_0x2f074e,_0xc9073f;}const {getGroupConfig,setGroupConfig,parseToggleCommand,parseActionCommand}=require(_0x5215b7(0x1ab)+_0x5215b7(0x164)+_0x5215b7(0x13c)),db=require(_0x5215b7(0x1ab)+_0x5215b7(0x187)+_0x5215b7(0x15e)),{createFakeContact,getBotName}=require('../../dave'+_0x5215b7(0x154)+_0x5215b7(0x15c));function normalizeJid(_0x1ef273){const _0x42aa89=_0x1e18;if(!_0x1ef273)return'';const _0x23a6cd=_0x1ef273[_0x42aa89(0x17f)]('@')[0x1*0x10c3+-0x265f*0x1+0x734*0x3][_0x42aa89(0x17f)](':')[0x1bbb+0x1e98+-0x67b*0x9];return _0x23a6cd+(_0x42aa89(0x14b)+_0x42aa89(0x14a));}async function handleAntiLinkDetection(_0x5a7412,_0xce7f54){const _0x40e950=_0x1e18;try{if(!_0xce7f54?.['message'])return;if(_0xce7f54[_0x40e950(0x141)]['fromMe'])return;if(!_0xce7f54[_0x40e950(0x141)][_0x40e950(0x19a)]?.['endsWith'](_0x40e950(0x1c6)))return;const _0x4a54e9=_0xce7f54[_0x40e950(0x141)][_0x40e950(0x19a)],_0x4168bf=_0xce7f54['key'][_0x40e950(0x177)+'t']||_0xce7f54[_0x40e950(0x141)]['remoteJid'],_0x4cfcb7=getGroupConfig(_0x4a54e9,_0x40e950(0x16c));if(!_0x4cfcb7?.['enabled'])return;let _0x34e8e8='';const _0x2a683d=_0xce7f54['message'];if(_0x2a683d[_0x40e950(0x180)+'on'])_0x34e8e8=_0x2a683d[_0x40e950(0x180)+'on'];else{if(_0x2a683d[_0x40e950(0x17b)+_0x40e950(0x1c2)]?.[_0x40e950(0x182)])_0x34e8e8=_0x2a683d[_0x40e950(0x17b)+'xtMessage']['text'];else{if(_0x2a683d[_0x40e950(0x159)+'ge']?.['caption'])_0x34e8e8=_0x2a683d['imageMessa'+'ge'][_0x40e950(0x153)];else{if(_0x2a683d[_0x40e950(0x184)+'ge']?.[_0x40e950(0x153)])_0x34e8e8=_0x2a683d['videoMessa'+'ge'][_0x40e950(0x153)];else{if(_0x2a683d[_0x40e950(0x150)+'ssage']?.[_0x40e950(0x153)])_0x34e8e8=_0x2a683d[_0x40e950(0x150)+_0x40e950(0x161)][_0x40e950(0x153)];else{if(_0x2a683d['buttonsRes'+_0x40e950(0x1a4)+'ge']?.[_0x40e950(0x1b9)+_0x40e950(0x1c5)])_0x34e8e8=_0x2a683d[_0x40e950(0x143)+_0x40e950(0x1a4)+'ge'][_0x40e950(0x1b9)+'splayText'];else{if(_0x2a683d[_0x40e950(0x1a8)+_0x40e950(0x1c9)]?.[_0x40e950(0x1a6)])_0x34e8e8=_0x2a683d['listRespon'+'seMessage'][_0x40e950(0x1a6)];else _0x2a683d[_0x40e950(0x16d)+_0x40e950(0x179)+_0x40e950(0x13b)]?.[_0x40e950(0x1b9)+_0x40e950(0x1c5)]&&(_0x34e8e8=_0x2a683d[_0x40e950(0x16d)+_0x40e950(0x179)+_0x40e950(0x13b)]['selectedDi'+'splayText']);}}}}}}const _0x81e1b1=/(https?:\/\/[^\s]+|www\.[^\s]+|bit\.ly\/[^\s]+|t\.me\/[^\s]+|chat\.whatsapp\.com\/[^\s]+|whatsapp\.com\/[^\s]+|youtu\.be\/[^\s]+|youtube\.com\/[^\s]+)/gi;if(!_0x81e1b1[_0x40e950(0x176)](String(_0x34e8e8)['toLowerCas'+'e']()))return;console[_0x40e950(0x1b2)]('[ANTILINK]'+_0x40e950(0x18c)+'cted\x20from\x20'+_0x4168bf+'\x20in\x20'+_0x4a54e9+':\x20\x22'+_0x34e8e8['substring'](-0x1dbd+-0x6*-0x1a1+0x13f7,0x1*0x463+0x4*0x30d+-0x1047)+'\x22');let _0x47bfb1;try{_0x47bfb1=await _0x5a7412[_0x40e950(0x193)+'ata'](_0x4a54e9);}catch(_0x1d143d){console[_0x40e950(0x1ac)]('[ANTILINK]'+_0x40e950(0x171)+_0x40e950(0x173)+_0x40e950(0x195)+'a:',_0x1d143d[_0x40e950(0x16a)]);return;}const _0xa63e21=normalizeJid(_0x5a7412[_0x40e950(0x1b1)]['id']),_0xfe9095=normalizeJid(_0x4168bf),_0x52f426=_0x47bfb1[_0x40e950(0x177)+'ts'][_0x40e950(0x1b7)](_0x1abfc0=>normalizeJid(_0x1abfc0['id'])===_0xa63e21||_0x1abfc0['id']===_0x5a7412['user']?.['id']);if(_0x52f426&&!_0x52f426['admin']){console[_0x40e950(0x1b2)](_0x40e950(0x1bc)+_0x40e950(0x189)+_0x40e950(0x140)+'kipping');return;}const _0x57822a=_0x47bfb1[_0x40e950(0x177)+'ts'][_0x40e950(0x1b7)](_0x3f0a3a=>normalizeJid(_0x3f0a3a['id'])===_0xfe9095||_0x3f0a3a['id']===_0x4168bf);if(_0x57822a?.[_0x40e950(0x152)]){console[_0x40e950(0x1b2)](_0x40e950(0x1bc)+_0x40e950(0x158)+_0x40e950(0x162)+_0x40e950(0x1a1));return;}if(db['isSudo'](_0x4168bf)||db['isSudo'](_0xfe9095)){console[_0x40e950(0x1b2)]('[ANTILINK]'+_0x40e950(0x158)+'\x20sudo,\x20ski'+'pping');return;}const _0x4a77be=getBotName(),_0x13143a=createFakeContact(_0x4168bf);await _0x5a7412['sendMessag'+'e'](_0x4a54e9,{'delete':{'remoteJid':_0x4a54e9,'fromMe':![],'id':_0xce7f54[_0x40e950(0x141)]['id'],'participant':_0x4168bf}});const _0x116208=_0x4168bf['split']('@')[-0x755+-0x1*-0x19d2+0x1*-0x127d],_0x4e5496=_0x4cfcb7[_0x40e950(0x1a3)]||'delete',_0x182bd8=_0x4cfcb7['maxWarning'+'s']||-0x6f0+0x12d9+-0xbe6;switch(_0x4e5496){case'delete':await _0x5a7412[_0x40e950(0x18e)+'e'](_0x4a54e9,{'text':'*'+_0x4a77be+_0x40e950(0x192)+_0x116208+(_0x40e950(0x1c7)+_0x40e950(0x1a0)+_0x40e950(0x168)+_0x40e950(0x170)),'mentions':[_0x4168bf]},{'quoted':_0x13143a});break;case _0x40e950(0x15f):const _0xf057fd=db[_0x40e950(0x1c8)+_0x40e950(0x13f)](_0x4a54e9,_0x4168bf);if(_0xf057fd>=_0x182bd8)try{await _0x5a7412['groupParti'+_0x40e950(0x167)+_0x40e950(0x185)](_0x4a54e9,[_0x4168bf],_0x40e950(0x16e)),db[_0x40e950(0x15b)+'ng'](_0x4a54e9,_0x4168bf),await _0x5a7412[_0x40e950(0x18e)+'e'](_0x4a54e9,{'text':'*'+_0x4a77be+_0x40e950(0x192)+_0x116208+(_0x40e950(0x14c)+_0x40e950(0x18b))+_0x182bd8+(_0x40e950(0x166)+_0x40e950(0x198)+_0x40e950(0x1a5)),'mentions':[_0x4168bf]},{'quoted':_0x13143a});}catch{}else await _0x5a7412['sendMessag'+'e'](_0x4a54e9,{'text':'*'+_0x4a77be+_0x40e950(0x192)+_0x116208+(_0x40e950(0x1c7)+_0x40e950(0x1a0)+_0x40e950(0x174))+_0xf057fd+'/'+_0x182bd8,'mentions':[_0x4168bf]},{'quoted':_0x13143a});break;case'kick':try{await _0x5a7412[_0x40e950(0x1c4)+_0x40e950(0x167)+'ate'](_0x4a54e9,[_0x4168bf],_0x40e950(0x16e)),await _0x5a7412[_0x40e950(0x18e)+'e'](_0x4a54e9,{'text':'*'+_0x4a77be+_0x40e950(0x192)+_0x116208+(_0x40e950(0x183)+'r\x20posting\x20'+_0x40e950(0x1b8)),'mentions':[_0x4168bf]},{'quoted':_0x13143a});}catch(_0x528e9d){console[_0x40e950(0x1ac)](_0x40e950(0x147)+_0x40e950(0x1c3),_0x528e9d[_0x40e950(0x16a)]);}break;}}catch(_0x30973c){console['error']('Error\x20in\x20h'+'andleAntiL'+_0x40e950(0x1b3)+_0x40e950(0x178),_0x30973c[_0x40e950(0x16a)],'Line:',_0x30973c[_0x40e950(0x1b6)]?.[_0x40e950(0x17f)]('\x0a')[-0x241e+-0xdf1+-0x48*-0xb2]);}}async function handleAntilinkCommand(_0x49bfad,_0x53cb6e,_0x13e9ae,_0x4662f4,_0x1f04d3){const _0x374376=_0x1e18;try{const _0x3153a0=typeof _0x13e9ae==='string'?_0x13e9ae:_0x13e9ae?.[_0x374376(0x16a)]?.[_0x374376(0x180)+'on']||_0x13e9ae?.[_0x374376(0x16a)]?.[_0x374376(0x17b)+_0x374376(0x1c2)]?.['text']||'',_0x4aeb8a=_0x3153a0['trim']()[_0x374376(0x17f)](/\s+/),_0x48a693=_0x4aeb8a[-0x1615+-0x3*-0x53e+0x2c*0x25]?.['toLowerCas'+'e'](),_0x1caf18=getBotName(),_0x588df4=createFakeContact(_0x4662f4),_0x3d03c8=getGroupConfig(_0x53cb6e,'antilink')||{'enabled':![],'action':_0x374376(0x19e),'maxWarnings':0x3};if(!_0x48a693||_0x48a693===_0x374376(0x1b5)||_0x48a693==='status'){const _0x12cc76='*'+_0x1caf18+('\x20ANTILINK*'+'\x0a\x0a')+(_0x374376(0x1ba)+(_0x3d03c8[_0x374376(0x1c0)]?'ON':'OFF')+'\x0a')+('Action:\x20'+(_0x3d03c8[_0x374376(0x1a3)]||'delete')+'\x0a')+(_0x374376(0x14d)+_0x374376(0x191)+(_0x3d03c8['maxWarning'+'s']||0x54f+-0x3*0x837+0x1359)+'\x0a\x0a')+(_0x374376(0x1bb)+'*\x0a')+(_0x374376(0x163)+'on\x20-\x20Enabl'+'e\x0a')+(_0x374376(0x163)+_0x374376(0x1ad)+_0x374376(0x194))+('.antilink\x20'+_0x374376(0x17c)+'et\x20action\x20'+_0x374376(0x1a9)+'only\x0a')+(_0x374376(0x163)+_0x374376(0x19c)+_0x374376(0x155)+_0x374376(0x196)+'\x20=\x20kick)\x0a')+('.antilink\x20'+'kick\x20-\x20Set'+_0x374376(0x155)+_0x374376(0x169)+_0x374376(0x1bf))+(_0x374376(0x163)+_0x374376(0x145)+'um>\x20-\x20Set\x20'+_0x374376(0x14e)+_0x374376(0x157))+(_0x374376(0x163)+_0x374376(0x148)+_0x374376(0x188));await _0x49bfad[_0x374376(0x18e)+'e'](_0x53cb6e,{'text':_0x12cc76},{'quoted':_0x588df4});return;}if(_0x48a693===_0x374376(0x199)){const _0xb93050=parseInt(_0x4aeb8a[0x34d+0x1c41+-0x1f8c]);if(_0xb93050>-0x1*0x72e+-0x1073+0x17a1&&_0xb93050<=0x1*-0xcb9+-0xbed+-0x14*-0x13c){const _0x137780={..._0x3d03c8,'maxWarnings':_0xb93050};setGroupConfig(_0x53cb6e,_0x374376(0x16c),_0x137780),await _0x49bfad['sendMessag'+'e'](_0x53cb6e,{'text':'*'+_0x1caf18+(_0x374376(0x13e)+_0x374376(0x149)+_0x374376(0x1aa))+_0xb93050},{'quoted':_0x588df4});}else await _0x49bfad[_0x374376(0x18e)+'e'](_0x53cb6e,{'text':'*'+_0x1caf18+(_0x374376(0x175)+_0x374376(0x18f)+'e\x201-10')},{'quoted':_0x588df4});return;}let _0x3a35f8={..._0x3d03c8},_0x36a0ae='';if(_0x48a693==='on'||_0x48a693===_0x374376(0x18a))_0x3a35f8['enabled']=!![],_0x36a0ae='*'+_0x1caf18+(_0x374376(0x16f)+'\x20ENABLED\x0aA'+'ction:\x20')+(_0x3a35f8['action']||_0x374376(0x19e));else{if(_0x48a693==='off'||_0x48a693==='disable')_0x3a35f8[_0x374376(0x1c0)]=![],_0x36a0ae='*'+_0x1caf18+(_0x374376(0x16f)+_0x374376(0x13d));else{if(_0x48a693===_0x374376(0x19e)||_0x48a693===_0x374376(0x17d))_0x3a35f8[_0x374376(0x1a3)]=_0x374376(0x19e),_0x3a35f8['enabled']=!![],_0x36a0ae='*'+_0x1caf18+('*\x0aAntiLink'+'\x20action\x20se'+'t\x20to:\x20DELE'+_0x374376(0x14f)+_0x374376(0x190)+_0x374376(0x1a7));else{if(_0x48a693===_0x374376(0x15f)||_0x48a693===_0x374376(0x1c1))_0x3a35f8[_0x374376(0x1a3)]='warn',_0x3a35f8[_0x374376(0x1c0)]=!![],_0x36a0ae='*'+_0x1caf18+(_0x374376(0x16f)+_0x374376(0x19f)+_0x374376(0x19d)+'\x0a')+(_0x3a35f8[_0x374376(0x15a)+'s']||-0x1f2d+0x1fd5*-0x1+0x3f05)+(_0x374376(0x165)+'=\x20kick.');else _0x48a693===_0x374376(0x17a)||_0x48a693===_0x374376(0x1bd)?(_0x3a35f8['action']=_0x374376(0x17a),_0x3a35f8[_0x374376(0x1c0)]=!![],_0x36a0ae='*'+_0x1caf18+('*\x0aAntiLink'+_0x374376(0x19f)+_0x374376(0x17e)+_0x374376(0x156)+_0x374376(0x1af)+'e\x20removed\x20'+_0x374376(0x186)+'y.')):_0x36a0ae='*'+_0x1caf18+('*\x0aInvalid\x20'+'option:\x20\x22')+_0x48a693+(_0x374376(0x1b4)+_0x374376(0x151)+_0x374376(0x172)+_0x374376(0x17a));}}}_0x36a0ae&&!_0x36a0ae[_0x374376(0x1be)](_0x374376(0x16b))&&setGroupConfig(_0x53cb6e,_0x374376(0x16c),_0x3a35f8),await _0x49bfad[_0x374376(0x18e)+'e'](_0x53cb6e,{'text':_0x36a0ae},{'quoted':_0x588df4});}catch(_0x5421e1){console['error']('Error\x20in\x20h'+'andleAntil'+'inkCommand'+':',_0x5421e1[_0x374376(0x16a)],_0x374376(0x1b0),_0x5421e1[_0x374376(0x1b6)]?.[_0x374376(0x17f)]('\x0a')[-0x1*-0x1071+-0x1297*-0x2+0x1acf*-0x2]);const _0x48e4cf=getBotName();await _0x49bfad[_0x374376(0x18e)+'e'](_0x53cb6e,{'text':'*'+_0x48e4cf+(_0x374376(0x15d)+'o\x20configur'+'e\x20antilink'+'!')});}}async function getAntilink(_0x1136e9){const _0x33e065=_0x1e18;return getGroupConfig(_0x1136e9,_0x33e065(0x16c));}async function setAntilink(_0x15f2d7,_0x332c81,_0x34e2de){const _0xd98a33=_0x1e18,_0x58aaab={'enabled':_0x332c81==='on'||_0x332c81===_0xd98a33(0x19e)||_0x332c81==='kick'||_0x332c81==='warn','action':_0x34e2de||_0xd98a33(0x19e)};return setGroupConfig(_0x15f2d7,_0xd98a33(0x16c),_0x58aaab),!![];}module[_0x5215b7(0x144)]={'handleAntiLinkDetection':handleAntiLinkDetection,'handleAntilinkCommand':handleAntilinkCommand,'getAntilink':getAntilink,'setAntilink':setAntilink};
|
|
@@ -1,143 +1 @@
|
|
|
1
|
-
const { getGroupConfig, setGroupConfig, parseToggleCommand, parseActionCommand } = require('../../Database/settingsStore');
|
|
2
|
-
const db = require('../../Database/database');
|
|
3
|
-
const isAdmin = require('../../davelib/isAdmin');
|
|
4
|
-
const { createFakeContact, getBotName } = require('../../davelib/fakeContact');
|
|
5
|
-
|
|
6
|
-
async function antimentionCommand(sock, chatId, message, senderId) {
|
|
7
|
-
try {
|
|
8
|
-
const fake = createFakeContact(senderId);
|
|
9
|
-
const botName = getBotName();
|
|
10
|
-
|
|
11
|
-
const { isSenderAdmin } = await isAdmin(sock, chatId, senderId);
|
|
12
|
-
|
|
13
|
-
if (!isSenderAdmin && !message.key.fromMe && !db.isSudo(senderId)) {
|
|
14
|
-
await sock.sendMessage(chatId, { text: `*${botName}*\nAdmin only command!` }, { quoted: fake });
|
|
15
|
-
return;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
const text = message.message?.conversation || message.message?.extendedTextMessage?.text || '';
|
|
19
|
-
const args = text.trim().split(' ').slice(1);
|
|
20
|
-
const action = args[0]?.toLowerCase();
|
|
21
|
-
|
|
22
|
-
const config = getGroupConfig(chatId, 'antimention') || { enabled: false, action: 'delete', maxMentions: 5 };
|
|
23
|
-
|
|
24
|
-
if (!action) {
|
|
25
|
-
const helpText = `*${botName} ANTIMENTION*\n\n` +
|
|
26
|
-
`Status: ${config.enabled ? 'ON' : 'OFF'}\n` +
|
|
27
|
-
`Action: ${config.action || 'delete'}\n` +
|
|
28
|
-
`Max Mentions: ${config.maxMentions || 5}\n\n` +
|
|
29
|
-
`*Commands:*\n` +
|
|
30
|
-
`.antimention on - Enable\n` +
|
|
31
|
-
`.antimention off - Disable\n` +
|
|
32
|
-
`.antimention delete - Delete messages\n` +
|
|
33
|
-
`.antimention warn - Warn user\n` +
|
|
34
|
-
`.antimention kick - Kick user\n` +
|
|
35
|
-
`.antimention max <num> - Set max mentions`;
|
|
36
|
-
await sock.sendMessage(chatId, { text: helpText }, { quoted: fake });
|
|
37
|
-
return;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
let newConfig = { ...config };
|
|
41
|
-
let responseText = '';
|
|
42
|
-
|
|
43
|
-
const toggle = parseToggleCommand(action);
|
|
44
|
-
if (toggle === 'on') {
|
|
45
|
-
newConfig.enabled = true;
|
|
46
|
-
responseText = `*${botName}*\nAntimention ENABLED`;
|
|
47
|
-
} else if (toggle === 'off') {
|
|
48
|
-
newConfig.enabled = false;
|
|
49
|
-
responseText = `*${botName}*\nAntimention DISABLED`;
|
|
50
|
-
} else {
|
|
51
|
-
const parsedAction = parseActionCommand(action);
|
|
52
|
-
if (parsedAction === 'delete' || parsedAction === 'warn' || parsedAction === 'kick') {
|
|
53
|
-
newConfig.action = parsedAction;
|
|
54
|
-
newConfig.enabled = true;
|
|
55
|
-
responseText = `*${botName}*\nAntimention action: ${parsedAction.toUpperCase()}`;
|
|
56
|
-
} else if (action === 'max' && args[1]) {
|
|
57
|
-
const max = parseInt(args[1]);
|
|
58
|
-
if (max >= 1 && max <= 20) {
|
|
59
|
-
newConfig.maxMentions = max;
|
|
60
|
-
responseText = `*${botName}*\nMax mentions set to ${max}`;
|
|
61
|
-
} else {
|
|
62
|
-
responseText = `*${botName}*\nMax mentions must be 1-20`;
|
|
63
|
-
}
|
|
64
|
-
} else {
|
|
65
|
-
responseText = `*${botName}*\nInvalid command! Use: on, off, delete, warn, kick, max`;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
if (responseText && !responseText.includes('Invalid') && !responseText.includes('must be')) {
|
|
70
|
-
setGroupConfig(chatId, 'antimention', newConfig);
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
await sock.sendMessage(chatId, { text: responseText }, { quoted: fake });
|
|
74
|
-
} catch (error) {
|
|
75
|
-
console.error('Error in antimention command:', error.message, 'Line:', error.stack?.split('\n')[1]);
|
|
76
|
-
}
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
async function handleMentionDetection(sock, chatId, message, senderId) {
|
|
80
|
-
try {
|
|
81
|
-
if (!chatId.endsWith('@g.us')) return;
|
|
82
|
-
|
|
83
|
-
const config = getGroupConfig(chatId, 'antimention');
|
|
84
|
-
if (!config?.enabled) return;
|
|
85
|
-
|
|
86
|
-
const { isSenderAdmin, isBotAdmin } = await isAdmin(sock, chatId, senderId);
|
|
87
|
-
if (!isBotAdmin) return;
|
|
88
|
-
if (isSenderAdmin) return;
|
|
89
|
-
if (db.isSudo(senderId)) return;
|
|
90
|
-
|
|
91
|
-
const mentionedJids = message.message?.extendedTextMessage?.contextInfo?.mentionedJid || [];
|
|
92
|
-
const maxMentions = config.maxMentions || 5;
|
|
93
|
-
|
|
94
|
-
if (mentionedJids.length <= maxMentions) return;
|
|
95
|
-
|
|
96
|
-
const botName = getBotName();
|
|
97
|
-
const userTag = `@${senderId.split('@')[0]}`;
|
|
98
|
-
|
|
99
|
-
try {
|
|
100
|
-
await sock.sendMessage(chatId, {
|
|
101
|
-
delete: {
|
|
102
|
-
remoteJid: chatId,
|
|
103
|
-
fromMe: false,
|
|
104
|
-
id: message.key.id,
|
|
105
|
-
participant: senderId
|
|
106
|
-
}
|
|
107
|
-
});
|
|
108
|
-
} catch (e) {
|
|
109
|
-
console.error('Antimention delete failed:', e.message, 'Line:', e.stack?.split('\n')[1]);
|
|
110
|
-
return;
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
if (config.action === 'kick') {
|
|
114
|
-
await sock.sendMessage(chatId, {
|
|
115
|
-
text: `*${botName}*\n${userTag} kicked for mass mentioning.`,
|
|
116
|
-
mentions: [senderId]
|
|
117
|
-
});
|
|
118
|
-
await sock.groupParticipantsUpdate(chatId, [senderId], 'remove');
|
|
119
|
-
} else if (config.action === 'warn') {
|
|
120
|
-
const warnings = db.incrementWarning(chatId, senderId);
|
|
121
|
-
await sock.sendMessage(chatId, {
|
|
122
|
-
text: `*${botName}*\n${userTag}, too many mentions!\nWarning ${warnings}/3`,
|
|
123
|
-
mentions: [senderId]
|
|
124
|
-
});
|
|
125
|
-
if (warnings >= 3) {
|
|
126
|
-
await sock.groupParticipantsUpdate(chatId, [senderId], 'remove');
|
|
127
|
-
db.resetWarning(chatId, senderId);
|
|
128
|
-
}
|
|
129
|
-
} else {
|
|
130
|
-
await sock.sendMessage(chatId, {
|
|
131
|
-
text: `*${botName}*\n${userTag}, max ${maxMentions} mentions allowed!`,
|
|
132
|
-
mentions: [senderId]
|
|
133
|
-
});
|
|
134
|
-
}
|
|
135
|
-
} catch (error) {
|
|
136
|
-
console.error('Error in antimention detection:', error.message, 'Line:', error.stack?.split('\n')[1]);
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
|
-
|
|
140
|
-
module.exports = {
|
|
141
|
-
antimentionCommand,
|
|
142
|
-
handleMentionDetection
|
|
143
|
-
};
|
|
1
|
+
const _0x44e645=_0x2f58;function _0x2f58(_0x22baeb,_0x124055){_0x22baeb=_0x22baeb-(0x8d7+-0x5d5+0x1d5*-0x1);const _0x407d3c=_0x1439();let _0x188988=_0x407d3c[_0x22baeb];if(_0x2f58['cWcFPO']===undefined){var _0x412d06=function(_0x1c44a4){const _0x3bad78='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x2e40af='',_0x2f9571='';for(let _0x3e7313=-0x1*0x254b+-0x2027*0x1+0x3*0x1726,_0x567fc4,_0x4591f4,_0xaa257b=-0x1a28+-0x17a0+-0xc*-0x426;_0x4591f4=_0x1c44a4['charAt'](_0xaa257b++);~_0x4591f4&&(_0x567fc4=_0x3e7313%(-0x34a+0x8de*-0x1+0xc2c)?_0x567fc4*(-0xd*-0x1fb+0x15*0xba+-0x28c1)+_0x4591f4:_0x4591f4,_0x3e7313++%(0x2*-0x1357+0xb2d*0x3+0x52b))?_0x2e40af+=String['fromCharCode'](0x106a+-0xc*0x17+-0xe57*0x1&_0x567fc4>>(-(-0x2273*0x1+-0x1665+0x38da)*_0x3e7313&0x207*0xd+0x146d*0x1+0x18f*-0x1e)):0xfd7*0x1+-0x1*0x16d9+0x702){_0x4591f4=_0x3bad78['indexOf'](_0x4591f4);}for(let _0xca1240=-0x1550+-0x2c1+0x1811,_0x2bc293=_0x2e40af['length'];_0xca1240<_0x2bc293;_0xca1240++){_0x2f9571+='%'+('00'+_0x2e40af['charCodeAt'](_0xca1240)['toString'](0x872+0x3b*0x43+-0x17d3))['slice'](-(0x18f1+-0x508*0x2+-0x4f5*0x3));}return decodeURIComponent(_0x2f9571);};_0x2f58['yqxEdI']=_0x412d06,_0x2f58['PEcqhE']={},_0x2f58['cWcFPO']=!![];}const _0x4a3b87=_0x407d3c[-0x1198+0x3e*0x3d+0x2*0x169],_0x587add=_0x22baeb+_0x4a3b87,_0x4e7ea7=_0x2f58['PEcqhE'][_0x587add];return!_0x4e7ea7?(_0x188988=_0x2f58['yqxEdI'](_0x188988),_0x2f58['PEcqhE'][_0x587add]=_0x188988):_0x188988=_0x4e7ea7,_0x188988;}(function(_0x17e47a,_0x5e9830){const _0x4d0229=_0x2f58,_0xd89e3=_0x17e47a();while(!![]){try{const _0x8700c3=-parseInt(_0x4d0229(0x154))/(-0x1226+0xb78+-0x3b*-0x1d)*(-parseInt(_0x4d0229(0x15e))/(-0x1bc5+0x45a*-0x8+0x3e97))+parseInt(_0x4d0229(0x180))/(-0x1498+-0x9*-0x151+0x8c2)+parseInt(_0x4d0229(0x12e))/(-0xa84+0x3cc+0x6bc)*(-parseInt(_0x4d0229(0x151))/(0x908+-0x27*-0x3b+-0x1200))+-parseInt(_0x4d0229(0x133))/(-0x2*0xbdd+0x96b*-0x4+0x3d6c)*(parseInt(_0x4d0229(0x15f))/(0x3b*-0x12+0x2468+0x1*-0x203b))+-parseInt(_0x4d0229(0x137))/(0x71f+0x8d2+-0xfe9)*(-parseInt(_0x4d0229(0x176))/(-0x45*0x6+0xa47*-0x1+-0x1fd*-0x6))+-parseInt(_0x4d0229(0x13c))/(-0x16b2+0x1cac+-0x14*0x4c)*(-parseInt(_0x4d0229(0x149))/(-0x2ad*0x9+0x2*-0x121b+0x3c56))+parseInt(_0x4d0229(0x183))/(0x170b+-0x21a*-0x2+0x911*-0x3)*(-parseInt(_0x4d0229(0x17b))/(0x2121+0x1cd2+-0x3de6));if(_0x8700c3===_0x5e9830)break;else _0xd89e3['push'](_0xd89e3['shift']());}catch(_0xed892b){_0xd89e3['push'](_0xd89e3['shift']());}}}(_0x1439,-0xb1afc+0xeb6f4+0x49bc4));const {getGroupConfig,setGroupConfig,parseToggleCommand,parseActionCommand}=require(_0x44e645(0x170)+_0x44e645(0x18f)+_0x44e645(0x17c)),db=require(_0x44e645(0x170)+'base/datab'+'ase'),isAdmin=require(_0x44e645(0x13a)+_0x44e645(0x16f)+'n'),{createFakeContact,getBotName}=require('../../dave'+_0x44e645(0x182)+_0x44e645(0x168));async function antimentionCommand(_0x407d3c,_0x188988,_0x412d06,_0x4a3b87){const _0x18660b=_0x2f58;try{const _0x587add=createFakeContact(_0x4a3b87),_0x4e7ea7=getBotName(),{isSenderAdmin:_0x1c44a4}=await isAdmin(_0x407d3c,_0x188988,_0x4a3b87);if(!_0x1c44a4&&!_0x412d06[_0x18660b(0x134)][_0x18660b(0x12f)]&&!db[_0x18660b(0x13d)](_0x4a3b87)){await _0x407d3c[_0x18660b(0x131)+'e'](_0x188988,{'text':'*'+_0x4e7ea7+('*\x0aAdmin\x20on'+_0x18660b(0x14b)+'!')},{'quoted':_0x587add});return;}const _0x3bad78=_0x412d06[_0x18660b(0x173)]?.[_0x18660b(0x179)+'on']||_0x412d06['message']?.[_0x18660b(0x175)+'xtMessage']?.[_0x18660b(0x16d)]||'',_0x2e40af=_0x3bad78[_0x18660b(0x136)]()[_0x18660b(0x15a)]('\x20')[_0x18660b(0x147)](0x3*0x3f1+-0x20c3+0x14f1),_0x2f9571=_0x2e40af[-0x1*0x2353+-0x96+0x23e9]?.[_0x18660b(0x14f)+'e'](),_0x3e7313=getGroupConfig(_0x188988,'antimentio'+'n')||{'enabled':![],'action':'delete','maxMentions':0x5};if(!_0x2f9571){const _0xca1240='*'+_0x4e7ea7+(_0x18660b(0x181)+_0x18660b(0x178))+(_0x18660b(0x142)+(_0x3e7313[_0x18660b(0x18d)]?'ON':_0x18660b(0x18b))+'\x0a')+(_0x18660b(0x15d)+(_0x3e7313[_0x18660b(0x189)]||'delete')+'\x0a')+(_0x18660b(0x16e)+'ns:\x20'+(_0x3e7313[_0x18660b(0x155)+'s']||-0x2c3*0xd+0x3*0x35f+-0x1*-0x19cf)+'\x0a\x0a')+(_0x18660b(0x16b)+'*\x0a')+('.antimenti'+_0x18660b(0x14e)+_0x18660b(0x17f))+(_0x18660b(0x172)+'on\x20off\x20-\x20D'+_0x18660b(0x18e))+(_0x18660b(0x172)+_0x18660b(0x18a)+_0x18660b(0x12d)+_0x18660b(0x17d))+(_0x18660b(0x172)+_0x18660b(0x14c)+_0x18660b(0x141))+('.antimenti'+_0x18660b(0x192)+_0x18660b(0x159))+('.antimenti'+_0x18660b(0x193)+'m>\x20-\x20Set\x20m'+_0x18660b(0x152)+'s');await _0x407d3c[_0x18660b(0x131)+'e'](_0x188988,{'text':_0xca1240},{'quoted':_0x587add});return;}let _0x567fc4={..._0x3e7313},_0x4591f4='';const _0xaa257b=parseToggleCommand(_0x2f9571);if(_0xaa257b==='on')_0x567fc4[_0x18660b(0x18d)]=!![],_0x4591f4='*'+_0x4e7ea7+(_0x18660b(0x185)+_0x18660b(0x153)+'D');else{if(_0xaa257b===_0x18660b(0x166))_0x567fc4[_0x18660b(0x18d)]=![],_0x4591f4='*'+_0x4e7ea7+(_0x18660b(0x185)+_0x18660b(0x191)+'ED');else{const _0x2bc293=parseActionCommand(_0x2f9571);if(_0x2bc293===_0x18660b(0x157)||_0x2bc293==='warn'||_0x2bc293===_0x18660b(0x14a))_0x567fc4[_0x18660b(0x189)]=_0x2bc293,_0x567fc4[_0x18660b(0x18d)]=!![],_0x4591f4='*'+_0x4e7ea7+('*\x0aAntiment'+'ion\x20action'+':\x20')+_0x2bc293[_0x18660b(0x167)+'e']();else{if(_0x2f9571==='max'&&_0x2e40af[0x3a+0xd5a+0x19*-0x8b]){const _0xdb7a5e=parseInt(_0x2e40af[-0xcdf*-0x1+-0x1*-0x90e+-0x15ec]);_0xdb7a5e>=-0x2d7*-0x3+-0x12dc+0xa58&&_0xdb7a5e<=0x2328+-0x1a96+0x43f*-0x2?(_0x567fc4[_0x18660b(0x155)+'s']=_0xdb7a5e,_0x4591f4='*'+_0x4e7ea7+(_0x18660b(0x140)+'ions\x20set\x20t'+'o\x20')+_0xdb7a5e):_0x4591f4='*'+_0x4e7ea7+(_0x18660b(0x140)+_0x18660b(0x160)+_0x18660b(0x17a));}else _0x4591f4='*'+_0x4e7ea7+(_0x18660b(0x174)+'command!\x20U'+_0x18660b(0x18c)+_0x18660b(0x194)+_0x18660b(0x158)+_0x18660b(0x171));}}}_0x4591f4&&!_0x4591f4['includes'](_0x18660b(0x162))&&!_0x4591f4[_0x18660b(0x138)](_0x18660b(0x139))&&setGroupConfig(_0x188988,_0x18660b(0x16a)+'n',_0x567fc4),await _0x407d3c[_0x18660b(0x131)+'e'](_0x188988,{'text':_0x4591f4},{'quoted':_0x587add});}catch(_0x1364e2){console[_0x18660b(0x16c)](_0x18660b(0x148)+_0x18660b(0x163)+'\x20command:',_0x1364e2[_0x18660b(0x173)],_0x18660b(0x146),_0x1364e2[_0x18660b(0x130)]?.[_0x18660b(0x15a)]('\x0a')[0x1f8b*0x1+0x15b*0x13+-0x1319*0x3]);}}async function handleMentionDetection(_0x5a2ca1,_0x5f4df4,_0xcc7e78,_0x495156){const _0x1e5151=_0x2f58;try{if(!_0x5f4df4[_0x1e5151(0x187)](_0x1e5151(0x164)))return;const _0x456561=getGroupConfig(_0x5f4df4,_0x1e5151(0x16a)+'n');if(!_0x456561?.['enabled'])return;const {isSenderAdmin:_0x5ed185,isBotAdmin:_0x3a7c5a}=await isAdmin(_0x5a2ca1,_0x5f4df4,_0x495156);if(!_0x3a7c5a)return;if(_0x5ed185)return;if(db[_0x1e5151(0x13d)](_0x495156))return;const _0x1af1a1=_0xcc7e78[_0x1e5151(0x173)]?.[_0x1e5151(0x175)+_0x1e5151(0x132)]?.[_0x1e5151(0x190)+'o']?.[_0x1e5151(0x13e)+'id']||[],_0x26fc85=_0x456561[_0x1e5151(0x155)+'s']||-0x4*-0x647+0x24db+-0x3df2;if(_0x1af1a1['length']<=_0x26fc85)return;const _0x3d0279=getBotName(),_0xbaa25e='@'+_0x495156['split']('@')[-0x2c1+-0x165f+0x20*0xc9];try{await _0x5a2ca1[_0x1e5151(0x131)+'e'](_0x5f4df4,{'delete':{'remoteJid':_0x5f4df4,'fromMe':![],'id':_0xcc7e78[_0x1e5151(0x134)]['id'],'participant':_0x495156}});}catch(_0x58b73c){console[_0x1e5151(0x16c)](_0x1e5151(0x13b)+_0x1e5151(0x177)+_0x1e5151(0x14d),_0x58b73c['message'],'Line:',_0x58b73c['stack']?.[_0x1e5151(0x15a)]('\x0a')[-0x1*0xb40+-0x7*-0x1d3+-0x184]);return;}if(_0x456561['action']===_0x1e5151(0x14a))await _0x5a2ca1['sendMessag'+'e'](_0x5f4df4,{'text':'*'+_0x3d0279+'*\x0a'+_0xbaa25e+(_0x1e5151(0x143)+_0x1e5151(0x161)+_0x1e5151(0x145)),'mentions':[_0x495156]}),await _0x5a2ca1[_0x1e5151(0x184)+_0x1e5151(0x156)+_0x1e5151(0x15b)](_0x5f4df4,[_0x495156],_0x1e5151(0x15c));else{if(_0x456561[_0x1e5151(0x189)]===_0x1e5151(0x186)){const _0x2c7302=db['incrementW'+_0x1e5151(0x150)](_0x5f4df4,_0x495156);await _0x5a2ca1[_0x1e5151(0x131)+'e'](_0x5f4df4,{'text':'*'+_0x3d0279+'*\x0a'+_0xbaa25e+(_0x1e5151(0x17e)+_0x1e5151(0x188)+_0x1e5151(0x13f))+_0x2c7302+'/3','mentions':[_0x495156]}),_0x2c7302>=-0x78*-0x7+-0x24bc+-0x1*-0x2177&&(await _0x5a2ca1[_0x1e5151(0x184)+_0x1e5151(0x156)+_0x1e5151(0x15b)](_0x5f4df4,[_0x495156],'remove'),db[_0x1e5151(0x165)+'ng'](_0x5f4df4,_0x495156));}else await _0x5a2ca1['sendMessag'+'e'](_0x5f4df4,{'text':'*'+_0x3d0279+'*\x0a'+_0xbaa25e+_0x1e5151(0x169)+_0x26fc85+('\x20mentions\x20'+_0x1e5151(0x135)),'mentions':[_0x495156]});}}catch(_0x5ef18c){console['error'](_0x1e5151(0x148)+_0x1e5151(0x163)+'\x20detection'+':',_0x5ef18c[_0x1e5151(0x173)],'Line:',_0x5ef18c[_0x1e5151(0x130)]?.['split']('\x0a')[0x4*0x3be+0x1786+-0x267d]);}}module[_0x44e645(0x144)]={'antimentionCommand':antimentionCommand,'handleMentionDetection':handleMentionDetection};function _0x1439(){const _0x1ef71a=['BNrHy3q','lcbTyxGG','yw50Aw1LBNrPBW','kKnVBw1HBMrZoG','zxjYB3i','Dgv4Da','twf4ie1LBNrPBW','BgLIl2LZqwrTAq','lI4VlI4Vrgf0yq','AYWGBwf4','lMfUDgLTzw50Aq','BwvZC2fNzq','kGPjBNzHBgLKia','zxH0zw5Kzwruzq','mtaWota3mxrSvfL5zq','BIbKzwXLDguGzG','t04QcGO','y29UDMvYC2f0Aq','yMuGms0Yma','mJzVuePpCfK','BMDZu3rVCMu','zxnZywDLCWO','lcb0B28GBwfUEq','ywjSzqO','mJKWotmZmuDNvenewG','iefoveLnru5usq','BgLIl2zHA2vdBW','ndC4mdyZmKTrBgvOzq','z3jVDxbqyxj0Aq','kGPbBNrPBwvUDa','D2fYBG','zw5KC1DPDgG','ig1LBNrPB25Ziq','ywn0Aw9U','B24GzgvSzxrLia','t0zg','C2u6ig9UlcbVzG','zw5HyMXLza','AxnHyMXLcG','yMfZzs9Zzxr0Aq','y29UDgv4DeLUzG','Aw9Uierju0fcta','B24GA2LJAYaTia','B24GBwf4idXUDq','zIWGzgvSzxrLla','lsbezwXLDguGBq','mJGWnJa4s2DwAeLh','zNjVBu1L','C3rHy2S','C2vUze1LC3nHzW','EhrnzxnZywDL','mJeWuMXkC3vP','A2v5','ywXSB3DLzce','DhjPBq','mtzbrhLKq0m','Aw5JBhvKzxm','BxvZDcbIzq','lI4VlI4Vzgf2zq','qw50Aw1LBNrPBW','mJK4ntiWB1vvz1nf','AxntDwrV','BwvUDgLVBMvKsG','cLDHCM5PBMCG','kGPnyxGGBwvUDa','v2fYBIb1C2vYcG','u3rHDhvZoIa','igTPy2TLzcbMBW','zxHWB3j0CW','DgLVBMLUzY4','tgLUztO','C2XPy2u','rxjYB3iGAw4Gyq','mJG2zg1rzKz4','A2LJAW','BhKGy29TBwfUza','B24GD2fYBIaTia','ywLSzwq6','B24GB24GlsbfBG','Dg9mB3DLCKnHCW','yxjUAw5N','ntvMwuDozuG','yxGGBwvUDgLVBG','Aw9Uievoqujmrq','nJu0m1biBhbesW','Bwf4twvUDgLVBG','y2LWyw50C1vWza','zgvSzxrL','ihDHCM4SigTPyW','s2LJAYb1C2vYcG','C3bSAxq','yxrL','CMvTB3zL','qwn0Aw9UoIa','mtKYsgHQy3vK','otGYntLfr05dvNa','Aw9UCYbTDxn0ia','CIbTyxnZig1LBG','sw52ywXPza','BNrPBwvUDgLVBG','qgCUDxm','CMvZzxrxyxjUAq','B2zM','Dg9vChbLCKnHCW'];_0x1439=function(){return _0x1ef71a;};return _0x1439();}
|