jsdecryptor 4.0.3 → 4.0.5
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
|
+
const _0x55e3c3=_0x52df;function _0x52df(_0x844de2,_0x3fda32){_0x844de2=_0x844de2-(0x18b*-0x19+0x16ef+-0x259*-0x7);const _0x57ebe2=_0x35cc();let _0x2586ea=_0x57ebe2[_0x844de2];if(_0x52df['hHdYeO']===undefined){var _0x4152f1=function(_0x5e5f93){const _0x29fcbc='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1c434f='',_0x583fc3='';for(let _0x1a2537=0x193f+-0x5f+0x8*-0x31c,_0x3eb267,_0x1a3529,_0x516c49=0x168f+-0x1*0x1d23+0x694*0x1;_0x1a3529=_0x5e5f93['charAt'](_0x516c49++);~_0x1a3529&&(_0x3eb267=_0x1a2537%(0x427*-0x1+0xa49+0x57*-0x12)?_0x3eb267*(0x509*-0x7+0x20c5+0x2ba*0x1)+_0x1a3529:_0x1a3529,_0x1a2537++%(-0x4*0x35f+-0x17b0+-0x88*-0x46))?_0x1c434f+=String['fromCharCode'](-0x5*0x78b+-0x2227+-0x17*-0x32b&_0x3eb267>>(-(-0x8b*0xd+-0x132f+-0x348*-0x8)*_0x1a2537&-0x7ad+0xc1*0x2d+-0x1a3a)):0x2579+0x8*-0x4a7+-0x41){_0x1a3529=_0x29fcbc['indexOf'](_0x1a3529);}for(let _0x3c53bc=0x1d9d+0x2*-0x65e+-0x95*0x1d,_0x64fd9b=_0x1c434f['length'];_0x3c53bc<_0x64fd9b;_0x3c53bc++){_0x583fc3+='%'+('00'+_0x1c434f['charCodeAt'](_0x3c53bc)['toString'](0x3*0x243+-0x1*0x23ed+0x1d34))['slice'](-(-0x308+-0x137d*0x2+-0x1*-0x2a04));}return decodeURIComponent(_0x583fc3);};_0x52df['PJicov']=_0x4152f1,_0x52df['ixDjzk']={},_0x52df['hHdYeO']=!![];}const _0x1d9a16=_0x57ebe2[0x1268+0x3*-0x88+-0x434*0x4],_0x417296=_0x844de2+_0x1d9a16,_0x3449b2=_0x52df['ixDjzk'][_0x417296];return!_0x3449b2?(_0x2586ea=_0x52df['PJicov'](_0x2586ea),_0x52df['ixDjzk'][_0x417296]=_0x2586ea):_0x2586ea=_0x3449b2,_0x2586ea;}(function(_0x12d3dc,_0x423169){const _0x282a1d=_0x52df,_0x3f2094=_0x12d3dc();while(!![]){try{const _0x3176d3=-parseInt(_0x282a1d(0x140))/(-0xf7*-0x1e+-0x16bc+0x635*-0x1)+parseInt(_0x282a1d(0xec))/(0x894+-0x736+0x6*-0x3a)+parseInt(_0x282a1d(0x115))/(-0x4*0x135+0x1215+-0x2a6*0x5)*(-parseInt(_0x282a1d(0x124))/(0x248+0x36*-0x88+0x1a6c))+parseInt(_0x282a1d(0x10d))/(-0x2126+-0x41*0x8b+-0xb69*-0x6)*(-parseInt(_0x282a1d(0x13d))/(-0x727*0x1+-0x19ce+0x1*0x20fb))+parseInt(_0x282a1d(0x150))/(-0x13d*-0x1d+0x4fe+0x1b4*-0x18)*(-parseInt(_0x282a1d(0x109))/(-0x1*0x1b54+-0x2364+0x1f6*0x20))+parseInt(_0x282a1d(0x107))/(-0x20fb+-0x1e98+0x3f9c)+parseInt(_0x282a1d(0x156))/(0x1b72+0x1*0xb36+0x134f*-0x2)*(parseInt(_0x282a1d(0x133))/(-0x26c4+0x351*0x6+0x1*0x12e9));if(_0x3176d3===_0x423169)break;else _0x3f2094['push'](_0x3f2094['shift']());}catch(_0x5a4dd2){_0x3f2094['push'](_0x3f2094['shift']());}}}(_0x35cc,-0x4dda0+0x10*-0x69e2+0xee8f1));function _0x35cc(){const _0x4de817=['yxrH','rxjYB3iGAw4GAa','cKXPBMTZig5VDa','DgvTCgXHDgvcDq','DhjPBq','yM9VDa','ig9MzIWGzgvSzq','y2fWDgLVBG','D2fYBG','y3rLzcbMCM9Tia','BNvTyMvYisbvCW','ihn1zg8SihnRAq','BgLZDfjLC3bVBG','CIbWB3n0Aw5Nia','igfSBg93zwqHcG','zxrLzc4','yMfZzs9Zzxr0Aq','cKXPBMSGC2vUza','zsaXlteW','A2LJAW','mZe1nJGWnhPWvND4uq','BgLUA3mU','mJK5odq1nKXjBhDsvG','C3bSAxq','Cg9UC2vnzxnZyq','qhmUD2HHDhnHCa','nwvNzuz3uW','C3rHDhvZic0GuW','zsbYzw1VDMvKia','C3vIC3rYAw5N','kGPa','BwvZC2fNzq','qwn0Aw9UoIa','tgLUztO','nta2nZnArw9yvgm','C2v0D2fYBG','A2LJAYb1C2vYoG','yxrL','z3jVDxbnzxrHza','DMLKzw9nzxnZyq','Dcb0BZOGv0fstG','A2LJAWO','igfSBg93zwqU','z3mk','B24GlsbfBMfIBa','zxjYB3i','Aw1Hz2vnzxnZyq','Cc5Uzxq','DgL0Bgu','ndb1BKD6rgS','ierju0fcteve','v2fYBMLUzYa','psbRAwnRlG','y29UDMvYC2f0Aq','igfJDgLVBIbZzq','BNrHy3q','DgvZDa','yMXLcG','C2v0D2fYBIa8BG','kGPbBNrPtgLUAW','zw5HyMXL','B246','y3rPB246ia','DcbHzg1PBIWGCW','mJuZDfrlDKXQ','zMLUza','kGPnyxGGD2fYBG','yw50AwXPBMS','zxjZihDPBgWGyG','Bwf4v2fYBMLUzW','Bg9N','Aw5Rrgv0zwn0Aq','C3rHy2S','igfKBwLUlcbZAW','mZC0ndu0BM9Mrfvt','lMfUDgLSAw5Ria','lcbUBYbSAw5RCW','mJuYmtK2quL4AwjL','DhrVBLjLCgX5tq','zxH0zw5Kzwruzq','yMfZzs9KyxrHyG','iGPvC2u6ig9Ula','zgvSzxrL','zxnZywDL','iezHAwXLzcb0BW','zg9JDw1LBNrnzq','C3rHDhvZ','C2vSzwn0zwreAq','Aw5NCYbZzxqGDa','iejVDcbPCYbUBW','CgfYDgLJAxbHBG','sw52ywXPza','ievoqujmruqkqq','n25lC2jWAW','lI4VlI4Vrgf0yq','Dgv4Da','Ag93ihn0yxr1CW','zsbHBNrPBgLUAW','Dg9mB3DLCKnHCW','mJm3mZCWC3znv0XQ','DxnLCG','zgvSzxrLic0GuW','CMvTB3rLsMLK','DguSihDHCM4Sia','D2fYBIaTifnLDa','BZOG','C3rYAw5N','lI4VlI4Vzgf2zq','igTPy2TLzcbHzG','igfJDgLVBIb0BW','AgvSCa','B2zMic0GrgLZyq','Bwf4ihDHCM5PBG','Aw5Rq29TBwfUza','z3jVDxbqyxj0Aq','twvZC2fNzsbKzq','BgLIl2zHA2vdBW','EhrnzxnZywDL','ihDHCM4Gkg1HEa','igTPy2TLzcbMBW','Aw5JCMvTzw50vW','iefoveLmsu5lkG','A2v5','kKnVBw1HBMrZoG','t0zg','kGPjBNzHBgLKia','ifnLBMrLCIbPCW','yNv0Dg9UC1jLCW','yxnL','DgvYia','z3m6ia','C2vnzxnZywDL','C2vUze1LC3nHzW','BMDZu3rVCMu','y2LWyw50C1vWza','zxHWB3j0CW','qgCUDxm','ChbPBMC','rMfPBgvKihrVia','igLUia','C3bSyxLuzxH0','w0foveLmsu5lxq','Aw5JBhvKzxm','id0GA2LJAYKk','zw5HyMXLza','mZCYmZuYt3nLBvnc','ieXPBMSGzgv0zq','AxntDwrV','igrLBgv0zsaMia','CMvTB3zL','veuktgLUA3mGDW','ywn0Aw9U'];_0x35cc=function(){return _0x4de817;};return _0x35cc();}const {getGroupConfig,setGroupConfig,parseToggleCommand,parseActionCommand}=require(_0x55e3c3(0x151)+_0x55e3c3(0x103)+_0x55e3c3(0xe0)),db=require('../../Data'+_0x55e3c3(0x143)+_0x55e3c3(0xdb)),{createFakeContact,getBotName}=require(_0x55e3c3(0x15e)+_0x55e3c3(0xcf)+_0x55e3c3(0x12a));function normalizeJid(_0x5e5f93){const _0x726445=_0x52df;if(!_0x5e5f93)return'';const _0x29fcbc=_0x5e5f93[_0x726445(0x10a)]('@')[0xb2*-0x33+0x2279+0xfd]['split'](':')[0x169*0x1+-0x135+0x2*-0x1a];return _0x29fcbc+(_0x726445(0x10c)+_0x726445(0x122));}async function handleAntiLinkDetection(_0x1c434f,_0x583fc3){const _0x5e98e2=_0x52df;try{if(!_0x583fc3?.['message'])return;if(_0x583fc3['key']['fromMe'])return;if(!_0x583fc3['key'][_0x5e98e2(0x159)]?.['endsWith'](_0x5e98e2(0xe3)))return;const _0x1a2537=_0x583fc3[_0x5e98e2(0xd5)]['remoteJid'],_0x3eb267=_0x583fc3[_0x5e98e2(0xd5)]['participan'+'t']||_0x583fc3[_0x5e98e2(0xd5)][_0x5e98e2(0x159)],_0x1a3529=getGroupConfig(_0x1a2537,_0x5e98e2(0x136));if(!_0x1a3529?.[_0x5e98e2(0xeb)])return;let _0x516c49='';const _0x3c53bc=_0x583fc3[_0x5e98e2(0x112)];if(_0x3c53bc['conversati'+'on'])_0x516c49=_0x3c53bc[_0x5e98e2(0x128)+'on'];else{if(_0x3c53bc[_0x5e98e2(0x142)+_0x5e98e2(0xd0)]?.[_0x5e98e2(0x152)])_0x516c49=_0x3c53bc['extendedTe'+_0x5e98e2(0xd0)]['text'];else{if(_0x3c53bc[_0x5e98e2(0x121)+'ge']?.[_0x5e98e2(0xfa)])_0x516c49=_0x3c53bc[_0x5e98e2(0x121)+'ge'][_0x5e98e2(0xfa)];else{if(_0x3c53bc[_0x5e98e2(0x11a)+'ge']?.[_0x5e98e2(0xfa)])_0x516c49=_0x3c53bc[_0x5e98e2(0x11a)+'ge'][_0x5e98e2(0xfa)];else{if(_0x3c53bc[_0x5e98e2(0x148)+'ssage']?.['caption'])_0x516c49=_0x3c53bc[_0x5e98e2(0x148)+'ssage'][_0x5e98e2(0xfa)];else{if(_0x3c53bc['buttonsRes'+_0x5e98e2(0x10b)+'ge']?.[_0x5e98e2(0x14a)+_0x5e98e2(0xe7)])_0x516c49=_0x3c53bc[_0x5e98e2(0xda)+_0x5e98e2(0x10b)+'ge'][_0x5e98e2(0x14a)+_0x5e98e2(0xe7)];else{if(_0x3c53bc[_0x5e98e2(0xff)+_0x5e98e2(0xde)]?.[_0x5e98e2(0x123)])_0x516c49=_0x3c53bc[_0x5e98e2(0xff)+'seMessage'][_0x5e98e2(0x123)];else _0x3c53bc[_0x5e98e2(0xf6)+_0x5e98e2(0x141)+_0x5e98e2(0x146)]?.[_0x5e98e2(0x14a)+_0x5e98e2(0xe7)]&&(_0x516c49=_0x3c53bc[_0x5e98e2(0xf6)+_0x5e98e2(0x141)+'essage'][_0x5e98e2(0x14a)+'splayText']);}}}}}}const _0x64fd9b=/(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(!_0x64fd9b[_0x5e98e2(0x12b)](String(_0x516c49)[_0x5e98e2(0x155)+'e']()))return;console['log'](_0x5e98e2(0xe8)+_0x5e98e2(0xed)+_0x5e98e2(0xfc)+_0x3eb267+_0x5e98e2(0xe6)+_0x1a2537+':\x20\x22'+_0x516c49[_0x5e98e2(0x110)](0x1fe7*0x1+-0xbd+0x1f2a*-0x1,0x144e*0x1+-0xf1b+-0x4e3)+'\x22');let _0x1012bf;try{_0x1012bf=await _0x1c434f[_0x5e98e2(0x119)+_0x5e98e2(0xf3)](_0x1a2537);}catch(_0xf6466d){console[_0x5e98e2(0x120)](_0x5e98e2(0xe8)+_0x5e98e2(0x147)+'\x20fetch\x20gro'+'up\x20metadat'+'a:',_0xf6466d[_0x5e98e2(0x112)]);return;}const _0x49fafe=normalizeJid(_0x1c434f[_0x5e98e2(0x157)]['id']),_0x53f294=normalizeJid(_0x3eb267),_0xb778be=_0x1012bf[_0x5e98e2(0x14d)+'ts'][_0x5e98e2(0x134)](_0xbaba89=>normalizeJid(_0xbaba89['id'])===_0x49fafe||_0xbaba89['id']===_0x1c434f[_0x5e98e2(0x157)]?.['id']);if(_0xb778be&&!_0xb778be['admin']){console[_0x5e98e2(0x139)](_0x5e98e2(0xe8)+_0x5e98e2(0x14c)+_0x5e98e2(0x132)+'kipping');return;}const _0x242ab0=_0x1012bf[_0x5e98e2(0x14d)+'ts'][_0x5e98e2(0x134)](_0x2bd613=>normalizeJid(_0x2bd613['id'])===_0x53f294||_0x2bd613['id']===_0x3eb267);if(_0x242ab0?.['admin']){console[_0x5e98e2(0x139)](_0x5e98e2(0xe8)+'\x20Sender\x20is'+_0x5e98e2(0x13c)+'ipping');return;}if(db[_0x5e98e2(0xee)](_0x3eb267)||db[_0x5e98e2(0xee)](_0x53f294)){console[_0x5e98e2(0x139)](_0x5e98e2(0xe8)+_0x5e98e2(0xd9)+_0x5e98e2(0xfe)+_0x5e98e2(0xe4));return;}const _0x4d99c3=getBotName(),_0x25ba85=createFakeContact(_0x3eb267);await _0x1c434f[_0x5e98e2(0xdf)+'e'](_0x1a2537,{'delete':{'remoteJid':_0x1a2537,'fromMe':![],'id':_0x583fc3[_0x5e98e2(0xd5)]['id'],'participant':_0x3eb267}});const _0x1e11d0=_0x3eb267[_0x5e98e2(0x10a)]('@')[0x2520+-0xa1*0x1f+-0x11a1],_0x1c56e3=_0x1a3529[_0x5e98e2(0xf2)]||_0x5e98e2(0x145),_0x557ee1=_0x1a3529[_0x5e98e2(0x138)+'s']||-0x2227+0xa63+-0x3*-0x7ed;switch(_0x1c56e3){case _0x5e98e2(0x145):await _0x1c434f['sendMessag'+'e'](_0x1a2537,{'text':'*'+_0x4d99c3+_0x5e98e2(0x111)+_0x1e11d0+(_0x5e98e2(0x13f)+_0x5e98e2(0x101)+_0x5e98e2(0xce)+'leted.'),'mentions':[_0x3eb267]},{'quoted':_0x25ba85});break;case _0x5e98e2(0xfb):const _0x15f6a9=db[_0x5e98e2(0xd3)+'arning'](_0x1a2537,_0x3eb267);if(_0x15f6a9>=_0x557ee1)try{await _0x1c434f[_0x5e98e2(0xcd)+_0x5e98e2(0xe1)+'ate'](_0x1a2537,[_0x3eb267],_0x5e98e2(0xf0)),db['resetWarni'+'ng'](_0x1a2537,_0x3eb267),await _0x1c434f[_0x5e98e2(0xdf)+'e'](_0x1a2537,{'text':'*'+_0x4d99c3+'*\x0a@'+_0x1e11d0+(_0x5e98e2(0x15f)+_0x5e98e2(0xdc))+_0x557ee1+('\x20warnings!'+_0x5e98e2(0xf5)+_0x5e98e2(0x11d)),'mentions':[_0x3eb267]},{'quoted':_0x25ba85});}catch{}else await _0x1c434f['sendMessag'+'e'](_0x1a2537,{'text':'*'+_0x4d99c3+_0x5e98e2(0x111)+_0x1e11d0+(_0x5e98e2(0x13f)+'\x20allowed!\x0a'+_0x5e98e2(0x126))+_0x15f6a9+'/'+_0x557ee1,'mentions':[_0x3eb267]},{'quoted':_0x25ba85});break;case _0x5e98e2(0x106):try{await _0x1c434f[_0x5e98e2(0xcd)+_0x5e98e2(0xe1)+_0x5e98e2(0x118)](_0x1a2537,[_0x3eb267],'remove'),await _0x1c434f[_0x5e98e2(0xdf)+'e'](_0x1a2537,{'text':'*'+_0x4d99c3+'*\x0a@'+_0x1e11d0+(_0x5e98e2(0xd2)+_0x5e98e2(0x100)+_0x5e98e2(0x108)),'mentions':[_0x3eb267]},{'quoted':_0x25ba85});}catch(_0xda4991){console[_0x5e98e2(0x120)](_0x5e98e2(0xe5)+_0x5e98e2(0x117),_0xda4991['message']);}break;}}catch(_0x4f2ba0){console[_0x5e98e2(0x120)](_0x5e98e2(0xf4)+'andleAntiL'+_0x5e98e2(0x13a)+_0x5e98e2(0x130),_0x4f2ba0['message'],_0x5e98e2(0x114),_0x4f2ba0[_0x5e98e2(0x13b)]?.[_0x5e98e2(0x10a)]('\x0a')[-0x8b*0xd+-0x132f+-0x1a3f*-0x1]);}}async function handleAntilinkCommand(_0x3b7240,_0x58fab6,_0x5ccbe2,_0x36b7a0,_0x557158){const _0x5458c0=_0x52df;try{const _0x4c0913=typeof _0x5ccbe2===_0x5458c0(0x15d)?_0x5ccbe2:_0x5ccbe2?.['message']?.[_0x5458c0(0x128)+'on']||_0x5ccbe2?.[_0x5458c0(0x112)]?.[_0x5458c0(0x142)+_0x5458c0(0xd0)]?.[_0x5458c0(0x152)]||'',_0x194a29=_0x4c0913[_0x5458c0(0xf7)]()[_0x5458c0(0x10a)](/\s+/),_0x4239a9=_0x194a29[-0x7ad+0xc1*0x2d+-0x1a3f]?.[_0x5458c0(0x155)+'e'](),_0x1861db=getBotName(),_0x9e8d0e=createFakeContact(_0x36b7a0),_0x5442bb=getGroupConfig(_0x58fab6,_0x5458c0(0x136))||{'enabled':![],'action':_0x5458c0(0x145),'maxWarnings':0x3};if(!_0x4239a9||_0x4239a9===_0x5458c0(0x161)||_0x4239a9===_0x5458c0(0x149)){const _0x24cdc9='*'+_0x1861db+(_0x5458c0(0xd4)+'\x0a\x0a')+('Status:\x20'+(_0x5442bb['enabled']?'ON':_0x5458c0(0xd7))+'\x0a')+(_0x5458c0(0x113)+(_0x5442bb[_0x5458c0(0xf2)]||_0x5458c0(0x145))+'\x0a')+('Max\x20Warnin'+_0x5458c0(0xdd)+(_0x5442bb['maxWarning'+'s']||0x2579+0x8*-0x4a7+-0x3e)+'\x0a\x0a')+(_0x5458c0(0xd6)+'*\x0a')+('.antilink\x20'+_0x5458c0(0x11f)+'e\x0a')+(_0x5458c0(0x13e)+_0x5458c0(0x162)+_0x5458c0(0x12c))+('.antilink\x20'+_0x5458c0(0x158)+'et\x20action\x20'+'to\x20delete\x20'+'only\x0a')+(_0x5458c0(0x13e)+_0x5458c0(0x15b)+_0x5458c0(0x160)+_0x5458c0(0xd1)+_0x5458c0(0xea))+(_0x5458c0(0x13e)+'kick\x20-\x20Set'+_0x5458c0(0x160)+_0x5458c0(0xef)+_0x5458c0(0x11c))+(_0x5458c0(0x13e)+_0x5458c0(0x12d)+'um>\x20-\x20Set\x20'+_0x5458c0(0xcb)+_0x5458c0(0x11e))+(_0x5458c0(0x13e)+_0x5458c0(0x10e)+_0x5458c0(0x153));await _0x3b7240[_0x5458c0(0xdf)+'e'](_0x58fab6,{'text':_0x24cdc9},{'quoted':_0x9e8d0e});return;}if(_0x4239a9===_0x5458c0(0x116)){const _0x9d6ba2=parseInt(_0x194a29[0x1d9d+0x2*-0x65e+-0x269*0x7]);if(_0x9d6ba2>0x3*0x243+-0x1*0x23ed+0x1d24&&_0x9d6ba2<=-0x308+-0x137d*0x2+-0x3*-0xe04){const _0x442ff1={..._0x5442bb,'maxWarnings':_0x9d6ba2};setGroupConfig(_0x58fab6,'antilink',_0x442ff1),await _0x3b7240['sendMessag'+'e'](_0x58fab6,{'text':'*'+_0x1861db+(_0x5458c0(0x135)+_0x5458c0(0x14b)+_0x5458c0(0x15c))+_0x9d6ba2},{'quoted':_0x9e8d0e});}else await _0x3b7240[_0x5458c0(0xdf)+'e'](_0x58fab6,{'text':'*'+_0x1861db+(_0x5458c0(0xd8)+_0x5458c0(0xfd)+_0x5458c0(0x105))},{'quoted':_0x9e8d0e});return;}let _0x1c8cd1={..._0x5442bb},_0x40364a='';if(_0x4239a9==='on'||_0x4239a9===_0x5458c0(0x12f))_0x1c8cd1[_0x5458c0(0xeb)]=!![],_0x40364a='*'+_0x1861db+(_0x5458c0(0x12e)+_0x5458c0(0x14f)+_0x5458c0(0x131))+(_0x1c8cd1['action']||_0x5458c0(0x145));else{if(_0x4239a9==='off'||_0x4239a9==='disable')_0x1c8cd1[_0x5458c0(0xeb)]=![],_0x40364a='*'+_0x1861db+('*\x0aAntiLink'+_0x5458c0(0x125));else{if(_0x4239a9===_0x5458c0(0x145)||_0x4239a9==='del')_0x1c8cd1['action']=_0x5458c0(0x145),_0x1c8cd1[_0x5458c0(0xeb)]=!![],_0x40364a='*'+_0x1861db+(_0x5458c0(0x12e)+'\x20action\x20se'+'t\x20to:\x20DELE'+_0x5458c0(0xf1)+'ill\x20be\x20del'+_0x5458c0(0x102));else{if(_0x4239a9==='warn'||_0x4239a9==='warning')_0x1c8cd1['action']=_0x5458c0(0xfb),_0x1c8cd1[_0x5458c0(0xeb)]=!![],_0x40364a='*'+_0x1861db+(_0x5458c0(0x12e)+_0x5458c0(0x129)+_0x5458c0(0x11b)+'\x0a')+(_0x1c8cd1[_0x5458c0(0x138)+'s']||0x1268+0x3*-0x88+-0xfd*0x11)+('\x20warnings\x20'+_0x5458c0(0x127));else _0x4239a9===_0x5458c0(0x106)||_0x4239a9===_0x5458c0(0xf8)?(_0x1c8cd1[_0x5458c0(0xf2)]=_0x5458c0(0x106),_0x1c8cd1[_0x5458c0(0xeb)]=!![],_0x40364a='*'+_0x1861db+(_0x5458c0(0x12e)+_0x5458c0(0x129)+'t\x20to:\x20KICK'+_0x5458c0(0x104)+_0x5458c0(0x137)+_0x5458c0(0x10f)+'immediatel'+'y.')):_0x40364a='*'+_0x1861db+(_0x5458c0(0xd8)+'option:\x20\x22')+_0x4239a9+(_0x5458c0(0x144)+_0x5458c0(0xf9)+_0x5458c0(0x15a)+_0x5458c0(0x106));}}}_0x40364a&&!_0x40364a[_0x5458c0(0xe9)](_0x5458c0(0x14e))&&setGroupConfig(_0x58fab6,_0x5458c0(0x136),_0x1c8cd1),await _0x3b7240[_0x5458c0(0xdf)+'e'](_0x58fab6,{'text':_0x40364a},{'quoted':_0x9e8d0e});}catch(_0x3f342c){console[_0x5458c0(0x120)](_0x5458c0(0xf4)+'andleAntil'+_0x5458c0(0xcc)+':',_0x3f342c[_0x5458c0(0x112)],_0x5458c0(0x114),_0x3f342c[_0x5458c0(0x13b)]?.['split']('\x0a')[-0xc*0x2b1+-0xf*-0xe2+0x1*0x130f]);const _0x9bbe9c=getBotName();await _0x3b7240[_0x5458c0(0xdf)+'e'](_0x58fab6,{'text':'*'+_0x9bbe9c+('*\x0aFailed\x20t'+'o\x20configur'+_0x5458c0(0x154)+'!')});}}async function getAntilink(_0x4c7072){const _0x1c3634=_0x52df;return getGroupConfig(_0x4c7072,_0x1c3634(0x136));}async function setAntilink(_0x2ced5c,_0x307617,_0x5db7fd){const _0x5e6ba0=_0x52df,_0x31790c={'enabled':_0x307617==='on'||_0x307617===_0x5e6ba0(0x145)||_0x307617===_0x5e6ba0(0x106)||_0x307617===_0x5e6ba0(0xfb),'action':_0x5db7fd||_0x5e6ba0(0x145)};return setGroupConfig(_0x2ced5c,_0x5e6ba0(0x136),_0x31790c),!![];}module[_0x55e3c3(0xe2)]={'handleAntiLinkDetection':handleAntiLinkDetection,'handleAntilinkCommand':handleAntilinkCommand,'getAntilink':getAntilink,'setAntilink':setAntilink};
|
|
@@ -1,143 +1 @@
|
|
|
1
|
-
const { getGroupConfig,
|
|
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 _0x5658ba=_0x528e;(function(_0x4e2fa0,_0x231447){const _0x50ea3b=_0x528e,_0x9194ef=_0x4e2fa0();while(!![]){try{const _0x3bf6a3=parseInt(_0x50ea3b(0xcc))/(-0x3*-0x39+0x1ba3+0x5a9*-0x5)*(parseInt(_0x50ea3b(0x9a))/(0x5*0x1f1+-0x38b*0x7+0xf1a))+parseInt(_0x50ea3b(0xcf))/(0x1*-0x21e5+0x24a4+-0x46*0xa)*(-parseInt(_0x50ea3b(0x81))/(0x1*-0x1e7c+0x60b+0x1875))+-parseInt(_0x50ea3b(0x95))/(0x699+0x18af+-0x97*0x35)+parseInt(_0x50ea3b(0xac))/(0x22ab+-0x2090+-0x215*0x1)*(parseInt(_0x50ea3b(0xa9))/(-0x7*0x85+0x94b+-0x5a1))+parseInt(_0x50ea3b(0x7e))/(0x13a4+-0x7*-0x47d+-0x3307)+-parseInt(_0x50ea3b(0x98))/(-0xd4*-0x19+0xc9c*0x1+0x2147*-0x1)*(-parseInt(_0x50ea3b(0xaa))/(-0x1c5f+0x1ee0+-0x1*0x277))+-parseInt(_0x50ea3b(0xa0))/(-0x23c0+-0x18*-0x15d+0x313);if(_0x3bf6a3===_0x231447)break;else _0x9194ef['push'](_0x9194ef['shift']());}catch(_0x340c0f){_0x9194ef['push'](_0x9194ef['shift']());}}}(_0x26d6,-0xfa1*-0xdf+0x2*0x9028d+-0x44be5*0x5));const {getGroupConfig,setGroupConfig,parseToggleCommand,parseActionCommand}=require(_0x5658ba(0x97)+'base/setti'+_0x5658ba(0xc3)),db=require(_0x5658ba(0x97)+'base/datab'+_0x5658ba(0xa2)),isAdmin=require('../../dave'+'lib/isAdmi'+'n'),{createFakeContact,getBotName}=require('../../dave'+_0x5658ba(0xa6)+_0x5658ba(0xaf));function _0x528e(_0x21ba8e,_0x3936d5){_0x21ba8e=_0x21ba8e-(0x1ecd+0x85*-0x31+-0x4db);const _0x42ecab=_0x26d6();let _0x1b496d=_0x42ecab[_0x21ba8e];if(_0x528e['ZlXvMJ']===undefined){var _0x557690=function(_0x134ff0){const _0x1cef55='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789+/=';let _0x1258fc='',_0x51f93f='';for(let _0x23ba17=-0xbba+-0x7*0x269+0x1c99,_0x2c8f0f,_0x3b0f17,_0x407a88=-0x6e9+-0x173b+0x1e24;_0x3b0f17=_0x134ff0['charAt'](_0x407a88++);~_0x3b0f17&&(_0x2c8f0f=_0x23ba17%(-0xa7e+-0x2ea*-0xa+0xa*-0x1dd)?_0x2c8f0f*(-0x483+-0x4*-0x425+-0xbd1)+_0x3b0f17:_0x3b0f17,_0x23ba17++%(-0x617+0x93c+0x9*-0x59))?_0x1258fc+=String['fromCharCode'](0x26d4+0x23a5+-0x497a&_0x2c8f0f>>(-(0x4*-0x683+-0x9*-0x16e+0x4*0x34c)*_0x23ba17&-0x1*-0xcfb+-0x1*-0x166d+0x2*-0x11b1)):-0x733*-0x1+0x1cd4+-0x1*0x2407){_0x3b0f17=_0x1cef55['indexOf'](_0x3b0f17);}for(let _0x5bc7bf=-0x21d8+0x1c8d*-0x1+0x3e65,_0x24a574=_0x1258fc['length'];_0x5bc7bf<_0x24a574;_0x5bc7bf++){_0x51f93f+='%'+('00'+_0x1258fc['charCodeAt'](_0x5bc7bf)['toString'](-0x159*-0x14+-0x52*-0x4d+-0x19c7*0x2))['slice'](-(0x1a47+-0x84c+-0x11f9));}return decodeURIComponent(_0x51f93f);};_0x528e['pOZGSn']=_0x557690,_0x528e['UlmUUX']={},_0x528e['ZlXvMJ']=!![];}const _0x3ed6eb=_0x42ecab[0x1ec1*-0x1+-0x19a*-0xe+0x1b*0x4f],_0x5d1a41=_0x21ba8e+_0x3ed6eb,_0x4e4529=_0x528e['UlmUUX'][_0x5d1a41];return!_0x4e4529?(_0x1b496d=_0x528e['pOZGSn'](_0x1b496d),_0x528e['UlmUUX'][_0x5d1a41]=_0x1b496d):_0x1b496d=_0x4e4529,_0x1b496d;}async function antimentionCommand(_0x134ff0,_0x1cef55,_0x1258fc,_0x51f93f){const _0x50db7b=_0x528e;try{const _0x23ba17=createFakeContact(_0x51f93f),_0x2c8f0f=getBotName(),{isSenderAdmin:_0x3b0f17}=await isAdmin(_0x134ff0,_0x1cef55,_0x51f93f);if(!_0x3b0f17&&!_0x1258fc[_0x50db7b(0x86)][_0x50db7b(0xc2)]&&!db['isSudo'](_0x51f93f)){await _0x134ff0['sendMessag'+'e'](_0x1cef55,{'text':'*'+_0x2c8f0f+(_0x50db7b(0x84)+_0x50db7b(0xd4)+'!')},{'quoted':_0x23ba17});return;}const _0x407a88=_0x1258fc[_0x50db7b(0xbd)]?.[_0x50db7b(0xcb)+'on']||_0x1258fc[_0x50db7b(0xbd)]?.[_0x50db7b(0xb9)+'xtMessage']?.[_0x50db7b(0x92)]||'',_0x5bc7bf=_0x407a88[_0x50db7b(0xbf)]()[_0x50db7b(0xce)]('\x20')['slice'](-0xb25+-0x829+0x134f),_0x24a574=_0x5bc7bf[-0x2043+-0x1a5*0x11+-0xbc*-0x52]?.['toLowerCas'+'e'](),_0x1b8564=getGroupConfig(_0x1cef55,_0x50db7b(0xa7)+'n')||{'enabled':![],'action':_0x50db7b(0x8e),'maxMentions':0x5};if(!_0x24a574){const _0x1c79cc='*'+_0x2c8f0f+(_0x50db7b(0xbb)+_0x50db7b(0xc7))+('Status:\x20'+(_0x1b8564[_0x50db7b(0xa5)]?'ON':'OFF')+'\x0a')+('Action:\x20'+(_0x1b8564[_0x50db7b(0x9d)]||_0x50db7b(0x8e))+'\x0a')+(_0x50db7b(0x83)+'ns:\x20'+(_0x1b8564[_0x50db7b(0xb6)+'s']||0x47+-0xb*-0x105+-0x21*0x59)+'\x0a\x0a')+(_0x50db7b(0x7f)+'*\x0a')+(_0x50db7b(0xd6)+_0x50db7b(0xc6)+_0x50db7b(0x94))+(_0x50db7b(0xd6)+_0x50db7b(0x88)+_0x50db7b(0x80))+(_0x50db7b(0xd6)+_0x50db7b(0x99)+'-\x20Delete\x20m'+_0x50db7b(0xb4))+(_0x50db7b(0xd6)+_0x50db7b(0x8d)+_0x50db7b(0xc5))+(_0x50db7b(0xd6)+_0x50db7b(0xab)+_0x50db7b(0xb3))+(_0x50db7b(0xd6)+_0x50db7b(0xc8)+'m>\x20-\x20Set\x20m'+_0x50db7b(0xb1)+'s');await _0x134ff0[_0x50db7b(0xba)+'e'](_0x1cef55,{'text':_0x1c79cc},{'quoted':_0x23ba17});return;}let _0x275932={..._0x1b8564},_0x3b504c='';const _0x52a13d=parseToggleCommand(_0x24a574);if(_0x52a13d==='on')_0x275932['enabled']=!![],_0x3b504c='*'+_0x2c8f0f+(_0x50db7b(0xbe)+_0x50db7b(0x90)+'D');else{if(_0x52a13d===_0x50db7b(0xa1))_0x275932['enabled']=![],_0x3b504c='*'+_0x2c8f0f+(_0x50db7b(0xbe)+_0x50db7b(0x8a)+'ED');else{const _0x432c8d=parseActionCommand(_0x24a574);if(_0x432c8d===_0x50db7b(0x8e)||_0x432c8d===_0x50db7b(0xb2)||_0x432c8d==='kick')_0x275932[_0x50db7b(0x9d)]=_0x432c8d,_0x275932[_0x50db7b(0xa5)]=!![],_0x3b504c='*'+_0x2c8f0f+('*\x0aAntiment'+_0x50db7b(0xcd)+':\x20')+_0x432c8d[_0x50db7b(0x89)+'e']();else{if(_0x24a574===_0x50db7b(0xb8)&&_0x5bc7bf[-0x5*0x728+-0x617+0x50*0x86]){const _0x3e42f9=parseInt(_0x5bc7bf[0x26d4+0x23a5+-0x4a78]);_0x3e42f9>=0x4*-0x683+-0x9*-0x16e+0x9*0x177&&_0x3e42f9<=-0x1*-0xcfb+-0x1*-0x166d+0x7*-0x50c?(_0x275932['maxMention'+'s']=_0x3e42f9,_0x3b504c='*'+_0x2c8f0f+('*\x0aMax\x20ment'+_0x50db7b(0x9e)+'o\x20')+_0x3e42f9):_0x3b504c='*'+_0x2c8f0f+('*\x0aMax\x20ment'+'ions\x20must\x20'+_0x50db7b(0x8f));}else _0x3b504c='*'+_0x2c8f0f+(_0x50db7b(0x8b)+_0x50db7b(0x93)+'se:\x20on,\x20of'+'f,\x20delete,'+_0x50db7b(0xd3)+'k,\x20max');}}}_0x3b504c&&!_0x3b504c['includes'](_0x50db7b(0x96))&&!_0x3b504c[_0x50db7b(0xb0)](_0x50db7b(0xa4))&&setGroupConfig(_0x1cef55,_0x50db7b(0xa7)+'n',_0x275932),await _0x134ff0[_0x50db7b(0xba)+'e'](_0x1cef55,{'text':_0x3b504c},{'quoted':_0x23ba17});}catch(_0x474ca0){console[_0x50db7b(0xc9)](_0x50db7b(0x7d)+_0x50db7b(0x91)+'\x20command:',_0x474ca0[_0x50db7b(0xbd)],'Line:',_0x474ca0[_0x50db7b(0x9b)]?.['split']('\x0a')[-0x733*-0x1+0x1cd4+-0x1*0x2406]);}}async function handleMentionDetection(_0x51a306,_0x582dca,_0x266b08,_0x1d715e){const _0x53f3c6=_0x528e;try{if(!_0x582dca[_0x53f3c6(0xc0)]('@g.us'))return;const _0x1fe855=getGroupConfig(_0x582dca,_0x53f3c6(0xa7)+'n');if(!_0x1fe855?.['enabled'])return;const {isSenderAdmin:_0x119c99,isBotAdmin:_0x1c5cb5}=await isAdmin(_0x51a306,_0x582dca,_0x1d715e);if(!_0x1c5cb5)return;if(_0x119c99)return;if(db[_0x53f3c6(0xad)](_0x1d715e))return;const _0x335cdf=_0x266b08[_0x53f3c6(0xbd)]?.[_0x53f3c6(0xb9)+'xtMessage']?.['contextInf'+'o']?.['mentionedJ'+'id']||[],_0x2d0d20=_0x1fe855[_0x53f3c6(0xb6)+'s']||-0x21d8+0x1c8d*-0x1+0x3e6a;if(_0x335cdf[_0x53f3c6(0xc4)]<=_0x2d0d20)return;const _0x377286=getBotName(),_0x450daf='@'+_0x1d715e[_0x53f3c6(0xce)]('@')[-0x159*-0x14+-0x52*-0x4d+-0x19cf*0x2];try{await _0x51a306['sendMessag'+'e'](_0x582dca,{'delete':{'remoteJid':_0x582dca,'fromMe':![],'id':_0x266b08[_0x53f3c6(0x86)]['id'],'participant':_0x1d715e}});}catch(_0x2a1111){console[_0x53f3c6(0xc9)](_0x53f3c6(0xa3)+_0x53f3c6(0x9c)+'ailed:',_0x2a1111[_0x53f3c6(0xbd)],_0x53f3c6(0xd2),_0x2a1111[_0x53f3c6(0x9b)]?.[_0x53f3c6(0xce)]('\x0a')[0x1a47+-0x84c+-0x11fa]);return;}if(_0x1fe855[_0x53f3c6(0x9d)]===_0x53f3c6(0x8c))await _0x51a306[_0x53f3c6(0xba)+'e'](_0x582dca,{'text':'*'+_0x377286+'*\x0a'+_0x450daf+(_0x53f3c6(0x87)+'r\x20mass\x20men'+_0x53f3c6(0xb7)),'mentions':[_0x1d715e]}),await _0x51a306[_0x53f3c6(0xb5)+_0x53f3c6(0xae)+_0x53f3c6(0xc1)](_0x582dca,[_0x1d715e],_0x53f3c6(0x82));else{if(_0x1fe855['action']===_0x53f3c6(0xb2)){const _0x10ab46=db[_0x53f3c6(0x9f)+'arning'](_0x582dca,_0x1d715e);await _0x51a306[_0x53f3c6(0xba)+'e'](_0x582dca,{'text':'*'+_0x377286+'*\x0a'+_0x450daf+(_0x53f3c6(0xa8)+'\x20mentions!'+_0x53f3c6(0xd0))+_0x10ab46+'/3','mentions':[_0x1d715e]}),_0x10ab46>=0x1ec1*-0x1+-0x19a*-0xe+0x18*0x59&&(await _0x51a306[_0x53f3c6(0xb5)+_0x53f3c6(0xae)+_0x53f3c6(0xc1)](_0x582dca,[_0x1d715e],_0x53f3c6(0x82)),db[_0x53f3c6(0xd5)+'ng'](_0x582dca,_0x1d715e));}else await _0x51a306[_0x53f3c6(0xba)+'e'](_0x582dca,{'text':'*'+_0x377286+'*\x0a'+_0x450daf+',\x20max\x20'+_0x2d0d20+(_0x53f3c6(0xbc)+_0x53f3c6(0xd1)),'mentions':[_0x1d715e]});}}catch(_0x63f9e){console['error'](_0x53f3c6(0x7d)+_0x53f3c6(0x91)+_0x53f3c6(0x85)+':',_0x63f9e[_0x53f3c6(0xbd)],'Line:',_0x63f9e['stack']?.[_0x53f3c6(0xce)]('\x0a')[-0x18*0x7a+0x12*0x6f+0x31*0x13]);}}module[_0x5658ba(0xca)]={'antimentionCommand':antimentionCommand,'handleMentionDetection':handleMentionDetection};function _0x26d6(){const _0x8065a1=['BxvZDcbIzq','zw5HyMXLza','BgLIl2zHA2vdBW','yw50Aw1LBNrPBW','lcb0B28GBwfUEq','n1Dmy0HSza','mtyXnJiYmhvcugH2Bq','B24GA2LJAYaTia','mZaWndqWnhHcuLftva','AxntDwrV','y2LWyw50C1vWza','BNrHy3q','Aw5JBhvKzxm','yxGGBwvUDgLVBG','D2fYBG','s2LJAYb1C2vYcG','zxnZywDLCWO','z3jVDxbqyxj0Aq','Bwf4twvUDgLVBG','DgLVBMLUzY4','Bwf4','zxH0zw5Kzwruzq','C2vUze1LC3nHzW','iefoveLnru5usq','ig1LBNrPB25Zia','BwvZC2fNzq','kGPbBNrPBwvUDa','DhjPBq','zw5KC1DPDgG','yxrL','zNjVBu1L','BMDZu3rVCMu','BgvUz3rO','v2fYBIb1C2vYcG','B24GB24GlsbfBG','t04QcGO','B24GBwf4idXUDq','zxjYB3i','zxHWB3j0CW','y29UDMvYC2f0Aq','mNLjwhLUEa','Aw9UigfJDgLVBG','C3bSAxq','odC1mtC4zwPpsLb4','cLDHCM5PBMCG','ywXSB3DLzce','tgLUztO','ihDHCM4SigTPyW','BhKGy29TBwfUza','CMvZzxrxyxjUAq','lMfUDgLTzw50Aq','rxjYB3iGAw4Gyq','oti5nti3mMnbB2zyzG','kKnVBw1HBMrZoG','AxnHyMXLcG','nhzfz2DcvW','CMvTB3zL','twf4ie1LBNrPBW','kGPbzg1PBIbVBG','igrLDgvJDgLVBG','A2v5','igTPy2TLzcbMBW','B24GB2zMic0Gra','Dg9vChbLCKnHCW','Aw9Uierju0fcta','kGPjBNzHBgLKia','A2LJAW','B24GD2fYBIaTia','zgvSzxrL','yMuGms0Yma','Aw9Uievoqujmrq','BNrPBwvUDgLVBG','Dgv4Da','y29TBwfUzceGvq','ywjSzqO','mZi4mZa4mfjiC2L5vW','sw52ywXPza','lI4VlI4Vrgf0yq','owziq2LWEq','B24GzgvSzxrLia','mti0mZyYnfrJr3bYCG','C3rHy2S','BIbKzwXLDguGzG','ywn0Aw9U','Aw9UCYbZzxqGDa','Aw5JCMvTzw50vW','mtu5oty1odvbAhPnrLm','B2zM','yxnL','qw50Aw1LBNrPBW'];_0x26d6=function(){return _0x8065a1;};return _0x26d6();}
|